8 #ifndef OPENDDS_SAFETY_PROFILE 34 sample.
value.set_key_only(
true);
35 return sample.
value.deserialize(strm);
38 #ifndef OPENDDS_NO_CONTENT_SUBSCRIPTION_PROFILE 64 return getValueImpl(dd, field);
69 DDS::DynamicType_var type = ts->
get_type();
71 return getValueImpl(dd, field);
76 const char*
const dot = std::strchr(field,
'.');
78 const String local(field, dot - field);
79 const DDS::MemberId id = dd->get_member_id_by_name(local.c_str());
80 DDS::DynamicData_var nested;
84 return getValueImpl(nested, dot + 1);
97 const char*
const dot = std::strchr(field,
'.');
102 #ifndef OPENDDS_NO_MULTI_TOPIC 111 const void*
getRawField(
const void*,
const char*)
const {
return 0; }
115 bool compare(
const void*,
const void*,
const char*)
const {
return false; }
134 int cmp(
void* lhs,
void* rhs)
const 147 bool less(
void* lhs,
void* rhs)
const 149 return cmp(lhs, rhs) < 0;
152 bool equal(
void* lhs,
void* rhs)
const 154 return cmp(lhs, rhs) == 0;
162 return make_rch<DynamicComparator>(field, next);
176 const DDS::DynamicData_var outer_dd = outer_typed.
dynamic_data();
177 DDS::DynamicData_var inner_dd;
185 bool less(
void* lhs,
void* rhs)
const 188 return inner_->less(&left, &right);
191 bool equal(
void* lhs,
void* rhs)
const 194 return inner_->equal(&left, &right);
204 return make_rch<NestedComparator>(field, inner, next);
216 return value.dynamic_data()._retn();
223 return value.dynamic_data()._retn();
246 "could not get correct key count for DynamicType %C: %C\n",
252 bool DynamicTypeSupport::is_dcps_key(
const char* field)
const 263 "could not get correct extensibility for DynamicType %C: %C\n",
275 "could not get correct max extensibility for DynamicType %C: %C\n",
281 DataWriter_ptr DynamicTypeSupport::create_datawriter()
286 DataReader_ptr DynamicTypeSupport::create_datareader()
291 #ifndef OPENDDS_NO_MULTI_TOPIC 292 DataReader_ptr DynamicTypeSupport::create_multitopic_datareader()
329 #ifndef OPENDDS_NO_CONTENT_SUBSCRIPTION_PROFILE 332 return getMetaStruct<OpenDDS::XTypes::DynamicSample>();
bool is_key(DDS::DynamicType_ptr type, const char *field)
ComparatorBase::Ptr create_qc_comparator(const char *field, ComparatorBase::Ptr next) const
#define TAO_BEGIN_VERSIONED_NAMESPACE_DECL
const XTypes::TypeIdentifier & getCompleteTypeIdentifier()
const LogLevel::Value value
const XTypes::TypeMap & getMinimalTypeMap()
const TypeMap & get_complete_type_map() const
bool deserialize(DCPS::Serializer &ser)
#define OpenDDS_Dcps_Export
Value getValue(Serializer &strm, const char *field, const TypeSupportImpl *ts) const
const TypeIdentifier & get_minimal_type_identifier() const
const TypeIdentifier & get_complete_type_identifier() const
sequence< DataRepresentationId_t > DataRepresentationIdSeq
Value getValue(const void *stru, DDS::MemberId memberId) const
Dynamic version of FieldComparator in Comparator_T.h.
DDS::ReturnCode_t compare_members(int &result, DDS::DynamicData_ptr a, DDS::DynamicData_ptr b, DDS::MemberId id)
void deallocate(void *) const
const DataRepresentationId_t XCDR2_DATA_REPRESENTATION
DDS::DynamicData_ptr get_dynamic_data_adapter< DynamicSample, DynamicSample >(DDS::DynamicType_ptr, DynamicSample &value)
Class to serialize and deserialize data for DDS.
const TypeInformation * get_preset_type_info() const
const void * getRawField(const void *, const char *) const
virtual DDS::DynamicType_ptr get_type() const
size_t numDcpsKeys() const
bool compare(const void *, const void *, const char *) const
int cmp(void *lhs, void *rhs) const
DDS::DynamicData_var dynamic_data() const
void assign(void *, const char *, const void *, const char *, const MetaStruct &) const
static ComparatorBase::Ptr make_nested_cmp(const std::string &field, ComparatorBase::Ptr inner, ComparatorBase::Ptr next)
const XTypes::TypeMap & getCompleteTypeMap()
DynamicComparator(const std::string &field, Ptr next)
static Value getValueImpl(const DDS::DynamicData_var &dd, const char *field)
NestedComparator(const std::string &field, Ptr inner, Ptr next)
static DynamicTypeSupport_ptr _duplicate(DynamicTypeSupport_ptr obj)
const XTypes::TypeIdentifier & getMinimalTypeIdentifier()
OpenDDS_Dcps_Export LogLevel log_level
const char ** getFieldNames() const
const char * retcode_to_string(DDS::ReturnCode_t value)
virtual DDS::ReturnCode_t get_simple_value(DCPS::Value &value, DDS::MemberId id)
bool less(void *lhs, void *rhs) const
XTypes::DynamicSample get_nested(void *outer) const
FilterEvaluator::Operand * field_
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
Dynamic version of StructComparator in Comparator_T.h.
Value getValue(const void *stru, const char *field) const
bool less(void *lhs, void *rhs) const
ACE_CDR::Boolean operator>>(Serializer &serializer, CoherentChangeControl &value)
const ReturnCode_t RETCODE_OK
static ComparatorBase::Ptr make_dynamic_cmp(const std::string &field, ComparatorBase::Ptr next=ComparatorBase::Ptr())
bool equal(void *lhs, void *rhs) const
DDS::ReturnCode_t max_extensibility(DDS::DynamicType_ptr type, DCPS::Extensibility &ext)
#define TAO_END_VERSIONED_NAMESPACE_DECL
The Internal API and Implementation of OpenDDS.
DDS::ReturnCode_t key_count(DDS::DynamicType_ptr type, size_t &count)
bool equal(void *lhs, void *rhs) const
extensibility(MUTABLE) struct TypeLookup_getTypes_In
const TypeMap & get_minimal_type_map() const