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

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

#include <Var_Size_Argument_T.h>

Inheritance diagram for TAO::Out_Var_Size_Argument_T< S, Insert_Policy >:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Out_Var_Size_Argument_T (typename S::_out_type x)
virtual CORBA::Boolean demarshal (TAO_InputCDR &)
 Demarshal the argument from the given CDR input stream.
virtual void interceptor_value (CORBA::Any *any) const
 Populate the given CORBA::Any result argument.
S *& arg (void)

Private Attributes

S *& x_

Detailed Description

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

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

Definition at line 104 of file Var_Size_Argument_T.h.


Constructor & Destructor Documentation

template<typename S, class Insert_Policy>
ACE_INLINE TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::Out_Var_Size_Argument_T ( typename S::_out_type  x  ) 

Definition at line 56 of file Var_Size_Argument_T.inl.

00059   : x_ (x.ptr ())
00060 {}


Member Function Documentation

template<typename S, class Insert_Policy>
ACE_INLINE S *& TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::arg ( void   ) 

Definition at line 66 of file Var_Size_Argument_T.inl.

References TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::x_.

00067 {
00068   return this->x_;
00069 }

template<typename S, class Insert_Policy>
CORBA::Boolean TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::demarshal ( TAO_InputCDR  )  [virtual]

Demarshal the argument from the given CDR input stream.

Note:
The default implementation simply returns true.

Reimplemented from TAO::Argument.

Definition at line 100 of file Var_Size_Argument_T.cpp.

References TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::x_.

00103 {
00104 #if defined (ACE_HAS_NEW_NOTHROW)
00105   this->x_ = new (ACE_nothrow) S;
00106 #else
00107   this->x_ = new S;
00108 #endif /* ACE_HAS_NEW_NOTHROW */
00109   return cdr >> *this->x_;
00110 }

template<typename S, class Insert_Policy>
void TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::interceptor_value ( CORBA::Any *  any  )  const [virtual]

Populate the given CORBA::Any result argument.

Note:
The default implementation is a no-op.

Reimplemented from TAO::Argument.

Definition at line 117 of file Var_Size_Argument_T.cpp.

00120 {
00121   Insert_Policy::any_insert (any, *this->x_);
00122 }


Member Data Documentation

template<typename S, class Insert_Policy>
S*& TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::x_ [private]

Definition at line 116 of file Var_Size_Argument_T.h.

Referenced by TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::arg(), and TAO::Out_Var_Size_Argument_T< S, Insert_Policy >::demarshal().


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