00001
00002
00003 #ifndef TAO_VAR_SIZE_SARGUMENT_T_CPP
00004 #define TAO_VAR_SIZE_SARGUMENT_T_CPP
00005
00006 #include "tao/PortableServer/Var_Size_SArgument_T.h"
00007
00008 #if !defined (__ACE_INLINE__)
00009 #include "tao/PortableServer/Var_Size_SArgument_T.inl"
00010 #endif
00011
00012
00013 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00014
00015 template<typename S,
00016 class Insert_Policy>
00017 CORBA::Boolean
00018 TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR &cdr)
00019 {
00020 return cdr >> this->x_;
00021 }
00022
00023 #if TAO_HAS_INTERCEPTORS == 1
00024
00025 template<typename S,
00026 class Insert_Policy>
00027 void
00028 TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
00029 CORBA::Any *any
00030 ) const
00031 {
00032 Insert_Policy::any_insert (any, this->x_);
00033 }
00034
00035 #endif
00036
00037
00038
00039 template<typename S,
00040 class Insert_Policy>
00041 CORBA::Boolean
00042 TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00043 {
00044 return cdr << this->x_;
00045 }
00046
00047 template<typename S,
00048 class Insert_Policy>
00049 CORBA::Boolean
00050 TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR & cdr)
00051 {
00052 return cdr >> this->x_;
00053 }
00054
00055 #if TAO_HAS_INTERCEPTORS == 1
00056
00057 template<typename S,
00058 class Insert_Policy>
00059 void
00060 TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
00061 CORBA::Any *any
00062 ) const
00063 {
00064 Insert_Policy::any_insert (any, this->x_);
00065 }
00066
00067 #endif
00068
00069
00070
00071 template<typename S,
00072 class Insert_Policy>
00073 CORBA::Boolean
00074 TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00075 {
00076 if (0 == this->x_.ptr())
00077 throw ::CORBA::BAD_PARAM(0, CORBA::COMPLETED_MAYBE);
00078
00079 return cdr << this->x_.in ();
00080 }
00081
00082 #if TAO_HAS_INTERCEPTORS == 1
00083
00084 template<typename S,
00085 class Insert_Policy>
00086 void
00087 TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
00088 CORBA::Any *any) const
00089 {
00090 Insert_Policy::any_insert (any, this->x_.in ());
00091 }
00092
00093 #endif
00094
00095
00096
00097 template<typename S,
00098 class Insert_Policy>
00099 CORBA::Boolean
00100 TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
00101 {
00102 return cdr << this->x_.in ();
00103 }
00104
00105 #if TAO_HAS_INTERCEPTORS == 1
00106
00107 template<typename S,
00108 class Insert_Policy>
00109 void
00110 TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
00111 CORBA::Any *any) const
00112 {
00113 Insert_Policy::any_insert (any, this->x_.in ());
00114 }
00115
00116 #endif
00117
00118 TAO_END_VERSIONED_NAMESPACE_DECL
00119
00120 #endif