00001
00002
00003 #ifndef TAO_VAR_ARRAY_SARGUMENT_T_CPP
00004 #define TAO_VAR_ARRAY_SARGUMENT_T_CPP
00005
00006 #include "tao/PortableServer/Var_Array_SArgument_T.h"
00007
00008 #if !defined (__ACE_INLINE__)
00009 #include "tao/PortableServer/Var_Array_SArgument_T.inl"
00010 #endif
00011
00012 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00013
00014 template<typename S_forany,
00015 class Insert_Policy>
00016 CORBA::Boolean
00017 TAO::In_Var_Array_SArgument_T<S_forany,
00018 Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00019 {
00020 S_forany tmp (this->x_);
00021 return cdr >> tmp;
00022 }
00023
00024 #if TAO_HAS_INTERCEPTORS == 1
00025
00026 template<typename S_forany,
00027 class Insert_Policy>
00028 void
00029 TAO::In_Var_Array_SArgument_T<S_forany,
00030 Insert_Policy>::interceptor_value (
00031 CORBA::Any *any) const
00032 {
00033 Insert_Policy::any_insert (any, S_forany (this->x_));
00034 }
00035
00036 #endif
00037
00038
00039
00040 template<typename S_forany,
00041 class Insert_Policy>
00042 CORBA::Boolean
00043 TAO::Inout_Var_Array_SArgument_T<S_forany,
00044 Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00045 {
00046 return cdr << S_forany (this->x_);
00047 }
00048
00049 template<typename S_forany,
00050 class Insert_Policy>
00051 CORBA::Boolean
00052 TAO::Inout_Var_Array_SArgument_T<S_forany,
00053 Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00054 {
00055 S_forany tmp (this->x_);
00056 return cdr >> tmp;
00057 }
00058
00059 #if TAO_HAS_INTERCEPTORS == 1
00060
00061 template<typename S_forany,
00062 class Insert_Policy>
00063 void
00064 TAO::Inout_Var_Array_SArgument_T<S_forany,
00065 Insert_Policy>::interceptor_value (
00066 CORBA::Any *any) const
00067 {
00068 typedef typename S_forany::_slice_type slice_type;
00069 Insert_Policy::any_insert (
00070 any,
00071 S_forany (const_cast <slice_type *>(this->x_))
00072 );
00073 }
00074
00075 #endif
00076
00077
00078
00079 template<typename S_var,
00080 typename S_forany,
00081 class Insert_Policy>
00082 CORBA::Boolean
00083 TAO::Out_Var_Array_SArgument_T<S_var,
00084 S_forany,
00085 Insert_Policy>::marshal (
00086 TAO_OutputCDR & cdr
00087 )
00088 {
00089 S_forany tmp (this->x_.ptr ());
00090 return cdr << tmp;
00091 }
00092
00093 #if TAO_HAS_INTERCEPTORS == 1
00094
00095 template<typename S_var,
00096 typename S_forany,
00097 class Insert_Policy>
00098 void
00099 TAO::Out_Var_Array_SArgument_T<S_var,
00100 S_forany,
00101 Insert_Policy>::interceptor_value (
00102 CORBA::Any *any) const
00103 {
00104 Insert_Policy::any_insert (any, S_forany (this->x_.ptr ()));
00105 }
00106
00107 #endif
00108
00109
00110
00111 template<typename S_var,
00112 typename S_forany,
00113 class Insert_Policy>
00114 CORBA::Boolean
00115 TAO::Ret_Var_Array_SArgument_T<S_var,
00116 S_forany,
00117 Insert_Policy>::marshal (
00118 TAO_OutputCDR & cdr
00119 )
00120 {
00121 return cdr << S_forany (this->x_.ptr ());
00122 }
00123
00124 #if TAO_HAS_INTERCEPTORS == 1
00125
00126 template<typename S_var,
00127 typename S_forany,
00128 class Insert_Policy>
00129 void
00130 TAO::Ret_Var_Array_SArgument_T<S_var,
00131 S_forany,
00132 Insert_Policy>::interceptor_value (
00133 CORBA::Any *any) const
00134 {
00135 Insert_Policy::any_insert (any, S_forany (this->x_.ptr ()));
00136 }
00137
00138 #endif
00139
00140 TAO_END_VERSIONED_NAMESPACE_DECL
00141
00142 #endif