00001 // -*- C++ -*- 00002 // 00003 //$Id: Seq_Out_T.inl 72136 2006-04-19 09:10:19Z jwillemsen $ 00004 00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00006 00007 template<typename T> 00008 ACE_INLINE 00009 TAO_Seq_Out_T<T>::TAO_Seq_Out_T (T *& p) 00010 : ptr_ (p) 00011 { 00012 this->ptr_ = 0; 00013 } 00014 00015 template<typename T> 00016 ACE_INLINE 00017 TAO_Seq_Out_T<T>::TAO_Seq_Out_T (T_var & p) 00018 : ptr_ (p.out ()) 00019 { 00020 delete this->ptr_; 00021 this->ptr_ = 0; 00022 } 00023 00024 template<typename T> 00025 ACE_INLINE 00026 TAO_Seq_Out_T<T>::TAO_Seq_Out_T ( 00027 const TAO_Seq_Out_T<T> & p 00028 ) 00029 : ptr_ (p.ptr_) 00030 {} 00031 00032 template<typename T> 00033 ACE_INLINE 00034 TAO_Seq_Out_T<T> & 00035 TAO_Seq_Out_T<T>::operator= ( 00036 const TAO_Seq_Out_T<T> & p 00037 ) 00038 { 00039 this->ptr_ = p.ptr_; 00040 return *this; 00041 } 00042 00043 template<typename T> 00044 ACE_INLINE 00045 TAO_Seq_Out_T<T> & 00046 TAO_Seq_Out_T<T>::operator= (T * p) 00047 { 00048 this->ptr_ = p; 00049 return *this; 00050 } 00051 00052 template<typename T> 00053 ACE_INLINE 00054 TAO_Seq_Out_T<T>::operator T *& () 00055 { 00056 return this->ptr_; 00057 } 00058 00059 template<typename T> 00060 ACE_INLINE 00061 T *& 00062 TAO_Seq_Out_T<T>::ptr (void) 00063 { 00064 return this->ptr_; 00065 } 00066 00067 template<typename T> 00068 ACE_INLINE 00069 T * 00070 TAO_Seq_Out_T<T>::operator-> (void) 00071 { 00072 return this->ptr_; 00073 } 00074 00075 template<typename T> 00076 ACE_INLINE 00077 typename TAO_Seq_Out_T<T>::T_elem 00078 TAO_Seq_Out_T<T>::operator[] (CORBA::ULong index) 00079 { 00080 return this->ptr_->operator[] (index); 00081 } 00082 00083 TAO_END_VERSIONED_NAMESPACE_DECL