//$Id$ template ACE_INLINE TAO_Var_Base_T::TAO_Var_Base_T (void) : ptr_ (0) {} template ACE_INLINE TAO_Var_Base_T::TAO_Var_Base_T (T * p) : ptr_ (p) {} template ACE_INLINE TAO_Var_Base_T::~TAO_Var_Base_T (void) { delete this->ptr_; } template ACE_INLINE const T * TAO_Var_Base_T::operator-> (void) const { return this->ptr_; } template ACE_INLINE T * TAO_Var_Base_T::operator-> (void) { return this->ptr_; } template ACE_INLINE TAO_Var_Base_T::operator const T & () const { return *this->ptr_; } template ACE_INLINE TAO_Var_Base_T::operator T & () { return *this->ptr_; } template ACE_INLINE TAO_Var_Base_T::operator T & () const { return *this->ptr_; } template ACE_INLINE const T & TAO_Var_Base_T::in (void) const { return *this->ptr_; } template ACE_INLINE T & TAO_Var_Base_T::inout (void) { return *this->ptr_; } template ACE_INLINE T * TAO_Var_Base_T::ptr (void) const { return this->ptr_; } // ************************************************************* template ACE_INLINE TAO_Fixed_Var_T::TAO_Fixed_Var_T (void) {} template ACE_INLINE TAO_Fixed_Var_T::TAO_Fixed_Var_T (T * p) : TAO_Var_Base_T (p) {} template ACE_INLINE TAO_Fixed_Var_T::TAO_Fixed_Var_T (const TAO_Fixed_Var_T & p) : TAO_Var_Base_T (p) {} // Fixed-size types only. template ACE_INLINE TAO_Fixed_Var_T::TAO_Fixed_Var_T (const T & p) { ACE_NEW (this->ptr_, T (p)); } template ACE_INLINE TAO_Fixed_Var_T & TAO_Fixed_Var_T::operator= (T * p) { delete this->ptr_; this->ptr_ = p; return *this; } // Mapping for fixed size. template ACE_INLINE T & TAO_Fixed_Var_T::out (void) { return *this->ptr_; } template ACE_INLINE T TAO_Fixed_Var_T::_retn (void) { return *this->ptr_; } // ************************************************************* template ACE_INLINE TAO_Var_Var_T::TAO_Var_Var_T (void) {} template ACE_INLINE TAO_Var_Var_T::TAO_Var_Var_T (T * p) : TAO_Var_Base_T (p) {} template ACE_INLINE TAO_Var_Var_T::TAO_Var_Var_T (const TAO_Var_Var_T & p) : TAO_Var_Base_T (p) {} template ACE_INLINE TAO_Var_Var_T & TAO_Var_Var_T::operator= (T * p) { delete this->ptr_; this->ptr_ = p; return *this; } // Variable-size types only. template ACE_INLINE TAO_Var_Var_T::operator T *& () { return this->ptr_; } // Mapping for variable size. template ACE_INLINE T *& TAO_Var_Var_T::out (void) { delete this->ptr_; this->ptr_ = 0; return this->ptr_; } template ACE_INLINE T * TAO_Var_Var_T::_retn (void) { T * tmp = this->ptr_; this->ptr_ = 0; return tmp; } // ************************************************************* template ACE_INLINE TAO_Out_T::TAO_Out_T (T *& p) : ptr_ (p) { this->ptr_ = 0; } template ACE_INLINE TAO_Out_T::TAO_Out_T (T_var & p) : ptr_ (p.out ()) { delete this->ptr_; this->ptr_ = 0; } template ACE_INLINE TAO_Out_T::TAO_Out_T (const TAO_Out_T & p) : ptr_ (p.ptr_) {} template ACE_INLINE TAO_Out_T & TAO_Out_T::operator= (const TAO_Out_T & p) { this->ptr_ = p.ptr_; return *this; } template ACE_INLINE TAO_Out_T & TAO_Out_T::operator= (T * p) { this->ptr_ = p; return *this; } template ACE_INLINE TAO_Out_T::operator T *& () { return this->ptr_; } template ACE_INLINE T *& TAO_Out_T::ptr (void) { return this->ptr_; } template ACE_INLINE T * TAO_Out_T::operator-> (void) { return this->ptr_; }