Fixed_Array_Argument_T.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Fixed_Array_Argument_T.inl,v 1.13 2006/06/27 06:22:13 jwillemsen Exp
00004 
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 template<typename S_forany,
00008          class Insert_Policy>
00009 ACE_INLINE
00010 TAO::In_Fixed_Array_Argument_T<S_forany,Insert_Policy>::
00011 In_Fixed_Array_Argument_T (const typename S_forany::_slice_type * x)
00012   : x_ (
00013 #if (defined (__IBMCPP__) && (__IBMCPP__ <= 600))
00014         // @@ (OO) IMBCPP 6 can't handle the const_cast<> in the
00015         //         multi-dimensional array case so C-style
00016         //         "sledgehammer" cast instead (reinterpret_cast<>
00017         //         doesn't work either).  It's not clear if this is
00018         //         really the right thing to do but the code won't
00019         //         compile without it.
00020         (S_forany::slice_type *) x
00021 #else
00022         const_cast<typename S_forany::_slice_type *> (x)
00023 #endif  /* IBMCPP <= 600 */
00024         )
00025 {
00026 }
00027 
00028 template<typename S_forany,
00029          class Insert_Policy>
00030 ACE_INLINE
00031 const typename S_forany::_slice_type *
00032 TAO::In_Fixed_Array_Argument_T<S_forany,Insert_Policy>::arg (void) const
00033 {
00034   return this->x_.in ();
00035 }
00036 
00037 // ===========================================================================
00038 
00039 template<typename S_forany,
00040          class Insert_Policy>
00041 ACE_INLINE
00042 TAO::Inout_Fixed_Array_Argument_T<S_forany,Insert_Policy>::
00043 Inout_Fixed_Array_Argument_T (typename S_forany::_slice_type *& x)
00044   : x_ (x)
00045 {}
00046 
00047 template<typename S_forany,
00048          class Insert_Policy>
00049 ACE_INLINE
00050 typename S_forany::_slice_type *
00051 TAO::Inout_Fixed_Array_Argument_T<S_forany,Insert_Policy>::arg (void)
00052 {
00053   return this->x_.inout ();
00054 }
00055 
00056 // ===========================================================================
00057 
00058 template<typename S_forany,
00059          class Insert_Policy>
00060 ACE_INLINE
00061 TAO::Out_Fixed_Array_Argument_T<
00062     S_forany,
00063     Insert_Policy
00064   >::Out_Fixed_Array_Argument_T (typename S_forany::_slice_type *&x)
00065   : x_ (x)
00066 {}
00067 
00068 template<typename S_forany,
00069          class Insert_Policy>
00070 ACE_INLINE
00071 typename S_forany::_slice_type *&
00072 TAO::Out_Fixed_Array_Argument_T<S_forany,Insert_Policy>::arg (void)
00073 {
00074   return this->x_.out ();
00075 }
00076 
00077 // ===========================================================================
00078 
00079 template<typename S_var,
00080          typename S_forany,
00081          class Insert_Policy>
00082 ACE_INLINE
00083 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::
00084 Ret_Fixed_Array_Argument_T (void)
00085 {}
00086 
00087 template<typename S_var,
00088          typename S_forany,
00089          class Insert_Policy>
00090 ACE_INLINE
00091 typename S_forany::_slice_type *&
00092 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::arg (void)
00093 {
00094   return this->x_._retn_arg ();
00095 }
00096 
00097 template<typename S_var,
00098          typename S_forany,
00099          class Insert_Policy>
00100 ACE_INLINE
00101 typename S_forany::_slice_type *
00102 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::excp (void)
00103 {
00104   return this->x_.ptr ();
00105 }
00106 
00107 template<typename S_var,
00108          typename S_forany,
00109          class Insert_Policy>
00110 ACE_INLINE
00111 typename S_forany::_slice_type *
00112 TAO::Ret_Fixed_Array_Argument_T<S_var,S_forany,Insert_Policy>::retn (void)
00113 {
00114   return this->x_._retn ();
00115 }
00116 
00117 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 11:54:11 2006 for TAO by doxygen 1.3.6