Public Types | Public Member Functions | Protected Types | Protected Attributes

TAO_Array_Var_Base_T< T, T_slice, TAG > Class Template Reference

Parametrized implementation of _var base class for arrays. More...

#include <Array_VarOut_T.h>

Inheritance diagram for TAO_Array_Var_Base_T< T, T_slice, TAG >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef T_slice _slice_type
typedef T_slice const & _const_subscript_type
typedef T_slice & _subscript_type
typedef const _slice_type_in_type
typedef _slice_type_inout_type
typedef _slice_type_retn_type
typedef _slice_type *& _retn_arg_type

Public Member Functions

 TAO_Array_Var_Base_T (void)
 TAO_Array_Var_Base_T (_slice_type *)
 TAO_Array_Var_Base_T (const TAO_Array_Var_Base_T< T, T_slice, TAG > &)
 ~TAO_Array_Var_Base_T (void)
_subscript_type operator[] (CORBA::ULong index)
_const_subscript_type operator[] (CORBA::ULong index) const
 operator _slice_type *const & () const
_in_type in (void) const
_inout_type inout (void)
_retn_type _retn (void)
_retn_arg_type _retn_arg (void)
_retn_type ptr (void) const

Protected Types

typedef TAO_Array_Forany_T< T,
T_slice, TAG > 
FORANY

Protected Attributes

_slice_typeptr_

Detailed Description

template<typename T, typename T_slice, typename TAG>
class TAO_Array_Var_Base_T< T, T_slice, TAG >

Parametrized implementation of _var base class for arrays.

Definition at line 100 of file Array_VarOut_T.h.


Member Typedef Documentation

template<typename T , typename T_slice , typename TAG >
typedef T_slice const& TAO_Array_Var_Base_T< T, T_slice, TAG >::_const_subscript_type

Definition at line 104 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef const _slice_type* TAO_Array_Var_Base_T< T, T_slice, TAG >::_in_type

Definition at line 116 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef _slice_type* TAO_Array_Var_Base_T< T, T_slice, TAG >::_inout_type

Definition at line 117 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef _slice_type*& TAO_Array_Var_Base_T< T, T_slice, TAG >::_retn_arg_type

Definition at line 119 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef _slice_type* TAO_Array_Var_Base_T< T, T_slice, TAG >::_retn_type

Definition at line 118 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef T_slice TAO_Array_Var_Base_T< T, T_slice, TAG >::_slice_type
template<typename T , typename T_slice , typename TAG >
typedef T_slice& TAO_Array_Var_Base_T< T, T_slice, TAG >::_subscript_type

Definition at line 105 of file Array_VarOut_T.h.

template<typename T , typename T_slice , typename TAG >
typedef TAO_Array_Forany_T<T,T_slice,TAG> TAO_Array_Var_Base_T< T, T_slice, TAG >::FORANY [protected]

Constructor & Destructor Documentation

template<typename T , typename T_slice , typename TAG >
TAO_Array_Var_Base_T< T, T_slice, TAG >::TAO_Array_Var_Base_T ( void   ) 

Definition at line 9 of file Array_VarOut_T.inl.

  : ptr_ (0)
{}

template<typename T , typename T_slice , typename TAG >
TAO_Array_Var_Base_T< T, T_slice, TAG >::TAO_Array_Var_Base_T ( _slice_type p  ) 

Definition at line 15 of file Array_VarOut_T.inl.

  : ptr_ (p)
{}

template<typename T , typename T_slice , typename TAG >
TAO_Array_Var_Base_T< T, T_slice, TAG >::TAO_Array_Var_Base_T ( const TAO_Array_Var_Base_T< T, T_slice, TAG > &  p  ) 

Definition at line 21 of file Array_VarOut_T.inl.

{
  this->ptr_ = TAO::Array_Traits<FORANY>::dup (p.in ());
}

template<typename T , typename T_slice , typename TAG >
TAO_Array_Var_Base_T< T, T_slice, TAG >::~TAO_Array_Var_Base_T ( void   ) 

Definition at line 30 of file Array_VarOut_T.inl.

{
  TAO::Array_Traits<FORANY>::free (this->ptr_);
}


Member Function Documentation

template<typename T , typename T_slice , typename TAG >
T_slice * TAO_Array_Var_Base_T< T, T_slice, TAG >::_retn ( void   ) 

Definition at line 89 of file Array_VarOut_T.inl.

{
  T_slice * tmp = this->ptr_;
  this->ptr_ = 0;
  return tmp;
}

template<typename T , typename T_slice , typename TAG >
T_slice *& TAO_Array_Var_Base_T< T, T_slice, TAG >::_retn_arg ( void   ) 

Definition at line 79 of file Array_VarOut_T.inl.

{
  TAO::Array_Traits<FORANY>::free (this->ptr_);
  this->ptr_ = 0;
  return this->ptr_;
}

template<typename T , typename T_slice , typename TAG >
const T_slice * TAO_Array_Var_Base_T< T, T_slice, TAG >::in ( void   )  const

Definition at line 61 of file Array_VarOut_T.inl.

{
  // @todo Replace with C++ cast after vc6 has been dropped,
  // vc6 can't handle this as const cast
  return (const T_slice *) this->ptr_;
}

template<typename T , typename T_slice , typename TAG >
T_slice * TAO_Array_Var_Base_T< T, T_slice, TAG >::inout ( void   ) 

Definition at line 71 of file Array_VarOut_T.inl.

{
  return this->ptr_;
}

template<typename T, typename T_slice, typename TAG>
TAO_Array_Var_Base_T< T, T_slice, TAG >::operator _slice_type *const & (  )  const
template<typename T , typename T_slice , typename TAG >
T_slice const & TAO_Array_Var_Base_T< T, T_slice, TAG >::operator[] ( CORBA::ULong  index  )  const

Definition at line 45 of file Array_VarOut_T.inl.

{
  return this->ptr_[index];
}

template<typename T , typename T_slice , typename TAG >
T_slice & TAO_Array_Var_Base_T< T, T_slice, TAG >::operator[] ( CORBA::ULong  index  ) 

Definition at line 53 of file Array_VarOut_T.inl.

{
  return this->ptr_[index];
}

template<typename T , typename T_slice , typename TAG >
T_slice * TAO_Array_Var_Base_T< T, T_slice, TAG >::ptr ( void   )  const

Definition at line 99 of file Array_VarOut_T.inl.

{
  return this->ptr_;
}


Member Data Documentation

template<typename T, typename T_slice, typename TAG>
_slice_type* TAO_Array_Var_Base_T< T, T_slice, TAG >::ptr_ [protected]

Definition at line 131 of file Array_VarOut_T.h.


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