OpenDDS
Snapshot(2023/04/07-19:43)
|
#include <Utils.h>
Public Member Functions | |
typedef | OPENDDS_VECTOR (DDS::MemberId) MemberIdVec |
MemberPath () | |
MemberPath (const MemberPath &other, DDS::MemberId id) | |
MemberPath & | id (DDS::MemberId id) |
size_t | level () const |
DDS::ReturnCode_t | resolve_string_path (DDS::DynamicType_ptr type, const DCPS::String &path) |
DDS::ReturnCode_t | get_member_from_type (DDS::DynamicType_ptr type, DDS::DynamicTypeMember_var &member) |
DDS::ReturnCode_t | get_member_from_data (DDS::DynamicData_ptr data, DDS::DynamicData_var &container, DDS::MemberId &member_id) |
Public Attributes | |
MemberIdVec | ids |
Provides access to a specific member using MemberIds that may be nested inside a DynamicType or DynamicData.
Definition at line 86 of file XTypes/Utils.h.
|
inline |
Definition at line 91 of file XTypes/Utils.h.
|
inline |
Definition at line 95 of file XTypes/Utils.h.
DDS::ReturnCode_t OpenDDS::XTypes::MemberPath::get_member_from_data | ( | DDS::DynamicData_ptr | data, |
DDS::DynamicData_var & | container, | ||
DDS::MemberId & | member_id | ||
) |
DynamicData itself holds the access methods to its members, so in order to access them, we have to give both the containing Dynamic Data and the member ID.
Definition at line 314 of file XTypes/Utils.cpp.
References ACE_ERROR, OpenDDS::XTypes::DynamicTypeMembersByIdImpl::begin(), OpenDDS::XTypes::DISCRIMINATOR_ID, OpenDDS::XTypes::DynamicTypeMembersByIdImpl::end(), OpenDDS::XTypes::Filter_All, OpenDDS::XTypes::Filter_Keys, OpenDDS::XTypes::Filter_NestedKeys, OpenDDS::XTypes::Filter_NonKeys, OpenDDS::XTypes::get_base_type(), id(), level(), LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, OpenDDS::XTypes::MemberPathParser::path, DDS::RETCODE_BAD_PARAMETER, DDS::RETCODE_ILLEGAL_OPERATION, DDS::RETCODE_OK, OpenDDS::XTypes::TK_STRUCTURE, OpenDDS::XTypes::TK_UNION, and OpenDDS::XTypes::typekind_to_string().
DDS::ReturnCode_t OpenDDS::XTypes::MemberPath::get_member_from_type | ( | DDS::DynamicType_ptr | type, |
DDS::DynamicTypeMember_var & | member | ||
) |
Definition at line 272 of file XTypes/Utils.cpp.
References OpenDDS::XTypes::get_base_type(), DDS::RETCODE_BAD_PARAMETER, DDS::RETCODE_ILLEGAL_OPERATION, and DDS::RETCODE_OK.
|
inline |
|
inline |
Definition at line 107 of file XTypes/Utils.h.
References OpenDDS::XTypes::OPENDDS_VECTOR().
Referenced by get_member_from_data().
typedef OpenDDS::XTypes::MemberPath::OPENDDS_VECTOR | ( | DDS::MemberId | ) |
DDS::ReturnCode_t OpenDDS::XTypes::MemberPath::resolve_string_path | ( | DDS::DynamicType_ptr | type, |
const DCPS::String & | path | ||
) |
Definition at line 227 of file XTypes/Utils.cpp.
References ACE_ERROR, OpenDDS::XTypes::get_base_type(), OpenDDS::XTypes::MemberPathParser::get_next_subpath(), OpenDDS::XTypes::MemberPathParser::in_subscript, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::RETCODE_BAD_PARAMETER, DDS::RETCODE_OK, DDS::RETCODE_UNSUPPORTED, and OpenDDS::XTypes::MemberPathParser::subpath.
MemberIdVec OpenDDS::XTypes::MemberPath::ids |
Definition at line 89 of file XTypes/Utils.h.