summaryrefslogtreecommitdiff
path: root/TAO/tao/PortableServer/Var_Size_SArgument_T.h
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2005-08-19 08:02:52 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2005-08-19 08:02:52 +0000
commit7f61ed4f18c496890fbdf75300b1135d6911d9aa (patch)
tree384c03f0891bbd738983cd5477ac803253f7aaee /TAO/tao/PortableServer/Var_Size_SArgument_T.h
parenta2e27000b6545e6b410ca3960af80605df18fd7a (diff)
downloadATCD-7f61ed4f18c496890fbdf75300b1135d6911d9aa.tar.gz
ChangeLogTag Fri Aug 19 07:56:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'TAO/tao/PortableServer/Var_Size_SArgument_T.h')
-rw-r--r--TAO/tao/PortableServer/Var_Size_SArgument_T.h67
1 files changed, 38 insertions, 29 deletions
diff --git a/TAO/tao/PortableServer/Var_Size_SArgument_T.h b/TAO/tao/PortableServer/Var_Size_SArgument_T.h
index 29c5ef58dd5..14585cc096a 100644
--- a/TAO/tao/PortableServer/Var_Size_SArgument_T.h
+++ b/TAO/tao/PortableServer/Var_Size_SArgument_T.h
@@ -28,14 +28,15 @@ namespace TAO
* @brief Template class for IN skeleton argument of fixed size IDL types.
*
*/
- template<typename S>
- class In_Var_Size_SArgument_T : public Argument
+ template<typename S,
+ typename Insert_Policy>
+ class In_Var_Size_SArgument_T : public InArgument, private Insert_Policy
{
public:
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S const & arg (void) const;
@@ -49,16 +50,17 @@ namespace TAO
* @brief Template class for INOUT skeleton arg of fixed size IDL types.
*
*/
- template<typename S>
- class Inout_Var_Size_SArgument_T : public Argument
+ template<typename S,
+ typename Insert_Policy>
+ class Inout_Var_Size_SArgument_T : public InoutArgument, private Insert_Policy
{
public:
Inout_Var_Size_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
virtual CORBA::Boolean demarshal (TAO_InputCDR &);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S & arg (void);
@@ -72,15 +74,17 @@ namespace TAO
* @brief Template class for OUT skeleton argument of fixed size IDL types.
*
*/
- template<typename S, typename S_var>
- class Out_Var_Size_SArgument_T : public Argument
+ template<typename S,
+ typename S_var,
+ typename Insert_Policy>
+ class Out_Var_Size_SArgument_T : public OutArgument, private Insert_Policy
{
public:
Out_Var_Size_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_param (Dynamic::Parameter &);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S *& arg (void);
@@ -94,15 +98,17 @@ namespace TAO
* @brief Template class for return skeleton value of fixed size IDL types.
*
*/
- template<typename S, typename S_var>
- class Ret_Var_Size_SArgument_T : public Argument
+ template<typename S,
+ typename S_var,
+ typename Insert_Policy>
+ class Ret_Var_Size_SArgument_T : public RetArgument, private Insert_Policy
{
public:
Ret_Var_Size_SArgument_T (void);
- virtual CORBA::Boolean marshal (TAO_OutputCDR &);
+ virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr);
#if TAO_HAS_INTERCEPTORS == 1
- virtual void interceptor_result (CORBA::Any *);
+ virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
S *& arg (void);
@@ -111,31 +117,34 @@ namespace TAO
};
/**
- * @struct Basic_SArg_Traits_T
+ * @struct Var_Size_SArg_Traits_T
*
* @brief Template class for skeleton argument traits of
* variable size IDL types.
*
*/
- template<typename T, typename T_var, typename T_out>
+ template<typename T,
+ typename T_var,
+ typename T_out,
+ typename Insert_Policy>
struct Var_Size_SArg_Traits_T
{
- typedef T * ret_type;
- typedef const T & in_type;
- typedef T & inout_type;
- typedef T_out out_type;
+ typedef T * ret_type;
+ typedef const T & in_type;
+ typedef T & inout_type;
+ typedef T_out out_type;
- typedef In_Var_Size_SArgument_T<T> in_arg_val;
- typedef Inout_Var_Size_SArgument_T<T> inout_arg_val;
- typedef Out_Var_Size_SArgument_T<T,T_var> out_arg_val;
- typedef Ret_Var_Size_SArgument_T<T,T_var> ret_val;
+ typedef In_Var_Size_SArgument_T<T,Insert_Policy> in_arg_val;
+ typedef Inout_Var_Size_SArgument_T<T,Insert_Policy> inout_arg_val;
+ typedef Out_Var_Size_SArgument_T<T,T_var,Insert_Policy> out_arg_val;
+ typedef Ret_Var_Size_SArgument_T<T,T_var,Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
- typedef in_type in_arg_type;
- typedef inout_type inout_arg_type;
- typedef ret_type & out_arg_type;
- typedef ret_type & ret_arg_type;
+ typedef in_type in_arg_type;
+ typedef inout_type inout_arg_type;
+ typedef ret_type & out_arg_type;
+ typedef ret_type & ret_arg_type;
};
}