6 #ifndef OPENDDS_DCPS_DEFINITIONS_H 7 #define OPENDDS_DCPS_DEFINITIONS_H 18 #ifndef ACE_LACKS_PRAGMA_ONCE 24 #if defined ACE_HAS_WCHAR && (!defined _GLIBCPP_VERSION || defined_GLIBCPP_USE_WCHAR_T) 25 # define DDS_HAS_WCHAR 29 # define OPENDDS_DELETED_COPY_MOVE_CTOR_ASSIGN(CLASS) \ 30 CLASS(const CLASS&) = delete; \ 31 CLASS(CLASS&&) = delete; \ 32 CLASS& operator=(const CLASS&) = delete; \ 33 CLASS& operator=(CLASS&&) = delete; 35 # define OPENDDS_DELETED_COPY_MOVE_CTOR_ASSIGN(CLASS) \ 36 ACE_UNIMPLEMENTED_FUNC(CLASS(const CLASS&)) \ 37 ACE_UNIMPLEMENTED_FUNC(CLASS& operator=(const CLASS&)) 40 #if defined ACE_DES_FREE_THIS 41 # define OPENDDS_DES_FREE_THIS ACE_DES_FREE_THIS 45 # define OPENDDS_DES_FREE_THIS(DEALLOCATOR,CLASS) \ 56 #if defined OPENDDS_NO_QUERY_CONDITION && defined OPENDDS_NO_CONTENT_FILTERED_TOPIC && defined OPENDDS_NO_MULTI_TOPIC 57 # define OPENDDS_NO_CONTENT_SUBSCRIPTION_PROFILE 60 #ifndef OPENDDS_HAS_DYNAMIC_DATA_ADAPTER 61 # if !defined OPENDDS_SAFETY_PROFILE && !defined OPENDDS_NO_CONTENT_SUBSCRIPTION_PROFILE 62 # define OPENDDS_HAS_DYNAMIC_DATA_ADAPTER 1 64 # define OPENDDS_HAS_DYNAMIC_DATA_ADAPTER 0 68 #ifdef OPENDDS_SAFETY_PROFILE 69 # define OPENDDS_ASSERT(C) ((void) 0) 72 # define OPENDDS_ASSERT(C) assert(C) 75 #define OPENDDS_TEST_AND_CALL(TYPE, TEST, CALL) do { TYPE temp = TEST; if (temp) { temp->CALL; } } while (false); 76 #define OPENDDS_TEST_AND_CALL_ASSIGN(TYPE, TEST, CALL, VAL) do { TYPE temp = TEST; if (temp) { VAL = temp->CALL; } } while (false); 79 #if defined TAO_HAS_IDL_FEATURES && TAO_HAS_IDL_FEATURES 81 # define OPENDDS_HAS_EXPLICIT_INTS TAO_IDL_HAS_EXPLICIT_INTS 83 # define OPENDDS_HAS_EXPLICIT_INTS 0 86 #if defined __GNUC__ && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || defined __clang__) 87 # define OPENDDS_GCC_HAS_DIAG_PUSHPOP 1 89 # define OPENDDS_GCC_HAS_DIAG_PUSHPOP 0 98 template <
typename T_impl,
typename T,
typename T_ptr,
typename T_var>
108 obj_ = T::_duplicate(obj);
132 template <
class T,
class V =
typename T::_var_type>
139 return x.in() < y.in();
Objref_Servant_Pair(T_impl *svt, T_ptr obj, bool dup)
bool operator==(const Objref_Servant_Pair &pair) const
bool operator()(const V &x, const V &y) const
bool operator<(const Objref_Servant_Pair &pair) const
const size_t AddrToStringSize
Size of TCHAR buffer for use with addr_to_string.
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
This struct holds both object reference and the corresponding servant.
const size_t AceTimestampSize
The Internal API and Implementation of OpenDDS.