summaryrefslogtreecommitdiff
path: root/TAO/tao/PortableServer
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-06-19 14:51:36 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-06-19 14:51:36 +0000
commit061823f12de356c0e923beb28fa21892b8463dbd (patch)
tree27d566b86585b07ef0779a5f17a66d5fff4d2327 /TAO/tao/PortableServer
parentd8f3fb3e01c05aaafd8f8527a014781feab8ea45 (diff)
downloadATCD-061823f12de356c0e923beb28fa21892b8463dbd.tar.gz
ChangeLogTag: Mon Jun 19 14:49:25 UTC 2006 Jeff Parsons <j.parsons@vanderbilt.edu>
Diffstat (limited to 'TAO/tao/PortableServer')
-rw-r--r--TAO/tao/PortableServer/Any_SArg_Traits.h4
-rw-r--r--TAO/tao/PortableServer/BD_String_SArgument_T.cpp95
-rw-r--r--TAO/tao/PortableServer/BD_String_SArgument_T.h83
-rw-r--r--TAO/tao/PortableServer/BD_String_SArgument_T.inl66
-rw-r--r--TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp1
-rw-r--r--TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h2
-rw-r--r--TAO/tao/PortableServer/Fixed_Array_SArgument_T.cpp68
-rw-r--r--TAO/tao/PortableServer/Fixed_Array_SArgument_T.h61
-rw-r--r--TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl68
-rw-r--r--TAO/tao/PortableServer/Fixed_Size_SArgument_T.h2
-rw-r--r--TAO/tao/PortableServer/Object_SArg_Traits.h2
-rw-r--r--TAO/tao/PortableServer/Object_SArgument_T.h18
-rw-r--r--TAO/tao/PortableServer/PolicyS.cpp14
-rw-r--r--TAO/tao/PortableServer/Servant_Upcall.h2
-rw-r--r--TAO/tao/PortableServer/TypeCode_SArg_Traits.h2
-rw-r--r--TAO/tao/PortableServer/Var_Array_SArgument_T.cpp71
-rw-r--r--TAO/tao/PortableServer/Var_Array_SArgument_T.h62
-rw-r--r--TAO/tao/PortableServer/Var_Array_SArgument_T.inl64
-rw-r--r--TAO/tao/PortableServer/Var_Size_SArgument_T.cpp47
-rw-r--r--TAO/tao/PortableServer/Var_Size_SArgument_T.h33
-rw-r--r--TAO/tao/PortableServer/Var_Size_SArgument_T.inl33
-rw-r--r--TAO/tao/PortableServer/get_arg.h54
22 files changed, 285 insertions, 567 deletions
diff --git a/TAO/tao/PortableServer/Any_SArg_Traits.h b/TAO/tao/PortableServer/Any_SArg_Traits.h
index 21cdd6547cf..94980dc0c0b 100644
--- a/TAO/tao/PortableServer/Any_SArg_Traits.h
+++ b/TAO/tao/PortableServer/Any_SArg_Traits.h
@@ -29,8 +29,6 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL
namespace CORBA
{
class Any;
- class Any_var;
- class Any_out;
}
namespace TAO
@@ -40,8 +38,6 @@ namespace TAO
: public
Var_Size_SArg_Traits_T<
CORBA::Any,
- CORBA::Any_var,
- CORBA::Any_out,
TAO::Any_Insert_Policy_Stream <CORBA::Any>
>
{
diff --git a/TAO/tao/PortableServer/BD_String_SArgument_T.cpp b/TAO/tao/PortableServer/BD_String_SArgument_T.cpp
index f145439f8e7..a2d9c520a30 100644
--- a/TAO/tao/PortableServer/BD_String_SArgument_T.cpp
+++ b/TAO/tao/PortableServer/BD_String_SArgument_T.cpp
@@ -11,148 +11,131 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
CORBA::Boolean
-TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::demarshal (
+TAO::In_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::demarshal (
TAO_InputCDR & cdr
)
{
- return cdr >> to_S (this->x_.out (), BOUND);
+ return cdr >> typename S_var::s_traits::to_type (this->x_.out (), BOUND);
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
void
-TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::interceptor_value (
+TAO::In_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
- this->Insert_Policy::any_insert (any, from_S (this->x_.in (), BOUND));
+ this->Insert_Policy::any_insert (
+ any,
+ typename S_var::s_traits::from_type (this->x_.in (), BOUND)
+ );
}
#endif /* TAO_HAS_INTERCEPTORS */
// ===========================================================
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::marshal (
+TAO::Inout_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::marshal (
TAO_OutputCDR & cdr
)
{
- return cdr << from_S (this->x_.in (), BOUND);
+ return cdr << typename S_var::s_traits::from_type (this->x_.in (), BOUND);
}
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::demarshal (
+TAO::Inout_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::demarshal (
TAO_InputCDR & cdr
)
{
- return cdr >> to_S (this->x_.out (), BOUND);
+ return cdr >> typename S_var::s_traits::to_type (this->x_.out (), BOUND);
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
void
-TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Inout_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
interceptor_value (CORBA::Any *any) const
{
- this->Insert_Policy::any_insert (any, from_S (this->x_.in (), BOUND));
+ this->Insert_Policy::any_insert (
+ any,
+ typename S_var::s_traits::from_type (this->x_.in (), BOUND)
+ );
}
#endif /* TAO_HAS_INTERCEPTORS */
// ==============================================================
-template<typename S,
- typename S_var,
- typename S_out,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
CORBA::Boolean
-TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND,Insert_Policy>::marshal (
+TAO::Out_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::marshal (
TAO_OutputCDR &cdr
)
{
- return cdr << from_S (this->x_.in (), BOUND);
+ return cdr << typename S_var::s_traits::from_type (this->x_.in (), BOUND);
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename S_out,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
void
-TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Out_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
interceptor_value (CORBA::Any *any) const
{
- this->Insert_Policy::any_insert (any, from_S (this->x_.in (), BOUND));
+ this->Insert_Policy::any_insert (
+ any,
+ typename S_var::s_traits::from_type (this->x_.in (), BOUND)
+ );
}
#endif /* TAO_HAS_INTERCEPTORS */
// ============================================================
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
CORBA::Boolean
-TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::marshal (
+TAO::Ret_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::marshal (
TAO_OutputCDR & cdr
)
{
- return cdr << from_S (this->x_.in (), BOUND);
+ return cdr << typename S_var::s_traits::from_type (this->x_.in (), BOUND);
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
void
-TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Ret_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
interceptor_value (CORBA::Any *any) const
{
- this->Insert_Policy::any_insert (any, from_S (this->x_.in (), BOUND));
+ this->Insert_Policy::any_insert (
+ any,
+ typename S_var::s_traits::from_type (this->x_.in (), BOUND)
+ );
}
#endif /* TAO_HAS_INTERCEPTORS */
diff --git a/TAO/tao/PortableServer/BD_String_SArgument_T.h b/TAO/tao/PortableServer/BD_String_SArgument_T.h
index fd24af1a112..f14ccaa1b28 100644
--- a/TAO/tao/PortableServer/BD_String_SArgument_T.h
+++ b/TAO/tao/PortableServer/BD_String_SArgument_T.h
@@ -35,10 +35,7 @@ namespace TAO
* @brief Template class for IN skeleton bd (w)string argument.
*
*/
- template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+ template<typename S_var,
size_t BOUND,
typename Insert_Policy>
class In_BD_String_SArgument_T : public InArgument, private Insert_Policy
@@ -50,7 +47,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- const S * arg (void) const;
+ const typename S_var::s_traits::char_type * arg (void) const;
private:
S_var x_;
@@ -62,10 +59,7 @@ namespace TAO
* @brief Template class for INOUT skeleton bd (w)string argument.
*
*/
- template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+ template<typename S_var,
size_t BOUND,
typename Insert_Policy>
class Inout_BD_String_SArgument_T : public InoutArgument, private Insert_Policy
@@ -78,7 +72,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S *& arg (void);
+ typename S_var::s_traits::char_type *& arg (void);
private:
S_var x_;
@@ -90,11 +84,7 @@ namespace TAO
* @brief Template class for INOUT skeleton bd (w)string argument.
*
*/
- template<typename S,
- typename S_var,
- typename S_out,
- typename to_S,
- typename from_S,
+ template<typename S_var,
size_t BOUND,
typename Insert_Policy>
class Out_BD_String_SArgument_T : public OutArgument, private Insert_Policy
@@ -106,7 +96,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S *& arg (void);
+ typename S_var::s_traits::char_type *& arg (void);
private:
S_var x_;
@@ -118,10 +108,7 @@ namespace TAO
* @brief Template class for return skeleton value of bd (w)string.
*
*/
- template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+ template<typename S_var,
size_t BOUND,
typename Insert_Policy>
class Ret_BD_String_SArgument_T : public RetArgument, private Insert_Policy
@@ -133,7 +120,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S *& arg (void);
+ typename S_var::s_traits::char_type *& arg (void);
private:
S_var x_;
@@ -145,53 +132,35 @@ namespace TAO
* @brief Template class for skeleton argument traits of bounded (w)strings.
*
*/
- template<typename T,
- typename T_var,
- typename T_out,
- typename to_T,
- typename from_T,
+ template<typename T_var,
size_t BOUND,
typename Insert_Policy>
struct BD_String_SArg_Traits_T
{
- typedef T * ret_type;
- typedef const T * in_type;
- typedef T *& inout_type;
- typedef T_out out_type;
-
- typedef In_BD_String_SArgument_T<T,
- T_var,
- to_T,
- from_T,
+ typedef typename T_var::s_traits::char_type * ret_type;
+ typedef const typename T_var::s_traits::char_type * in_type;
+ typedef typename T_var::s_traits::char_type *& inout_type;
+ typedef typename T_var::s_traits::string_out out_type;
+
+ typedef In_BD_String_SArgument_T<T_var,
BOUND,
- Insert_Policy> in_arg_val;
- typedef Inout_BD_String_SArgument_T<T,
- T_var,
- to_T,
- from_T,
+ Insert_Policy> in_arg_val;
+ typedef Inout_BD_String_SArgument_T<T_var,
BOUND,
- Insert_Policy> inout_arg_val;
- typedef Out_BD_String_SArgument_T<T,
- T_var,
- T_out,
- to_T,
- from_T,
+ Insert_Policy> inout_arg_val;
+ typedef Out_BD_String_SArgument_T<T_var,
BOUND,
- Insert_Policy> out_arg_val;
- typedef Ret_BD_String_SArgument_T<T,
- T_var,
- to_T,
- from_T,
+ Insert_Policy> out_arg_val;
+ typedef Ret_BD_String_SArgument_T<T_var,
BOUND,
- Insert_Policy> ret_val;
+ 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 inout_type out_arg_type;
- typedef inout_type ret_arg_type;
-
+ typedef in_type in_arg_type;
+ typedef inout_type inout_arg_type;
+ typedef inout_type out_arg_type;
+ typedef inout_type ret_arg_type;
};
}
diff --git a/TAO/tao/PortableServer/BD_String_SArgument_T.inl b/TAO/tao/PortableServer/BD_String_SArgument_T.inl
index 57bfd4f3299..c5aea4930ff 100644
--- a/TAO/tao/PortableServer/BD_String_SArgument_T.inl
+++ b/TAO/tao/PortableServer/BD_String_SArgument_T.inl
@@ -4,26 +4,20 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+TAO::In_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
In_BD_String_SArgument_T (void)
{}
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-const S *
-TAO::In_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+const typename S_var::s_traits::char_type *
+TAO::In_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
arg (void) const
{
return this->x_.in ();
@@ -31,26 +25,20 @@ arg (void) const
// ==========================================================================
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Inout_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
Inout_BD_String_SArgument_T (void)
{}
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-S *&
-TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+typename S_var::s_traits::char_type *&
+TAO::Inout_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
arg (void)
{
return this->x_.inout ();
@@ -58,28 +46,20 @@ arg (void)
// ==========================================================================
-template<typename S,
- typename S_var,
- typename S_out,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Out_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
Out_BD_String_SArgument_T (void)
{}
-template<typename S,
- typename S_var,
- typename S_out,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-S *&
-TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND,Insert_Policy>::
+typename S_var::s_traits::char_type *&
+TAO::Out_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
arg (void)
{
return this->x_.out ();
@@ -87,26 +67,20 @@ arg (void)
// ==========================================================================
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+TAO::Ret_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
Ret_BD_String_SArgument_T (void)
{}
-template<typename S,
- typename S_var,
- typename to_S,
- typename from_S,
+template<typename S_var,
size_t BOUND,
typename Insert_Policy>
ACE_INLINE
-S *&
-TAO::Ret_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND,Insert_Policy>::
+typename S_var::s_traits::char_type *&
+TAO::Ret_BD_String_SArgument_T<S_var,BOUND,Insert_Policy>::
arg (void)
{
return this->x_.out ();
diff --git a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
index 9ac5275b9ef..26939a27be7 100644
--- a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
+++ b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
@@ -10,7 +10,6 @@
#include "tao/Stub.h"
#include "tao/ORB_Core.h"
#include "tao/Profile.h"
-#include "tao/DomainC.h"
ACE_RCSID (PortableServer,
Collocated_Object_Proxy_Broker,
diff --git a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
index 3bdf12a5022..edc4c39f479 100644
--- a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
+++ b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
@@ -38,7 +38,7 @@ namespace CORBA
class Object;
typedef Object *Object_ptr;
typedef TAO_Pseudo_Var_T<Object> Object_var;
- typedef TAO_Pseudo_Out_T<Object, Object_var> Object_out;
+ typedef TAO_Pseudo_Out_T<Object> Object_out;
}
namespace TAO
diff --git a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.cpp b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.cpp
index 9ddd1ea1d36..150c050631b 100644
--- a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.cpp
+++ b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.cpp
@@ -11,14 +11,10 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::In_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::demarshal (TAO_InputCDR &cdr)
{
S_forany tmp (this->x_);
@@ -27,14 +23,10 @@ TAO::In_Fixed_Array_SArgument_T<S,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
void
-TAO::In_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
@@ -45,27 +37,19 @@ TAO::In_Fixed_Array_SArgument_T<S,
// ===========================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
return cdr << S_forany (this->x_);
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::
demarshal (TAO_InputCDR & cdr)
{
@@ -75,14 +59,10 @@ demarshal (TAO_InputCDR & cdr)
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
void
-TAO::Inout_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
@@ -93,14 +73,10 @@ TAO::Inout_Fixed_Array_SArgument_T<S,
// ==============================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Out_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Out_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
return cdr << S_forany (this->x_);
@@ -108,14 +84,10 @@ TAO::Out_Fixed_Array_SArgument_T<S,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
void
-TAO::Out_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Out_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
@@ -126,13 +98,11 @@ TAO::Out_Fixed_Array_SArgument_T<S,
// ============================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Ret_Fixed_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Fixed_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::marshal (
TAO_OutputCDR & cdr
@@ -143,13 +113,11 @@ TAO::Ret_Fixed_Array_SArgument_T<S_slice,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
void
-TAO::Ret_Fixed_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Fixed_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
diff --git a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.h b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.h
index e03fb2c19f4..45559ead999 100644
--- a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.h
+++ b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.h
@@ -33,9 +33,7 @@ namespace TAO
* @brief IN skeleton argument of fixed size element array.
*
*/
- template<typename S,
- typename S_slice,
- typename S_forany,
+ template<typename S_forany,
typename Insert_Policy>
class In_Fixed_Array_SArgument_T : public InArgument, private Insert_Policy
{
@@ -46,10 +44,10 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice const * arg (void) const;
+ typename S_forany::_slice_type const * arg (void) const;
private:
- mutable S x_;
+ mutable typename S_forany::_array_type x_;
};
/**
@@ -59,9 +57,7 @@ namespace TAO
*
* @todo The mutable for x_ can be removed when vc6 has been dropped
*/
- template<typename S,
- typename S_slice,
- typename S_forany,
+ template<typename S_forany,
typename Insert_Policy>
class Inout_Fixed_Array_SArgument_T :
public InoutArgument,
@@ -75,10 +71,10 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice * arg (void);
+ typename S_forany::_slice_type * arg (void);
private:
- mutable S x_;
+ mutable typename S_forany::_array_type x_;
};
/**
@@ -88,9 +84,7 @@ namespace TAO
*
* @todo The mutable for x_ can be removed when vc6 has been dropped
*/
- template<typename S,
- typename S_slice,
- typename S_forany,
+ template<typename S_forany,
typename Insert_Policy>
class Out_Fixed_Array_SArgument_T : public OutArgument, private Insert_Policy
{
@@ -101,10 +95,10 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice * arg (void);
+ typename S_forany::_slice_type * arg (void);
private:
- mutable S x_;
+ mutable typename S_forany::_array_type x_;
};
/**
@@ -113,8 +107,7 @@ namespace TAO
* @brief Skeleton value of fixed size element array.
*
*/
- template<typename S_slice,
- typename S_var,
+ template<typename S_var,
typename S_forany,
typename Insert_Policy>
class Ret_Fixed_Array_SArgument_T : public RetArgument, private Insert_Policy
@@ -126,7 +119,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice *& arg (void);
+ typename S_forany::_slice_type *& arg (void);
private:
S_var x_;
@@ -138,42 +131,32 @@ namespace TAO
* @brief Argument traits of fixed size element array.
*
*/
- template<typename T,
- typename T_slice,
- typename T_var,
+ template<typename T_var,
typename T_forany,
typename Insert_Policy>
struct Fixed_Array_SArg_Traits_T
{
- typedef T_slice * ret_type;
- typedef const T in_type;
- typedef T inout_type;
- typedef T out_type;
-
- typedef In_Fixed_Array_SArgument_T<T,
- T_slice,
- T_forany,
+ typedef typename T_forany::_slice_type * ret_type;
+ typedef const typename T_forany::_array_type in_type;
+ typedef typename T_forany::_array_type inout_type;
+ typedef typename T_forany::_array_type out_type;
+
+ typedef In_Fixed_Array_SArgument_T<T_forany,
Insert_Policy> in_arg_val;
- typedef Inout_Fixed_Array_SArgument_T<T,
- T_slice,
- T_forany,
+ typedef Inout_Fixed_Array_SArgument_T<T_forany,
Insert_Policy> inout_arg_val;
- typedef Out_Fixed_Array_SArgument_T<T,
- T_slice,
- T_forany,
+ typedef Out_Fixed_Array_SArgument_T<T_forany,
Insert_Policy> out_arg_val;
- typedef Ret_Fixed_Array_SArgument_T<T_slice,
- T_var,
+ typedef Ret_Fixed_Array_SArgument_T<T_var,
T_forany,
Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
- typedef T_slice const * in_arg_type;
+ typedef typename T_forany::_slice_type const * in_arg_type;
typedef ret_type inout_arg_type;
typedef ret_type out_arg_type;
typedef ret_type & ret_arg_type;
-
};
}
diff --git a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
index 0708aa7ebf1..2db5a59a3c5 100644
--- a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
+++ b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
@@ -4,27 +4,19 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::In_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::In_Fixed_Array_SArgument_T (void)
{
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice const *
-TAO::In_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+typename S_forany::_slice_type const *
+TAO::In_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::arg (void) const
{
S_forany tmp (this->x_);
@@ -33,28 +25,20 @@ TAO::In_Fixed_Array_SArgument_T<S,
// ===========================================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Inout_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::
Inout_Fixed_Array_SArgument_T (void)
{
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice *
-TAO::Inout_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+typename S_forany::_slice_type *
+TAO::Inout_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::arg (void)
{
S_forany tmp (this->x_);
@@ -63,28 +47,20 @@ TAO::Inout_Fixed_Array_SArgument_T<S,
// ===========================================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Out_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Out_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::
Out_Fixed_Array_SArgument_T (void)
{
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice *
-TAO::Out_Fixed_Array_SArgument_T<S,
- S_slice,
- S_forany,
+typename S_forany::_slice_type *
+TAO::Out_Fixed_Array_SArgument_T<S_forany,
Insert_Policy>::arg (void)
{
S_forany tmp (this->x_);
@@ -93,27 +69,23 @@ TAO::Out_Fixed_Array_SArgument_T<S,
// ===========================================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Ret_Fixed_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Fixed_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::
Ret_Fixed_Array_SArgument_T (void)
{
}
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice *&
-TAO::Ret_Fixed_Array_SArgument_T<S_slice,
- S_var,
+typename S_forany::_slice_type *&
+TAO::Ret_Fixed_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::arg (void)
{
diff --git a/TAO/tao/PortableServer/Fixed_Size_SArgument_T.h b/TAO/tao/PortableServer/Fixed_Size_SArgument_T.h
index fb9f6ea732a..eadf9ce3f2b 100644
--- a/TAO/tao/PortableServer/Fixed_Size_SArgument_T.h
+++ b/TAO/tao/PortableServer/Fixed_Size_SArgument_T.h
@@ -211,9 +211,7 @@ namespace TAO
typedef inout_type inout_arg_type;
typedef out_type out_arg_type;
typedef out_type ret_arg_type;
-
};
-
}
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/PortableServer/Object_SArg_Traits.h b/TAO/tao/PortableServer/Object_SArg_Traits.h
index 9f88d1f0970..62bd7156d5f 100644
--- a/TAO/tao/PortableServer/Object_SArg_Traits.h
+++ b/TAO/tao/PortableServer/Object_SArg_Traits.h
@@ -34,7 +34,7 @@ namespace CORBA
typedef Object *Object_ptr;
typedef TAO_Pseudo_Var_T<Object> Object_var;
- typedef TAO_Pseudo_Out_T<Object, Object_var> Object_out;
+ typedef TAO_Pseudo_Out_T<Object> Object_out;
}
// --------------------------------------------------------------
diff --git a/TAO/tao/PortableServer/Object_SArgument_T.h b/TAO/tao/PortableServer/Object_SArgument_T.h
index fd9a6cae8bc..4611bd24a12 100644
--- a/TAO/tao/PortableServer/Object_SArgument_T.h
+++ b/TAO/tao/PortableServer/Object_SArgument_T.h
@@ -145,10 +145,19 @@ namespace TAO
typedef T_ptr & inout_type;
typedef T_out out_type;
- typedef In_Object_SArgument_T<T_ptr,T_var,Insert_Policy> in_arg_val;
- typedef Inout_Object_SArgument_T<T_ptr,T_var,Insert_Policy> inout_arg_val;
- typedef Out_Object_SArgument_T<T_ptr,T_var,T_out,Insert_Policy> out_arg_val;
- typedef Ret_Object_SArgument_T<T_ptr,T_var,Insert_Policy> ret_val;
+ typedef In_Object_SArgument_T<T_ptr,
+ T_var,
+ Insert_Policy> in_arg_val;
+ typedef Inout_Object_SArgument_T<T_ptr,
+ T_var,
+ Insert_Policy> inout_arg_val;
+ typedef Out_Object_SArgument_T<T_ptr,
+ T_var,
+ T_out,
+ Insert_Policy> out_arg_val;
+ typedef Ret_Object_SArgument_T<T_ptr,
+ T_var,
+ Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
@@ -156,7 +165,6 @@ namespace TAO
typedef inout_type inout_arg_type;
typedef out_type out_arg_type;
typedef inout_type ret_arg_type;
-
};
}
diff --git a/TAO/tao/PortableServer/PolicyS.cpp b/TAO/tao/PortableServer/PolicyS.cpp
index ef2bd9c048b..9eae2512e9b 100644
--- a/TAO/tao/PortableServer/PolicyS.cpp
+++ b/TAO/tao/PortableServer/PolicyS.cpp
@@ -33,7 +33,7 @@
#define _TAO_IDL_ORIG_POLICYS_CPP_
-#include "tao/AnyTypeCode/TypeCode.h"
+#include "tao/AnyTypeCode/TypeCode.h"
#include "tao/AnyTypeCode/Any.h"
#include "tao/PortableServer/PolicyS.h"
#include "tao/PortableServer/Operation_Table_Perfect_Hash.h"
@@ -450,7 +450,7 @@ namespace POA_CORBA
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< ::CORBA::PolicyType>::ret_arg_type retval =
- TAO::Portable_Server::get_ret_arg< ::CORBA::PolicyType, TAO::SArg_Traits< ::CORBA::PolicyType>::ret_arg_type> (
+ TAO::Portable_Server::get_ret_arg< ::CORBA::PolicyType> (
this->operation_details_,
this->args_);
@@ -542,7 +542,7 @@ namespace POA_CORBA
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< CORBA::Policy>::ret_arg_type retval =
- TAO::Portable_Server::get_ret_arg< CORBA::Policy, TAO::SArg_Traits< CORBA::Policy>::ret_arg_type> (
+ TAO::Portable_Server::get_ret_arg< CORBA::Policy> (
this->operation_details_,
this->args_);
@@ -715,12 +715,12 @@ namespace POA_CORBA
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type retval =
- TAO::Portable_Server::get_ret_arg< ::ACE_InputCDR::to_boolean, TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type> (
+ TAO::Portable_Server::get_ret_arg< ::ACE_InputCDR::to_boolean> (
this->operation_details_,
this->args_);
TAO::SArg_Traits< CORBA::Char *>::in_arg_type arg_1 =
- TAO::Portable_Server::get_in_arg< CORBA::Char *, TAO::SArg_Traits< CORBA::Char *>::in_arg_type> (
+ TAO::Portable_Server::get_in_arg< CORBA::Char *> (
this->operation_details_,
this->args_,
1);
@@ -812,7 +812,7 @@ namespace POA_CORBA
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type retval =
- TAO::Portable_Server::get_ret_arg< ::ACE_InputCDR::to_boolean, TAO::SArg_Traits< ::ACE_InputCDR::to_boolean>::ret_arg_type> (
+ TAO::Portable_Server::get_ret_arg< ::ACE_InputCDR::to_boolean> (
this->operation_details_,
this->args_);
@@ -948,7 +948,7 @@ namespace POA_CORBA
virtual void execute (ACE_ENV_SINGLE_ARG_DECL)
{
TAO::SArg_Traits< ::CORBA::Object>::ret_arg_type retval =
- TAO::Portable_Server::get_ret_arg< ::CORBA::Object, TAO::SArg_Traits< ::CORBA::Object>::ret_arg_type> (
+ TAO::Portable_Server::get_ret_arg< ::CORBA::Object> (
this->operation_details_,
this->args_);
diff --git a/TAO/tao/PortableServer/Servant_Upcall.h b/TAO/tao/PortableServer/Servant_Upcall.h
index dff98e83559..18818009aab 100644
--- a/TAO/tao/PortableServer/Servant_Upcall.h
+++ b/TAO/tao/PortableServer/Servant_Upcall.h
@@ -42,7 +42,7 @@ namespace CORBA
class Object;
typedef Object *Object_ptr;
typedef TAO_Pseudo_Var_T<Object> Object_var;
- typedef TAO_Pseudo_Out_T<Object, Object_var> Object_out;
+ typedef TAO_Pseudo_Out_T<Object> Object_out;
}
namespace TAO
diff --git a/TAO/tao/PortableServer/TypeCode_SArg_Traits.h b/TAO/tao/PortableServer/TypeCode_SArg_Traits.h
index 2e0f067d2fd..57f4513a175 100644
--- a/TAO/tao/PortableServer/TypeCode_SArg_Traits.h
+++ b/TAO/tao/PortableServer/TypeCode_SArg_Traits.h
@@ -32,7 +32,7 @@ namespace CORBA
typedef TypeCode *TypeCode_ptr;
typedef TAO_Pseudo_Var_T<TypeCode> TypeCode_var;
- typedef TAO_Pseudo_Out_T<TypeCode, TypeCode_var> TypeCode_out;
+ typedef TAO_Pseudo_Out_T<TypeCode> TypeCode_out;
}
// --------------------------------------------------------------
diff --git a/TAO/tao/PortableServer/Var_Array_SArgument_T.cpp b/TAO/tao/PortableServer/Var_Array_SArgument_T.cpp
index 06a9e5014a4..8be7c23ac34 100644
--- a/TAO/tao/PortableServer/Var_Array_SArgument_T.cpp
+++ b/TAO/tao/PortableServer/Var_Array_SArgument_T.cpp
@@ -11,14 +11,10 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::In_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Var_Array_SArgument_T<S_forany,
Insert_Policy>::demarshal (TAO_InputCDR & cdr)
{
S_forany tmp (this->x_);
@@ -27,14 +23,10 @@ TAO::In_Var_Array_SArgument_T<S,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
void
-TAO::In_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Var_Array_SArgument_T<S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
@@ -45,27 +37,19 @@ TAO::In_Var_Array_SArgument_T<S,
// ===========================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Var_Array_SArgument_T<S_forany,
Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
- return cdr << this->x_;
+ return cdr << S_forany (this->x_);
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Inout_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Var_Array_SArgument_T<S_forany,
Insert_Policy>::demarshal (TAO_InputCDR & cdr)
{
S_forany tmp (this->x_);
@@ -74,31 +58,28 @@ TAO::Inout_Var_Array_SArgument_T<S,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
void
-TAO::Inout_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Var_Array_SArgument_T<S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
- this->Insert_Policy::any_insert (any, S_forany (const_cast <S_slice *>(this->x_)));
+ this->Insert_Policy::any_insert (
+ any,
+ S_forany (const_cast <typename S_forany::_slice_type *>(this->x_))
+ );
}
#endif /* TAO_HAS_INTERCEPTORS */
// ==============================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Out_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Out_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::marshal (
TAO_OutputCDR & cdr
@@ -110,13 +91,11 @@ TAO::Out_Var_Array_SArgument_T<S_slice,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
void
-TAO::Out_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Out_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
@@ -128,13 +107,11 @@ TAO::Out_Var_Array_SArgument_T<S_slice,
// ============================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
CORBA::Boolean
-TAO::Ret_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::marshal (
TAO_OutputCDR & cdr
@@ -145,13 +122,11 @@ TAO::Ret_Var_Array_SArgument_T<S_slice,
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
void
-TAO::Ret_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::interceptor_value (
CORBA::Any *any) const
diff --git a/TAO/tao/PortableServer/Var_Array_SArgument_T.h b/TAO/tao/PortableServer/Var_Array_SArgument_T.h
index db7835de063..78f08112a35 100644
--- a/TAO/tao/PortableServer/Var_Array_SArgument_T.h
+++ b/TAO/tao/PortableServer/Var_Array_SArgument_T.h
@@ -31,9 +31,7 @@ namespace TAO
* @brief IN skeleton argument of variable size element array.
*
*/
- template<typename S,
- typename S_slice,
- typename S_forany,
+ template<typename S_forany,
typename Insert_Policy>
class In_Var_Array_SArgument_T : public InArgument, private Insert_Policy
{
@@ -45,10 +43,10 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice const * arg (void) const;
+ typename S_forany::_slice_type const * arg (void) const;
private:
- mutable S x_;
+ mutable typename S_forany::_array_type x_;
};
/**
@@ -57,9 +55,7 @@ namespace TAO
* @brief INOUT skeleton argument of variable size element array.
*
*/
- template<typename S,
- typename S_slice,
- typename S_forany,
+ template<typename S_forany,
typename Insert_Policy>
class Inout_Var_Array_SArgument_T : public InoutArgument, private Insert_Policy
{
@@ -71,10 +67,10 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice * arg (void);
+ typename S_forany::_slice_type * arg (void);
private:
- S x_;
+ typename S_forany::_array_type x_;
};
/**
@@ -83,8 +79,7 @@ namespace TAO
* @brief OUT skeleton argument of variable size element array.
*
*/
- template<typename S_slice,
- typename S_var,
+ template<typename S_var,
typename S_forany,
typename Insert_Policy>
class Out_Var_Array_SArgument_T : public OutArgument, private Insert_Policy
@@ -96,7 +91,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice *& arg (void);
+ typename S_forany::_slice_type *& arg (void);
private:
S_var x_;
@@ -108,8 +103,7 @@ namespace TAO
* @brief Skeleton value of variable size element array.
*
*/
- template<typename S_slice,
- typename S_var,
+ template<typename S_var,
typename S_forany,
typename Insert_Policy>
class Ret_Var_Array_SArgument_T : public RetArgument, private Insert_Policy
@@ -121,7 +115,7 @@ namespace TAO
#if TAO_HAS_INTERCEPTORS == 1
virtual void interceptor_value (CORBA::Any *any) const;
#endif /* TAO_HAS_INTERCEPTORS == 1 */
- S_slice *& arg (void);
+ typename S_forany::_slice_type *& arg (void);
private:
S_var x_;
@@ -133,43 +127,33 @@ namespace TAO
* @brief Argument traits of variable size element array.
*
*/
- template<typename T,
- typename T_slice,
- typename T_var,
- typename T_out,
+ template<typename T_out,
typename T_forany,
typename Insert_Policy>
struct Var_Array_SArg_Traits_T
{
- typedef T_slice * ret_type;
- typedef const T in_type;
- typedef T inout_type;
+ typedef typename T_forany::_slice_type * ret_type;
+ typedef const typename T_forany::_array_type in_type;
+ typedef typename T_forany::_array_type inout_type;
typedef T_out out_type;
- typedef In_Var_Array_SArgument_T<T,
- T_slice,
- T_forany,
- Insert_Policy> in_arg_val;
- typedef Inout_Var_Array_SArgument_T<T,
- T_slice,
- T_forany,
- Insert_Policy> inout_arg_val;
- typedef Out_Var_Array_SArgument_T<T_slice,
- T_var,
+ typedef In_Var_Array_SArgument_T<T_forany,
+ Insert_Policy> in_arg_val;
+ typedef Inout_Var_Array_SArgument_T<T_forany,
+ Insert_Policy> inout_arg_val;
+ typedef Out_Var_Array_SArgument_T<typename T_out::_var_type,
T_forany,
- Insert_Policy> out_arg_val;
- typedef Ret_Var_Array_SArgument_T<T_slice,
- T_var,
+ Insert_Policy> out_arg_val;
+ typedef Ret_Var_Array_SArgument_T<typename T_out::_var_type,
T_forany,
- Insert_Policy> ret_val;
+ Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
- typedef T_slice const * in_arg_type;
+ typedef typename T_forany::_slice_type const * in_arg_type;
typedef ret_type inout_arg_type;
typedef ret_type & out_arg_type;
typedef ret_type & ret_arg_type;
-
};
}
diff --git a/TAO/tao/PortableServer/Var_Array_SArgument_T.inl b/TAO/tao/PortableServer/Var_Array_SArgument_T.inl
index bbc5dd80950..adfe8f78dfc 100644
--- a/TAO/tao/PortableServer/Var_Array_SArgument_T.inl
+++ b/TAO/tao/PortableServer/Var_Array_SArgument_T.inl
@@ -4,26 +4,18 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::In_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::In_Var_Array_SArgument_T<S_forany,
Insert_Policy>::In_Var_Array_SArgument_T (void)
{}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice const *
-TAO::In_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+typename S_forany::_slice_type const *
+TAO::In_Var_Array_SArgument_T<S_forany,
Insert_Policy>::arg (void) const
{
S_forany tmp (this->x_);
@@ -32,27 +24,19 @@ TAO::In_Var_Array_SArgument_T<S,
// ==========================================================================
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Inout_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+TAO::Inout_Var_Array_SArgument_T<S_forany,
Insert_Policy>::
Inout_Var_Array_SArgument_T (void)
{
}
-template<typename S,
- typename S_slice,
- typename S_forany,
+template<typename S_forany,
typename Insert_Policy>
-S_slice *
-TAO::Inout_Var_Array_SArgument_T<S,
- S_slice,
- S_forany,
+typename S_forany::_slice_type *
+TAO::Inout_Var_Array_SArgument_T<S_forany,
Insert_Policy>::arg (void)
{
S_forany tmp (this->x_);
@@ -61,26 +45,22 @@ TAO::Inout_Var_Array_SArgument_T<S,
// ==========================================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Out_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Out_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::
Out_Var_Array_SArgument_T (void)
{
}
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
-S_slice *&
-TAO::Out_Var_Array_SArgument_T<S_slice,
- S_var,
+typename S_forany::_slice_type *&
+TAO::Out_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::arg (void)
{
@@ -89,27 +69,23 @@ TAO::Out_Var_Array_SArgument_T<S_slice,
// ==========================================================================
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
ACE_INLINE
-TAO::Ret_Var_Array_SArgument_T<S_slice,
- S_var,
+TAO::Ret_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::
Ret_Var_Array_SArgument_T (void)
{
}
-template<typename S_slice,
- typename S_var,
+template<typename S_var,
typename S_forany,
typename Insert_Policy>
ACE_INLINE
-S_slice *&
-TAO::Ret_Var_Array_SArgument_T<S_slice,
- S_var,
+typename S_forany::_slice_type *&
+TAO::Ret_Var_Array_SArgument_T<S_var,
S_forany,
Insert_Policy>::arg (void)
{
diff --git a/TAO/tao/PortableServer/Var_Size_SArgument_T.cpp b/TAO/tao/PortableServer/Var_Size_SArgument_T.cpp
index 33c151f6bb9..29187f9c826 100644
--- a/TAO/tao/PortableServer/Var_Size_SArgument_T.cpp
+++ b/TAO/tao/PortableServer/Var_Size_SArgument_T.cpp
@@ -12,8 +12,7 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
CORBA::Boolean
TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR &cdr)
{
@@ -22,10 +21,11 @@ TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR &cdr)
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
void
-TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (CORBA::Any *any) const
+TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
+ CORBA::Any *any
+ ) const
{
this->Insert_Policy::any_insert (any, this->x_);
}
@@ -34,16 +34,14 @@ TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (CORBA::Any *an
// ===========================================================
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
CORBA::Boolean
TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
return cdr << this->x_;
}
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
CORBA::Boolean
TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR & cdr)
{
@@ -52,10 +50,11 @@ TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::demarshal (TAO_InputCDR & cdr)
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
void
-TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (CORBA::Any *any) const
+TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
+ CORBA::Any *any
+ ) const
{
this->Insert_Policy::any_insert (any, this->x_);
}
@@ -64,22 +63,18 @@ TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (CORBA::Any
// ==============================================================
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
CORBA::Boolean
-TAO::Out_Var_Size_SArgument_T<S,S_var,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
+TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
return cdr << this->x_.in ();
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
void
-TAO::Out_Var_Size_SArgument_T<S,S_var,Insert_Policy>::interceptor_value (
+TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
this->Insert_Policy::any_insert (any, this->x_.in ());
@@ -89,22 +84,18 @@ TAO::Out_Var_Size_SArgument_T<S,S_var,Insert_Policy>::interceptor_value (
// ============================================================
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
CORBA::Boolean
-TAO::Ret_Var_Size_SArgument_T<S,S_var,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
+TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::marshal (TAO_OutputCDR &cdr)
{
return cdr << this->x_.in ();
}
#if TAO_HAS_INTERCEPTORS == 1
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
void
-TAO::Ret_Var_Size_SArgument_T<S,S_var,Insert_Policy>::interceptor_value (
+TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::interceptor_value (
CORBA::Any *any) const
{
this->Insert_Policy::any_insert (any, this->x_.in ());
diff --git a/TAO/tao/PortableServer/Var_Size_SArgument_T.h b/TAO/tao/PortableServer/Var_Size_SArgument_T.h
index 99046ca2655..4114ecf0532 100644
--- a/TAO/tao/PortableServer/Var_Size_SArgument_T.h
+++ b/TAO/tao/PortableServer/Var_Size_SArgument_T.h
@@ -30,8 +30,7 @@ namespace TAO
* @brief Template class for IN skeleton argument of fixed size IDL types.
*
*/
- template<typename S,
- typename Insert_Policy>
+ template<typename S, typename Insert_Policy>
class In_Var_Size_SArgument_T : public InArgument, private Insert_Policy
{
public:
@@ -52,9 +51,9 @@ namespace TAO
* @brief Template class for INOUT skeleton arg of fixed size IDL types.
*
*/
- template<typename S,
- typename Insert_Policy>
- class Inout_Var_Size_SArgument_T : public InoutArgument, private Insert_Policy
+ template<typename S, typename Insert_Policy>
+ class Inout_Var_Size_SArgument_T : public InoutArgument,
+ private Insert_Policy
{
public:
Inout_Var_Size_SArgument_T (void);
@@ -76,9 +75,7 @@ namespace TAO
* @brief Template class for OUT skeleton argument of fixed size IDL types.
*
*/
- template<typename S,
- typename S_var,
- typename Insert_Policy>
+ template<typename S, typename Insert_Policy>
class Out_Var_Size_SArgument_T : public OutArgument, private Insert_Policy
{
public:
@@ -91,7 +88,7 @@ namespace TAO
S *& arg (void);
private:
- S_var x_;
+ typename S::_var_type x_;
};
/**
@@ -100,9 +97,7 @@ namespace TAO
* @brief Template class for return skeleton value of fixed size IDL types.
*
*/
- template<typename S,
- typename S_var,
- typename Insert_Policy>
+ template<typename S, typename Insert_Policy>
class Ret_Var_Size_SArgument_T : public RetArgument, private Insert_Policy
{
public:
@@ -115,7 +110,7 @@ namespace TAO
S *& arg (void);
private:
- S_var x_;
+ typename S::_var_type x_;
};
/**
@@ -125,21 +120,18 @@ namespace TAO
* variable size IDL types.
*
*/
- template<typename T,
- typename T_var,
- typename T_out,
- typename Insert_Policy>
+ template<typename T, 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 typename T::_out_type out_type;
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;
+ typedef Out_Var_Size_SArgument_T<T,Insert_Policy> out_arg_val;
+ typedef Ret_Var_Size_SArgument_T<T,Insert_Policy> ret_val;
// Typedefs corresponding to return value of arg() method in both
// the client and server side argument class templates.
@@ -147,7 +139,6 @@ namespace TAO
typedef inout_type inout_arg_type;
typedef ret_type & out_arg_type;
typedef ret_type & ret_arg_type;
-
};
}
diff --git a/TAO/tao/PortableServer/Var_Size_SArgument_T.inl b/TAO/tao/PortableServer/Var_Size_SArgument_T.inl
index 11d13f2e9e2..dffc68dbf6b 100644
--- a/TAO/tao/PortableServer/Var_Size_SArgument_T.inl
+++ b/TAO/tao/PortableServer/Var_Size_SArgument_T.inl
@@ -4,8 +4,7 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
S const &
TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::arg (void) const
{
@@ -14,15 +13,13 @@ TAO::In_Var_Size_SArgument_T<S,Insert_Policy>::arg (void) const
// ==========================================================================
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
ACE_INLINE
TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::Inout_Var_Size_SArgument_T (void)
{
}
-template<typename S,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
S &
TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::arg (void)
{
@@ -31,39 +28,31 @@ TAO::Inout_Var_Size_SArgument_T<S,Insert_Policy>::arg (void)
// ==========================================================================
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
ACE_INLINE
-TAO::Out_Var_Size_SArgument_T<S,S_var,Insert_Policy>::Out_Var_Size_SArgument_T (void)
+TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::Out_Var_Size_SArgument_T (void)
{
}
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
S *&
-TAO::Out_Var_Size_SArgument_T<S,S_var,Insert_Policy>::arg (void)
+TAO::Out_Var_Size_SArgument_T<S,Insert_Policy>::arg (void)
{
return this->x_.out ();
}
// ==========================================================================
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
ACE_INLINE
-TAO::Ret_Var_Size_SArgument_T<S,S_var,Insert_Policy>::Ret_Var_Size_SArgument_T (void)
+TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::Ret_Var_Size_SArgument_T (void)
{
}
-template<typename S,
- typename S_var,
- typename Insert_Policy>
+template<typename S, typename Insert_Policy>
ACE_INLINE
S *&
-TAO::Ret_Var_Size_SArgument_T<S,S_var,Insert_Policy>::arg (void)
+TAO::Ret_Var_Size_SArgument_T<S,Insert_Policy>::arg (void)
{
return this->x_.out ();
}
diff --git a/TAO/tao/PortableServer/get_arg.h b/TAO/tao/PortableServer/get_arg.h
index 38c21f200c9..1cf9b8aa998 100644
--- a/TAO/tao/PortableServer/get_arg.h
+++ b/TAO/tao/PortableServer/get_arg.h
@@ -37,22 +37,9 @@ namespace TAO
{
namespace Portable_Server
{
-
/// Get return value/argument.
- /**
- * @note It is possible to determine the return argument type
- * using typedef traits found in the TAO::SArg_Traits<>
- * template. However, MSVC++ 6 does not support them
- * properly. Until we drop MSVC++ 6 support, we'll have to
- * pass the return argument type in an additional template
- * parameter.
- *
- * @todo Drop second template parameter, and replace
- * " @c RET_ARG_TYPE " return type with
- * " @c typename TAO::SArg_Traits<T>::ret_arg_type ".
- */
- template<typename T, typename RET_ARG_TYPE>
- RET_ARG_TYPE
+ template<typename T>
+ typename TAO::SArg_Traits<T>::ret_arg_type
get_ret_arg (TAO_Operation_Details const * details,
TAO::Argument * const * skel_args)
{
@@ -65,16 +52,8 @@ namespace TAO
}
/// Get "in" argument.
- /**
- * @see @c get_ret_arg note to understand why we currently use a
- * second template parameter.
- *
- * @todo Drop second template parameter, and replace
- * " @c IN_ARG_TYPE " return type with
- * " @c typename TAO::SArg_Traits<T>::in_arg_type ".
- */
- template<typename T, typename IN_ARG_TYPE>
- IN_ARG_TYPE
+ template<typename T>
+ typename TAO::SArg_Traits<T>::in_arg_type
get_in_arg (TAO_Operation_Details const * details,
TAO::Argument * const * skel_args,
size_t i)
@@ -88,16 +67,8 @@ namespace TAO
}
/// Get "inout" argument.
- /**
- * @see @c get_ret_arg note to understand why we currently use a
- * second template parameter.
- *
- * @todo Drop second template parameter, and replace
- * " @c INOUT_ARG_TYPE " return type with
- * " @c typename TAO::SArg_Traits<T>::inout_arg_type ".
- */
- template<typename T, typename INOUT_ARG_TYPE>
- INOUT_ARG_TYPE
+ template<typename T>
+ typename TAO::SArg_Traits<T>::inout_arg_type
get_inout_arg (TAO_Operation_Details const * details,
TAO::Argument * const * skel_args,
size_t i)
@@ -111,16 +82,8 @@ namespace TAO
}
/// Get "out" argument.
- /**
- * @see @c get_ret_arg note to understand why we currently use a
- * second template parameter.
- *
- * @todo Drop second template parameter, and replace
- * " @c OUT_ARG_TYPE " return type with
- * " @c typename TAO::SArg_Traits<T>::out_arg_type ".
- */
- template<typename T, typename OUT_ARG_TYPE>
- OUT_ARG_TYPE
+ template<typename T>
+ typename TAO::SArg_Traits<T>::out_arg_type
get_out_arg (TAO_Operation_Details const * details,
TAO::Argument * const * skel_args,
size_t i)
@@ -132,7 +95,6 @@ namespace TAO
: static_cast<typename TAO::SArg_Traits<T>::out_arg_val *> (
skel_args[i])->arg ();
}
-
}
}