1 #ifndef TAO_VAR_SIZE_SARGUMENT_T_CPP
2 #define TAO_VAR_SIZE_SARGUMENT_T_CPP
4 #if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
5 #include "tao/PortableServer/Var_Size_SArgument_T.h"
6 #endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
8 #include "tao/SystemException.h"
10 #if !defined (__ACE_INLINE__)
11 #include "tao/PortableServer/Var_Size_SArgument_T.inl"
12 #endif /* __ACE_INLINE__ */
14 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
17 template <typename
> class Insert_Policy
>
19 TAO::In_Var_Size_SArgument_T
<S
,Insert_Policy
>::demarshal (TAO_InputCDR
&cdr
)
21 return cdr
>> this->x_
;
24 #if TAO_HAS_INTERCEPTORS == 1
27 template <typename
> class Insert_Policy
>
29 TAO::In_Var_Size_SArgument_T
<S
,Insert_Policy
>::interceptor_value (
30 CORBA::Any
*any
) const
32 Insert_Policy
<S
>::any_insert (any
, this->x_
);
35 #endif /* TAO_HAS_INTERCEPTORS */
37 // ===========================================================
40 template <typename
> class Insert_Policy
>
42 TAO::Inout_Var_Size_SArgument_T
<S
,Insert_Policy
>::marshal (TAO_OutputCDR
&cdr
)
44 return cdr
<< this->x_
;
48 template <typename
> class Insert_Policy
>
50 TAO::Inout_Var_Size_SArgument_T
<S
,Insert_Policy
>::demarshal (TAO_InputCDR
& cdr
)
52 return cdr
>> this->x_
;
55 #if TAO_HAS_INTERCEPTORS == 1
58 template <typename
> class Insert_Policy
>
60 TAO::Inout_Var_Size_SArgument_T
<S
,Insert_Policy
>::interceptor_value (
61 CORBA::Any
*any
) const
63 Insert_Policy
<S
>::any_insert (any
, this->x_
);
66 #endif /* TAO_HAS_INTERCEPTORS */
68 // ==============================================================
71 template <typename
> class Insert_Policy
>
73 TAO::Out_Var_Size_SArgument_T
<S
,Insert_Policy
>::marshal (TAO_OutputCDR
&cdr
)
75 if (0 == this->x_
.ptr())
76 throw ::CORBA::BAD_PARAM(0, CORBA::COMPLETED_MAYBE
);
78 return cdr
<< this->x_
.in ();
81 #if TAO_HAS_INTERCEPTORS == 1
84 template <typename
> class Insert_Policy
>
86 TAO::Out_Var_Size_SArgument_T
<S
,Insert_Policy
>::interceptor_value (
87 CORBA::Any
*any
) const
89 Insert_Policy
<S
>::any_insert (any
, this->x_
.in ());
92 #endif /* TAO_HAS_INTERCEPTORS */
94 // ============================================================
97 template <typename
> class Insert_Policy
>
99 TAO::Ret_Var_Size_SArgument_T
<S
,Insert_Policy
>::marshal (TAO_OutputCDR
&cdr
)
101 return cdr
<< this->x_
.in ();
104 #if TAO_HAS_INTERCEPTORS == 1
107 template <typename
> class Insert_Policy
>
109 TAO::Ret_Var_Size_SArgument_T
<S
,Insert_Policy
>::interceptor_value (
110 CORBA::Any
*any
) const
112 Insert_Policy
<S
>::any_insert (any
, this->x_
.in ());
115 #endif /* TAO_HAS_INTERCEPTORS */
117 TAO_END_VERSIONED_NAMESPACE_DECL
119 #endif /* TAO_VAR_SIZE_SARGUMENT_T_CPP */