TAO_Objref_Var_T< T > Class Template Reference

Parameterized implementation of _var class for object references. More...

#include <Objref_VarOut_T.h>

Inheritance diagram for TAO_Objref_Var_T< T >:

Inheritance graph
[legend]
Collaboration diagram for TAO_Objref_Var_T< T >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef T _obj_type
typedef T * _in_type
typedef T *& _inout_type
typedef T *& _out_type
typedef T * _retn_type

Public Member Functions

 TAO_Objref_Var_T (void)
 TAO_Objref_Var_T (T *p)
 TAO_Objref_Var_T (const TAO_Objref_Var_T< T > &)
 ~TAO_Objref_Var_T (void)
TAO_Objref_Var_T< T > & operator= (T *)
TAO_Objref_Var_T< T > & operator= (const TAO_Objref_Var_T< T > &)
T * operator-> (void) const
 operator T *const & () const
 operator T *& ()
_in_type in (void) const
_inout_type inout (void)
_out_type out (void)
_retn_type _retn (void)
_retn_type ptr (void) const

Protected Member Functions

void free (void)
void reset (T *)

Protected Attributes

T * ptr_

Private Member Functions

 TAO_Objref_Var_T (const TAO_Base_var &)
void operator= (const TAO_Base_var &)

Detailed Description

template<typename T>
class TAO_Objref_Var_T< T >

Parameterized implementation of _var class for object references.

Definition at line 51 of file Objref_VarOut_T.h.


Member Typedef Documentation

template<typename T>
typedef T* TAO_Objref_Var_T< T >::_in_type
 

Definition at line 70 of file Objref_VarOut_T.h.

template<typename T>
typedef T*& TAO_Objref_Var_T< T >::_inout_type
 

Definition at line 71 of file Objref_VarOut_T.h.

template<typename T>
typedef T TAO_Objref_Var_T< T >::_obj_type
 

Definition at line 69 of file Objref_VarOut_T.h.

template<typename T>
typedef T*& TAO_Objref_Var_T< T >::_out_type
 

Definition at line 72 of file Objref_VarOut_T.h.

template<typename T>
typedef T* TAO_Objref_Var_T< T >::_retn_type
 

Definition at line 73 of file Objref_VarOut_T.h.


Constructor & Destructor Documentation

template<typename T>
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Objref_Var_T< T >::TAO_Objref_Var_T void   ) 
 

Definition at line 11 of file Objref_VarOut_T.cpp.

00012   : ptr_ (TAO::Objref_Traits<T>::nil ())
00013 {
00014 }

template<typename T>
TAO_Objref_Var_T< T >::TAO_Objref_Var_T T *  p  )  [inline]
 

Definition at line 55 of file Objref_VarOut_T.h.

00055 : ptr_ (p) {}

template<typename T>
TAO_Objref_Var_T< T >::TAO_Objref_Var_T const TAO_Objref_Var_T< T > &   ) 
 

Definition at line 17 of file Objref_VarOut_T.cpp.

00020   : TAO_Base_var (),
00021     ptr_ (TAO::Objref_Traits<T>::duplicate (p.ptr ()))
00022 {
00023 }

template<typename T>
TAO_Objref_Var_T< T >::~TAO_Objref_Var_T void   ) 
 

Definition at line 26 of file Objref_VarOut_T.cpp.

00027 {
00028   TAO::Objref_Traits<T>::release (this->ptr_);
00029 }

template<typename T>
TAO_Objref_Var_T< T >::TAO_Objref_Var_T const TAO_Base_var  )  [private]
 


Member Function Documentation

template<typename T>
T * TAO_Objref_Var_T< T >::_retn void   ) 
 

Definition at line 99 of file Objref_VarOut_T.cpp.

Referenced by TAO_Policy_Set::copy_from(), TAO_Stub::get_cached_policy(), TAO_ORB_Core::get_cached_policy(), TAO_ORB_Core::get_cached_policy_including_current(), TAO_Profile::get_policies(), TAO_Stub::get_policy(), TAO_ORB_Core::get_policy(), TAO_ORB_Core::get_policy_including_current(), TAO_Policy_Set::set_policy(), and TAO_Policy_Set::TAO_Policy_Set().

00100 {
00101   T * val = this->ptr_;
00102   this->ptr_ = TAO::Objref_Traits<T>::nil ();
00103   return val;
00104 }

template<typename T>
void TAO_Objref_Var_T< T >::free void   )  [protected]
 

Definition at line 115 of file Objref_VarOut_T.cpp.

00116 {
00117   TAO::Objref_Traits<T>::release (this->ptr_);
00118 }

template<typename T>
T * TAO_Objref_Var_T< T >::in void   )  const
 

Definition at line 76 of file Objref_VarOut_T.cpp.

Referenced by TAO::Eager_Transport_Queueing_Strategy::buffering_constraints_reached(), TAO_Stub::get_cached_policy(), TAO_ORB_Core::get_cached_policy(), TAO_ORB_Core::get_cached_policy_including_current(), TAO_Profile::get_policies(), TAO_Stub::get_policy(), TAO_ORB_Core::get_policy(), and TAO_ORB_Core::get_policy_including_current().

00077 {
00078   return this->ptr_;
00079 }

template<typename T>
T *& TAO_Objref_Var_T< T >::inout void   ) 
 

Definition at line 83 of file Objref_VarOut_T.cpp.

00084 {
00085   return this->ptr_;
00086 }

template<typename T>
TAO_Objref_Var_T< T >::operator T *&  ) 
 

Definition at line 69 of file Objref_VarOut_T.cpp.

00070 {
00071   return this->ptr_;
00072 }

template<typename T>
TAO_Objref_Var_T< T >::operator T *const &  )  const
 

Definition at line 63 of file Objref_VarOut_T.cpp.

00064 {
00065   return this->ptr_;
00066 }

template<typename T>
T * TAO_Objref_Var_T< T >::operator-> void   )  const
 

Definition at line 57 of file Objref_VarOut_T.cpp.

00058 {
00059   return this->ptr_;
00060 }

template<typename T>
void TAO_Objref_Var_T< T >::operator= const TAO_Base_var  )  [private]
 

Reimplemented from TAO_Base_var.

template<typename T>
TAO_Objref_Var_T< T > & TAO_Objref_Var_T< T >::operator= const TAO_Objref_Var_T< T > &   ) 
 

Definition at line 42 of file Objref_VarOut_T.cpp.

References TAO_Objref_Var_T< T >::ptr().

00045 {
00046   if (this != &p)
00047     {
00048       TAO::Objref_Traits<T>::release (this->ptr_);
00049       this->ptr_ = TAO::Objref_Traits<T>::duplicate (p.ptr ());
00050     }
00051 
00052   return *this;
00053 }

template<typename T>
TAO_Objref_Var_T< T > & TAO_Objref_Var_T< T >::operator= T *   ) 
 

Definition at line 33 of file Objref_VarOut_T.cpp.

00034 {
00035   TAO::Objref_Traits<T>::release (this->ptr_);
00036   this->ptr_ = p;
00037   return *this;
00038 }

template<typename T>
T *& TAO_Objref_Var_T< T >::out void   ) 
 

Definition at line 90 of file Objref_VarOut_T.cpp.

00091 {
00092   TAO::Objref_Traits<T>::release (this->ptr_);
00093   this->ptr_ = TAO::Objref_Traits<T>::nil ();
00094   return this->ptr_;
00095 }

template<typename T>
T * TAO_Objref_Var_T< T >::ptr void   )  const
 

Definition at line 108 of file Objref_VarOut_T.cpp.

Referenced by TAO_Policy_Set::copy_from(), TAO_Objref_Var_T< T >::operator=(), TAO_Policy_Set::set_policy(), and TAO_Policy_Set::TAO_Policy_Set().

00109 {
00110   return this->ptr_;
00111 }

template<typename T>
void TAO_Objref_Var_T< T >::reset T *   )  [protected]
 

Definition at line 122 of file Objref_VarOut_T.cpp.

00123 {
00124   TAO::Objref_Traits<T>::release (this->ptr_);
00125   this->ptr_ = p;
00126 }


Member Data Documentation

template<typename T>
T* TAO_Objref_Var_T< T >::ptr_ [protected]
 

Definition at line 84 of file Objref_VarOut_T.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:22:37 2006 for TAO by doxygen 1.3.6