Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

GIOP::TargetAddress Class Reference

#include <GIOPC.h>

Collaboration diagram for GIOP::TargetAddress:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TargetAddress_var _var_type

Public Methods

 TargetAddress (void)
 TargetAddress (const TargetAddress &)
 ~TargetAddress (void)
TargetAddress & operator= (const TargetAddress &)
void _d (CORBA::Short)
CORBA::Short _d (void) const
void object_key (const TAO_ObjectKey &)
const TAO_ObjectKeyobject_key (void) const
TAO_ObjectKeyobject_key (void)
void profile (const IOP::TaggedProfile &)
const IOP::TaggedProfileprofile (void) const
IOP::TaggedProfileprofile (void)
void ior (const ACE_NESTED_CLASS(GIOP, IORAddressingInfo)&)
const ACE_NESTED_CLASS (GIOP, IORAddressingInfo)&ior(void) const
 ACE_NESTED_CLASS (GIOP, IORAddressingInfo)&ior(void)
void _default ()

Static Public Methods

void _tao_any_destructor (void *)

Private Methods

void _reset (CORBA::Short, CORBA::Boolean)
void _reset (void)

Private Attributes

CORBA::Short disc_
union {
 ACE_NESTED_CLASS (GIOP, IORAddressingInfo)*ior_
   TAO_ObjectKey *   object_key_
   IOP::TaggedProfile *   profile_
u_

Member Typedef Documentation

typedef TargetAddress_var GIOP::TargetAddress::_var_type
 

Definition at line 160 of file GIOPC.h.


Constructor & Destructor Documentation

TAO_NAMESPACE_END GIOP::TargetAddress::TargetAddress void   
 

Definition at line 118 of file GIOPC.cpp.

References ACE_OS_String::memset.

00119 {
00120   ACE_OS::memset (&this->disc_, 0, sizeof (this->disc_));
00121   ACE_OS::memset (&this->u_, 0, sizeof (this->u_));
00122 }

GIOP::TargetAddress::TargetAddress const TargetAddress &   
 

Definition at line 125 of file GIOPC.cpp.

References ACE_NEW, disc_, and u_.

00126 {
00127   this->disc_ = u.disc_;
00128   switch (this->disc_)
00129   {
00130     case 0:
00131     {
00132       ACE_NEW (
00133           this->u_.object_key_,
00134           TAO_ObjectKey (*u.u_.object_key_)
00135         );
00136     }
00137     break;
00138     case 1:
00139     {
00140       ACE_NEW (
00141           this->u_.profile_,
00142           IOP::TaggedProfile (*u.u_.profile_)
00143         );
00144     }
00145     break;
00146     case 2:
00147     {
00148       ACE_NEW (
00149           this->u_.ior_,
00150           GIOP::IORAddressingInfo (*u.u_.ior_)
00151         );
00152     }
00153     break;
00154     default:
00155     break;
00156   }
00157 }

ACE_INLINE GIOP::TargetAddress::~TargetAddress void   
 

Definition at line 202 of file GIOPC.i.

References _reset.

00203 {
00204   // finalize
00205   this->_reset (this->disc_, 1);
00206 }


Member Function Documentation

ACE_INLINE CORBA::Short GIOP::TargetAddress::_d void    const
 

Definition at line 231 of file GIOPC.i.

References disc_.

00232 {
00233   return this->disc_;
00234 }

ACE_INLINE void GIOP::TargetAddress::_d CORBA::Short   
 

Definition at line 225 of file GIOPC.i.

References disc_.

00226 {
00227   this->disc_ = discval;
00228 }

ACE_INLINE void GIOP::TargetAddress::_default  
 

Definition at line 218 of file GIOPC.i.

References disc_.

00219 {
00220   this->disc_ = -32768;
00221 }

ACE_INLINE void GIOP::TargetAddress::_reset void    [private]
 

Definition at line 210 of file GIOPC.i.

References ACE_OS_String::memcpy.

Referenced by object_key, operator=, profile, and ~TargetAddress.

00211 {
00212   this->_reset (this->disc_, 1);
00213   ACE_OS::memcpy (&this->u_, 0, sizeof (this->u_));
00214 }

void GIOP::TargetAddress::_reset CORBA::Short   ,
CORBA::Boolean   
[private]
 

Definition at line 201 of file GIOPC.cpp.

References disc_, and u_.

00202 {
00203   switch (this->disc_)
00204   {
00205     case 0:
00206       delete this->u_.object_key_;
00207       this->u_.object_key_ = 0;
00208       break;
00209     case 1:
00210       delete this->u_.profile_;
00211       this->u_.profile_ = 0;
00212       break;
00213     case 2:
00214       delete this->u_.ior_;
00215       this->u_.ior_ = 0;
00216       break;
00217     default:
00218       break;
00219   }
00220 }

void GIOP::TargetAddress::_tao_any_destructor void *    [static]
 

Definition at line 460 of file GIOPC.cpp.

00461 {
00462   GIOP::TargetAddress *tmp = ACE_static_cast (GIOP::TargetAddress*,x);
00463   delete tmp;
00464 }

GIOP::TargetAddress::ACE_NESTED_CLASS GIOP   ,
IORAddressingInfo   
 

const GIOP::TargetAddress::ACE_NESTED_CLASS GIOP   ,
IORAddressingInfo   
const
 

void GIOP::TargetAddress::ior const ACE_NESTED_CLASS(GIOP, IORAddressingInfo)&   
 

ACE_INLINE TAO_ObjectKey & GIOP::TargetAddress::object_key void   
 

Definition at line 259 of file GIOPC.i.

References u_.

00260 {
00261   return *this->u_.object_key_;
00262 }

ACE_INLINE const TAO_ObjectKey & GIOP::TargetAddress::object_key void    const
 

Definition at line 252 of file GIOPC.i.

References u_.

00253 {
00254   return *this->u_.object_key_;
00255 }

ACE_INLINE void GIOP::TargetAddress::object_key const TAO_ObjectKey  
 

Definition at line 239 of file GIOPC.i.

References _reset, ACE_NEW, and disc_.

00240 {
00241   // set the discriminant val
00242   this->_reset (0, 0);
00243   this->disc_ = 0;
00244   ACE_NEW (
00245       this->u_.object_key_,
00246       TAO_ObjectKey (val)
00247     );
00248 }

GIOP::TargetAddress & GIOP::TargetAddress::operator= const TargetAddress &   
 

Definition at line 161 of file GIOPC.cpp.

References _reset, ACE_NEW_RETURN, disc_, and u_.

00162 {
00163   this->_reset (u.disc_, 0);
00164   this->disc_ = u.disc_;
00165   switch (this->disc_)
00166   {
00167     case 0:
00168     {
00169       ACE_NEW_RETURN (
00170           this->u_.object_key_,
00171           TAO_ObjectKey (*u.u_.object_key_),
00172           *this
00173         );
00174     }
00175     break;
00176     case 1:
00177     {
00178       ACE_NEW_RETURN (
00179           this->u_.profile_,
00180           IOP::TaggedProfile (*u.u_.profile_),
00181           *this
00182         );
00183     }
00184     break;
00185     case 2:
00186     {
00187       ACE_NEW_RETURN (
00188           this->u_.ior_,
00189           GIOP::IORAddressingInfo (*u.u_.ior_),
00190           *this
00191         );
00192     }
00193     break;
00194     default:
00195     break;
00196   }
00197 return *this;
00198 }

ACE_INLINE IOP::TaggedProfile & GIOP::TargetAddress::profile void   
 

Definition at line 286 of file GIOPC.i.

References u_.

00287 {
00288   return *this->u_.profile_;
00289 }

ACE_INLINE const IOP::TaggedProfile & GIOP::TargetAddress::profile void    const
 

Definition at line 279 of file GIOPC.i.

References u_.

00280 {
00281   return *this->u_.profile_;
00282 }

ACE_INLINE void GIOP::TargetAddress::profile const IOP::TaggedProfile  
 

Definition at line 266 of file GIOPC.i.

References _reset, ACE_NEW, and disc_.

00267 {
00268   // set the discriminant val
00269   this->_reset (1, 0);
00270   this->disc_ = 1;
00271   ACE_NEW (
00272       this->u_.profile_,
00273       IOP::TaggedProfile (val)
00274     );
00275 }


Member Data Documentation

CORBA::Short GIOP::TargetAddress::disc_ [private]
 

Definition at line 179 of file GIOPC.h.

Referenced by _d, _default, _reset, object_key, operator=, profile, and TargetAddress.

TAO_ObjectKey* GIOP::TargetAddress::object_key_ [private]
 

Definition at line 182 of file GIOPC.h.

IOP::TaggedProfile* GIOP::TargetAddress::profile_ [private]
 

Definition at line 183 of file GIOPC.h.

union { ... } GIOP::TargetAddress::u_ [private]
 

Referenced by _reset, object_key, operator=, profile, and TargetAddress.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:59:42 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002