Basic_Argument_T.cpp

Go to the documentation of this file.
00001 // $Id: Basic_Argument_T.cpp 74007 2006-08-14 12:50:21Z elliott_c $
00002 
00003 #ifndef TAO_BASIC_ARGUMENT_T_CPP
00004 #define TAO_BASIC_ARGUMENT_T_CPP
00005 
00006 #include "tao/Basic_Argument_T.h"
00007 
00008 #if !defined (__ACE_INLINE__)
00009 #include "tao/Basic_Argument_T.inl"
00010 #endif /* __ACE_INLINE__ */
00011 
00012 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00013 
00014 template<typename S,
00015          class Insert_Policy>
00016 CORBA::Boolean
00017 TAO::In_Basic_Argument_T<S, Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00018 {
00019   return cdr << this->x_;
00020 }
00021 
00022 #if TAO_HAS_INTERCEPTORS == 1
00023 
00024 template<typename S,
00025          class Insert_Policy>
00026 void
00027 TAO::In_Basic_Argument_T<S, Insert_Policy>::interceptor_value (CORBA::Any *any) const
00028 {
00029   Insert_Policy::any_insert (any, this->x_);
00030 }
00031 
00032 #endif /* TAO_HAS_INTERCEPTORS */
00033 
00034 template<typename S,
00035          class Insert_Policy>
00036 TAO::In_Basic_Clonable_Argument_T<S,Insert_Policy>::~In_Basic_Clonable_Argument_T ()
00037 {
00038   if (this->is_clone_)
00039     {
00040       S* tmp = const_cast<S*> (&this->x_);
00041       delete tmp;
00042     }
00043 }
00044 
00045 template<typename S,
00046          class Insert_Policy>
00047 TAO::Argument*
00048 TAO::In_Basic_Clonable_Argument_T<S,Insert_Policy>::clone ()
00049 {
00050   S* clone_x = new S (this->x_);
00051   In_Basic_Clonable_Argument_T<S,Insert_Policy>* clone_arg =
00052           new In_Basic_Clonable_Argument_T<S,Insert_Policy> (*clone_x);
00053   clone_arg->is_clone_ = true;
00054   return clone_arg;
00055 }
00056 
00057 // ===========================================================
00058 
00059 template<typename S,
00060          class Insert_Policy>
00061 CORBA::Boolean
00062 TAO::Inout_Basic_Argument_T<S, Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00063 {
00064   return cdr << this->x_;
00065 }
00066 
00067 template<typename S,
00068          class Insert_Policy>
00069 CORBA::Boolean
00070 TAO::Inout_Basic_Argument_T<S, Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00071 {
00072   return cdr >> this->x_;
00073 }
00074 
00075 #if TAO_HAS_INTERCEPTORS == 1
00076 
00077 template<typename S,
00078          class Insert_Policy>
00079 void
00080 TAO::Inout_Basic_Argument_T<S, Insert_Policy>::interceptor_value (CORBA::Any *any) const
00081 {
00082   Insert_Policy::any_insert (any, this->x_);
00083 }
00084 
00085 #endif /* TAO_HAS_INTERCEPTORS */
00086 
00087 // ==============================================================
00088 
00089 template<typename S,
00090          class Insert_Policy>
00091 CORBA::Boolean
00092 TAO::Out_Basic_Argument_T<S, Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00093 {
00094   return cdr >> this->x_;
00095 }
00096 
00097 #if TAO_HAS_INTERCEPTORS == 1
00098 
00099 template<typename S,
00100          class Insert_Policy>
00101 void
00102 TAO::Out_Basic_Argument_T<S, Insert_Policy>::interceptor_value (CORBA::Any *any) const
00103 {
00104   Insert_Policy::any_insert (any, this->x_);
00105 }
00106 
00107 #endif /* TAO_HAS_INTERCEPTORS */
00108 
00109 // ============================================================
00110 
00111 template<typename S,
00112          class Insert_Policy>
00113 CORBA::Boolean
00114 TAO::Ret_Basic_Argument_T<S, Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00115 {
00116   return cdr >> this->x_;
00117 }
00118 
00119 #if TAO_HAS_INTERCEPTORS == 1
00120 
00121 template<typename S,
00122          class Insert_Policy>
00123 void
00124 TAO::Ret_Basic_Argument_T<S, Insert_Policy>::interceptor_value (CORBA::Any *any) const
00125 {
00126   Insert_Policy::any_insert (any, this->x_);
00127 }
00128 
00129 #endif /* TAO_HAS_INTERCEPTORS */
00130 
00131 TAO_END_VERSIONED_NAMESPACE_DECL
00132 
00133 #endif /* TAO_BASIC_ARGUMENT_T_CPP */

Generated on Tue Feb 2 17:37:51 2010 for TAO by  doxygen 1.4.7