Public Types | Public Member Functions | Private Member Functions | Private Attributes

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_type * value_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_type * in (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_type * element_
CORBA::Boolean release_

Detailed Description

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

Definition at line 25 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 30 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 28 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 31 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 29 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 46 of file Object_Reference_Sequence_Element_T.h.

    : element_(&e)
    , release_(release)
  {
  }

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 53 of file Object_Reference_Sequence_Element_T.h.

    : element_(rhs.element_)
    , release_(rhs.release_)
  {
  }

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

Definition at line 60 of file Object_Reference_Sequence_Element_T.h.

  {
  }

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 94 of file Object_Reference_Sequence_Element_T.h.

                                                {
    return *this->element_;
  }

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

Definition at line 98 of file Object_Reference_Sequence_Element_T.h.

                                                    {
    return *this->element_;
  }

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

Definition at line 89 of file Object_Reference_Sequence_Element_T.h.

  {
    return *this->element_;
  }

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

Definition at line 84 of file Object_Reference_Sequence_Element_T.h.

  {
    return *this->element_;
  }

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

Definition at line 102 of file Object_Reference_Sequence_Element_T.h.

  {
    return *this->element_;
  }

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

Definition at line 107 of file Object_Reference_Sequence_Element_T.h.

  {
    return *this->element_;
  }

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 64 of file Object_Reference_Sequence_Element_T.h.

  {
    object_reference_var tmp(rhs);
    return pseudo_copy_swap(tmp);
  }

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 71 of file Object_Reference_Sequence_Element_T.h.

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

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 78 of file Object_Reference_Sequence_Element_T.h.

  {
    object_reference_var tmp(rhs);
    return pseudo_copy_swap(tmp);
  }

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 34 of file Object_Reference_Sequence_Element_T.h.

  {
    if (release())
    {
      obj_ref_traits::release(*element_);
    }
    *element_ = rhs._retn();
    return *this;
  }

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

Definition at line 118 of file Object_Reference_Sequence_Element_T.h.

  {
    return this->release_;
  }

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 112 of file Object_Reference_Sequence_Element_T.h.

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


Member Data Documentation

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

Definition at line 128 of file Object_Reference_Sequence_Element_T.h.

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

Definition at line 129 of file Object_Reference_Sequence_Element_T.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines