diff options
author | bala <balanatarajan@users.noreply.github.com> | 2003-07-01 03:30:58 +0000 |
---|---|---|
committer | bala <balanatarajan@users.noreply.github.com> | 2003-07-01 03:30:58 +0000 |
commit | c4218b9725988b4e1061155c3616477a46d8425c (patch) | |
tree | 7b247d1ef21c897401827a3d90d41e82d2fdd8d6 /TAO/tao/Object_Argument_T.cpp | |
parent | d1f4ec89b4761404ac8678402752bf65eaa60485 (diff) | |
download | ATCD-c4218b9725988b4e1061155c3616477a46d8425c.tar.gz |
ChangeLogTag:Mon Jun 30 22:29:51 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu>refactor-stage4
Diffstat (limited to 'TAO/tao/Object_Argument_T.cpp')
-rw-r--r-- | TAO/tao/Object_Argument_T.cpp | 282 |
1 files changed, 282 insertions, 0 deletions
diff --git a/TAO/tao/Object_Argument_T.cpp b/TAO/tao/Object_Argument_T.cpp new file mode 100644 index 00000000000..516de4d05b1 --- /dev/null +++ b/TAO/tao/Object_Argument_T.cpp @@ -0,0 +1,282 @@ +// $Id$ + +#ifndef TAO_OBJECT_ARGUMENT_T_C +#define TAO_OBJECT_ARGUMENT_T_C + +#include "tao/Object_Argument_T.h" + +ACE_RCSID (tao, + Object_Argument_T, + "$Id$") + +template<typename S_ptr> +TAO::In_Object_Argument_T<S_ptr>::In_Object_Argument_T (S_ptr x) + : x_ (x) +{} + +template<typename S_ptr> +CORBA::Boolean +TAO::In_Object_Argument_T<S_ptr>::marshal (TAO_OutputCDR & cdr) +{ + return cdr << this->x_; +} + +template<typename S_ptr> +void +TAO::In_Object_Argument_T<S_ptr>::interceptor_param (Dynamic::Parameter & p) +{ + p.argument <<= this->x_; + p.mode = CORBA::PARAM_IN; +} + +template<typename S_ptr> +CORBA::Boolean +TAO::In_Object_Argument_T<S_ptr>::interceptor_replace (CORBA::Any & any) +{ + return any >>= this->x_; +} + +// =========================================================== + +template<typename S_ptr> +TAO::Inout_Object_Argument_T<S_ptr>::Inout_Object_Argument_T (S_ptr & x) + : x_ (x) +{} + +template<typename S_ptr> +CORBA::Boolean +TAO::Inout_Object_Argument_T<S_ptr>::marshal (TAO_OutputCDR & cdr) +{ + return cdr << this->x_; +} + +template<typename S_ptr> +CORBA::Boolean +TAO::Inout_Object_Argument_T<S_ptr>::demarshal (TAO_InputCDR & cdr) +{ + CORBA::release (this->x_); + return cdr >> this->x_; +} + +template<typename S_ptr> +void +TAO::Inout_Object_Argument_T<S_ptr>::interceptor_param ( + Dynamic::Parameter & p + ) +{ + p.argument <<= this->x_; + p.mode = CORBA::PARAM_INOUT; +} + +template<typename S_ptr> +CORBA::Boolean +TAO::Inout_Object_Argument_T<S_ptr>::interceptor_replace (CORBA::Any & any) +{ + return any >>= this->x_; +} + +// ============================================================== + +template<typename S_ptr, typename S_out> +TAO::Out_Object_Argument_T<S_ptr,S_out>::Out_Object_Argument_T (S_out & x) + : x_ (x.ptr ()) +{} + +template<typename S_ptr, typename S_out> +CORBA::Boolean +TAO::Out_Object_Argument_T<S_ptr,S_out>::demarshal (TAO_InputCDR & cdr) +{ + return cdr >> this->x_; +} + +// ============================================================ + +template<typename S_ptr, typename S_var> +TAO::Ret_Object_Argument_T<S_ptr,S_var>::Ret_Object_Argument_T (void) +{ +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Ret_Object_Argument_T<S_ptr,S_var>::demarshal (TAO_InputCDR & cdr) +{ + return cdr >> this->x_.out (); +} + +template<typename S_ptr, typename S_var> +void +TAO::Ret_Object_Argument_T<S_ptr,S_var>::interceptor_result (CORBA::Any * any) +{ + (*any) <<= this->x_.in (); +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Ret_Object_Argument_T<S_ptr,S_var>::interceptor_replace ( + CORBA::Any & any + ) +{ + return any >>= this->x_; +} + +template<typename S_ptr, typename S_var> +S_ptr +TAO::Ret_Object_Argument_T<S_ptr,S_var>::excp (void) +{ + return this->x_.ptr (); +} + +template<typename S_ptr, typename S_var> +S_ptr +TAO::Ret_Object_Argument_T<S_ptr,S_var>::retn (void) +{ + return this->x_._retn (); +} + +// ============================================================ + +template<typename S_ptr, typename S_var> +TAO::In_Object_SArgument_T<S_ptr,S_var>::In_Object_SArgument_T (void) +{} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::In_Object_SArgument_T<S_ptr,S_var>::demarshal (TAO_InputCDR &cdr) +{ + return cdr >> this->x_.out (); +} + +template<typename S_ptr, typename S_var> +void +TAO::In_Object_SArgument_T<S_ptr,S_var>::interceptor_param ( + Dynamic::Parameter & p + ) +{ + p.argument <<= this->x_.in (); + p.mode = CORBA::PARAM_IN; +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::In_Object_SArgument_T<S_ptr,S_var>::interceptor_replace ( + CORBA::Any & any + ) +{ + return any >>= this->x_.out (); +} + +template<typename S_ptr, typename S_var> +S_ptr +TAO::In_Object_SArgument_T<S_ptr,S_var>::arg (void) const +{ + return this->x_.in (); +} + +// =========================================================== + +template<typename S_ptr, typename S_var> +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::Inout_Object_SArgument_T (void) +{} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::marshal (TAO_OutputCDR & cdr) +{ + return cdr << this->x_.in (); +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::demarshal (TAO_InputCDR & cdr) +{ + return cdr >> this->x_.out (); +} + +template<typename S_ptr, typename S_var> +void +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::interceptor_param ( + Dynamic::Parameter & p + ) +{ + p.argument <<= this->x_.in (); + p.mode = CORBA::PARAM_INOUT; +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::interceptor_replace ( + CORBA::Any & any + ) +{ + return any >>= this->x_.out (); +} + +template<typename S_ptr, typename S_var> +S_ptr& +TAO::Inout_Object_SArgument_T<S_ptr,S_var>::arg (void) +{ + return this->x_.inout (); +} + +// ============================================================== + +template<typename S_ptr, typename S_var, typename S_out> +TAO::Out_Object_SArgument_T<S_ptr,S_var,S_out>::Out_Object_SArgument_T ( + void + ) +{} + +template<typename S_ptr, typename S_var, typename S_out> +CORBA::Boolean +TAO::Out_Object_SArgument_T<S_ptr,S_var,S_out>::marshal (TAO_OutputCDR &cdr) +{ + return cdr << this->x_.in (); +} + +template<typename S_ptr, typename S_var, typename S_out> +S_out +TAO::Out_Object_SArgument_T<S_ptr,S_var,S_out>::arg (void) +{ + return this->x_.out (); +} + +// ============================================================ + +template<typename S_ptr, typename S_var> +TAO::Ret_Object_SArgument_T<S_ptr,S_var>::Ret_Object_SArgument_T (void) +{ +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Ret_Object_SArgument_T<S_ptr,S_var>::marshal (TAO_OutputCDR & cdr) +{ + return cdr << this->x_.in (); +} + +template<typename S_ptr, typename S_var> +void +TAO::Ret_Object_SArgument_T<S_ptr,S_var>::interceptor_result ( + CORBA::Any * any + ) +{ + (*any) <<= this->x_.in (); +} + +template<typename S_ptr, typename S_var> +CORBA::Boolean +TAO::Ret_Object_SArgument_T<S_ptr,S_var>::interceptor_replace ( + CORBA::Any & any + ) +{ + return any >>= this->x_.out (); +} + +template<typename S_ptr, typename S_var> +S_ptr & +TAO::Ret_Object_SArgument_T<S_ptr,S_var>::arg (void) +{ + return this->x_.out (); +} + +#endif /* TAO_OBJECT_ARGUMENT_T_C */ |