6 #ifndef OPENDDS_DCPS_GUIDUTILS_H 7 #define OPENDDS_DCPS_GUIDUTILS_H 15 #include <dds/DdsDcpsGuidC.h> 16 #include <dds/DdsDcpsInfoUtilsC.h> 18 #ifndef OPENDDS_SAFETY_PROFILE 117 #ifndef OPENDDS_SAFETY_PROFILE 127 return !(lhs == rhs);
143 #ifndef OPENDDS_SAFETY_PROFILE 153 return !(lhs == rhs);
175 #ifndef OPENDDS_SAFETY_PROFILE 192 std::memcpy(&dest, &src,
sizeof(
GUID_t));
197 std::memcpy(&dest[0], &src,
sizeof(src));
203 assign(
id.guidPrefix, prefix);
204 id.entityId = entity;
210 GUID_t id = participant_id;
218 return make_id(prefix, ENTITYID_PARTICIPANT);
230 return make_id(prefix, ENTITYID_UNKNOWN);
240 void intersect(
const GuidSet& a,
const GuidSet& b, GuidSet& result);
246 std::memcpy(key.
value, &guid,
sizeof(key.
value));
254 std::memcpy(&
id, key.
value,
sizeof(
id));
271 return local_cmp == 0 ?
mem_cmp(remote, other.
remote) : local_cmp;
276 return cmp(other) < 0;
285 #if defined ACE_HAS_CPP11
bool operator<(const GuidPair &other) const
const EntityId_t ENTITYID_SEDP_BUILTIN_TOPIC_READER
ENTITYKIND_BUILTIN_PARTICIPANT.
const EntityId_t ENTITYID_SEDP_BUILTIN_SUBSCRIPTIONS_READER
const GUID_t GUID_UNKNOWN
Nil value for GUID.
ENTITYKIND_BUILTIN_WRITER_WITH_KEY and ENTITYKIND_USER_WRITER_NO_KEY.
#define OpenDDS_Dcps_Export
bool operator()(const GUID_t &v1, const GUID_t &v2) const
const EntityId_t ENTITYID_P2P_BUILTIN_PARTICIPANT_MESSAGE_READER
const EntityId_t ENTITYID_TL_SVC_REQ_WRITER
const size_t guid_cdr_size
const EntityId_t ENTITYID_TL_SVC_REPLY_READER
For creating custom GUIDs for things that are not DDS entities (OpenDDS-specific) ...
OpenDDS_Dcps_Export GUID_t make_unknown_guid(const GuidPrefix_t &prefix)
key GuidPrefix_t guidPrefix
int mem_cmp(const T &a, const T &b)
bool operator==(const DisjointSequence::OrderedRanges< T > &a, const DisjointSequence::OrderedRanges< T > &b)
ENTITYKIND_USER_WRITER_WITH_KEY and ENTITYKIND_USER_WRITER_NO_KEY.
int cmp(const GuidPair &other) const
ENTITYKIND_BUILTIN_TOPIC.
const EntityId_t ENTITYID_SPDP_BUILTIN_PARTICIPANT_WRITER
const EntityId_t ENTITYID_SPDP_BUILTIN_PARTICIPANT_READER
const EntityId_t ENTITYID_PARTICIPANT
ENTITYKIND_OPENDDS_TOPIC.
ACE_CDR::Boolean operator<<(Serializer &serializer, CoherentChangeControl &value)
Marshal/Insertion into a buffer.
ENTITYKIND_USER_READER_WITH_KEY and ENTITYKIND_USER_READER_NO_KEY.
bool operator()(const DDS::BuiltinTopicKey_t &v1, const DDS::BuiltinTopicKey_t &v2) const
typedef OPENDDS_SET_CMP(GUID_t, GUID_tKeyLessThan) GuidSet
const EntityId_t ENTITYID_TL_SVC_REQ_READER
GuidPair(const GUID_t &local, const GUID_t &remote)
const EntityId_t ENTITYID_TL_SVC_REPLY_WRITER
Publisher (OpenDDS-specific)
const EntityId_t ENTITYID_SEDP_BUILTIN_PUBLICATIONS_WRITER
ENTITYKIND_USER_UNKNOWN and ENTITYKIND_BUILTIN_UNKNOWN.
bool operator()(const EntityId_t &v1, const EntityId_t &v2) const
Subscriber (OpenDDS-specific)
OpenDDS_Dcps_Export GUID_t make_part_guid(const GuidPrefix_t &prefix)
bool operator!=(const GUID_t &lhs, const GUID_t &rhs)
const EntityId_t ENTITYID_SEDP_BUILTIN_SUBSCRIPTIONS_WRITER
OpenDDS_Dcps_Export bool equal_guid_prefixes(const GuidPrefix_t &lhs, const GuidPrefix_t &rhs)
const EntityId_t ENTITYID_SEDP_BUILTIN_TOPIC_WRITER
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
static bool entity_less(const EntityId_t &v1, const EntityId_t &v2)
void intersect(const GuidSet &a, const GuidSet &b, GuidSet &result)
ACE_CDR::Boolean operator>>(Serializer &serializer, CoherentChangeControl &value)
const GuidPrefix_t GUIDPREFIX_UNKNOWN
Nil value for the GUID prefix (participant identifier).
const char * to_string(MessageId value)
void assign(EntityId_t &dest, const EntityId_t &src)
const EntityId_t ENTITYID_SEDP_BUILTIN_PUBLICATIONS_READER
GUID_t make_id(const GuidPrefix_t &prefix, const EntityId_t &entity)
const EntityId_t ENTITYID_P2P_BUILTIN_PARTICIPANT_MESSAGE_WRITER
OpenDDS_Dcps_Export GUID_t bit_key_to_guid(const DDS::BuiltinTopicKey_t &key)
const EntityId_t ENTITYID_UNKNOWN
const GuidVendorId_t VENDORID_OCI
Vendor Id value specified for OCI is used for OpenDDS.
OpenDDS_Dcps_Export DDS::BuiltinTopicKey_t guid_to_bit_key(const GUID_t &guid)
The Internal API and Implementation of OpenDDS.
ENTITYKIND_BUILTIN_READER_WITH_KEY and ENTITYKIND_USER_READER_NO_KEY.
bool operator<(const GUID_t &lhs, const GUID_t &rhs)