Public Member Functions | Private Attributes

TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy > Class Template Reference

Template class for IN stub argument of fixed size IDL types. More...

#include <Var_Size_Argument_T.h>

Inheritance diagram for TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >:
Inheritance graph
[legend]
Collaboration diagram for TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 In_Var_Size_Clonable_Argument_T (S const &x)
virtual ~In_Var_Size_Clonable_Argument_T (void)
virtual Argumentclone (void)
 Template method to clone a TAO Argument.

Private Attributes

bool is_clone_

Detailed Description

template<typename S, template< typename > class Insert_Policy>
class TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >

Template class for IN stub argument of fixed size IDL types.

Definition at line 62 of file Var_Size_Argument_T.h.


Constructor & Destructor Documentation

template<typename S , template< typename > class Insert_Policy>
TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >::In_Var_Size_Clonable_Argument_T ( S const &  x  ) 

Definition at line 27 of file Var_Size_Argument_T.inl.

  : In_Var_Size_Argument_T<S,Insert_Policy> (x),
    is_clone_ (false)
{}

template<typename S , template< typename > class Insert_Policy>
TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >::~In_Var_Size_Clonable_Argument_T ( void   )  [virtual]

Definition at line 39 of file Var_Size_Argument_T.cpp.

{
  if (this->is_clone_)
    {
      S* tmp = const_cast<S*> (this->x_);
      delete tmp;
    }
}


Member Function Documentation

template<typename S , template< typename > class Insert_Policy>
TAO::Argument * TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >::clone ( void   )  [virtual]

Template method to clone a TAO Argument.

Reimplemented from TAO::Argument.

Definition at line 51 of file Var_Size_Argument_T.cpp.

{
  S* clone_x = new S (*(this->x_));
  In_Var_Size_Clonable_Argument_T<S,Insert_Policy>* clone_arg
    = new In_Var_Size_Clonable_Argument_T<S,Insert_Policy> (*clone_x);
  clone_arg->is_clone_ = true;
  return clone_arg;
}


Member Data Documentation

template<typename S, template< typename > class Insert_Policy>
bool TAO::In_Var_Size_Clonable_Argument_T< S, Insert_Policy >::is_clone_ [private]

Definition at line 72 of file Var_Size_Argument_T.h.


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