TAO_AnyTypeCode  2.4.0
Public Types | Public Member Functions | List of all members
TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy > Class Template Reference

#include <Union_TypeCode_Static.h>

Inheritance diagram for TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >:
Inheritance graph
[legend]
Collaboration diagram for TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >:
Collaboration graph
[legend]

Public Types

typedef TAO::TypeCode::Case< char const *, CORBA::TypeCode_ptr const * > case_type
 
- Public Types inherited from CORBA::TypeCode
typedef CORBA::TypeCode_ptr _ptr_type
 
typedef CORBA::TypeCode_var _var_type
 
typedef CORBA::TypeCode_out _out_type
 

Public Member Functions

 Union (char const *id, char const *name, CORBA::TypeCode_ptr const *discriminant_type, Case< char const *, CORBA::TypeCode_ptr const * > const *const *cases, CORBA::ULong ncases, CORBA::Long default_index)
 Constructor. More...
 
TAO-specific @c CORBA::TypeCode Methods

Methods required by TAO's implementation of the CORBA::TypeCode class.

See also
CORBA::TypeCode
virtual bool tao_marshal (TAO_OutputCDR &cdr, CORBA::ULong offset) const
 Marshal this TypeCode into a CDR output stream. More...
 
virtual void tao_duplicate (void)
 Increase the reference count on this TypeCode. More...
 
virtual void tao_release (void)
 Decrease the reference count on this object. More...
 
- Public Member Functions inherited from CORBA::TypeCode
virtual bool tao_marshal_kind (TAO_OutputCDR &cdr) const
 Marshal the TypeCode TCKind. More...
 
Boolean equal (TypeCode_ptr tc) const
 Equality of two TypeCodes. More...
 
Boolean equivalent (TypeCode_ptr tc) const
 Equivalence of two TypeCodes. More...
 
TCKind kind (void) const
 The kind of TypeCode. More...
 
TypeCode_ptr get_compact_typecode (void) const
 
char const * id (void) const
 The RepositoryId globally identifying the type. More...
 
char const * name (void) const
 
ULong member_count (void) const
 The type member count. More...
 
char const * member_name (ULong index) const
 The type member name. More...
 
TypeCode_ptr member_type (ULong index) const
 The type member TypeCode. More...
 
Anymember_label (ULong index) const
 The union member label. More...
 
TypeCode_ptr discriminator_type (void) const
 The type of all non-default union member labels. More...
 
Long default_index (void) const
 The index of the default union member. More...
 
ULong length (void) const
 The length of the type. More...
 
TypeCode_ptr content_type (void) const
 The underlying content type. More...
 
UShort fixed_digits (void) const
 The number of significant digits. More...
 
UShort fixed_scale (void) const
 The scale factor. More...
 
Visibility member_visibility (ULong index) const
 
ValueModifier type_modifier (void) const
 
TypeCode_ptr concrete_base_type (void) const
 

Protected Member Functions

@c TAO CORBA::TypeCode Template Methods

tk_union CORBA::TypeCode -specific template methods.

See also
CORBA::TypeCode
virtual CORBA::Boolean equal_i (CORBA::TypeCode_ptr tc) const
 
virtual CORBA::Boolean equivalent_i (CORBA::TypeCode_ptr tc) const
 
virtual CORBA::TypeCode_ptr get_compact_typecode_i (void) const
 
virtual char const * id_i (void) const
 
virtual char const * name_i (void) const
 
virtual CORBA::ULong member_count_i (void) const
 
virtual char const * member_name_i (CORBA::ULong index) const
 
virtual CORBA::TypeCode_ptr member_type_i (CORBA::ULong index) const
 
virtual CORBA::Anymember_label_i (CORBA::ULong index) const
 
virtual CORBA::TypeCode_ptr discriminator_type_i (void) const
 
virtual CORBA::Long default_index_i (void) const
 
- Protected Member Functions inherited from CORBA::TypeCode
 TypeCode (CORBA::TCKind kind)
 Constructor. More...
 
virtual ~TypeCode (void)
 Destructor. More...
 
virtual ULong length_i (void) const
 
virtual TypeCode_ptr content_type_i (void) const
 
virtual UShort fixed_digits_i (void) const
 
virtual UShort fixed_scale_i (void) const
 
virtual Visibility member_visibility_i (ULong index) const
 
virtual ValueModifier type_modifier_i (void) const
 
virtual TypeCode_ptr concrete_base_type_i (void) const
 

Private Attributes

Base_Attributes< char const * > const base_attributes_
 
CORBA::TypeCode_ptr const *const discriminant_type_
 Type of IDL union discriminant. More...
 
CORBA::Long const default_index_
 Index of the default union case. More...
 
CORBA::ULong const ncases_
 
Case< char const *, CORBA::TypeCode_ptr const * > const *const *const cases_
 

Additional Inherited Members

- Static Public Member Functions inherited from CORBA::TypeCode
static CORBA::TypeCode_ptr _duplicate (CORBA::TypeCode_ptr tc)
 Duplicate this TypeCode. More...
 
static CORBA::TypeCode_ptr _nil (void)
 Returns a NULL typecode. More...
 
static void _tao_any_destructor (void *x)
 Destruction callback for Anys. More...
 
- Static Public Attributes inherited from CORBA::TypeCode
static CORBA::TypeCode_ptr const _tc_Bounds
 
static CORBA::TypeCode_ptr const _tc_BadKind
 
- Protected Attributes inherited from CORBA::TypeCode
TCKind const kind_
 The kind of TypeCode. More...
 
- Private Member Functions inherited from TAO::Null_RefCount_Policy
void add_ref (void)
 No-op reference increment. More...
 
void remove_ref (void)
 No-op reference decrement. More...
 

Member Typedef Documentation

typedef TAO::TypeCode::Case<char const *, CORBA::TypeCode_ptr const *> TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::case_type

Constructor & Destructor Documentation

TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::Union ( char const *  id,
char const *  name,
CORBA::TypeCode_ptr const *  discriminant_type,
Case< char const *, CORBA::TypeCode_ptr const * > const *const *  cases,
CORBA::ULong  ncases,
CORBA::Long  default_index 
)

Constructor.

Member Function Documentation

virtual CORBA::Long TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::default_index_i ( void  ) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual CORBA::TypeCode_ptr TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::discriminator_type_i ( void  ) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual CORBA::Boolean TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::equal_i ( CORBA::TypeCode_ptr  tc) const
protectedvirtual

Implements CORBA::TypeCode.

virtual CORBA::Boolean TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::equivalent_i ( CORBA::TypeCode_ptr  tc) const
protectedvirtual

Implements CORBA::TypeCode.

virtual CORBA::TypeCode_ptr TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::get_compact_typecode_i ( void  ) const
protectedvirtual

Implements CORBA::TypeCode.

virtual char const* TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::id_i ( void  ) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual CORBA::ULong TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::member_count_i ( void  ) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual CORBA::Any* TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::member_label_i ( CORBA::ULong  index) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual char const* TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::member_name_i ( CORBA::ULong  index) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual CORBA::TypeCode_ptr TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::member_type_i ( CORBA::ULong  index) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual char const* TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::name_i ( void  ) const
protectedvirtual

Reimplemented from CORBA::TypeCode.

virtual void TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::tao_duplicate ( void  )
virtual

Increase the reference count on this TypeCode.

Implements CORBA::TypeCode.

virtual bool TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::tao_marshal ( TAO_OutputCDR cdr,
CORBA::ULong  offset 
) const
virtual

Marshal this TypeCode into a CDR output stream.

Marshal this TypeCode into the cdr output CDR stream, excluding the TypeCode kind. Existing cdr contents will not be altered. The marshaled TypeCode will be appended to the given cdr CDR output stream.

Parameters
cdrOutput CDR stream into which the TypeCode will be marshaled.
offsetNumber of bytes currently in the output CDR stream, including the top-level TypeCode TCKind. This argument is useful for recursive TypeCodes. TypeCodes that contain other TypeCodes should pass an updated offset value to the marshaling operation for those contained TypeCodes.
Returns
true if marshaling was successful.
Note
This is a TAO-specific method that is not part of the standard CORBA::TypeCode interface.
If this method returns false, the contents of the cdr output CDR stream are undefined.

Implements CORBA::TypeCode.

virtual void TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::tao_release ( void  )
virtual

Decrease the reference count on this object.

Implements CORBA::TypeCode.

Member Data Documentation

Base_Attributes<char const *> const TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::base_attributes_
private

Union Attributes

Attributes representing the structure of an OMG IDL union.

Note
These attributes are declared in the order in which they are marshaled into a CDR stream in order to increase cache hits by improving spatial locality.Base attributes containing repository ID and name of union type.
Case<char const *, CORBA::TypeCode_ptr const *> const* const* const TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::cases_
private

Array of TAO::TypeCode::Case representing structure of the OMG IDL defined union.

CORBA::Long const TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::default_index_
private

Index of the default union case.

This value will be -1 if no default case is found in the union.

CORBA::TypeCode_ptr const* const TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::discriminant_type_
private

Type of IDL union discriminant.

CORBA::ULong const TAO::TypeCode::Union< char const *, CORBA::TypeCode_ptr const *, Case< char const *, CORBA::TypeCode_ptr const * > const *const *, TAO::Null_RefCount_Policy >::ncases_
private

The number of cases in the OMG IDL union, excluding the default case.


The documentation for this class was generated from the following file: