summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgmaxey <gmaxey@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-07-25 20:33:37 +0000
committergmaxey <gmaxey@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-07-25 20:33:37 +0000
commita5a1d86bd790beb321df9317fecc0ff0235b927b (patch)
treed143b4c33fb45146c5f2b19d08358079dbd15ad9
parenta0a4b30110834b05524fc1063ae0b99179f3be78 (diff)
downloadATCD-a5a1d86bd790beb321df9317fecc0ff0235b927b.tar.gz
ChangeLogTag: Mon Jul 25 12:49:44 2005 Gary Maxey <gary.maxey@hp.com>
-rw-r--r--TAO/ChangeLog13
-rw-r--r--TAO/tao/Array_VarOut_T.h11
-rw-r--r--TAO/tao/Array_VarOut_T.inl21
-rw-r--r--TAO/tao/Fixed_Array_Argument_T.inl2
-rw-r--r--TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl2
5 files changed, 44 insertions, 5 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 5e742b19009..2deb0cdf586 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,16 @@
+Mon Jul 25 12:49:44 2005 Gary Maxey <gary.maxey@hp.com>
+
+ * tao/Array_VarOut_T.h:
+ * tao/Array_VarOut_T.inl:
+ * tao/Fixed_Array_Argument_T.inl:
+ * tao/PortableServer/Fixed_Array_SArgument_T.inl:
+
+ Removed "out" method from class TAO_Array_Var_Base_T and added
+ the method to classes TAO_FixedArray_Var_T and
+ TAO_VarArray_Var_T. For fixed arrays the "out" method now
+ returns T_slice * for fixed arrays. For variable arrays the
+ "out" method returns T_slice *& (same as previously).
+
Mon Jul 25 12:37:34 2005 Gary Maxey <gary.maxey@hp.com>
* tests/OBV/ValueBox/client.cpp:
diff --git a/TAO/tao/Array_VarOut_T.h b/TAO/tao/Array_VarOut_T.h
index e036dd6bb79..f2e07430c24 100644
--- a/TAO/tao/Array_VarOut_T.h
+++ b/TAO/tao/Array_VarOut_T.h
@@ -60,14 +60,14 @@ public:
typedef const T_slice * _in_type;
typedef T_slice * _inout_type;
- typedef T_slice *& _out_type;
typedef T_slice * _retn_type;
+ typedef T_slice *& _retn_arg_type;
// in, inout, out, _retn
_in_type in (void) const;
_inout_type inout (void);
- _out_type out (void);
_retn_type _retn (void);
+ _retn_arg_type _retn_arg (void);
// TAO extension.
_retn_type ptr (void) const;
@@ -95,6 +95,10 @@ public:
TAO_FixedArray_Var_T<T,T_slice,TAG> &operator= (
const TAO_FixedArray_Var_T<T,T_slice,TAG> &
);
+
+ typedef T_slice * _out_type;
+ _out_type out (void);
+
};
/**
@@ -117,6 +121,9 @@ public:
const TAO_VarArray_Var_T<T,T_slice,TAG> &
);
+ typedef T_slice *& _out_type;
+ _out_type out (void);
+
operator T_slice *& ();
};
diff --git a/TAO/tao/Array_VarOut_T.inl b/TAO/tao/Array_VarOut_T.inl
index 27d70d8fff1..b65c4145304 100644
--- a/TAO/tao/Array_VarOut_T.inl
+++ b/TAO/tao/Array_VarOut_T.inl
@@ -72,7 +72,7 @@ TAO_Array_Var_Base_T<T,T_slice,TAG>::inout (void)
template<typename T, typename T_slice, typename TAG>
ACE_INLINE
T_slice *&
-TAO_Array_Var_Base_T<T,T_slice,TAG>::out (void)
+TAO_Array_Var_Base_T<T,T_slice,TAG>::_retn_arg (void)
{
TAO::Array_Traits<T,T_slice,TAG>::free (this->ptr_);
this->ptr_ = 0;
@@ -118,6 +118,15 @@ TAO_FixedArray_Var_T<T,T_slice,TAG>::TAO_FixedArray_Var_T (
: TAO_Array_Var_Base_T<T,T_slice,TAG> (p)
{}
+
+template<typename T, typename T_slice, typename TAG>
+ACE_INLINE
+T_slice *
+TAO_FixedArray_Var_T<T,T_slice,TAG>::out (void)
+{
+ return this->ptr_;
+}
+
// *************************************************************
template<typename T, typename T_slice, typename TAG>
@@ -146,6 +155,16 @@ TAO_VarArray_Var_T<T,T_slice,TAG>::operator T_slice *& ()
return this->ptr_;
}
+template<typename T, typename T_slice, typename TAG>
+ACE_INLINE
+T_slice *&
+TAO_VarArray_Var_T<T,T_slice,TAG>::out (void)
+{
+ TAO::Array_Traits<T,T_slice,TAG>::free (this->ptr_);
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
// *************************************************************
template<typename T, typename T_var, typename T_slice, typename TAG>
diff --git a/TAO/tao/Fixed_Array_Argument_T.inl b/TAO/tao/Fixed_Array_Argument_T.inl
index 58b57f35a05..0df9d5cee7d 100644
--- a/TAO/tao/Fixed_Array_Argument_T.inl
+++ b/TAO/tao/Fixed_Array_Argument_T.inl
@@ -96,7 +96,7 @@ ACE_INLINE
S_slice *&
TAO::Ret_Fixed_Array_Argument_T<S,S_slice,S_var,S_forany,S_tag>::arg (void)
{
- return this->x_.out ();
+ return this->x_._retn_arg ();
}
template<typename S,
diff --git a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
index 0146fad9597..65b78d9416d 100644
--- a/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
+++ b/TAO/tao/PortableServer/Fixed_Array_SArgument_T.inl
@@ -72,5 +72,5 @@ ACE_INLINE
S_slice *&
TAO::Ret_Fixed_Array_SArgument_T<S_slice,S_var,S_forany>::arg (void)
{
- return this->x_.out ();
+ return this->x_._retn_arg ();
}