Public Member Functions | Private Attributes

TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy > Class Template Reference

Template class for IN stub argument of (w)char/boolean/octet. More...

#include <Special_Basic_Argument_T.h>

Inheritance diagram for TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy >:
Inheritance graph
[legend]
Collaboration diagram for TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

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

Private Attributes

bool is_clone_

Detailed Description

template<typename S, typename to_S, typename from_S, template< typename > class Insert_Policy>
class TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy >

Template class for IN stub argument of (w)char/boolean/octet.

Definition at line 65 of file Special_Basic_Argument_T.h.


Constructor & Destructor Documentation

template<typename S , typename to_S , typename from_S , template< typename > class Insert_Policy>
TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy >::In_Special_Basic_Clonable_Argument_T ( S const &  x  ) 

Definition at line 34 of file Special_Basic_Argument_T.inl.

  : In_Special_Basic_Argument_T<S,to_S,from_S,Insert_Policy> (x),
    is_clone_ (false)
{}

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

Definition at line 44 of file Special_Basic_Argument_T.cpp.

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


Member Function Documentation

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

Template method to clone a TAO Argument.

Reimplemented from TAO::Argument.

Definition at line 58 of file Special_Basic_Argument_T.cpp.

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


Member Data Documentation

template<typename S, typename to_S, typename from_S, template< typename > class Insert_Policy>
bool TAO::In_Special_Basic_Clonable_Argument_T< S, to_S, from_S, Insert_Policy >::is_clone_ [private]

Definition at line 75 of file Special_Basic_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