TAO_DynamicAny
2.0.8
|
Implementation of the DynValue class. More...
#include <DynValue_i.h>
Public Member Functions | |
TAO_DynValue_i (CORBA::Boolean allow_truncation=true) | |
Constructor. | |
~TAO_DynValue_i (void) | |
Destructor. | |
void | init (const CORBA::Any &any) |
Initialize using an Any. | |
void | init (CORBA::TypeCode_ptr tc, TAO_InputCDR &in) |
Initialize using a TypeCode and an input stream. | |
void | init (CORBA::TypeCode_ptr tc) |
Initialize using just a TypeCode. | |
virtual DynamicAny::FieldName | current_member_name (void) |
virtual CORBA::TCKind | current_member_kind (void) |
virtual DynamicAny::NameValuePairSeq * | get_members (void) |
virtual void | set_members (const DynamicAny::NameValuePairSeq &value) |
virtual DynamicAny::NameDynAnyPairSeq * | get_members_as_dyn_any (void) |
virtual void | set_members_as_dyn_any (const DynamicAny::NameDynAnyPairSeq &value) |
virtual void | from_any (const CORBA::Any &value) |
virtual CORBA::Any * | to_any (void) |
virtual CORBA::Boolean | equal (DynamicAny::DynAny_ptr dyn_any) |
virtual void | destroy (void) |
virtual DynamicAny::DynAny_ptr | current_component (void) |
virtual void | insert_val (CORBA::ValueBase *value) |
virtual CORBA::ValueBase * | get_val (void) |
virtual void | set_to_value (void) |
Static Public Member Functions | |
static TAO_DynValue_i * | _narrow (CORBA::Object_ptr obj) |
Private Types | |
typedef ACE_Array_Base < CORBA::TypeCode_var > | BaseTypesList_t |
List of base types. | |
Private Member Functions | |
void | check_typecode (CORBA::TypeCode_ptr tc) |
Check if the typecode is acceptable. | |
void | init_helper (CORBA::TypeCode_ptr tc) |
void | from_any_helper (const CORBA::Any &any) |
void | to_outputCDR (TAO_OutputCDR &) |
Write the value to the output stream. | |
void | from_inputCDR (TAO_InputCDR &) |
Read the value from the input stream. | |
TAO_DynValue_i (const TAO_DynValue_i &src) | |
TAO_DynValue_i & | operator= (const TAO_DynValue_i &src) |
Static Private Member Functions | |
static void | get_base_types (CORBA::TypeCode_ptr, BaseTypesList_t &, CORBA::ULong *total_member_count=0) |
static CORBA::TypeCode_ptr | get_correct_base_type (const BaseTypesList_t &base_types, CORBA::ULong &index) |
static CORBA::TypeCode_ptr | get_member_type (const BaseTypesList_t &, CORBA::ULong index) |
static const char * | get_member_name (const BaseTypesList_t &, CORBA::ULong index) |
Private Attributes | |
ACE_Array_Base < DynamicAny::DynAny_var > | da_members_ |
Each component of DynValue and DynValueBox is also a DynAny. | |
BaseTypesList_t | da_base_types_ |
Implementation of the DynValue class.
typedef ACE_Array_Base<CORBA::TypeCode_var> TAO_DynValue_i::BaseTypesList_t [private] |
List of base types.
TAO_DynValue_i::TAO_DynValue_i | ( | CORBA::Boolean | allow_truncation = true | ) |
Constructor.
TAO_DynValue_i::~TAO_DynValue_i | ( | void | ) |
Destructor.
TAO_DynValue_i::TAO_DynValue_i | ( | const TAO_DynValue_i & | src | ) | [private] |
TAO_DynValue_i * TAO_DynValue_i::_narrow | ( | CORBA::Object_ptr | obj | ) | [static] |
Reimplemented from TAO_DynValueCommon_i.
void TAO_DynValue_i::check_typecode | ( | CORBA::TypeCode_ptr | tc | ) | [private, virtual] |
Check if the typecode is acceptable.
Implements TAO_DynValueCommon_i.
DynamicAny::DynAny_ptr TAO_DynValue_i::current_component | ( | void | ) | [virtual] |
Reimplemented from TAO_DynAny_i.
CORBA::TCKind TAO_DynValue_i::current_member_kind | ( | void | ) | [virtual] |
Implements DynamicAny::DynValue.
DynamicAny::FieldName TAO_DynValue_i::current_member_name | ( | void | ) | [virtual] |
Implements DynamicAny::DynValue.
void TAO_DynValue_i::destroy | ( | void | ) | [virtual] |
Reimplemented from TAO_DynAny_i.
CORBA::Boolean TAO_DynValue_i::equal | ( | DynamicAny::DynAny_ptr | dyn_any | ) | [virtual] |
Reimplemented from TAO_DynAny_i.
void TAO_DynValue_i::from_any | ( | const CORBA::Any & | value | ) | [virtual] |
Reimplemented from TAO_DynAny_i.
void TAO_DynValue_i::from_any_helper | ( | const CORBA::Any & | any | ) | [private] |
Code common to the init(Any) and the member function from_any().
void TAO_DynValue_i::from_inputCDR | ( | TAO_InputCDR & | strm | ) | [private] |
Read the value from the input stream.
void TAO_DynValue_i::get_base_types | ( | CORBA::TypeCode_ptr | tc, |
BaseTypesList_t & | base_types, | ||
CORBA::ULong * | total_member_count = 0 |
||
) | [static, private] |
Decompose the given TypeCode into its hiarchical list of basetypes. The first element of the list is our actual type, each basetype follows in order backwards down the hiarchy. All types stored in the list are de-aliased. Optionally return the total_member_count of the fully derived type.
CORBA::TypeCode_ptr TAO_DynValue_i::get_correct_base_type | ( | const BaseTypesList_t & | base_types, |
CORBA::ULong & | index | ||
) | [static, private] |
Return the unaliased valuetype typecode that corresponds to index (0..total_members-1) from the given hiarchical list of the derived type and it basetypes.
const char * TAO_DynValue_i::get_member_name | ( | const BaseTypesList_t & | base_types, |
CORBA::ULong | index | ||
) | [static, private] |
Return the member_name at index (0..total_members-1) from the given hiarchical list of the derived type and it basetypes.
CORBA::TypeCode_ptr TAO_DynValue_i::get_member_type | ( | const BaseTypesList_t & | base_types, |
CORBA::ULong | index | ||
) | [static, private] |
Return the member_type at index (0..total_members-1) from the given hiarchical list of the derived type and it basetypes.
DynamicAny::NameValuePairSeq * TAO_DynValue_i::get_members | ( | void | ) | [virtual] |
Implements DynamicAny::DynValue.
DynamicAny::NameDynAnyPairSeq * TAO_DynValue_i::get_members_as_dyn_any | ( | void | ) | [virtual] |
Implements DynamicAny::DynValue.
CORBA::ValueBase * TAO_DynValue_i::get_val | ( | void | ) | [virtual] |
Implements DynamicAny::DynAny.
void TAO_DynValue_i::init | ( | const CORBA::Any & | any | ) |
Initialize using an Any.
Reimplemented from TAO_DynAny_i.
void TAO_DynValue_i::init | ( | CORBA::TypeCode_ptr | tc, |
TAO_InputCDR & | in | ||
) |
Initialize using a TypeCode and an input stream.
void TAO_DynValue_i::init | ( | CORBA::TypeCode_ptr | tc | ) |
Initialize using just a TypeCode.
Reimplemented from TAO_DynAny_i.
void TAO_DynValue_i::init_helper | ( | CORBA::TypeCode_ptr | tc | ) | [private] |
Common code from the init() functions, initializes the private bits from the given TypeCode
void TAO_DynValue_i::insert_val | ( | CORBA::ValueBase * | value | ) | [virtual] |
Reimplemented from TAO_DynCommon.
TAO_DynValue_i& TAO_DynValue_i::operator= | ( | const TAO_DynValue_i & | src | ) | [private] |
void TAO_DynValue_i::set_members | ( | const DynamicAny::NameValuePairSeq & | value | ) | [virtual] |
void TAO_DynValue_i::set_members_as_dyn_any | ( | const DynamicAny::NameDynAnyPairSeq & | value | ) | [virtual] |
void TAO_DynValue_i::set_to_value | ( | void | ) | [virtual] |
Implements TAO_DynValueCommon_i.
CORBA::Any_ptr TAO_DynValue_i::to_any | ( | void | ) | [virtual] |
Reimplemented from TAO_DynAny_i.
void TAO_DynValue_i::to_outputCDR | ( | TAO_OutputCDR & | out_cdr | ) | [private] |
Write the value to the output stream.
First element of this is our type, each basetype follows in order backwards down the hiarchy. All types stored are de-aliased.
Each component of DynValue and DynValueBox is also a DynAny.