Fixed_Array_Argument_T.cpp

Go to the documentation of this file.
00001 // Fixed_Array_Argument_T.cpp,v 1.13 2006/06/27 06:22:13 jwillemsen Exp
00002 
00003 #ifndef TAO_FIXED_ARRAY_ARGUMENT_T_CPP
00004 #define TAO_FIXED_ARRAY_ARGUMENT_T_CPP
00005 
00006 #include "tao/Fixed_Array_Argument_T.h"
00007 
00008 #if !defined (__ACE_INLINE__)
00009 #include "tao/Fixed_Array_Argument_T.inl"
00010 #endif /* __ACE_INLINE__ */
00011 
00012 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00013 
00014 template<typename S_forany,
00015          class Insert_Policy>
00016 CORBA::Boolean
00017 TAO::In_Fixed_Array_Argument_T<S_forany,Insert_Policy>::marshal (
00018     TAO_OutputCDR & cdr
00019   )
00020 {
00021   return cdr << this->x_;
00022 }
00023 
00024 #if TAO_HAS_INTERCEPTORS == 1
00025 
00026 template<typename S_forany,
00027          class Insert_Policy>
00028 void
00029 TAO::In_Fixed_Array_Argument_T<S_forany,Insert_Policy>::
00030   interceptor_value (CORBA::Any *any) const
00031 {
00032   Insert_Policy::any_insert (any, this->x_);
00033 }
00034 
00035 #endif /* TAO_HAS_INTERCEPTORS */
00036 
00037 // ===========================================================
00038 
00039 template<typename S_forany,
00040          class Insert_Policy>
00041 CORBA::Boolean
00042 TAO::Inout_Fixed_Array_Argument_T<S_forany,Insert_Policy>::marshal (
00043     TAO_OutputCDR & cdr
00044   )
00045 {
00046   return cdr << this->x_;
00047 }
00048 
00049 template<typename S_forany,
00050          class Insert_Policy>
00051 CORBA::Boolean
00052 TAO::Inout_Fixed_Array_Argument_T<S_forany,Insert_Policy>::demarshal (
00053     TAO_InputCDR & cdr
00054   )
00055 {
00056   return cdr >> this->x_;
00057 }
00058 
00059 #if TAO_HAS_INTERCEPTORS == 1
00060 
00061 template<typename S_forany,
00062          class Insert_Policy>
00063 void
00064 TAO::Inout_Fixed_Array_Argument_T<S_forany,Insert_Policy>::
00065   interceptor_value (CORBA::Any *any) const
00066 {
00067   Insert_Policy::any_insert (any, this->x_);
00068 }
00069 
00070 #endif /* TAO_HAS_INTERCEPTORS */
00071 
00072 // ==============================================================
00073 
00074 template<typename S_forany,
00075          class Insert_Policy>
00076 CORBA::Boolean
00077 TAO::Out_Fixed_Array_Argument_T<S_forany,Insert_Policy>::demarshal (
00078     TAO_InputCDR & cdr)
00079 {
00080   return cdr >> this->x_;
00081 }
00082 
00083 #if TAO_HAS_INTERCEPTORS == 1
00084 
00085 template<typename S_forany,
00086          class Insert_Policy>
00087 void
00088 TAO::Out_Fixed_Array_Argument_T<S_forany,Insert_Policy>::
00089   interceptor_value (CORBA::Any *any) const
00090 {
00091   Insert_Policy::any_insert (any, this->x_);
00092 }
00093 
00094 #endif /* TAO_HAS_INTERCEPTORS */
00095 
00096 // ============================================================
00097 
00098 template<typename S_var,
00099          typename S_forany,
00100          class Insert_Policy>
00101 CORBA::Boolean
00102 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::
00103   demarshal (TAO_InputCDR & cdr)
00104 {
00105   typedef TAO::Array_Traits<S_forany> ARRAY_TRAITS;
00106   typename S_forany::_slice_type * tmp_ptr = 0;
00107   ACE_ALLOCATOR_RETURN (tmp_ptr,
00108                         ARRAY_TRAITS::alloc (),
00109                         false);
00110   this->x_ = tmp_ptr;
00111   S_forany tmp (this->x_.ptr ());
00112   return cdr >> tmp;
00113 }
00114 
00115 #if TAO_HAS_INTERCEPTORS == 1
00116 
00117 template<typename S_var,
00118          typename S_forany,
00119          class Insert_Policy>
00120 void
00121 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::
00122 interceptor_value (CORBA::Any *any) const
00123 {
00124   Insert_Policy::any_insert (any, S_forany (this->x_.ptr ()));
00125 }
00126 
00127 #endif /* TAO_HAS_INTERCEPTORS */
00128 
00129 TAO_END_VERSIONED_NAMESPACE_DECL
00130 
00131 #endif /* TAO_FIXED_ARRAY_ARGUMENT_T_CPP */

Generated on Thu Nov 9 11:54:11 2006 for TAO by doxygen 1.3.6