TAO::details::object_reference_sequence_element< obj_ref_traits > Class Template Reference

#include <Object_Reference_Sequence_Element_T.h>

List of all members.

Public Types

typedef obj_ref_traits::object_type object_reference_type
typedef object_reference_typevalue_type
typedef object_reference_type
const * 
const_value_type
typedef obj_ref_traits::object_type_var object_reference_var

Public Member Functions

 object_reference_sequence_element (value_type &e, CORBA::Boolean release)
 object_reference_sequence_element (object_reference_sequence_element const &rhs)
 ~object_reference_sequence_element ()
object_reference_sequence_elementoperator= (object_reference_var const &rhs)
object_reference_sequence_elementoperator= (object_reference_sequence_element const &rhs)
object_reference_sequence_elementoperator= (value_type rhs)
 operator value_type ()
 operator const_value_type () const
object_reference_typein (void) const
object_reference_type *& inout (void) const
value_type operator-> ()
value_type operator-> () const
void swap (object_reference_sequence_element &rhs)
CORBA::Boolean release () const

Private Member Functions

object_reference_sequence_element<
obj_ref_traits > & 
pseudo_copy_swap (object_reference_var &rhs)
 object_reference_sequence_element ()

Private Attributes

value_typeelement_
CORBA::Boolean release_


Detailed Description

template<typename obj_ref_traits>
class TAO::details::object_reference_sequence_element< obj_ref_traits >

Definition at line 23 of file Object_Reference_Sequence_Element_T.h.


Member Typedef Documentation

template<typename obj_ref_traits>
typedef object_reference_type const* TAO::details::object_reference_sequence_element< obj_ref_traits >::const_value_type

Definition at line 28 of file Object_Reference_Sequence_Element_T.h.

template<typename obj_ref_traits>
typedef obj_ref_traits::object_type TAO::details::object_reference_sequence_element< obj_ref_traits >::object_reference_type

Definition at line 26 of file Object_Reference_Sequence_Element_T.h.

template<typename obj_ref_traits>
typedef obj_ref_traits::object_type_var TAO::details::object_reference_sequence_element< obj_ref_traits >::object_reference_var

Definition at line 29 of file Object_Reference_Sequence_Element_T.h.

template<typename obj_ref_traits>
typedef object_reference_type* TAO::details::object_reference_sequence_element< obj_ref_traits >::value_type

Definition at line 27 of file Object_Reference_Sequence_Element_T.h.


Constructor & Destructor Documentation

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::object_reference_sequence_element ( value_type e,
CORBA::Boolean  release 
) [inline]

Definition at line 44 of file Object_Reference_Sequence_Element_T.h.

00046     : element_(&e)
00047     , release_(release)
00048   {
00049   }

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::object_reference_sequence_element ( object_reference_sequence_element< obj_ref_traits > const &  rhs  )  [inline]

Definition at line 51 of file Object_Reference_Sequence_Element_T.h.

00053     : element_(rhs.element_)
00054     , release_(rhs.release_)
00055   {
00056   }

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::~object_reference_sequence_element (  )  [inline]

Definition at line 58 of file Object_Reference_Sequence_Element_T.h.

00059   {
00060   }

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::object_reference_sequence_element (  )  [private]


Member Function Documentation

template<typename obj_ref_traits>
object_reference_type* TAO::details::object_reference_sequence_element< obj_ref_traits >::in ( void   )  const [inline]

Definition at line 92 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00092                                                 {
00093     return *this->element_;
00094   }

template<typename obj_ref_traits>
object_reference_type*& TAO::details::object_reference_sequence_element< obj_ref_traits >::inout ( void   )  const [inline]

Definition at line 96 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00096                                                     {
00097     return *this->element_;
00098   }

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::operator const_value_type (  )  const [inline]

Definition at line 87 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00088   {
00089     return *this->element_;
00090   }

template<typename obj_ref_traits>
TAO::details::object_reference_sequence_element< obj_ref_traits >::operator value_type (  )  [inline]

Definition at line 82 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00083   {
00084     return *this->element_;
00085   }

template<typename obj_ref_traits>
value_type TAO::details::object_reference_sequence_element< obj_ref_traits >::operator-> ( void   )  const [inline]

Definition at line 105 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00106   {
00107     return *this->element_;
00108   }

template<typename obj_ref_traits>
value_type TAO::details::object_reference_sequence_element< obj_ref_traits >::operator-> ( void   )  [inline]

Definition at line 100 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_.

00101   {
00102     return *this->element_;
00103   }

template<typename obj_ref_traits>
object_reference_sequence_element& TAO::details::object_reference_sequence_element< obj_ref_traits >::operator= ( value_type  rhs  )  [inline]

Definition at line 76 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap().

00077   {
00078     object_reference_var tmp(rhs);
00079     return pseudo_copy_swap(tmp);
00080   }

template<typename obj_ref_traits>
object_reference_sequence_element& TAO::details::object_reference_sequence_element< obj_ref_traits >::operator= ( object_reference_sequence_element< obj_ref_traits > const &  rhs  )  [inline]

Definition at line 69 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_, and TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap().

00071   {
00072     object_reference_var tmp(obj_ref_traits::duplicate(*rhs.element_));
00073     return pseudo_copy_swap(tmp);
00074   }

template<typename obj_ref_traits>
object_reference_sequence_element& TAO::details::object_reference_sequence_element< obj_ref_traits >::operator= ( object_reference_var const &  rhs  )  [inline]

Definition at line 62 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap().

00064   {
00065     object_reference_var tmp(rhs);
00066     return pseudo_copy_swap(tmp);
00067   }

template<typename obj_ref_traits>
object_reference_sequence_element<obj_ref_traits>& TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap ( object_reference_var rhs  )  [inline, private]

Definition at line 32 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_, CORBA::release(), and TAO::details::object_reference_sequence_element< obj_ref_traits >::release().

Referenced by TAO::details::object_reference_sequence_element< obj_ref_traits >::operator=().

00034   {
00035     if (release())
00036     {
00037       obj_ref_traits::release(*element_);
00038     }
00039     *element_ = rhs._retn();
00040     return *this;
00041   }

template<typename obj_ref_traits>
CORBA::Boolean TAO::details::object_reference_sequence_element< obj_ref_traits >::release ( void   )  const [inline]

Definition at line 116 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::release_.

Referenced by TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap().

00117   {
00118     return this->release_;
00119   }

template<typename obj_ref_traits>
void TAO::details::object_reference_sequence_element< obj_ref_traits >::swap ( object_reference_sequence_element< obj_ref_traits > &  rhs  )  [inline]

Definition at line 110 of file Object_Reference_Sequence_Element_T.h.

References TAO::details::object_reference_sequence_element< obj_ref_traits >::element_, and TAO::details::object_reference_sequence_element< obj_ref_traits >::release_.

00111   {
00112     std::swap(this->element_, rhs.element_);
00113     std::swap(this->release_, rhs.release_);
00114   }


Member Data Documentation

template<typename obj_ref_traits>
value_type* TAO::details::object_reference_sequence_element< obj_ref_traits >::element_ [private]

Definition at line 126 of file Object_Reference_Sequence_Element_T.h.

Referenced by TAO::details::object_reference_sequence_element< obj_ref_traits >::in(), TAO::details::object_reference_sequence_element< obj_ref_traits >::inout(), TAO::details::object_reference_sequence_element< obj_ref_traits >::operator const_value_type(), TAO::details::object_reference_sequence_element< obj_ref_traits >::operator value_type(), TAO::details::object_reference_sequence_element< obj_ref_traits >::operator->(), TAO::details::object_reference_sequence_element< obj_ref_traits >::operator=(), TAO::details::object_reference_sequence_element< obj_ref_traits >::pseudo_copy_swap(), and TAO::details::object_reference_sequence_element< obj_ref_traits >::swap().

template<typename obj_ref_traits>
CORBA::Boolean TAO::details::object_reference_sequence_element< obj_ref_traits >::release_ [private]

Definition at line 127 of file Object_Reference_Sequence_Element_T.h.

Referenced by TAO::details::object_reference_sequence_element< obj_ref_traits >::release(), and TAO::details::object_reference_sequence_element< obj_ref_traits >::swap().


The documentation for this class was generated from the following file:
Generated on Tue Feb 2 17:39:58 2010 for TAO by  doxygen 1.4.7