diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-07-16 19:39:41 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-07-16 19:39:41 +0000 |
commit | 5df90757b70bd13e7f9f15912adf6b8ca3231bd9 (patch) | |
tree | 931d3de893b712b75b8fe225e99f732a5d1bbe4a | |
parent | c640fbe5521f217c44b033dcc9a4cdfb292cf548 (diff) | |
download | ATCD-5df90757b70bd13e7f9f15912adf6b8ca3231bd9.tar.gz |
ChangeLogTag: Wed Jul 16 14:38:02 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
92 files changed, 1492 insertions, 5282 deletions
diff --git a/TAO/ChangeLog_ref b/TAO/ChangeLog_ref index e28eeb3fb56..9e13c5d0e56 100644 --- a/TAO/ChangeLog_ref +++ b/TAO/ChangeLog_ref @@ -1,3 +1,107 @@ +Wed Jul 16 14:38:02 2003 Jeff Parsons <j.parsons@vanderbilt.edu> + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_visitor_tmplinst.cpp: + * TAO_IDL/be/be_visitor_traits.cpp: + * TAO_IDL/be/be_visitor_array/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_array/array_ch.cpp: + * TAO_IDL/be/be_visitor_array/array_ci.cpp: + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_enum/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/structure_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + * TAO_IDL/be/be_visitor_valuetype/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_visitor_tmplinst.h: + * TAO_IDL/be_include/be_visitor_array/array_cs.h: + * TAO_IDL/be_include/be_visitor_sequence/sequence_cs.h: + * tao/Array_VarOut_T.cpp: + * tao/Array_VarOut_T.h: + * tao/Array_VarOut_T.inl: + * tao/BD_String_Argument_T.cpp: + * tao/BD_String_Argument_T.h: + * tao/BD_String_Argument_T.inl: + * tao/Basic_Argument_T.h: + * tao/Basic_Argument_T.inl: + * tao/CurrentC.cpp: + * tao/CurrentC.h: + * tao/DomainC.cpp: + * tao/DomainC.h: + * tao/Fixed_Array_Argument_T.h: + * tao/Fixed_Array_Argument_T.inl: + * tao/Fixed_Size_Argument_T.h: + * tao/Fixed_Size_Argument_T.inl: + * tao/IOP_CodecC.cpp: + * tao/IOP_CodecC.h: + * tao/Object_Argument_T.h: + * tao/Object_Argument_T.inl: + * tao/Objref_VarOut_T.cpp: + * tao/Objref_VarOut_T.h: + * tao/PolicyC.cpp: + * tao/PolicyC.h: + * tao/Policy_ForwardC.cpp: + * tao/Policy_ForwardC.h: + * tao/PortableInterceptorC.cpp: + * tao/PortableInterceptorC.h: + * tao/Sequence_T.cpp: + * tao/Sequence_T.h: + * tao/Sequence_T.i: + * tao/Special_Basic_Argument_T.h: + * tao/Special_Basic_Argument_T.inl: + * tao/TAOC.cpp: + * tao/TAOC.h: + * tao/UB_String_Argument_T.h: + * tao/UB_String_Argument_T.inl: + * tao/Var_Array_Argument_T.h: + * tao/Var_Array_Argument_T.inl: + * tao/Var_Size_Argument_T.h: + * tao/Var_Size_Argument_T.inl: + * tao/IORInterceptor/IORInterceptorC.cpp: + * tao/IORInterceptor/IORInterceptorC.h: + * tao/Messaging/MessagingC.h: + * tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp: + * tao/ObjRefTemplate/ObjectReferenceTemplateC.h: + * tao/PortableServer/Default_ORTC.cpp: + * tao/PortableServer/Default_ORTC.h: + * tao/PortableServer/ImR_LocatorC.cpp: + * tao/PortableServer/ImR_LocatorC.h: + * tao/PortableServer/ImplRepoC.cpp: + * tao/PortableServer/ImplRepoC.h: + * tao/PortableServer/PortableServerC.cpp: + * tao/PortableServer/PortableServerC.h: + * tao/Valuetype/Sequence_T.cpp: + * tao/Valuetype/Sequence_T.h: + * tao/Valuetype/Sequence_T.inl: + * tao/Valuetype/ValueBase.cpp: + * tao/Valuetype/ValueBase.h: + * tao/Valuetype/ValueFactory.cpp: + * tao/Valuetype/ValueFactory.h: + * tao/Valuetype/Value_VarOut_T.cpp: + * tao/Valuetype/Value_VarOut_T.h: + + - Removed all remaining vestiges of the tao_*_life and +` tao_*_cast structs. The latter was not needed and the + former has been replace by TAO::*_Traits<T>. This + change includes hand-crafted and generated code. + + - Added arg() methods to the stub side argument helper + template classes. These have the same return types as + the ones for the corresponding skeleton arg helper + classes, but will be used in collocated calls. + Mon Jul 14 22:37:22 2003 Jeff Parsons <j.parsons@vanderbilt.edu> * TAO_IDL/be/be_visitor_arg_tmplinst.cpp: @@ -166,7 +270,6 @@ Fri Jul 11 08:19:27 2003 Jeff Parsons <j.parsons@vanderbilt.edu> includes for whatever types are used in operation signatures. ->>>>>>> 1.5.18.29 Thu Jul 10 16:05:26 2003 Jeff Parsons <j.parsons@vanderbilt.edu> * tao/Fixed_Size_Argument_T.cpp: diff --git a/TAO/TAO_IDL/be/be_interface.cpp b/TAO/TAO_IDL/be/be_interface.cpp index 15a2afc0114..69d19ededed 100644 --- a/TAO/TAO_IDL/be/be_interface.cpp +++ b/TAO/TAO_IDL/be/be_interface.cpp @@ -589,49 +589,18 @@ be_interface:: gen_var_out_seq_decls (void) *os << be_nl << be_nl << "class " << lname << ";" << be_nl - << "typedef " << lname << " *" << lname << "_ptr;" << be_nl - << "struct tao_" << lname << "_life;" << be_nl << be_nl + << "typedef " << lname << " *" << lname << "_ptr;" << be_nl << be_nl << "typedef" << be_idt_nl << "TAO_Objref_Var_T<" << be_idt << be_idt_nl - << lname << "," << be_nl - << "tao_" << lname << "_life" << be_uidt_nl + << lname << be_uidt_nl << ">" << be_uidt_nl << lname << "_var;" << be_uidt_nl << be_nl << "typedef" << be_idt_nl << "TAO_Objref_Out_T<" << be_idt << be_idt_nl - << lname << "," << be_nl - << "tao_" << lname << "_life" << be_uidt_nl + << lname << be_uidt_nl << ">" << be_uidt_nl << lname << "_out;" << be_uidt; - *os << be_nl << be_nl - << "struct " << be_global->stub_export_macro () - << " tao_" << lname << "_life" << be_nl - << "{" << be_idt_nl - << "static " << lname << "_ptr tao_duplicate (" - << lname << "_ptr);" << be_nl - << "static void tao_release (" << lname << "_ptr);" << be_nl - << "static " << lname << "_ptr tao_nil (void);" << be_nl - << "static CORBA::Boolean tao_marshal (" << be_idt << be_idt_nl - << lname << "_ptr," << be_nl - << "TAO_OutputCDR &" << be_uidt_nl - << ");" << be_uidt << be_uidt_nl - << "};"; - - if (! this->is_abstract ()) - { - *os << be_nl << be_nl - << "struct " << be_global->stub_export_macro () - << " tao_" << lname << "_cast" << be_nl - << "{" << be_idt_nl - << "static " << lname << "_ptr tao_narrow (" << be_idt << be_idt_nl - << "CORBA::Object_ptr" - << be_nl << "ACE_ENV_ARG_DECL" << be_uidt_nl - << ");" << be_uidt_nl - << "static CORBA::Object_ptr tao_upcast (void *);" << be_uidt_nl - << "};"; - } - os->gen_endif (); this->var_out_seq_decls_gen_ = 1; diff --git a/TAO/TAO_IDL/be/be_sequence.cpp b/TAO/TAO_IDL/be/be_sequence.cpp index 565a2396fff..bf17713b030 100644 --- a/TAO/TAO_IDL/be/be_sequence.cpp +++ b/TAO/TAO_IDL/be/be_sequence.cpp @@ -485,6 +485,7 @@ be_sequence::instance_name () int be_sequence::gen_base_class_name (TAO_OutStream *os, + char * linebreak, AST_Decl *ctx_scope) { be_type *elem = be_type::narrow_from_decl (this->base_type ()); @@ -495,25 +496,22 @@ be_sequence::gen_base_class_name (TAO_OutStream *os, case be_sequence::MNG_OBJREF: if (this->unbounded ()) { - *os << "TAO_Unbounded_Object_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life," << be_nl; - *os << this->smart_fwd_helper_name (ctx_scope, elem) - << "_cast" << be_uidt_nl + *os << "TAO_Unbounded_Object_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << linebreak + << be_uidt_nl << ">" << be_uidt; } else { - *os << "TAO_Bounded_Object_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_cast," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl + *os << "TAO_Bounded_Object_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << "," + << linebreak << be_nl; + *os << this->max_size ()->ev ()->u.ulval << linebreak << be_uidt_nl << ">" << be_uidt; } @@ -521,21 +519,23 @@ be_sequence::gen_base_class_name (TAO_OutStream *os, case be_sequence::MNG_ABSTRACT: if (this->unbounded ()) { - *os << "TAO_Unbounded_Abstract_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life" << be_uidt_nl + *os << "TAO_Unbounded_Abstract_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << linebreak + << be_uidt_nl << ">" << be_uidt; } else { - *os << "TAO_Bounded_Abstract_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl + *os << "TAO_Bounded_Abstract_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << "," + << linebreak << be_nl; + *os << this->max_size ()->ev ()->u.ulval << linebreak << be_uidt_nl << ">" << be_uidt; } @@ -543,17 +543,22 @@ be_sequence::gen_base_class_name (TAO_OutStream *os, case be_sequence::MNG_PSEUDO: if (this->unbounded ()) { - *os << "TAO_Unbounded_Pseudo_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl - << elem->name () << "_var" << be_uidt_nl + *os << "TAO_Unbounded_Pseudo_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl + << elem->name () << "_var" << linebreak << be_uidt_nl << ">" << be_uidt; } else { - *os << "TAO_Bounded_Pseudo_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl - << elem->name () << "_var," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl + *os << "TAO_Bounded_Pseudo_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl + << elem->name () << "_var," << linebreak << be_nl + << this->max_size ()->ev ()->u.ulval << linebreak + << be_uidt_nl << ">" << be_uidt; } @@ -561,21 +566,23 @@ be_sequence::gen_base_class_name (TAO_OutStream *os, case be_sequence::MNG_VALUE: if (this->unbounded ()) { - *os << "TAO_Unbounded_Valuetype_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life" << be_uidt_nl + *os << "TAO_Unbounded_Valuetype_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << linebreak + << be_uidt_nl << ">" << be_uidt; } else { - *os << "TAO_Bounded_Valuetype_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl; - *os << elem->nested_type_name (ctx_scope, "_var") << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl + *os << "TAO_Bounded_Valuetype_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope, "_var") << "," + << linebreak << be_nl + << this->max_size ()->ev ()->u.ulval << linebreak << be_uidt_nl << ">" << be_uidt; } @@ -610,38 +617,56 @@ be_sequence::gen_base_class_name (TAO_OutStream *os, case AST_Decl::NT_array: if (this->unbounded ()) { - *os << "TAO_Unbounded_Array_Sequence<" + *os << "TAO_Unbounded_Array_Sequence<" << linebreak << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life" << be_uidt_nl - << ">" << be_uidt; + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << "TAO::Array_Traits<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope) << "_slice" + << linebreak << be_uidt_nl + << ">" << linebreak << be_uidt << be_uidt_nl + << ">" << be_uidt << be_uidt; } else { - *os << "TAO_Bounded_Array_Sequence<" + *os << "TAO_Bounded_Array_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << "TAO::Array_Traits<" << linebreak << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl - << this->smart_fwd_helper_name (ctx_scope, elem) - << "_life," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl - << ">" << be_uidt; + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl; + *os << elem->nested_type_name (ctx_scope) << "_slice" + << linebreak << be_uidt_nl + << ">," << linebreak << be_uidt_nl + << this->max_size ()->ev ()->u.ulval << linebreak + << be_uidt_nl + << ">" << be_uidt << be_uidt; } break; default: if (this->unbounded ()) { - *os << "TAO_Unbounded_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << be_uidt_nl - << ">" << be_uidt; + *os << "TAO_Unbounded_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << linebreak + << be_uidt_nl + << ">" << be_uidt << be_uidt; } else { - *os << "TAO_Bounded_Sequence<" << be_idt << be_idt_nl - << elem->nested_type_name (ctx_scope) << "," << be_nl - << this->max_size ()->ev ()->u.ulval << be_uidt_nl - << ">" << be_uidt; + *os << "TAO_Bounded_Sequence<" << linebreak + << be_idt << be_idt_nl + << elem->nested_type_name (ctx_scope) << "," << linebreak + << be_nl + << this->max_size ()->ev ()->u.ulval << linebreak + << be_uidt_nl + << ">" << be_uidt << be_uidt; } break; diff --git a/TAO/TAO_IDL/be/be_type.cpp b/TAO/TAO_IDL/be/be_type.cpp index 3884569cc6c..40864e9ffdc 100644 --- a/TAO/TAO_IDL/be/be_type.cpp +++ b/TAO/TAO_IDL/be/be_type.cpp @@ -292,69 +292,6 @@ be_type::gen_common_varout (TAO_OutStream *os) this->common_varout_gen_ = 1; } -void -be_type::gen_common_tmplinst (TAO_OutStream *os) -{ - AST_Type::SIZE_TYPE st = this->size_type (); - - *os << be_nl << be_nl << "// TAO_IDL - Generated from" << be_nl - << "// " << __FILE__ << ":" << __LINE__; - - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << (st == AST_Type::FIXED ? "TAO_Fixed_Var_T<" - : "TAO_Var_Var_T<") - << be_idt << be_idt_nl - << this->name () << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class TAO_Var_Base_T<" - << be_idt << be_idt_nl - << this->name () << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - if (st == AST_Type::VARIABLE) - { - *os << be_nl<< be_nl - << "template class" << be_idt_nl - << "TAO_Out_T<" << be_idt << be_idt_nl - << this->name () << "," << be_nl - << this->name () << "_var" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - } - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << (st == AST_Type::FIXED ? "TAO_Fixed_Var_T< \\" - : "TAO_Var_Var_T< \\") - << be_idt << be_idt_nl - << this->name () << " \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "#pragma instantiate TAO_Var_Base_T<" - << be_idt << be_idt_nl - << this->name () << be_uidt_nl - << ">" << be_uidt << be_uidt; - - if (st == AST_Type::VARIABLE) - { - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Out_T< \\" << be_idt << be_idt_nl - << this->name () << ", \\" << be_nl - << this->name () << "_var \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - } - - os->gen_endif_AHETI (); -} - idl_bool be_type::seq_elem_tmplinst (void) const { diff --git a/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp index 1afce55d486..fe40142088c 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp @@ -100,21 +100,6 @@ be_visitor_array_any_op_cs::visit_array (be_array *node) << ");" << be_uidt << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Array_Impl_T<" << be_idt << be_idt_nl - << node->name () << "_slice," << be_nl - << node->name () << "_forany" << be_uidt_nl - << ">;" << be_uidt << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Array_Impl_T< \\" << be_idt << be_idt_nl - << node->name () << "_slice, \\" << be_nl - << node->name () << "_forany \\" << be_uidt_nl - << ">" << be_uidt_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - node->cli_stub_any_op_gen (1); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp index aee5198015c..0b280c237a8 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp @@ -199,27 +199,6 @@ int be_visitor_array_ch::visit_array (be_array *node) *os << ";"; - // Generate helper struct for use of array in a sequence. - *os << be_nl << be_nl - << "struct " << be_global->stub_export_macro () - << " tao_" << node->local_name () << "_life" << be_nl - << "{" << be_idt_nl - << "static " << anon_p << node->local_name () - << "_slice * tao_alloc (void);" << be_nl - << "static void tao_free (" << anon_p << node->local_name () - << "_slice * _tao_slice);" << be_nl - << "static " << anon_p << node->local_name () - << "_slice * tao_dup (" << be_idt << be_idt_nl - << "const " << anon_p << node->local_name () << "_slice * _tao_slice" - << be_uidt_nl - << ");" << be_uidt_nl - << "static void tao_copy (" << be_idt << be_idt_nl - << anon_p << node->local_name () << "_slice * _tao_to," << be_nl - << "const " << anon_p << node->local_name () - << "_slice * _tao_from" << be_uidt_nl - << ");" << be_uidt << be_uidt_nl - << "};"; - // No _var or _out class for an anonymous (non-typedef'd) array. if (this->ctx_->tdef () != 0) { @@ -231,8 +210,7 @@ int be_visitor_array_ch::visit_array (be_array *node) << "typedef" << be_idt_nl << "TAO_VarArray_Var_T<" << be_idt << be_idt_nl << node->local_name () << "," << be_nl - << node->local_name () << "_slice," << be_nl - << "tao_" << node->local_name () << "_life" << be_uidt_nl + << node->local_name () << "_slice" << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_var;" << be_uidt; @@ -241,8 +219,7 @@ int be_visitor_array_ch::visit_array (be_array *node) << "TAO_Array_Out_T<" << be_idt << be_idt_nl << node->local_name () << "," << be_nl << node->local_name () << "_var," << be_nl - << node->local_name () << "_slice," << be_nl - << "tao_" << node->local_name () << "_life" << be_uidt_nl + << node->local_name () << "_slice" << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_out;" << be_uidt; } @@ -252,8 +229,7 @@ int be_visitor_array_ch::visit_array (be_array *node) << "typedef" << be_idt_nl << "TAO_FixedArray_Var_T<" << be_idt << be_idt_nl << node->local_name () << "," << be_nl - << node->local_name () << "_slice," << be_nl - << "tao_" << node->local_name () << "_life" << be_uidt_nl + << node->local_name () << "_slice" << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_var;" << be_uidt; @@ -268,8 +244,7 @@ int be_visitor_array_ch::visit_array (be_array *node) << "typedef" << be_idt_nl << "TAO_Array_Forany_T<" << be_idt << be_idt_nl << anon_p << node->local_name () << "," << be_nl - << anon_p << node->local_name () << "_slice," << be_nl - << "tao_" << node->local_name () << "_life" << be_uidt_nl + << anon_p << node->local_name () << "_slice" << be_uidt_nl << ">" << be_uidt_nl << anon_p << node->local_name () << "_forany;" << be_uidt; diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_ci.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_ci.cpp index c32c478eee5..1e8456d97e2 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/array_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/array_ci.cpp @@ -204,50 +204,6 @@ int be_visitor_array_ci::visit_array (be_array *node) << "return " << fname << "_alloc ();" << be_uidt_nl << "}"; -// =================================================== - - *os << be_nl << be_nl - << "ACE_INLINE" << be_nl - << "void" << be_nl - << node->fwd_helper_name () << "_life::tao_free (" - << be_idt << be_idt_nl - << fname << "_slice * _tao_slice" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << fname << "_free (_tao_slice);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "ACE_INLINE" << be_nl - << fname << "_slice *" << be_nl - << node->fwd_helper_name () << "_life::tao_dup (" - << be_idt << be_idt_nl - << "const " << fname << "_slice * _tao_slice" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return " << fname << "_dup (_tao_slice);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "ACE_INLINE" << be_nl - << "void" << be_nl - << node->fwd_helper_name () << "_life::tao_copy (" - << be_idt << be_idt_nl - << fname << "_slice * _tao_to," << be_nl - << "const " << fname << "_slice * _tao_from" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << fname << "_copy (_tao_to, _tao_from);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "ACE_INLINE" << be_nl - << fname << "_slice *" << be_nl - << node->fwd_helper_name () << "_life::tao_alloc (void)" << be_nl - << "{" << be_idt_nl - << "return " << fname << "_alloc ();" << be_uidt_nl - << "}"; - node->cli_inline_gen (1); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp index 3b7e02691f8..0ab3c10066d 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp @@ -352,121 +352,7 @@ int be_visitor_array_cs::visit_array (be_array *node) } } - this->gen_tmplinst (node, - fname); - node->cli_stub_gen (I_TRUE); return 0; } -void -be_visitor_array_cs::gen_tmplinst (be_array *node, - char *fname) -{ - AST_Type::SIZE_TYPE st = node->size_type (); - TAO_OutStream *os = this->ctx_->stream (); - os->gen_ifdef_AHETI (); - - if (this->ctx_->tdef () != 0) - { - if (st == AST_Type::FIXED) - { - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_FixedArray_Var_T<" << be_idt << be_idt_nl - << fname << "," << be_nl - << fname << "_slice," << be_nl - << node->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - } - else - { - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_VarArray_Var_T<" << be_idt << be_idt_nl - << fname << "," << be_nl - << fname << "_slice," << be_nl - << node->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Array_Out_T<" << be_idt << be_idt_nl - << fname << "," << be_nl - << fname << "_var," << be_nl - << fname << "_slice," << be_nl - << node->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - } - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Array_Var_Base_T<" << be_idt << be_idt_nl - << fname << "," << be_nl - << fname << "_slice," << be_nl - << node->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - } - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Array_Forany_T<" << be_idt << be_idt_nl - << fname << "," << be_nl - << fname << "_slice," << be_nl - << node->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - os->gen_elif_AHETI (); - - if (this->ctx_->tdef () != 0) - { - if (st == AST_Type::FIXED) - { - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_FixedArray_Var_T< \\" << be_idt << be_idt_nl - << fname << ", \\" << be_nl - << fname << "_slice, \\" << be_nl - << node->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - } - else - { - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_VarArray_Var_T< \\" << be_idt << be_idt_nl - << fname << ", \\" << be_nl - << fname << "_slice, \\" << be_nl - << node->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Array_Out_T< \\" << be_idt << be_idt_nl - << fname << ", \\" << be_nl - << fname << "_var, \\" << be_nl - << fname << "_slice, \\" << be_nl - << node->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - } - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Array_Var_Base_T< \\" << be_idt << be_idt_nl - << fname << ", \\" << be_nl - << fname << "_slice, \\" << be_nl - << node->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - } - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Array_Forany_T< \\" << be_idt << be_idt_nl - << fname << ", \\" << be_nl - << fname << "_slice, \\" << be_nl - << node->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - os->gen_endif_AHETI (); -} - diff --git a/TAO/TAO_IDL/be/be_visitor_enum/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_enum/any_op_cs.cpp index 486d84ba535..84ccd9f95b5 100644 --- a/TAO/TAO_IDL/be/be_visitor_enum/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_enum/any_op_cs.cpp @@ -80,18 +80,6 @@ be_visitor_enum_any_op_cs::visit_enum (be_enum *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Basic_Impl_T<" << node->name () << ">;" - << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Basic_Impl_T<" - << node->name () << " \\" - << ">" << be_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - node->cli_stub_any_op_gen (1); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp index 538a13d1078..3e455acdfbf 100644 --- a/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp @@ -93,19 +93,6 @@ be_visitor_interface_any_op_cs::visit_interface (be_interface *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl; - - *os << "template class TAO::Any_Impl_T<" << node->name () << ">;" - << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl; - - *os << "# pragma instantiate TAO::Any_Impl_T<" << node->name () << ">" - << be_uidt_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - // All we have to do is to visit the scope and generate code. if (!node->is_local ()) { diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp index 058b1965250..e5420ff73fe 100644 --- a/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp @@ -58,134 +58,56 @@ be_visitor_interface_cs::visit_interface (be_interface *node) *os << be_nl << be_nl << "// TAO_IDL - Generated from" << be_nl << "// " << __FILE__ << ":" << __LINE__; -/* - *os << be_nl << be_nl - << "// Traits specializations for " << node->name () << "."; - - *os << be_nl << be_nl - << node->name () << "_ptr" << be_nl - << "TAO::Objref_Traits<" << node->name () << ">::tao_duplicate (" - << be_idt << be_idt_nl - << node->name () << "_ptr p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return " << node->name () << "::_duplicate (p);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "void" << be_nl - << "TAO::Objref_Traits<" << node->name () << ">::tao_release (" - << be_idt << be_idt_nl - << node->name () << "_ptr p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::release (p);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << node->name () << "_ptr" << be_nl - << "TAO::Objref_Traits<" << node->name () << ">::tao_nil (void)" - << be_nl - << "{" << be_idt_nl - << "return " << node->name () << "::_nil ();" << be_uidt_nl - << "}"; - *os << be_nl << be_nl - << "CORBA::Boolean" << be_nl - << "TAO::Objref_Traits<" << node->name () << ">::tao_marshal (" - << be_idt << be_idt_nl - << node->name () << "_ptr p," << be_nl - << "TAO_OutputCDR & cdr" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return p->marshal (cdr);" << be_uidt_nl - << "}"; -*/ - // Initialize the static narrrowing helper variable. - *os << be_nl << be_nl - << "int " << node->full_name () << "::_tao_class_id = 0;"; - - const char *fhname = node->fwd_helper_name (); - - // Helper functions generated in case this interface was - // forward declared in some other IDL file and not defined there. - *os << be_nl << be_nl - << node->full_name () << "_ptr" << be_nl - << fhname << "_life::" - << "tao_duplicate (" << be_idt << be_idt_nl - << node->nested_type_name (this->ctx_->scope ()) - << "_ptr p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return " << node->nested_type_name (this->ctx_->scope ()) - << "::_duplicate (p);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "void" << be_nl - << fhname << "_life::" - << "tao_release (" << be_idt << be_idt_nl - << node->nested_type_name (this->ctx_->scope ()) - << "_ptr p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::release (p);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << node->full_name () << "_ptr" << be_nl - << fhname << "_life::" - << "tao_nil (" << be_idt << be_idt_nl - << "void" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return " << node->nested_type_name (this->ctx_->scope ()) - << "::_nil ();" << be_uidt_nl - << "}"; + if (node->is_defined ()) + { + *os << be_nl << be_nl + << "// Traits specializations for " << node->name () << "."; - *os << be_nl << be_nl - << "CORBA::Boolean" << be_nl - << fhname << "_life::" - << "tao_marshal (" << be_idt << be_idt_nl - << node->nested_type_name (this->ctx_->scope ()) - << "_ptr p," << be_nl - << "TAO_OutputCDR &cdr" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "return p->marshal (cdr);" << be_uidt_nl - << "}"; + *os << be_nl << be_nl + << node->name () << "_ptr" << be_nl + << "TAO::Objref_Traits<" << node->name () << ">::tao_duplicate (" + << be_idt << be_idt_nl + << node->name () << "_ptr p" << be_uidt_nl + << ")" << be_uidt_nl + << "{" << be_idt_nl + << "return " << node->name () << "::_duplicate (p);" << be_uidt_nl + << "}"; - if (! node->is_abstract ()) - { *os << be_nl << be_nl - << node->full_name () << "_ptr" << be_nl - << fhname << "_cast::" - << "tao_narrow (" << be_idt << be_idt_nl - << "CORBA::Object *p" << be_nl - << "ACE_ENV_ARG_DECL" << be_uidt_nl + << "void" << be_nl + << "TAO::Objref_Traits<" << node->name () << ">::tao_release (" + << be_idt << be_idt_nl + << node->name () << "_ptr p" << be_uidt_nl << ")" << be_uidt_nl << "{" << be_idt_nl - << "return " << node->nested_type_name (this->ctx_->scope ()) - << "::_narrow (p ACE_ENV_ARG_PARAMETER);" - << be_uidt_nl + << "CORBA::release (p);" << be_uidt_nl + << "}"; + + *os << be_nl << be_nl + << node->name () << "_ptr" << be_nl + << "TAO::Objref_Traits<" << node->name () << ">::tao_nil (void)" + << be_nl + << "{" << be_idt_nl + << "return " << node->name () << "::_nil ();" << be_uidt_nl << "}"; *os << be_nl << be_nl - << "CORBA::Object *" << be_nl - << fhname << "_cast::" - << "tao_upcast (" << be_idt << be_idt_nl - << "void *src" << be_uidt_nl + << "CORBA::Boolean" << be_nl + << "TAO::Objref_Traits<" << node->name () << ">::tao_marshal (" + << be_idt << be_idt_nl + << node->name () << "_ptr p," << be_nl + << "TAO_OutputCDR & cdr" << be_uidt_nl << ")" << be_uidt_nl << "{" << be_idt_nl - << node->nested_type_name (this->ctx_->scope ()) - << " **tmp =" << be_idt_nl - << "ACE_static_cast (" - << node->nested_type_name (this->ctx_->scope ()) - << " **, src);" << be_uidt_nl - << "return *tmp;" << be_uidt_nl + << "return p->marshal (cdr);" << be_uidt_nl << "}"; } + // Initialize the static narrrowing helper variable. + *os << be_nl << be_nl + << "int " << node->full_name () << "::_tao_class_id = 0;"; + if (node->has_mixed_parentage ()) { *os << be_nl << be_nl diff --git a/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp index 23eea45140f..51c6014d354 100644 --- a/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp @@ -43,9 +43,7 @@ int be_visitor_interface_smart_proxy_cs::visit_interface (be_interface *node) if (be_global->gen_smart_proxies ()) { - TAO_OutStream *os = this->ctx_->stream (); - this->ctx_->node (node); os->indent (); @@ -343,29 +341,6 @@ int be_visitor_interface_smart_proxy_cs::visit_interface (be_interface *node) << "}" << be_uidt_nl << "return this->proxy_.in ();" << be_uidt_nl << "}" << be_nl << be_nl; - - os->indent (); - *os << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl<<"defined (ACE_HAS_GNU_REPO)"<<be_uidt_nl - << "template class TAO_Singleton<"; - *os << scope->full_name (); - - // Only if there exists any nesting "::" is needed! - if (node->is_nested ()) - *os << "::"; - *os <<"TAO_" <<node->flat_name () - << "_Proxy_Factory_Adapter, TAO_SYNCH_RECURSIVE_MUTEX >;"<<be_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" - << be_nl - << "#pragma instantiate TAO_Singleton<"; - *os << scope->full_name (); - - // Only if there exists any nesting "::" is needed! - if (node->is_nested ()) - *os << "::"; - *os << "TAO_"<<node->flat_name () - << "_Proxy_Factory_Adapter, TAO_SYNCH_RECURSIVE_MUTEX>"<<be_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"<<be_nl<<be_nl; } else { diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp index b0058fd2bdb..cd511a70aef 100644 --- a/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp @@ -115,17 +115,6 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Dual_Impl_T<" << node->name () << ">;" - << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Dual_Impl_T<" << node->name () - << ">" << be_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - node->cli_stub_any_op_gen (1); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp index 5befc431aba..1fa719bef2d 100644 --- a/TAO/TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp @@ -89,16 +89,6 @@ be_visitor_sequence_cdr_op_cs::visit_sequence (be_sequence *node) "gen_anonymous_base_type failed\n"), -1); } -/* - if (bt->accept (this) == -1) - { - ACE_ERROR_RETURN ((LM_ERROR, - "be_visitor_sequence_cdr_op_cs::" - "visit_sequence - " - "Base type codegen failed\n"), - -1); - } -*/ } *os << be_nl << be_nl << "// TAO_IDL - Generated from" << be_nl @@ -854,8 +844,10 @@ be_visitor_sequence_cdr_op_cs::visit_node (be_type *bt) *os << parent->name () << "::"; } - *os << "tao_" << bt->local_name () << "_life::tao_marshal (" - << "_tao_sequence[i].in (), strm);" << be_uidt; + *os << "TAO::Objref_Traits<" << bt->name () << ">::tao_marshal (" + << be_idt << be_idt_nl + << "_tao_sequence[i].in (), strm" << be_uidt_nl + << ");" << be_uidt << be_uidt; } break; diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp index e1c6780ea2d..9a1ab29fde3 100644 --- a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp @@ -119,7 +119,7 @@ int be_visitor_sequence_ch::visit_sequence (be_sequence *node) << node->local_name () << be_idt_nl << ": public" << be_idt << be_idt_nl; - if (node->gen_base_class_name (os, this->ctx_->scope ()) == -1) + if (node->gen_base_class_name (os, "", this->ctx_->scope ()) == -1) { ACE_ERROR_RETURN ((LM_ERROR, "(%N:%l) be_visitor_sequence_ch::" @@ -249,9 +249,8 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "," << be_nl << "TAO_Object_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" + << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_var;" << be_uidt; @@ -262,9 +261,8 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "_var," << be_nl << "TAO_Object_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" + << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_out;" << be_uidt; @@ -275,9 +273,8 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "," << be_nl << "TAO_Abstract_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" + << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_var;" << be_uidt; @@ -288,9 +285,8 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "_var," << be_nl << "TAO_Abstract_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" + << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_out;" << be_uidt; @@ -325,8 +321,7 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "," << be_nl << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_var;" << be_uidt; @@ -338,8 +333,7 @@ be_visitor_sequence_ch::gen_varout_typedefs (be_sequence *node, << node->local_name () << "_var," << be_nl << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl << elem->nested_type_name (scope) << "," << be_nl; - *os << elem->nested_type_name (scope, "_var") << "," << be_nl - << elem->fwd_helper_name () << "_life" << be_uidt_nl + *os << elem->nested_type_name (scope, "_var") << be_uidt_nl << ">" << be_uidt << be_uidt_nl << ">" << be_uidt_nl << node->local_name () << "_out;" << be_uidt; diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp index 2dda4a3c368..2d9cec3e23f 100644 --- a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp @@ -83,7 +83,7 @@ int be_visitor_sequence_cs::visit_sequence (be_sequence *node) << ": " << be_idt; // Pass it to the base constructor. - if (node->gen_base_class_name (os, idl_global->root ()) == -1) + if (node->gen_base_class_name (os, "", idl_global->root ()) == -1) { ACE_ERROR_RETURN ((LM_ERROR, "(%N:%l) be_visitor_sequence_cs::" @@ -129,7 +129,7 @@ int be_visitor_sequence_cs::visit_sequence (be_sequence *node) << " : " << be_idt << be_idt; // Pass it to the base constructor. - if (node->gen_base_class_name (os, idl_global->root ()) == -1) + if (node->gen_base_class_name (os, "", idl_global->root ()) == -1) { ACE_ERROR_RETURN ((LM_ERROR, "(%N:%l) be_visitor_sequence_cs::" @@ -158,7 +158,7 @@ int be_visitor_sequence_cs::visit_sequence (be_sequence *node) << " : " << be_idt << be_idt; // Pass it to the base constructor. - if (node->gen_base_class_name (os, idl_global->root ()) == -1) + if (node->gen_base_class_name (os, "", idl_global->root ()) == -1) { ACE_ERROR_RETURN ((LM_ERROR, "(%N:%l) be_visitor_sequence_cs::" @@ -194,662 +194,9 @@ int be_visitor_sequence_cs::visit_sequence (be_sequence *node) << "}"; } - if (!bt->seq_elem_tmplinst ()) - { - // This is a no-op unless our element is a managed type. - this->gen_managed_type_tmplinst (node, bt); - bt->seq_elem_tmplinst (I_TRUE); - } - - if (this->ctx_->tdef () != 0) - { - this->gen_varout_tmplinst (node, - bt); - - if (nt == AST_Decl::NT_typedef) - { - be_typedef *td = be_typedef::narrow_from_decl (bt); - nt = td->base_node_type (); - } - } - - // basic IDL types are in TAO. Sequences of (w)strings in TAO are - // specializations and so are not template classes. - if ((nt != AST_Decl::NT_pre_defined - && nt != AST_Decl::NT_string - && nt != AST_Decl::NT_wstring) - || ! node->unbounded ()) - { - if (this->gen_base_class_tmplinst (node) == -1) - { - return -1; - } - } - os->gen_endif (); node->cli_stub_gen (I_TRUE); return 0; } -void -be_visitor_sequence_cs::gen_managed_type_tmplinst (be_sequence *node, - be_type *bt) -{ - TAO_OutStream *os = this->ctx_->stream (); - - switch (node->managed_type ()) - { - case be_sequence::MNG_OBJREF: - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - os->gen_endif_AHETI (); - - break; - case be_sequence::MNG_ABSTRACT: - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Abstract_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Abstract_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - os->gen_endif_AHETI (); - - break; - case be_sequence::MNG_VALUE: - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Valuetype_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - os->gen_endif_AHETI (); - - break; - case be_sequence::MNG_PSEUDO: - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Pseudo_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Pseudo_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var \\" << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - os->gen_endif_AHETI (); - - break; - default: - // String and Wstring managed types are not template classes. - break; - } -} - -int -be_visitor_sequence_cs::gen_varout_tmplinst (be_sequence *node, - be_type *bt) -{ - TAO_OutStream *os = this->ctx_->stream (); - - os->gen_ifdef_AHETI (); - - /// @@NOTE: This method contains too much of duplicated code. Needs - /// to be refactored. -- Bala - switch (node->managed_type ()) - { - case be_sequence::MNG_OBJREF: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - // @@NOTE: Too much of code repetition. Aint there a way to - // refactor these things? - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_ABSTRACT: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Abstract_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - // @@Please see note above - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Abstract_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_Abstract_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_PSEUDO: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Pseudo_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Pseudo_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_Pseudo_Object_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_VALUE: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - //@@Please see note above.. - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_Valuetype_Manager<" << be_idt << be_idt_nl - << bt->name () << "," << be_nl - << bt->name () << "_var," << be_nl - << bt->fwd_helper_name () << "_life" << be_uidt_nl - << ">" << be_uidt << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_STRING: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - <<"TAO_SeqElem_String_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - <<"TAO_SeqElem_String_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_SeqElem_String_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_WSTRING: - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Var_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - <<"TAO_SeqElem_WString_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - <<"TAO_SeqElem_WString_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_MngSeq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << "TAO_SeqElem_WString_Manager" << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - break; - default: // not a managed type - { - AST_Type::SIZE_TYPE st = bt->size_type (); - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << (st == AST_Type::FIXED ? "TAO_FixedSeq_Var_T<" - : "TAO_VarSeq_Var_T<") - << be_idt << be_idt_nl - << node->name () << "," << be_nl - << bt->name () << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - // @@ Please see not above.. - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Var_Base_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << bt->name () << be_uidt_nl - << ">;" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "template class" << be_idt_nl - << "TAO_Seq_Out_T<" << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_var," << be_nl - << bt->name () << be_uidt_nl - << ">;" << be_uidt << be_uidt; - } - - break; - } - - os->gen_elif_AHETI (); - - switch (node->managed_type ()) - { - case be_sequence::MNG_OBJREF: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt << be_uidt; - - break; - case be_sequence::MNG_ABSTRACT: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Abstract_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Abstract_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_Abstract_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_PSEUDO: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Pseudo_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Pseudo_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_Pseudo_Object_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_VALUE: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Valuetype_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << "TAO_Valuetype_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_Valuetype_Manager< \\" << be_idt << be_idt_nl - << bt->name () << ", \\" << be_nl - << bt->name () << "_var, \\" << be_nl - << bt->fwd_helper_name () << "_life \\" << be_uidt_nl - << "> \\" << be_uidt << be_uidt_nl - << ">" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_STRING: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - <<"TAO_SeqElem_String_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - <<"TAO_SeqElem_String_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_SeqElem_String_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - break; - case be_sequence::MNG_WSTRING: - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Var_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - <<"TAO_SeqElem_WString_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - <<"TAO_SeqElem_WString_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_MngSeq_Out_T< \\" << be_idt << be_idt_nl - << node->name () << ", \\" << be_nl - << node->name () << "_var, \\" << be_nl - << "TAO_SeqElem_WString_Manager \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - break; - default: // not a managed type - { - AST_Type::SIZE_TYPE st = bt->size_type (); - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << (st == AST_Type::FIXED ? "TAO_FixedSeq_Var_T< \\" - : "TAO_VarSeq_Var_T< \\") - << be_idt << be_idt_nl - << node->local_name () << ", \\" << be_nl - << bt->name () << " \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Var_Base_T< \\" << be_idt << be_idt_nl - << node->local_name () << ", \\" << be_nl - << bt->name () << " \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - - *os << be_nl << be_nl - << "# pragma instantiate \\" << be_idt_nl - << "TAO_Seq_Out_T< \\" << be_idt << be_idt_nl - << node->local_name () << ", \\" << be_nl - << node->local_name () << "_var, \\" << be_nl - << bt->name () << " \\" << be_uidt_nl - << ">" << be_uidt << be_uidt; - } - - break; - } - - os->gen_endif_AHETI (); - - return 0; -} - -int -be_visitor_sequence_cs::gen_base_class_tmplinst (be_sequence *node) -{ - TAO_OutStream *os = this->ctx_->stream (); - - os->gen_ifdef_macro (node->flat_name ()); - os->gen_ifdef_AHETI (); - - *os << be_nl << be_nl - <<"template class "; - - // Pass it to the base constructor. - if (node->gen_base_class_name (os, idl_global->root ()) == -1) - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_sequence_cs::" - "visit_sequence - " - "codegen for base sequence class failed\n"), - -1); - } - - *os << ";" << be_uidt; - - os->gen_elif_AHETI (); - - *os << be_nl << be_nl - << "#pragma instantiate "; - - // Pass it to the base constructor. - if (node->gen_base_class_name (os, idl_global->root ()) == -1) - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_sequence_cs::" - "visit_sequence - " - "codegen for base sequence class failed\n"), - -1); - } - - *os << be_uidt; - - os->gen_endif_AHETI (); - os->gen_endif (); - - return 0; -} diff --git a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp index 8d99ac4abaf..d4fc6497d06 100644 --- a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp @@ -115,17 +115,6 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Dual_Impl_T<" << node->name () << ">;" - << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Dual_Impl_T<" << node->name () - << ">" << be_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - // all we have to do is to visit the scope and generate code if (this->visit_scope (node) == -1) { diff --git a/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp index 7db67b176ef..a160d3c2900 100644 --- a/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp @@ -88,10 +88,6 @@ be_visitor_structure_cs::visit_structure (be_structure *node) -1); } - // Generate the conditional explicit template instantiations for our - // _var and/or _out clases. - node->gen_common_tmplinst (os); - node->cli_stub_gen (I_TRUE); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_tmplinst.cpp b/TAO/TAO_IDL/be/be_visitor_tmplinst.cpp index 30032a9b9e8..edfc6ee31a9 100644 --- a/TAO/TAO_IDL/be/be_visitor_tmplinst.cpp +++ b/TAO/TAO_IDL/be/be_visitor_tmplinst.cpp @@ -42,6 +42,7 @@ #include "be_helper.h" #include "be_extern.h" #include "utl_identifier.h" +#include "global_extern.h" #include "be_visitor_tmplinst.h" #include "be_visitor_context.h" diff --git a/TAO/TAO_IDL/be/be_visitor_traits.cpp b/TAO/TAO_IDL/be/be_visitor_traits.cpp index afa3b14a0d9..523f3af1b2c 100644 --- a/TAO/TAO_IDL/be/be_visitor_traits.cpp +++ b/TAO/TAO_IDL/be/be_visitor_traits.cpp @@ -382,31 +382,6 @@ be_visitor_traits::visit_array (be_array *node) TAO_OutStream *os = this->ctx_->stream (); - // This is used by the _var and _out classes, so it should always be - // generated in the main file. - if (!node->imported () && !node->anonymous ()) - { - *os << be_nl << be_nl - << "ACE_TEMPLATE_SPECIALIZATION" << be_nl - << "struct " << be_global->stub_export_macro () << " Array_Traits<" - << be_idt << be_idt_nl - << node->name () << "," << be_nl - << node->name () << "_slice" << be_uidt_nl - << ">" << be_uidt_nl - << "{" << be_idt_nl - << "static " << node->name () << "_slice * tao_alloc (void);" - << be_nl - << "static void tao_free (" << node->name () - << "_slice *);" << be_nl - << "static " << node->name () << "_slice * tao_dup (const " - << node->name () << "_slice *);" << be_nl - << "static void tao_copy (" << be_idt << be_idt_nl - << node->name () << "_slice * tao_to," << be_nl - << "const " << node->name () << "_slice * tao_from" << be_uidt_nl - << ");" << be_uidt << be_uidt_nl - << "};"; - } - // This should be generated even for imported nodes. The ifdef guard prevents // multiple declarations. if (node->seen_in_operation ()) diff --git a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp index 5014fab7cbe..fc97c9ea7c3 100644 --- a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp @@ -115,17 +115,6 @@ be_visitor_union_any_op_cs::visit_union (be_union *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}"; - *os << be_nl << be_nl - << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Dual_Impl_T<" << node->name () << ">;" - << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Dual_Impl_T<" << node->name () - << ">" << be_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - // All we have to do is to visit the scope and generate code. if (this->visit_scope (node) == -1) { diff --git a/TAO/TAO_IDL/be/be_visitor_union/union_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/union_cs.cpp index f94ef1b6e32..2251761bfb2 100644 --- a/TAO/TAO_IDL/be/be_visitor_union/union_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union/union_cs.cpp @@ -292,10 +292,6 @@ int be_visitor_union_cs::visit_union (be_union *node) } } - // Generate conditional explicit template instantiations for our - // _var and/or _out classes. - node->gen_common_tmplinst (os); - node->cli_stub_gen (I_TRUE); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/any_op_cs.cpp index 82e0aa4be8b..45c082c78a7 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/any_op_cs.cpp @@ -99,16 +99,6 @@ be_visitor_valuetype_any_op_cs::visit_valuetype (be_valuetype *node) << ");" << be_uidt << be_uidt << be_uidt_nl << "}" << be_nl << be_nl; - *os << "#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \\" - << be_idt_nl - << " defined (ACE_HAS_GNU_REPO)" << be_nl - << "template class TAO::Any_Impl_T<" << node->full_name () - << ">;" << be_uidt_nl - << "#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)" << be_nl - << "# pragma instantiate TAO::Any_Impl_T<" << node->full_name () - << ">" << be_uidt_nl - << "#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */"; - node->cli_stub_any_op_gen (1); return 0; } diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp index 67261f60647..e80369a3f12 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp @@ -93,54 +93,28 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node) *os << be_nl << be_nl << "// TAO_IDL - Generated from" << be_nl << "// " << __FILE__ << ":" << __LINE__; - *os << be_nl << be_nl - << "void" << be_nl - << "TAO::Value_Traits<" << node->name () << ">::tao_add_ref (" - << be_idt << be_idt_nl - << node->name () << " * p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::add_ref (p);" << be_uidt_nl - << "}"; - - *os << be_nl << be_nl - << "void" << be_nl - << "TAO::Value_Traits<" << node->name () << ">::tao_remove_ref (" - << be_idt << be_idt_nl - << node->name () << " * p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::remove_ref (p);" << be_uidt_nl - << "}"; - - const char *fhname = node->fwd_helper_name (); - - if (ACE_OS::strcmp (fhname, "") == 0) + if (node->is_defined ()) { - node->gen_fwd_helper_name (); - fhname = node->fwd_helper_name (); - } - - // Helper functions to allow non-defined forward declared valuetypes - // access to some methods in the full definition. - *os << be_nl << be_nl - << "void" << be_nl - << fhname << "_life::tao_add_ref (" - << be_idt << be_idt_nl - << node->full_name () << " * p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::add_ref (p);" << be_uidt_nl - << "}" << be_nl << be_nl; + *os << be_nl << be_nl + << "void" << be_nl + << "TAO::Value_Traits<" << node->name () << ">::tao_add_ref (" + << be_idt << be_idt_nl + << node->name () << " * p" << be_uidt_nl + << ")" << be_uidt_nl + << "{" << be_idt_nl + << "CORBA::add_ref (p);" << be_uidt_nl + << "}"; - *os << "void" << be_nl - << fhname << "_life::tao_remove_ref (" - << be_idt << be_idt_nl - << node->full_name () << " * p" << be_uidt_nl - << ")" << be_uidt_nl - << "{" << be_idt_nl - << "CORBA::remove_ref (p);" << be_uidt_nl - << "}"; + *os << be_nl << be_nl + << "void" << be_nl + << "TAO::Value_Traits<" << node->name () << ">::tao_remove_ref (" + << be_idt << be_idt_nl + << node->name () << " * p" << be_uidt_nl + << ")" << be_uidt_nl + << "{" << be_idt_nl + << "CORBA::remove_ref (p);" << be_uidt_nl + << "}"; + } // The _downcast method // %! use ACE_xxx_cast here ? *os << be_nl << be_nl diff --git a/TAO/TAO_IDL/be_include/be_sequence.h b/TAO/TAO_IDL/be_include/be_sequence.h index 77d73afe16b..b7622cbd57a 100644 --- a/TAO/TAO_IDL/be_include/be_sequence.h +++ b/TAO/TAO_IDL/be_include/be_sequence.h @@ -91,6 +91,7 @@ public: // Report the instance name for instantiation. int gen_base_class_name (TAO_OutStream *os, + char * linebreak, AST_Decl *elem_scope); // Common code for generating the name and parameters of our // template sequence base class. diff --git a/TAO/TAO_IDL/be_include/be_type.h b/TAO/TAO_IDL/be_include/be_type.h index 8ce291581c8..17dd1ee6984 100644 --- a/TAO/TAO_IDL/be_include/be_type.h +++ b/TAO/TAO_IDL/be_include/be_type.h @@ -63,9 +63,6 @@ public: void gen_common_varout (TAO_OutStream *os); // Generate _var and _out typedefs for structs and unions. - void gen_common_tmplinst (TAO_OutStream *os); - // Generate explicit template instantiations for the above. - idl_bool seq_elem_tmplinst (void) const; virtual void seq_elem_tmplinst (idl_bool val); // Accessors for the member. diff --git a/TAO/TAO_IDL/be_include/be_visitor_array/array_cs.h b/TAO/TAO_IDL/be_include/be_visitor_array/array_cs.h index 9e19def9a8e..1a6509e579b 100644 --- a/TAO/TAO_IDL/be_include/be_visitor_array/array_cs.h +++ b/TAO/TAO_IDL/be_include/be_visitor_array/array_cs.h @@ -43,11 +43,6 @@ public: virtual int visit_array (be_array *node); // visit the array node - -private: - void gen_tmplinst (be_array *node, - char *fname); - // Generated the explicit template instantiations. }; #endif /* _BE_VISITOR_ARRAY_CS_H_ */ diff --git a/TAO/TAO_IDL/be_include/be_visitor_sequence/sequence_cs.h b/TAO/TAO_IDL/be_include/be_visitor_sequence/sequence_cs.h index 88edf76b097..7bc66db48d5 100644 --- a/TAO/TAO_IDL/be_include/be_visitor_sequence/sequence_cs.h +++ b/TAO/TAO_IDL/be_include/be_visitor_sequence/sequence_cs.h @@ -44,21 +44,6 @@ public: virtual int visit_sequence (be_sequence *node); // visit sequence node - - int gen_varout_tmplinst (be_sequence *node, - be_type *bt); - // Generate explicit template instantiations for our _var - // and _out classes. - - void gen_managed_type_tmplinst (be_sequence *node, - be_type *bt); - // Generate explicit instantiation for our element type, if - // it is a managed type and if Any operator generation is suppressed. - -private: - - // Generate explicit instantiation for the base class type. - int gen_base_class_tmplinst (be_sequence *node); }; #endif /* _BE_VISITOR_SEQUENCE_SEQUENCE_CS_H_ */ diff --git a/TAO/TAO_IDL/be_include/be_visitor_tmplinst.h b/TAO/TAO_IDL/be_include/be_visitor_tmplinst.h index d969398bc74..3bb34e26849 100644 --- a/TAO/TAO_IDL/be_include/be_visitor_tmplinst.h +++ b/TAO/TAO_IDL/be_include/be_visitor_tmplinst.h @@ -23,6 +23,7 @@ #define TAO_BE_VISITOR_TMPLINST_H #include "ast_argument.h" +#include "idl_defines.h" #include "be_visitor_scope.h" #include "be_visitor_tmplinst/tmplinst.h" diff --git a/TAO/tao/Array_VarOut_T.cpp b/TAO/tao/Array_VarOut_T.cpp index 90841d0d445..773387edf97 100644 --- a/TAO/tao/Array_VarOut_T.cpp +++ b/TAO/tao/Array_VarOut_T.cpp @@ -13,9 +13,9 @@ ACE_RCSID (tao, Array_VarOut_T, "$Id$") -template<typename T, typename T_slice, typename T_life> -TAO_FixedArray_Var_T<T,T_slice,T_life> & -TAO_FixedArray_Var_T<T,T_slice,T_life>::operator= (T_slice * p) +template<typename T, typename T_slice> +TAO_FixedArray_Var_T<T,T_slice> & +TAO_FixedArray_Var_T<T,T_slice>::operator= (T_slice * p) { // Is what we own the same that is being assigned to us? if (this->ptr_ != p) @@ -28,10 +28,10 @@ TAO_FixedArray_Var_T<T,T_slice,T_life>::operator= (T_slice * p) return *this; } -template<typename T, typename T_slice, typename T_life> -TAO_FixedArray_Var_T<T,T_slice,T_life> & -TAO_FixedArray_Var_T<T,T_slice,T_life>::operator= ( - const TAO_FixedArray_Var_T<T,T_slice,T_life> & p +template<typename T, typename T_slice> +TAO_FixedArray_Var_T<T,T_slice> & +TAO_FixedArray_Var_T<T,T_slice>::operator= ( + const TAO_FixedArray_Var_T<T,T_slice> & p ) { if (this != &p) @@ -47,9 +47,9 @@ TAO_FixedArray_Var_T<T,T_slice,T_life>::operator= ( // ************************************************************* -template<typename T, typename T_slice, typename T_life> -TAO_VarArray_Var_T<T,T_slice,T_life> & -TAO_VarArray_Var_T<T,T_slice,T_life>::operator= (T_slice * p) +template<typename T, typename T_slice> +TAO_VarArray_Var_T<T,T_slice> & +TAO_VarArray_Var_T<T,T_slice>::operator= (T_slice * p) { // Is what we own the same that is being assigned to us? if (this->ptr_ != p) @@ -62,10 +62,10 @@ TAO_VarArray_Var_T<T,T_slice,T_life>::operator= (T_slice * p) return *this; } -template<typename T, typename T_slice, typename T_life> -TAO_VarArray_Var_T<T,T_slice,T_life> & -TAO_VarArray_Var_T<T,T_slice,T_life>::operator= ( - const TAO_VarArray_Var_T<T,T_slice,T_life> & p +template<typename T, typename T_slice> +TAO_VarArray_Var_T<T,T_slice> & +TAO_VarArray_Var_T<T,T_slice>::operator= ( + const TAO_VarArray_Var_T<T,T_slice> & p ) { if (this != &p) @@ -81,9 +81,9 @@ TAO_VarArray_Var_T<T,T_slice,T_life>::operator= ( // ************************************************************* -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> void -TAO_Array_Forany_T<T,T_slice,T_life>::_tao_any_destructor ( +TAO_Array_Forany_T<T,T_slice>::_tao_any_destructor ( void * _tao_void_pointer ) { diff --git a/TAO/tao/Array_VarOut_T.h b/TAO/tao/Array_VarOut_T.h index dd711969e5a..a5e0f441423 100644 --- a/TAO/tao/Array_VarOut_T.h +++ b/TAO/tao/Array_VarOut_T.h @@ -45,13 +45,13 @@ namespace TAO * @brief Parametrized implementation of _var base class for arrays. * */ -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> class TAO_Array_Var_Base_T { public: TAO_Array_Var_Base_T (void); TAO_Array_Var_Base_T (T_slice *); - TAO_Array_Var_Base_T (const TAO_Array_Var_Base_T<T,T_slice,T_life> &); + TAO_Array_Var_Base_T (const TAO_Array_Var_Base_T<T,T_slice> &); ~TAO_Array_Var_Base_T (void); T_slice & operator[] (CORBA::ULong index); @@ -83,17 +83,17 @@ protected: * elements of fixed size. * */ -template<typename T, typename T_slice, typename T_life> -class TAO_FixedArray_Var_T: public TAO_Array_Var_Base_T<T,T_slice,T_life> +template<typename T, typename T_slice> +class TAO_FixedArray_Var_T: public TAO_Array_Var_Base_T<T,T_slice> { public: TAO_FixedArray_Var_T (void); TAO_FixedArray_Var_T (T_slice *); - TAO_FixedArray_Var_T (const TAO_FixedArray_Var_T<T,T_slice,T_life> &); + TAO_FixedArray_Var_T (const TAO_FixedArray_Var_T<T,T_slice> &); - TAO_FixedArray_Var_T<T,T_slice,T_life> &operator= (T_slice *); - TAO_FixedArray_Var_T<T,T_slice,T_life> &operator= ( - const TAO_FixedArray_Var_T<T,T_slice,T_life> & + TAO_FixedArray_Var_T<T,T_slice> &operator= (T_slice *); + TAO_FixedArray_Var_T<T,T_slice> &operator= ( + const TAO_FixedArray_Var_T<T,T_slice> & ); }; @@ -104,17 +104,17 @@ public: * elements of variable size. * */ -template<typename T, typename T_slice, typename T_life> -class TAO_VarArray_Var_T : public TAO_Array_Var_Base_T<T,T_slice,T_life> +template<typename T, typename T_slice> +class TAO_VarArray_Var_T : public TAO_Array_Var_Base_T<T,T_slice> { public: TAO_VarArray_Var_T (void); TAO_VarArray_Var_T (T_slice *); - TAO_VarArray_Var_T (const TAO_VarArray_Var_T<T,T_slice,T_life> &); + TAO_VarArray_Var_T (const TAO_VarArray_Var_T<T,T_slice> &); - TAO_VarArray_Var_T<T,T_slice,T_life> &operator= (T_slice *); - TAO_VarArray_Var_T<T,T_slice,T_life> &operator= ( - const TAO_VarArray_Var_T<T,T_slice,T_life> & + TAO_VarArray_Var_T<T,T_slice> &operator= (T_slice *); + TAO_VarArray_Var_T<T,T_slice> &operator= ( + const TAO_VarArray_Var_T<T,T_slice> & ); operator T_slice *& (); @@ -126,18 +126,18 @@ public: * @brief Parametrized implementation of _out class for arrays. * */ -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> class TAO_Array_Out_T { public: TAO_Array_Out_T (T_slice *&); TAO_Array_Out_T (T_var &); - TAO_Array_Out_T (const TAO_Array_Out_T<T,T_var,T_slice,T_life> &); + TAO_Array_Out_T (const TAO_Array_Out_T<T,T_var,T_slice> &); - TAO_Array_Out_T<T,T_var,T_slice,T_life> &operator= ( - const TAO_Array_Out_T<T,T_var,T_slice,T_life> & + TAO_Array_Out_T<T,T_var,T_slice> &operator= ( + const TAO_Array_Out_T<T,T_var,T_slice> & ); - TAO_Array_Out_T<T,T_var,T_slice,T_life> &operator= (T_slice *); + TAO_Array_Out_T<T,T_var,T_slice> &operator= (T_slice *); operator T_slice *& (); T_slice *& ptr (void); @@ -145,7 +145,7 @@ public: T_slice & operator[] (CORBA::ULong index); const T_slice & operator[] (CORBA::ULong index) const; private: - typedef TAO_Array_Out_T<T,T_var,T_slice,T_life> THIS_OUT_TYPE; + typedef TAO_Array_Out_T<T,T_var,T_slice> THIS_OUT_TYPE; T_slice *& ptr_; // Assignment from T_var not allowed. void operator= (const T_var &); @@ -157,21 +157,21 @@ private: * @brief Parametrized implementation of _forany class for arrays. * */ -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> class TAO_Array_Forany_T { public: TAO_Array_Forany_T (void); TAO_Array_Forany_T (T_slice *, CORBA::Boolean nocopy = 0); - TAO_Array_Forany_T (const TAO_Array_Forany_T<T,T_slice,T_life> &); + TAO_Array_Forany_T (const TAO_Array_Forany_T<T,T_slice> &); ~TAO_Array_Forany_T (void); static void _tao_any_destructor (void *); TAO_Array_Forany_T & operator= (T_slice *); TAO_Array_Forany_T & operator= ( - const TAO_Array_Forany_T<T,T_slice,T_life> & + const TAO_Array_Forany_T<T,T_slice> & ); T_slice & operator[] (CORBA::ULong index); diff --git a/TAO/tao/Array_VarOut_T.inl b/TAO/tao/Array_VarOut_T.inl index c203c89fa9c..da20cf01297 100644 --- a/TAO/tao/Array_VarOut_T.inl +++ b/TAO/tao/Array_VarOut_T.inl @@ -1,230 +1,230 @@ //$Id$ -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Var_Base_T<T,T_slice,T_life>::TAO_Array_Var_Base_T (void) +TAO_Array_Var_Base_T<T,T_slice>::TAO_Array_Var_Base_T (void) : ptr_ (0) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Var_Base_T<T,T_slice,T_life>::TAO_Array_Var_Base_T (T_slice * p) +TAO_Array_Var_Base_T<T,T_slice>::TAO_Array_Var_Base_T (T_slice * p) : ptr_ (p) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Var_Base_T<T,T_slice,T_life>::TAO_Array_Var_Base_T ( +TAO_Array_Var_Base_T<T,T_slice>::TAO_Array_Var_Base_T ( const TAO_Array_Var_Base_T & p ) { this->ptr_ = TAO::Array_Traits<T,T_slice>::tao_dup (p.in ()); } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Var_Base_T<T,T_slice,T_life>::~TAO_Array_Var_Base_T (void) +TAO_Array_Var_Base_T<T,T_slice>::~TAO_Array_Var_Base_T (void) { TAO::Array_Traits<T,T_slice>::tao_free (this->ptr_); } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Var_Base_T<T,T_slice,T_life>::operator T_slice * const & () const +TAO_Array_Var_Base_T<T,T_slice>::operator T_slice * const & () const { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice const & -TAO_Array_Var_Base_T<T,T_slice,T_life>::operator[] (CORBA::ULong index) const +TAO_Array_Var_Base_T<T,T_slice>::operator[] (CORBA::ULong index) const { return this->ptr_[index]; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice & -TAO_Array_Var_Base_T<T,T_slice,T_life>::operator[] (CORBA::ULong index) +TAO_Array_Var_Base_T<T,T_slice>::operator[] (CORBA::ULong index) { return this->ptr_[index]; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE const T_slice * -TAO_Array_Var_Base_T<T,T_slice,T_life>::in (void) const +TAO_Array_Var_Base_T<T,T_slice>::in (void) const { return (const T_slice *) this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Var_Base_T<T,T_slice,T_life>::inout (void) +TAO_Array_Var_Base_T<T,T_slice>::inout (void) { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice *& -TAO_Array_Var_Base_T<T,T_slice,T_life>::out (void) +TAO_Array_Var_Base_T<T,T_slice>::out (void) { TAO::Array_Traits<T,T_slice>::tao_free (this->ptr_); this->ptr_ = 0; return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Var_Base_T<T,T_slice,T_life>::_retn (void) +TAO_Array_Var_Base_T<T,T_slice>::_retn (void) { T_slice * tmp = this->ptr_; this->ptr_ = 0; return tmp; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Var_Base_T<T,T_slice,T_life>::ptr (void) const +TAO_Array_Var_Base_T<T,T_slice>::ptr (void) const { return this->ptr_; } // ************************************************************* -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_FixedArray_Var_T<T,T_slice,T_life>::TAO_FixedArray_Var_T (void) +TAO_FixedArray_Var_T<T,T_slice>::TAO_FixedArray_Var_T (void) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_FixedArray_Var_T<T,T_slice,T_life>::TAO_FixedArray_Var_T (T_slice * p) - : TAO_Array_Var_Base_T<T,T_slice,T_life> (p) +TAO_FixedArray_Var_T<T,T_slice>::TAO_FixedArray_Var_T (T_slice * p) + : TAO_Array_Var_Base_T<T,T_slice> (p) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_FixedArray_Var_T<T,T_slice,T_life>::TAO_FixedArray_Var_T ( +TAO_FixedArray_Var_T<T,T_slice>::TAO_FixedArray_Var_T ( const TAO_FixedArray_Var_T & p ) - : TAO_Array_Var_Base_T<T,T_slice,T_life> (p) + : TAO_Array_Var_Base_T<T,T_slice> (p) {} // ************************************************************* -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_VarArray_Var_T<T,T_slice,T_life>::TAO_VarArray_Var_T (void) +TAO_VarArray_Var_T<T,T_slice>::TAO_VarArray_Var_T (void) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_VarArray_Var_T<T,T_slice,T_life>::TAO_VarArray_Var_T (T_slice * p) - : TAO_Array_Var_Base_T<T,T_slice,T_life> (p) +TAO_VarArray_Var_T<T,T_slice>::TAO_VarArray_Var_T (T_slice * p) + : TAO_Array_Var_Base_T<T,T_slice> (p) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_VarArray_Var_T<T,T_slice,T_life>::TAO_VarArray_Var_T ( +TAO_VarArray_Var_T<T,T_slice>::TAO_VarArray_Var_T ( const TAO_VarArray_Var_T & p ) - : TAO_Array_Var_Base_T<T,T_slice,T_life> (p) + : TAO_Array_Var_Base_T<T,T_slice> (p) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_VarArray_Var_T<T,T_slice,T_life>::operator T_slice *& () +TAO_VarArray_Var_T<T,T_slice>::operator T_slice *& () { return this->ptr_; } // ************************************************************* -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life>::TAO_Array_Out_T (T_slice *& p) +TAO_Array_Out_T<T,T_var,T_slice>::TAO_Array_Out_T (T_slice *& p) : ptr_ (p) { this->ptr_ = 0; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life>::TAO_Array_Out_T (T_var & p) +TAO_Array_Out_T<T,T_var,T_slice>::TAO_Array_Out_T (T_var & p) : ptr_ (p.out ()) { TAO::Array_Traits<T,T_slice>::tao_free (this->ptr_); this->ptr_ = 0; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life>::TAO_Array_Out_T ( - const TAO_Array_Out_T<T,T_var,T_slice,T_life> & p +TAO_Array_Out_T<T,T_var,T_slice>::TAO_Array_Out_T ( + const TAO_Array_Out_T<T,T_var,T_slice> & p ) : ptr_ (ACE_const_cast (THIS_OUT_TYPE &, p).ptr_) {} -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life> & -TAO_Array_Out_T<T,T_var,T_slice,T_life>::operator= ( - const TAO_Array_Out_T<T,T_var,T_slice,T_life> & p +TAO_Array_Out_T<T,T_var,T_slice> & +TAO_Array_Out_T<T,T_var,T_slice>::operator= ( + const TAO_Array_Out_T<T,T_var,T_slice> & p ) { this->ptr_ = ACE_const_cast (THIS_OUT_TYPE &, p).ptr_; return *this; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life> & -TAO_Array_Out_T<T,T_var,T_slice,T_life>::operator= (T_slice *p) +TAO_Array_Out_T<T,T_var,T_slice> & +TAO_Array_Out_T<T,T_var,T_slice>::operator= (T_slice *p) { this->ptr_ = p; return *this; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE -TAO_Array_Out_T<T,T_var,T_slice,T_life>::operator T_slice *& () +TAO_Array_Out_T<T,T_var,T_slice>::operator T_slice *& () { return this->ptr_; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE T_slice *& -TAO_Array_Out_T<T,T_var,T_slice,T_life>::ptr (void) +TAO_Array_Out_T<T,T_var,T_slice>::ptr (void) { return this->ptr_; } -template<typename T, typename T_var, typename T_slice, typename T_life> +template<typename T, typename T_var, typename T_slice> ACE_INLINE T_slice & -TAO_Array_Out_T<T,T_var,T_slice,T_life>::operator[] (CORBA::ULong index) +TAO_Array_Out_T<T,T_var,T_slice>::operator[] (CORBA::ULong index) { return this->ptr_[index]; } // ************************************************************* -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::TAO_Array_Forany_T (void) +TAO_Array_Forany_T<T,T_slice>::TAO_Array_Forany_T (void) : ptr_ (0), nocopy_ (0) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::TAO_Array_Forany_T ( +TAO_Array_Forany_T<T,T_slice>::TAO_Array_Forany_T ( T_slice * p, CORBA::Boolean nocopy ) @@ -232,36 +232,36 @@ TAO_Array_Forany_T<T,T_slice,T_life>::TAO_Array_Forany_T ( nocopy_ (nocopy) {} -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::TAO_Array_Forany_T ( - const TAO_Array_Forany_T<T,T_slice,T_life> & p +TAO_Array_Forany_T<T,T_slice>::TAO_Array_Forany_T ( + const TAO_Array_Forany_T<T,T_slice> & p ) { this->ptr_ = p.ptr_; this->nocopy_ = p.nocopy_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::~TAO_Array_Forany_T (void) +TAO_Array_Forany_T<T,T_slice>::~TAO_Array_Forany_T (void) { } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life> & -TAO_Array_Forany_T<T,T_slice,T_life>::operator= (T_slice * p) +TAO_Array_Forany_T<T,T_slice> & +TAO_Array_Forany_T<T,T_slice>::operator= (T_slice * p) { this->ptr_ = p; return *this; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life> & -TAO_Array_Forany_T<T,T_slice,T_life>::operator= ( - const TAO_Array_Forany_T<T,T_slice,T_life> & p +TAO_Array_Forany_T<T,T_slice> & +TAO_Array_Forany_T<T,T_slice>::operator= ( + const TAO_Array_Forany_T<T,T_slice> & p ) { this->ptr_ = p.ptr_; @@ -269,24 +269,24 @@ TAO_Array_Forany_T<T,T_slice,T_life>::operator= ( return *this; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::operator T_slice * const & () const +TAO_Array_Forany_T<T,T_slice>::operator T_slice * const & () const { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE -TAO_Array_Forany_T<T,T_slice,T_life>::operator T_slice *& () +TAO_Array_Forany_T<T,T_slice>::operator T_slice *& () { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE const T_slice & -TAO_Array_Forany_T<T,T_slice,T_life>::operator[] (CORBA::ULong index) const +TAO_Array_Forany_T<T,T_slice>::operator[] (CORBA::ULong index) const { #if defined (ACE_HAS_BROKEN_IMPLICIT_CONST_CAST) return ACE_const_cast ( @@ -299,18 +299,18 @@ TAO_Array_Forany_T<T,T_slice,T_life>::operator[] (CORBA::ULong index) const #endif /* ACE_HAS_BROKEN_IMPLICIT_CONST_CAST */ } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice & -TAO_Array_Forany_T<T,T_slice,T_life>::operator[] (CORBA::ULong index) +TAO_Array_Forany_T<T,T_slice>::operator[] (CORBA::ULong index) { return this->ptr_[index]; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE const T_slice * -TAO_Array_Forany_T<T,T_slice,T_life>::in (void) const +TAO_Array_Forany_T<T,T_slice>::in (void) const { // @@@ (JP) This looks scary I know but it helps MSVC understand // things better when the array is multi-dimensional. @@ -318,50 +318,50 @@ TAO_Array_Forany_T<T,T_slice,T_life>::in (void) const this->ptr_); } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Forany_T<T,T_slice,T_life>::inout (void) +TAO_Array_Forany_T<T,T_slice>::inout (void) { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice *& -TAO_Array_Forany_T<T,T_slice,T_life>::out (void) +TAO_Array_Forany_T<T,T_slice>::out (void) { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Forany_T<T,T_slice,T_life>::_retn (void) +TAO_Array_Forany_T<T,T_slice>::_retn (void) { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Forany_T<T,T_slice,T_life>::ptr (void) const +TAO_Array_Forany_T<T,T_slice>::ptr (void) const { return this->ptr_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE CORBA::Boolean -TAO_Array_Forany_T<T,T_slice,T_life>::nocopy (void) const +TAO_Array_Forany_T<T,T_slice>::nocopy (void) const { return this->nocopy_; } -template<typename T, typename T_slice, typename T_life> +template<typename T, typename T_slice> ACE_INLINE T_slice * -TAO_Array_Forany_T<T,T_slice,T_life>::tao_alloc (void) +TAO_Array_Forany_T<T,T_slice>::tao_alloc (void) { return TAO::Array_Traits<T,T_slice>::tao_alloc (); } diff --git a/TAO/tao/BD_String_Argument_T.cpp b/TAO/tao/BD_String_Argument_T.cpp index f7f2538a435..f73c97314bd 100644 --- a/TAO/tao/BD_String_Argument_T.cpp +++ b/TAO/tao/BD_String_Argument_T.cpp @@ -233,12 +233,13 @@ interceptor_replace (CORBA::Any & any) // ============================================================== template<typename S, - typename S_var, + typename S_var, + typename S_out, typename to_S, typename from_S, size_t BOUND> CORBA::Boolean -TAO::Out_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::marshal ( +TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>::marshal ( TAO_OutputCDR &cdr ) { diff --git a/TAO/tao/BD_String_Argument_T.h b/TAO/tao/BD_String_Argument_T.h index aa296023629..1744d3ba5c2 100644 --- a/TAO/tao/BD_String_Argument_T.h +++ b/TAO/tao/BD_String_Argument_T.h @@ -42,6 +42,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S * arg (void) const; + private: const S * x_; }; @@ -64,6 +66,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S *& arg (void); + private: mutable S *& x_; }; @@ -86,6 +90,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S *& arg (void); + private: mutable S *& x_; }; @@ -111,6 +117,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S *& arg (void); + S * excp (void); S * retn (void); @@ -180,7 +188,8 @@ namespace TAO * */ template<typename S, - typename S_var, + typename S_var, + typename S_out, typename to_S, typename from_S, size_t BOUND> @@ -282,6 +291,7 @@ namespace TAO BOUND> inout_sarg_val; typedef Out_BD_String_SArgument_T<T, T_var, + T_out, to_T, from_T, BOUND> out_sarg_val; diff --git a/TAO/tao/BD_String_Argument_T.inl b/TAO/tao/BD_String_Argument_T.inl index bbe2234c353..e1613facc73 100644 --- a/TAO/tao/BD_String_Argument_T.inl +++ b/TAO/tao/BD_String_Argument_T.inl @@ -8,6 +8,14 @@ TAO::In_BD_String_Argument_T<S,to_S,from_S,BOUND>::In_BD_String_Argument_T ( : x_ (x) {} +template<typename S, typename to_S, typename from_S, size_t BOUND> +ACE_INLINE +const S * +TAO::In_BD_String_Argument_T<S,to_S,from_S,BOUND>::arg (void) const +{ + return this->x_; +} + // ========================================================================== template<typename S, typename to_S, typename from_S, size_t BOUND> @@ -17,6 +25,14 @@ Inout_BD_String_Argument_T (S *& x) : x_ (x) {} +template<typename S, typename to_S, typename from_S, size_t BOUND> +ACE_INLINE +S *& +TAO::Inout_BD_String_Argument_T<S,to_S,from_S,BOUND>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, @@ -30,6 +46,18 @@ Out_BD_String_Argument_T (S_out x) : x_ (x.ptr ()) {} +template<typename S, + typename S_out, + typename to_S, + typename from_S, + size_t BOUND> +ACE_INLINE +S *& +TAO::Out_BD_String_Argument_T<S,S_out,to_S,from_S,BOUND>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, @@ -67,6 +95,18 @@ TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::retn (void) return this->x_._retn (); } +template<typename S, + typename S_var, + typename to_S, + typename from_S, + size_t BOUND> +ACE_INLINE +S *& +TAO::Ret_BD_String_Argument_T<S,S_var,to_S,from_S,BOUND>::arg (void) +{ + return this->x_.out (); +} + // ========================================================================== template<typename S, @@ -118,23 +158,25 @@ TAO::Inout_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::arg (void) // ========================================================================== template<typename S, - typename S_var, + typename S_var, + typename S_out, typename to_S, typename from_S, size_t BOUND> ACE_INLINE -TAO::Out_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>:: +TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>:: Out_BD_String_SArgument_T (void) {} template<typename S, typename S_var, + typename S_out, typename to_S, typename from_S, size_t BOUND> ACE_INLINE S *& -TAO::Out_BD_String_SArgument_T<S,S_var,to_S,from_S,BOUND>::arg (void) +TAO::Out_BD_String_SArgument_T<S,S_var,S_out,to_S,from_S,BOUND>::arg (void) { return this->x_.out (); } diff --git a/TAO/tao/Basic_Argument_T.h b/TAO/tao/Basic_Argument_T.h index b546f3093dc..736e789abbf 100644 --- a/TAO/tao/Basic_Argument_T.h +++ b/TAO/tao/Basic_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S arg (void) const; + private: S const & x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: mutable S & x_; }; @@ -80,6 +84,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S & arg (void); + private: mutable S & x_; }; @@ -101,6 +107,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + S excp (void); S retn (void); diff --git a/TAO/tao/Basic_Argument_T.inl b/TAO/tao/Basic_Argument_T.inl index 051fca4c543..d507ee24258 100644 --- a/TAO/tao/Basic_Argument_T.inl +++ b/TAO/tao/Basic_Argument_T.inl @@ -6,6 +6,14 @@ TAO::In_Basic_Argument_T<S>::In_Basic_Argument_T (S const & x) : x_ (x) {} +template<typename S> +ACE_INLINE +S +TAO::In_Basic_Argument_T<S>::arg (void) const +{ + return this->x_; +} + // ================================================================ template<typename S> @@ -14,6 +22,14 @@ TAO::Inout_Basic_Argument_T<S>::Inout_Basic_Argument_T (S & x) : x_ (x) {} +template<typename S> +ACE_INLINE +S & +TAO::Inout_Basic_Argument_T<S>::arg (void) +{ + return this->x_; +} + // ================================================================ template<typename S> @@ -22,6 +38,14 @@ TAO::Out_Basic_Argument_T<S>::Out_Basic_Argument_T (S & x) : x_ (x) {} +template<typename S> +ACE_INLINE +S & +TAO::Out_Basic_Argument_T<S>::arg (void) +{ + return this->x_; +} + // ================================================================ template<typename S> @@ -32,6 +56,14 @@ TAO::Ret_Basic_Argument_T<S>::Ret_Basic_Argument_T (void) template<typename S> ACE_INLINE +S & +TAO::Ret_Basic_Argument_T<S>::arg (void) +{ + return this->x_; +} + +template<typename S> +ACE_INLINE S TAO::Ret_Basic_Argument_T<S>::excp (void) { @@ -54,6 +86,7 @@ TAO::In_Basic_SArgument_T<S>::In_Basic_SArgument_T (void) {} template<typename S> +ACE_INLINE S TAO::In_Basic_SArgument_T<S>::arg (void) const { @@ -95,8 +128,7 @@ TAO::Out_Basic_SArgument_T<S>::arg (void) template<typename S> ACE_INLINE TAO::Ret_Basic_SArgument_T<S>::Ret_Basic_SArgument_T (void) -{ -} +{} template<typename S> ACE_INLINE diff --git a/TAO/tao/CurrentC.cpp b/TAO/tao/CurrentC.cpp index bab962c2917..28e8b0d9874 100644 --- a/TAO/tao/CurrentC.cpp +++ b/TAO/tao/CurrentC.cpp @@ -39,58 +39,6 @@ int CORBA::Current::_tao_class_id = 0; -CORBA::Current_ptr -CORBA::tao_Current_life::tao_duplicate ( - CORBA::Current_ptr p - ) -{ - return CORBA::Current::_duplicate (p); -} - -void -CORBA::tao_Current_life::tao_release ( - CORBA::Current_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::Current_ptr -CORBA::tao_Current_life::tao_nil ( - void - ) -{ - return CORBA::Current::_nil (); -} - -CORBA::Boolean -CORBA::tao_Current_life::tao_marshal ( - CORBA::Current_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::Current_ptr -CORBA::tao_Current_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::Current::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_Current_cast::tao_upcast ( - void *src - ) -{ - CORBA::Current **tmp = - ACE_static_cast (CORBA::Current **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/CurrentC.h b/TAO/tao/CurrentC.h index fe32df7bae8..8b9d912782c 100644 --- a/TAO/tao/CurrentC.h +++ b/TAO/tao/CurrentC.h @@ -68,29 +68,8 @@ TAO_NAMESPACE CORBA class Current; typedef Current *Current_ptr; - struct tao_Current_life; - typedef TAO_Objref_Var_T<Current, tao_Current_life> Current_var; - typedef TAO_Objref_Out_T<Current, tao_Current_life> Current_out; - - struct TAO_Export tao_Current_life - { - static Current_ptr tao_duplicate (Current_ptr); - static void tao_release (Current_ptr); - static Current_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Current_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_Current_cast - { - static Current_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<Current> Current_var; + typedef TAO_Objref_Out_T<Current> Current_out; // TAO_IDL - Generated from // W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ch.cpp:54 diff --git a/TAO/tao/DomainC.cpp b/TAO/tao/DomainC.cpp index 4f765bd1b55..76b240a9c04 100644 --- a/TAO/tao/DomainC.cpp +++ b/TAO/tao/DomainC.cpp @@ -50,58 +50,6 @@ int CORBA::DomainManager::_tao_class_id = 0; -CORBA::DomainManager_ptr -CORBA::tao_DomainManager_life::tao_duplicate ( - CORBA::DomainManager_ptr p - ) -{ - return CORBA::DomainManager::_duplicate (p); -} - -void -CORBA::tao_DomainManager_life::tao_release ( - CORBA::DomainManager_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::DomainManager_ptr -CORBA::tao_DomainManager_life::tao_nil ( - void - ) -{ - return CORBA::DomainManager::_nil (); -} - -CORBA::Boolean -CORBA::tao_DomainManager_life::tao_marshal ( - CORBA::DomainManager_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::DomainManager_ptr -CORBA::tao_DomainManager_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::DomainManager::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_DomainManager_cast::tao_upcast ( - void *src - ) -{ - CORBA::DomainManager **tmp = - ACE_static_cast (CORBA::DomainManager **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -802,58 +750,6 @@ TAO_NAMESPACE_END int CORBA::ConstructionPolicy::_tao_class_id = 0; -CORBA::ConstructionPolicy_ptr -CORBA::tao_ConstructionPolicy_life::tao_duplicate ( - CORBA::ConstructionPolicy_ptr p - ) -{ - return CORBA::ConstructionPolicy::_duplicate (p); -} - -void -CORBA::tao_ConstructionPolicy_life::tao_release ( - CORBA::ConstructionPolicy_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::ConstructionPolicy_ptr -CORBA::tao_ConstructionPolicy_life::tao_nil ( - void - ) -{ - return CORBA::ConstructionPolicy::_nil (); -} - -CORBA::Boolean -CORBA::tao_ConstructionPolicy_life::tao_marshal ( - CORBA::ConstructionPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::ConstructionPolicy_ptr -CORBA::tao_ConstructionPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::ConstructionPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_ConstructionPolicy_cast::tao_upcast ( - void *src - ) -{ - CORBA::ConstructionPolicy **tmp = - ACE_static_cast (CORBA::ConstructionPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1563,9 +1459,7 @@ CORBA::DomainManagerList::DomainManagerList (void) CORBA::DomainManagerList::DomainManagerList (CORBA::ULong max) : TAO_Unbounded_Object_Sequence< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life, - CORBA::tao_DomainManager_cast + CORBA::DomainManager_var > (max) {} @@ -1578,9 +1472,7 @@ CORBA::DomainManagerList::DomainManagerList ( ) : TAO_Unbounded_Object_Sequence< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life, - CORBA::tao_DomainManager_cast + CORBA::DomainManager_var > (max, length, buffer, release) {} @@ -1588,9 +1480,7 @@ CORBA::DomainManagerList::DomainManagerList ( CORBA::DomainManagerList::DomainManagerList (const DomainManagerList &seq) : TAO_Unbounded_Object_Sequence< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life, - CORBA::tao_DomainManager_cast + CORBA::DomainManager_var > (seq) {} diff --git a/TAO/tao/DomainC.h b/TAO/tao/DomainC.h index c15dfdffe3a..abe882c73c6 100644 --- a/TAO/tao/DomainC.h +++ b/TAO/tao/DomainC.h @@ -69,29 +69,8 @@ TAO_NAMESPACE CORBA class DomainManager; typedef DomainManager *DomainManager_ptr; - struct tao_DomainManager_life; - typedef TAO_Objref_Var_T<DomainManager, tao_DomainManager_life> DomainManager_var; - typedef TAO_Objref_Out_T<DomainManager, tao_DomainManager_life> DomainManager_out; - - struct TAO_Export tao_DomainManager_life - { - static DomainManager_ptr tao_duplicate (DomainManager_ptr); - static void tao_release (DomainManager_ptr); - static DomainManager_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - DomainManager_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_DomainManager_cast - { - static DomainManager_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<DomainManager> DomainManager_var; + typedef TAO_Objref_Out_T<DomainManager> DomainManager_out; // TAO_IDL - Generated from // W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ch.cpp:54 @@ -335,29 +314,8 @@ TAO_NAMESPACE CORBA class ConstructionPolicy; typedef ConstructionPolicy *ConstructionPolicy_ptr; - struct tao_ConstructionPolicy_life; - typedef TAO_Objref_Var_T<ConstructionPolicy, tao_ConstructionPolicy_life> ConstructionPolicy_var; - typedef TAO_Objref_Out_T<ConstructionPolicy, tao_ConstructionPolicy_life> ConstructionPolicy_out; - - struct TAO_Export tao_ConstructionPolicy_life - { - static ConstructionPolicy_ptr tao_duplicate (ConstructionPolicy_ptr); - static void tao_release (ConstructionPolicy_ptr); - static ConstructionPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ConstructionPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ConstructionPolicy_cast - { - static ConstructionPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ConstructionPolicy> ConstructionPolicy_var; + typedef TAO_Objref_Out_T<ConstructionPolicy> ConstructionPolicy_out; // TAO_IDL - Generated from // W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ch.cpp:54 @@ -605,8 +563,7 @@ TAO_NAMESPACE CORBA DomainManagerList, TAO_Object_Manager< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life + CORBA::DomainManager_var > > DomainManagerList_var; @@ -617,8 +574,7 @@ TAO_NAMESPACE CORBA DomainManagerList_var, TAO_Object_Manager< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life + CORBA::DomainManager_var > > DomainManagerList_out; @@ -627,9 +583,7 @@ TAO_NAMESPACE CORBA : public TAO_Unbounded_Object_Sequence< CORBA::DomainManager, - CORBA::DomainManager_var, - CORBA::tao_DomainManager_life, - CORBA::tao_DomainManager_cast + CORBA::DomainManager_var > { public: diff --git a/TAO/tao/Fixed_Array_Argument_T.h b/TAO/tao/Fixed_Array_Argument_T.h index d81555a6e39..a25fc2285d3 100644 --- a/TAO/tao/Fixed_Array_Argument_T.h +++ b/TAO/tao/Fixed_Array_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S & arg (void) const; + private: S_forany x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: S_forany x_; }; @@ -80,6 +84,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S & arg (void); + private: S_forany x_; }; @@ -104,6 +110,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S_slice *& arg (void); + S_slice * excp (void); S_slice * retn (void); diff --git a/TAO/tao/Fixed_Array_Argument_T.inl b/TAO/tao/Fixed_Array_Argument_T.inl index 45be413722d..71bd102564d 100644 --- a/TAO/tao/Fixed_Array_Argument_T.inl +++ b/TAO/tao/Fixed_Array_Argument_T.inl @@ -7,6 +7,14 @@ In_Fixed_Array_Argument_T (const S x) : x_ ((S_slice *) x) {} +template<typename S, typename S_slice, typename S_forany> +ACE_INLINE +const S & +TAO::In_Fixed_Array_Argument_T<S,S_slice,S_forany>::arg (void) const +{ + return this->x_.in (); +} + // =========================================================================== template<typename S, typename S_forany> @@ -17,6 +25,14 @@ TAO::Inout_Fixed_Array_Argument_T<S,S_forany>::Inout_Fixed_Array_Argument_T ( : x_ (x) {} +template<typename S, typename S_forany> +ACE_INLINE +S & +TAO::Inout_Fixed_Array_Argument_T<S,S_forany>::arg (void) +{ + return this->x_.inout (); +} + // =========================================================================== template<typename S, typename S_forany> @@ -25,6 +41,14 @@ TAO::Out_Fixed_Array_Argument_T<S,S_forany>::Out_Fixed_Array_Argument_T (S x) : x_ (x) {} +template<typename S, typename S_slice, typename S_forany> +ACE_INLINE +S & +TAO::Out_Fixed_Array_Argument_T<S,S_forany>::arg (void) +{ + return this->x_.out (); +} + // =========================================================================== template<typename S, typename S_slice, typename S_var, typename S_forany> @@ -35,6 +59,14 @@ Ret_Fixed_Array_Argument_T (void) template<typename S, typename S_slice, typename S_var, typename S_forany> ACE_INLINE +S_slice *& +TAO::Ret_Fixed_Array_Argument_T<S,S_slice,S_var,S_forany>::arg (void) +{ + return this->x_.out (); +} + +template<typename S, typename S_slice, typename S_var, typename S_forany> +ACE_INLINE S_slice * TAO::Ret_Fixed_Array_Argument_T<S,S_slice,S_var,S_forany>::excp (void) { diff --git a/TAO/tao/Fixed_Size_Argument_T.h b/TAO/tao/Fixed_Size_Argument_T.h index 80a0768efcc..e8ebb56debf 100644 --- a/TAO/tao/Fixed_Size_Argument_T.h +++ b/TAO/tao/Fixed_Size_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S & arg (void) const; + private: const S * x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: S * x_; }; @@ -80,6 +84,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S & arg (void); + private: mutable S & x_; }; @@ -101,6 +107,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + S excp (void); S retn (void); diff --git a/TAO/tao/Fixed_Size_Argument_T.inl b/TAO/tao/Fixed_Size_Argument_T.inl index 30298aff9a1..2ebfc6eca45 100644 --- a/TAO/tao/Fixed_Size_Argument_T.inl +++ b/TAO/tao/Fixed_Size_Argument_T.inl @@ -6,6 +6,14 @@ TAO::In_Fixed_Size_Argument_T<S>::In_Fixed_Size_Argument_T (S const & x) : x_ (&x) {} +template<typename S> +ACE_INLINE +const S & +TAO::In_Fixed_Size_Argument_T<S>::arg (void) const +{ + return *this->x_; +} + // ========================================================================== template<typename S> @@ -14,6 +22,14 @@ TAO::Inout_Fixed_Size_Argument_T<S>::Inout_Fixed_Size_Argument_T (S & x) : x_ (&x) {} +template<typename S> +ACE_INLINE +S & +TAO::Inout_Fixed_Size_Argument_T<S>::arg (void) +{ + return *this->x_; +} + // ========================================================================== template<typename S> @@ -22,6 +38,14 @@ TAO::Out_Fixed_Size_Argument_T<S>::Out_Fixed_Size_Argument_T (S & x) : x_ (x) {} +template<typename S> +ACE_INLINE +S & +TAO::Out_Fixed_Size_Argument_T<S>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S> @@ -31,6 +55,14 @@ TAO::Ret_Fixed_Size_Argument_T<S>::Ret_Fixed_Size_Argument_T (void) template<typename S> ACE_INLINE +S & +TAO::Ret_Fixed_Size_Argument_T<S>::arg (void) +{ + return this->x_; +} + +template<typename S> +ACE_INLINE S TAO::Ret_Fixed_Size_Argument_T<S>::excp (void) { diff --git a/TAO/tao/IOP_CodecC.cpp b/TAO/tao/IOP_CodecC.cpp index 4e84e29ea81..edbe5dada20 100644 --- a/TAO/tao/IOP_CodecC.cpp +++ b/TAO/tao/IOP_CodecC.cpp @@ -54,58 +54,6 @@ int IOP::Codec::_tao_class_id = 0; -IOP::Codec_ptr -IOP::tao_Codec_life::tao_duplicate ( - Codec_ptr p - ) -{ - return Codec::_duplicate (p); -} - -void -IOP::tao_Codec_life::tao_release ( - Codec_ptr p - ) -{ - CORBA::release (p); -} - -IOP::Codec_ptr -IOP::tao_Codec_life::tao_nil ( - void - ) -{ - return Codec::_nil (); -} - -CORBA::Boolean -IOP::tao_Codec_life::tao_marshal ( - Codec_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -IOP::Codec_ptr -IOP::tao_Codec_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return Codec::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -IOP::tao_Codec_cast::tao_upcast ( - void *src - ) -{ - Codec **tmp = - ACE_static_cast (Codec **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -826,58 +774,6 @@ template class TAO_Var_Base_T< int IOP::CodecFactory::_tao_class_id = 0; -IOP::CodecFactory_ptr -IOP::tao_CodecFactory_life::tao_duplicate ( - CodecFactory_ptr p - ) -{ - return CodecFactory::_duplicate (p); -} - -void -IOP::tao_CodecFactory_life::tao_release ( - CodecFactory_ptr p - ) -{ - CORBA::release (p); -} - -IOP::CodecFactory_ptr -IOP::tao_CodecFactory_life::tao_nil ( - void - ) -{ - return CodecFactory::_nil (); -} - -CORBA::Boolean -IOP::tao_CodecFactory_life::tao_marshal ( - CodecFactory_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -IOP::CodecFactory_ptr -IOP::tao_CodecFactory_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CodecFactory::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -IOP::tao_CodecFactory_cast::tao_upcast ( - void *src - ) -{ - CodecFactory **tmp = - ACE_static_cast (CodecFactory **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/IOP_CodecC.h b/TAO/tao/IOP_CodecC.h index dbf2498ba5b..8ae9dc40129 100644 --- a/TAO/tao/IOP_CodecC.h +++ b/TAO/tao/IOP_CodecC.h @@ -78,42 +78,19 @@ TAO_NAMESPACE IOP class Codec; typedef Codec *Codec_ptr; - struct tao_Codec_life; typedef TAO_Objref_Var_T< - Codec, - tao_Codec_life + Codec > Codec_var; typedef TAO_Objref_Out_T< - Codec, - tao_Codec_life + Codec > Codec_out; - struct TAO_Export tao_Codec_life - { - static Codec_ptr tao_duplicate (Codec_ptr); - static void tao_release (Codec_ptr); - static Codec_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Codec_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_Codec_cast - { - static Codec_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -425,42 +402,19 @@ TAO_NAMESPACE IOP class CodecFactory; typedef CodecFactory *CodecFactory_ptr; - struct tao_CodecFactory_life; typedef TAO_Objref_Var_T< - CodecFactory, - tao_CodecFactory_life + CodecFactory > CodecFactory_var; typedef TAO_Objref_Out_T< - CodecFactory, - tao_CodecFactory_life + CodecFactory > CodecFactory_out; - struct TAO_Export tao_CodecFactory_life - { - static CodecFactory_ptr tao_duplicate (CodecFactory_ptr); - static void tao_release (CodecFactory_ptr); - static CodecFactory_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - CodecFactory_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_CodecFactory_cast - { - static CodecFactory_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/IORInterceptor/IORInterceptorC.cpp b/TAO/tao/IORInterceptor/IORInterceptorC.cpp index 3bb6b0f711c..82c31a0500c 100644 --- a/TAO/tao/IORInterceptor/IORInterceptorC.cpp +++ b/TAO/tao/IORInterceptor/IORInterceptorC.cpp @@ -44,58 +44,6 @@ int PortableInterceptor::IORInfo::_tao_class_id = 0; -PortableInterceptor::IORInfo_ptr -PortableInterceptor::tao_IORInfo_life::tao_duplicate ( - IORInfo_ptr p - ) -{ - return IORInfo::_duplicate (p); -} - -void -PortableInterceptor::tao_IORInfo_life::tao_release ( - IORInfo_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::IORInfo_ptr -PortableInterceptor::tao_IORInfo_life::tao_nil ( - void - ) -{ - return IORInfo::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_IORInfo_life::tao_marshal ( - IORInfo_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::IORInfo_ptr -PortableInterceptor::tao_IORInfo_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return IORInfo::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_IORInfo_cast::tao_upcast ( - void *src - ) -{ - IORInfo **tmp = - ACE_static_cast (IORInfo **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -219,58 +167,6 @@ PortableInterceptor::IORInfo::marshal (TAO_OutputCDR &) int PortableInterceptor::IORInterceptor::_tao_class_id = 0; -PortableInterceptor::IORInterceptor_ptr -PortableInterceptor::tao_IORInterceptor_life::tao_duplicate ( - IORInterceptor_ptr p - ) -{ - return IORInterceptor::_duplicate (p); -} - -void -PortableInterceptor::tao_IORInterceptor_life::tao_release ( - IORInterceptor_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::IORInterceptor_ptr -PortableInterceptor::tao_IORInterceptor_life::tao_nil ( - void - ) -{ - return IORInterceptor::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_IORInterceptor_life::tao_marshal ( - IORInterceptor_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::IORInterceptor_ptr -PortableInterceptor::tao_IORInterceptor_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return IORInterceptor::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_IORInterceptor_cast::tao_upcast ( - void *src - ) -{ - IORInterceptor **tmp = - ACE_static_cast (IORInterceptor **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/IORInterceptor/IORInterceptorC.h b/TAO/tao/IORInterceptor/IORInterceptorC.h index d08043c49a3..18df5d37475 100644 --- a/TAO/tao/IORInterceptor/IORInterceptorC.h +++ b/TAO/tao/IORInterceptor/IORInterceptorC.h @@ -78,42 +78,19 @@ TAO_NAMESPACE PortableInterceptor class IORInfo; typedef IORInfo *IORInfo_ptr; - struct tao_IORInfo_life; typedef TAO_Objref_Var_T< - IORInfo, - tao_IORInfo_life + IORInfo > IORInfo_var; typedef TAO_Objref_Out_T< - IORInfo, - tao_IORInfo_life + IORInfo > IORInfo_out; - struct TAO_IORInterceptor_Export tao_IORInfo_life - { - static IORInfo_ptr tao_duplicate (IORInfo_ptr); - static void tao_release (IORInfo_ptr); - static IORInfo_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - IORInfo_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_IORInterceptor_Export tao_IORInfo_cast - { - static IORInfo_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -262,42 +239,19 @@ TAO_NAMESPACE PortableInterceptor class IORInterceptor; typedef IORInterceptor *IORInterceptor_ptr; - struct tao_IORInterceptor_life; typedef TAO_Objref_Var_T< - IORInterceptor, - tao_IORInterceptor_life + IORInterceptor > IORInterceptor_var; typedef TAO_Objref_Out_T< - IORInterceptor, - tao_IORInterceptor_life + IORInterceptor > IORInterceptor_out; - struct TAO_IORInterceptor_Export tao_IORInterceptor_life - { - static IORInterceptor_ptr tao_duplicate (IORInterceptor_ptr); - static void tao_release (IORInterceptor_ptr); - static IORInterceptor_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - IORInterceptor_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_IORInterceptor_Export tao_IORInterceptor_cast - { - static IORInterceptor_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/Messaging/MessagingC.h b/TAO/tao/Messaging/MessagingC.h index e45f2b4b217..8069b983193 100644 --- a/TAO/tao/Messaging/MessagingC.h +++ b/TAO/tao/Messaging/MessagingC.h @@ -82,15 +82,13 @@ TAO_NAMESPACE Messaging typedef TAO_Value_Var_T< - ExceptionHolder, - tao_ExceptionHolder_life + ExceptionHolder > ExceptionHolder_var; typedef TAO_Value_Out_T< - ExceptionHolder, - tao_ExceptionHolder_life + ExceptionHolder > ExceptionHolder_out; diff --git a/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp b/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp index b3914924d90..60ec5a7b90c 100644 --- a/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp +++ b/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp @@ -104,43 +104,23 @@ TAO_NAMESPACE_END // TAO_IDL - Generated from // W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_valuetype/valuetype_cs.cpp:94 -void -PortableInterceptor::tao_ObjectReferenceFactory_life::tao_add_ref ( - PortableInterceptor::ObjectReferenceFactory * p - ) -{ - CORBA::add_ref (p); -} - -void -PortableInterceptor::tao_ObjectReferenceFactory_life::tao_remove_ref ( - PortableInterceptor::ObjectReferenceFactory * p - ) -{ - CORBA::remove_ref (p); -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Value_Var_T< - PortableInterceptor::ObjectReferenceFactory, - PortableInterceptor::tao_ObjectReferenceFactory_life + PortableInterceptor::ObjectReferenceFactory >; template class TAO_Value_Out_T< - PortableInterceptor::ObjectReferenceFactory, - PortableInterceptor::tao_ObjectReferenceFactory_life + PortableInterceptor::ObjectReferenceFactory >; #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) # pragma instantiate \ TAO_Value_Var_T< \ - PortableInterceptor::ObjectReferenceFactory, \ - PortableInterceptor::tao_ObjectReferenceFactory_life \ + PortableInterceptor::ObjectReferenceFactory > # pragma instantiate \ TAO_Value_Out_T< \ - PortableInterceptor::ObjectReferenceFactory, \ - PortableInterceptor::tao_ObjectReferenceFactory_life \ + PortableInterceptor::ObjectReferenceFactory > #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ @@ -295,22 +275,6 @@ TAO_NAMESPACE_END // TAO_IDL - Generated from // W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_valuetype/valuetype_cs.cpp:94 -void -PortableInterceptor::tao_ObjectReferenceTemplate_life::tao_add_ref ( - PortableInterceptor::ObjectReferenceTemplate * p - ) -{ - CORBA::add_ref (p); -} - -void -PortableInterceptor::tao_ObjectReferenceTemplate_life::tao_remove_ref ( - PortableInterceptor::ObjectReferenceTemplate * p - ) -{ - CORBA::remove_ref (p); -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Value_Var_T< @@ -454,8 +418,7 @@ PortableInterceptor::ObjectReferenceTemplateSeq::ObjectReferenceTemplateSeq ( ) : TAO_Unbounded_Valuetype_Sequence< PortableInterceptor::ObjectReferenceTemplate, - PortableInterceptor::ObjectReferenceTemplate_var, - PortableInterceptor::tao_ObjectReferenceTemplate_life + PortableInterceptor::ObjectReferenceTemplate_var > (max) {} @@ -468,8 +431,7 @@ PortableInterceptor::ObjectReferenceTemplateSeq::ObjectReferenceTemplateSeq ( ) : TAO_Unbounded_Valuetype_Sequence< PortableInterceptor::ObjectReferenceTemplate, - PortableInterceptor::ObjectReferenceTemplate_var, - PortableInterceptor::tao_ObjectReferenceTemplate_life + PortableInterceptor::ObjectReferenceTemplate_var > (max, length, buffer, release) {} @@ -479,8 +441,7 @@ PortableInterceptor::ObjectReferenceTemplateSeq::ObjectReferenceTemplateSeq ( ) : TAO_Unbounded_Valuetype_Sequence< PortableInterceptor::ObjectReferenceTemplate, - PortableInterceptor::ObjectReferenceTemplate_var, - PortableInterceptor::tao_ObjectReferenceTemplate_life + PortableInterceptor::ObjectReferenceTemplate_var > (seq) {} diff --git a/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.h b/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.h index 9b208607b0b..2fa1599d6bd 100644 --- a/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.h +++ b/TAO/tao/ObjRefTemplate/ObjectReferenceTemplateC.h @@ -89,24 +89,16 @@ TAO_NAMESPACE PortableInterceptor typedef TAO_Value_Var_T< - ObjectReferenceFactory, - tao_ObjectReferenceFactory_life + ObjectReferenceFactory > ObjectReferenceFactory_var; typedef TAO_Value_Out_T< - ObjectReferenceFactory, - tao_ObjectReferenceFactory_life + ObjectReferenceFactory > ObjectReferenceFactory_out; - struct TAO_ORT_Export tao_ObjectReferenceFactory_life - { - static void tao_add_ref (ObjectReferenceFactory *); - static void tao_remove_ref (ObjectReferenceFactory *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -178,23 +170,16 @@ TAO_NAMESPACE PortableInterceptor typedef TAO_Value_Var_T< - ObjectReferenceTemplate, - tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate > ObjectReferenceTemplate_var; typedef TAO_Value_Out_T< - ObjectReferenceTemplate, - tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate > ObjectReferenceTemplate_out; - struct TAO_ORT_Export tao_ObjectReferenceTemplate_life - { - static void tao_add_ref (ObjectReferenceTemplate *); - static void tao_remove_ref (ObjectReferenceTemplate *); - }; #endif /* end #if !defined */ @@ -281,8 +266,7 @@ TAO_NAMESPACE PortableInterceptor ObjectReferenceTemplateSeq, TAO_Valuetype_Manager< ObjectReferenceTemplate, - ObjectReferenceTemplate_var, - PortableInterceptor::tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate_var > > ObjectReferenceTemplateSeq_var; @@ -293,8 +277,7 @@ TAO_NAMESPACE PortableInterceptor ObjectReferenceTemplateSeq_var, TAO_Valuetype_Manager< ObjectReferenceTemplate, - ObjectReferenceTemplate_var, - PortableInterceptor::tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate_var > > ObjectReferenceTemplateSeq_out; @@ -303,8 +286,7 @@ TAO_NAMESPACE PortableInterceptor : public TAO_Unbounded_Valuetype_Sequence< ObjectReferenceTemplate, - ObjectReferenceTemplate_var, - tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate_var > { public: diff --git a/TAO/tao/Object_Argument_T.h b/TAO/tao/Object_Argument_T.h index 98cdb9d786b..0909a34dada 100644 --- a/TAO/tao/Object_Argument_T.h +++ b/TAO/tao/Object_Argument_T.h @@ -45,6 +45,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S_ptr arg (void) const; + private: S_ptr x_; }; @@ -67,6 +69,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S_ptr & arg (void); + private: mutable S_ptr & x_; }; @@ -85,6 +89,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S_out arg (void); + private: mutable S_ptr & x_; }; @@ -106,6 +112,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S_ptr & arg (void); + S_ptr excp (void); S_ptr retn (void); diff --git a/TAO/tao/Object_Argument_T.inl b/TAO/tao/Object_Argument_T.inl index a230f037cd4..315a4108634 100644 --- a/TAO/tao/Object_Argument_T.inl +++ b/TAO/tao/Object_Argument_T.inl @@ -6,6 +6,14 @@ TAO::In_Object_Argument_T<S_ptr>::In_Object_Argument_T (S_ptr x) : x_ (x) {} +template<typename S_ptr> +ACE_INLINE +S_ptr +TAO::In_Object_Argument_T<S_ptr>::arg (void) const +{ + return this->x_; +} + // ========================================================================== template<typename S_ptr> @@ -14,6 +22,14 @@ TAO::Inout_Object_Argument_T<S_ptr>::Inout_Object_Argument_T (S_ptr & x) : x_ (x) {} +template<typename S_ptr> +ACE_INLINE +S_ptr & +TAO::Inout_Object_Argument_T<S_ptr>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S_ptr, typename S_out> @@ -22,6 +38,14 @@ 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> +ACE_INLINE +S_out +TAO::Out_Object_Argument_T<S_ptr,S_out>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S_ptr, typename S_var> @@ -31,6 +55,14 @@ TAO::Ret_Object_Argument_T<S_ptr,S_var>::Ret_Object_Argument_T (void) template<typename S_ptr, typename S_var> ACE_INLINE +S_ptr & +TAO::Ret_Object_Argument_T<S_ptr,S_var>::arg (void) +{ + return this->x_.out (); +} + +template<typename S_ptr, typename S_var> +ACE_INLINE S_ptr TAO::Ret_Object_Argument_T<S_ptr,S_var>::excp (void) { diff --git a/TAO/tao/Objref_VarOut_T.cpp b/TAO/tao/Objref_VarOut_T.cpp index 32e8574b4a6..168215d4318 100644 --- a/TAO/tao/Objref_VarOut_T.cpp +++ b/TAO/tao/Objref_VarOut_T.cpp @@ -48,40 +48,40 @@ TAO::Objref_Traits<T>::tao_marshal (T * p, } // ================================================================= -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life>::TAO_Objref_Var_T (void) +template <typename T> +TAO_Objref_Var_T<T>::TAO_Objref_Var_T (void) : ptr_ (TAO::Objref_Traits<T>::tao_nil ()) { } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life>::TAO_Objref_Var_T ( - const TAO_Objref_Var_T<T, T_life> & p +template <typename T> +TAO_Objref_Var_T<T>::TAO_Objref_Var_T ( + const TAO_Objref_Var_T<T> & p ) : TAO_Base_var (), ptr_ (TAO::Objref_Traits<T>::tao_duplicate (p.ptr ())) { } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life>::~TAO_Objref_Var_T (void) +template <typename T> +TAO_Objref_Var_T<T>::~TAO_Objref_Var_T (void) { TAO::Objref_Traits<T>::tao_release (this->ptr_); } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life> & -TAO_Objref_Var_T<T, T_life>::operator= (T * p) +template <typename T> +TAO_Objref_Var_T<T> & +TAO_Objref_Var_T<T>::operator= (T * p) { TAO::Objref_Traits<T>::tao_release (this->ptr_); this->ptr_ = p; return *this; } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life> & -TAO_Objref_Var_T<T, T_life>::operator= ( - const TAO_Objref_Var_T<T, T_life> & p +template <typename T> +TAO_Objref_Var_T<T> & +TAO_Objref_Var_T<T>::operator= ( + const TAO_Objref_Var_T<T> & p ) { if (this != &p) @@ -93,74 +93,74 @@ TAO_Objref_Var_T<T, T_life>::operator= ( return *this; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Objref_Var_T<T, T_life>::operator-> (void) const +TAO_Objref_Var_T<T>::operator-> (void) const { return this->ptr_; } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life>::operator T * const & () const +template <typename T> +TAO_Objref_Var_T<T>::operator T * const & () const { return this->ptr_; } -template <typename T, typename T_life> -TAO_Objref_Var_T<T, T_life>::operator T *& () +template <typename T> +TAO_Objref_Var_T<T>::operator T *& () { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Objref_Var_T<T, T_life>::in (void) const +TAO_Objref_Var_T<T>::in (void) const { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Objref_Var_T<T, T_life>::inout (void) +TAO_Objref_Var_T<T>::inout (void) { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Objref_Var_T<T, T_life>::out (void) +TAO_Objref_Var_T<T>::out (void) { TAO::Objref_Traits<T>::tao_release (this->ptr_); this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Objref_Var_T<T, T_life>::_retn (void) +TAO_Objref_Var_T<T>::_retn (void) { T * val = this->ptr_; this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); return val; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Objref_Var_T<T, T_life>::ptr (void) const +TAO_Objref_Var_T<T>::ptr (void) const { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> void -TAO_Objref_Var_T<T, T_life>::free (void) +TAO_Objref_Var_T<T>::free (void) { TAO::Objref_Traits<T>::tao_release (this->ptr_); } -template <typename T, typename T_life> +template <typename T> void -TAO_Objref_Var_T<T, T_life>::reset (T * p) +TAO_Objref_Var_T<T>::reset (T * p) { TAO::Objref_Traits<T>::tao_release (this->ptr_); this->ptr_ = p; @@ -168,16 +168,16 @@ TAO_Objref_Var_T<T, T_life>::reset (T * p) // ****************************************************** -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life>::TAO_Objref_Out_T (T *& p) +template <typename T> +TAO_Objref_Out_T<T>::TAO_Objref_Out_T (T *& p) : ptr_ (p) { - this->ptr_ = T_life::tao_nil (); + this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life>::TAO_Objref_Out_T ( - TAO_Objref_Var_T<T, T_life> & p +template <typename T> +TAO_Objref_Out_T<T>::TAO_Objref_Out_T ( + TAO_Objref_Var_T<T> & p ) : ptr_ (p.out ()) { @@ -185,58 +185,58 @@ TAO_Objref_Out_T<T, T_life>::TAO_Objref_Out_T ( this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life>::TAO_Objref_Out_T ( - const TAO_Objref_Out_T<T, T_life> & p +template <typename T> +TAO_Objref_Out_T<T>::TAO_Objref_Out_T ( + const TAO_Objref_Out_T<T> & p ) : ptr_ (p.ptr_) { } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life> & -TAO_Objref_Out_T<T, T_life>::operator= ( - const TAO_Objref_Out_T<T, T_life> & p +template <typename T> +TAO_Objref_Out_T<T> & +TAO_Objref_Out_T<T>::operator= ( + const TAO_Objref_Out_T<T> & p ) { this->ptr_ = p.ptr_; return *this; } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life> & -TAO_Objref_Out_T<T, T_life>::operator= ( - const TAO_Objref_Var_T<T, T_life> & p +template <typename T> +TAO_Objref_Out_T<T> & +TAO_Objref_Out_T<T>::operator= ( + const TAO_Objref_Var_T<T> & p ) { this->ptr_ = TAO::Objref_Traits<T>::tao_duplicate (p.ptr ()); return *this; } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life> & -TAO_Objref_Out_T<T, T_life>::operator= (T * p) +template <typename T> +TAO_Objref_Out_T<T> & +TAO_Objref_Out_T<T>::operator= (T * p) { this->ptr_ = p; return *this; } -template <typename T, typename T_life> -TAO_Objref_Out_T<T, T_life>::operator T *& () +template <typename T> +TAO_Objref_Out_T<T>::operator T *& () { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Objref_Out_T<T, T_life>::ptr (void) +TAO_Objref_Out_T<T>::ptr (void) { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Objref_Out_T<T, T_life>::operator-> (void) +TAO_Objref_Out_T<T>::operator-> (void) { return this->ptr_; } diff --git a/TAO/tao/Objref_VarOut_T.h b/TAO/tao/Objref_VarOut_T.h index 43b923e65f9..f4c9e72b4ae 100644 --- a/TAO/tao/Objref_VarOut_T.h +++ b/TAO/tao/Objref_VarOut_T.h @@ -49,18 +49,18 @@ namespace TAO * @brief Parametrized implementation of _var class for object references. * */ -template <typename T, typename T_life> +template <typename T> class TAO_Objref_Var_T : private TAO_Base_var { public: TAO_Objref_Var_T (void); TAO_Objref_Var_T (T * p) : ptr_ (p) {} - TAO_Objref_Var_T (const TAO_Objref_Var_T<T, T_life> &); + TAO_Objref_Var_T (const TAO_Objref_Var_T<T> &); ~TAO_Objref_Var_T (void); - TAO_Objref_Var_T<T, T_life> & operator= (T *); - TAO_Objref_Var_T<T, T_life> & operator= ( - const TAO_Objref_Var_T<T, T_life> & + TAO_Objref_Var_T<T> & operator= (T *); + TAO_Objref_Var_T<T> & operator= ( + const TAO_Objref_Var_T<T> & ); T * operator-> (void) const; @@ -99,16 +99,16 @@ private: * @brief Parametrized implementation of _out class for object references. * */ -template <typename T, typename T_life> +template <typename T> class TAO_Objref_Out_T { public: TAO_Objref_Out_T (T *&); - TAO_Objref_Out_T (TAO_Objref_Var_T<T, T_life> &); - TAO_Objref_Out_T (const TAO_Objref_Out_T<T, T_life> &); + TAO_Objref_Out_T (TAO_Objref_Var_T<T> &); + TAO_Objref_Out_T (const TAO_Objref_Out_T<T> &); - TAO_Objref_Out_T &operator= (const TAO_Objref_Out_T<T, T_life> &); - TAO_Objref_Out_T &operator= (const TAO_Objref_Var_T<T, T_life> &); + TAO_Objref_Out_T &operator= (const TAO_Objref_Out_T<T> &); + TAO_Objref_Out_T &operator= (const TAO_Objref_Var_T<T> &); TAO_Objref_Out_T &operator= (T *); // Cast operator. @@ -118,7 +118,7 @@ public: T * operator-> (void); private: - typedef TAO_Objref_Out_T<T, T_life> THIS_OUT_TYPE; + typedef TAO_Objref_Out_T<T> THIS_OUT_TYPE; T *& ptr_; }; diff --git a/TAO/tao/PolicyC.cpp b/TAO/tao/PolicyC.cpp index 92276fe4be8..8ad0eb9a078 100644 --- a/TAO/tao/PolicyC.cpp +++ b/TAO/tao/PolicyC.cpp @@ -522,58 +522,6 @@ TAO::Objref_Traits<CORBA::Policy>::tao_marshal (CORBA::Policy_ptr p, int CORBA::Policy::_tao_class_id = 0; -CORBA::Policy_ptr -CORBA::tao_Policy_life::tao_duplicate ( - CORBA::Policy_ptr p - ) -{ - return CORBA::Policy::_duplicate (p); -} - -void -CORBA::tao_Policy_life::tao_release ( - CORBA::Policy_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::Policy_ptr -CORBA::tao_Policy_life::tao_nil ( - void - ) -{ - return CORBA::Policy::_nil (); -} - -CORBA::Boolean -CORBA::tao_Policy_life::tao_marshal ( - CORBA::Policy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::Policy_ptr -CORBA::tao_Policy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::Policy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_Policy_cast::tao_upcast ( - void *src - ) -{ - CORBA::Policy **tmp = - ACE_static_cast (CORBA::Policy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1851,58 +1799,6 @@ TAO_NAMESPACE_END int CORBA::PolicyManager::_tao_class_id = 0; -CORBA::PolicyManager_ptr -CORBA::tao_PolicyManager_life::tao_duplicate ( - CORBA::PolicyManager_ptr p - ) -{ - return CORBA::PolicyManager::_duplicate (p); -} - -void -CORBA::tao_PolicyManager_life::tao_release ( - CORBA::PolicyManager_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::PolicyManager_ptr -CORBA::tao_PolicyManager_life::tao_nil ( - void - ) -{ - return CORBA::PolicyManager::_nil (); -} - -CORBA::Boolean -CORBA::tao_PolicyManager_life::tao_marshal ( - CORBA::PolicyManager_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::PolicyManager_ptr -CORBA::tao_PolicyManager_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::PolicyManager::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_PolicyManager_cast::tao_upcast ( - void *src - ) -{ - CORBA::PolicyManager **tmp = - ACE_static_cast (CORBA::PolicyManager **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2073,58 +1969,6 @@ TAO_NAMESPACE_END int CORBA::PolicyCurrent::_tao_class_id = 0; -CORBA::PolicyCurrent_ptr -CORBA::tao_PolicyCurrent_life::tao_duplicate ( - CORBA::PolicyCurrent_ptr p - ) -{ - return CORBA::PolicyCurrent::_duplicate (p); -} - -void -CORBA::tao_PolicyCurrent_life::tao_release ( - CORBA::PolicyCurrent_ptr p - ) -{ - CORBA::release (p); -} - -CORBA::PolicyCurrent_ptr -CORBA::tao_PolicyCurrent_life::tao_nil ( - void - ) -{ - return CORBA::PolicyCurrent::_nil (); -} - -CORBA::Boolean -CORBA::tao_PolicyCurrent_life::tao_marshal ( - CORBA::PolicyCurrent_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -CORBA::PolicyCurrent_ptr -CORBA::tao_PolicyCurrent_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return CORBA::PolicyCurrent::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -CORBA::tao_PolicyCurrent_cast::tao_upcast ( - void *src - ) -{ - CORBA::PolicyCurrent **tmp = - ACE_static_cast (CORBA::PolicyCurrent **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/PolicyC.h b/TAO/tao/PolicyC.h index b4e053ec779..a093a450e13 100644 --- a/TAO/tao/PolicyC.h +++ b/TAO/tao/PolicyC.h @@ -587,29 +587,8 @@ TAO_NAMESPACE CORBA class PolicyManager; typedef PolicyManager *PolicyManager_ptr; - struct tao_PolicyManager_life; - typedef TAO_Objref_Var_T<PolicyManager, tao_PolicyManager_life> PolicyManager_var; - typedef TAO_Objref_Out_T<PolicyManager, tao_PolicyManager_life> PolicyManager_out; - - struct TAO_Export tao_PolicyManager_life - { - static PolicyManager_ptr tao_duplicate (PolicyManager_ptr); - static void tao_release (PolicyManager_ptr); - static PolicyManager_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - PolicyManager_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_PolicyManager_cast - { - static PolicyManager_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<PolicyManager> PolicyManager_var; + typedef TAO_Objref_Out_T<PolicyManager> PolicyManager_out; #endif /* end #if !defined */ @@ -703,29 +682,8 @@ TAO_NAMESPACE CORBA class PolicyCurrent; typedef PolicyCurrent *PolicyCurrent_ptr; - struct tao_PolicyCurrent_life; - typedef TAO_Objref_Var_T<PolicyCurrent, tao_PolicyCurrent_life> PolicyCurrent_var; - typedef TAO_Objref_Out_T<PolicyCurrent, tao_PolicyCurrent_life> PolicyCurrent_out; - - struct TAO_Export tao_PolicyCurrent_life - { - static PolicyCurrent_ptr tao_duplicate (PolicyCurrent_ptr); - static void tao_release (PolicyCurrent_ptr); - static PolicyCurrent_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - PolicyCurrent_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_PolicyCurrent_cast - { - static PolicyCurrent_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<PolicyCurrent> PolicyCurrent_var; + typedef TAO_Objref_Out_T<PolicyCurrent> PolicyCurrent_out; #endif /* end #if !defined */ diff --git a/TAO/tao/Policy_ForwardC.cpp b/TAO/tao/Policy_ForwardC.cpp index 6c4487095d7..aeca2e5b43d 100644 --- a/TAO/tao/Policy_ForwardC.cpp +++ b/TAO/tao/Policy_ForwardC.cpp @@ -86,9 +86,7 @@ CORBA::PolicyList::PolicyList (void) CORBA::PolicyList::PolicyList (CORBA::ULong max) : TAO_Unbounded_Object_Sequence< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life, - CORBA::tao_Policy_cast + CORBA::Policy_var > (max) {} @@ -101,9 +99,7 @@ CORBA::PolicyList::PolicyList ( ) : TAO_Unbounded_Object_Sequence< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life, - CORBA::tao_Policy_cast + CORBA::Policy_var > (max, length, buffer, release) {} @@ -111,9 +107,7 @@ CORBA::PolicyList::PolicyList ( CORBA::PolicyList::PolicyList (const PolicyList &seq) : TAO_Unbounded_Object_Sequence< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life, - CORBA::tao_Policy_cast + CORBA::Policy_var > (seq) {} @@ -608,7 +602,10 @@ CORBA::Boolean operator>>= ( for (CORBA::ULong i = 0; i < _tao_seq_len && _tao_marshal_flag; ++i) { _tao_marshal_flag = - CORBA::tao_Policy_life::tao_marshal (_tao_sequence[i].in (), strm); + TAO::Objref_Traits<CORBA::Policy>::tao_marshal ( + _tao_sequence[i].in (), + strm + ); } return _tao_marshal_flag; diff --git a/TAO/tao/Policy_ForwardC.h b/TAO/tao/Policy_ForwardC.h index 01725f37403..cfb776aee69 100644 --- a/TAO/tao/Policy_ForwardC.h +++ b/TAO/tao/Policy_ForwardC.h @@ -85,29 +85,8 @@ TAO_NAMESPACE CORBA class Policy; typedef Policy *Policy_ptr; - struct tao_Policy_life; - typedef TAO_Objref_Var_T<Policy, tao_Policy_life> Policy_var; - typedef TAO_Objref_Out_T<Policy, tao_Policy_life> Policy_out; - - struct TAO_Export tao_Policy_life - { - static Policy_ptr tao_duplicate (Policy_ptr); - static void tao_release (Policy_ptr); - static Policy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Policy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_Policy_cast - { - static Policy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<Policy> Policy_var; + typedef TAO_Objref_Out_T<Policy> Policy_out; #endif /* end #if !defined */ @@ -121,8 +100,7 @@ TAO_NAMESPACE CORBA PolicyList, TAO_Object_Manager< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life + CORBA::Policy_var > > PolicyList_var; @@ -133,8 +111,7 @@ TAO_NAMESPACE CORBA PolicyList_var, TAO_Object_Manager< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life + CORBA::Policy_var > > PolicyList_out; @@ -143,9 +120,7 @@ TAO_NAMESPACE CORBA : public TAO_Unbounded_Object_Sequence< CORBA::Policy, - CORBA::Policy_var, - CORBA::tao_Policy_life, - CORBA::tao_Policy_cast + CORBA::Policy_var > { public: diff --git a/TAO/tao/PortableInterceptorC.cpp b/TAO/tao/PortableInterceptorC.cpp index 836308e8346..b7e8e1d0c7b 100644 --- a/TAO/tao/PortableInterceptorC.cpp +++ b/TAO/tao/PortableInterceptorC.cpp @@ -54,58 +54,6 @@ int PortableInterceptor::Interceptor::_tao_class_id = 0; -PortableInterceptor::Interceptor_ptr -PortableInterceptor::tao_Interceptor_life::tao_duplicate ( - Interceptor_ptr p - ) -{ - return Interceptor::_duplicate (p); -} - -void -PortableInterceptor::tao_Interceptor_life::tao_release ( - Interceptor_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::Interceptor_ptr -PortableInterceptor::tao_Interceptor_life::tao_nil ( - void - ) -{ - return Interceptor::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_Interceptor_life::tao_marshal ( - Interceptor_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::Interceptor_ptr -PortableInterceptor::tao_Interceptor_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return Interceptor::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_Interceptor_cast::tao_upcast ( - void *src - ) -{ - Interceptor **tmp = - ACE_static_cast (Interceptor **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -708,58 +656,6 @@ TAO_NAMESPACE_END int PortableInterceptor::Current::_tao_class_id = 0; -PortableInterceptor::Current_ptr -PortableInterceptor::tao_Current_life::tao_duplicate ( - Current_ptr p - ) -{ - return Current::_duplicate (p); -} - -void -PortableInterceptor::tao_Current_life::tao_release ( - Current_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::Current_ptr -PortableInterceptor::tao_Current_life::tao_nil ( - void - ) -{ - return Current::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_Current_life::tao_marshal ( - Current_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::Current_ptr -PortableInterceptor::tao_Current_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return Current::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_Current_cast::tao_upcast ( - void *src - ) -{ - Current **tmp = - ACE_static_cast (Current **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -944,58 +840,6 @@ TAO_NAMESPACE_END int PortableInterceptor::RequestInfo::_tao_class_id = 0; -PortableInterceptor::RequestInfo_ptr -PortableInterceptor::tao_RequestInfo_life::tao_duplicate ( - RequestInfo_ptr p - ) -{ - return RequestInfo::_duplicate (p); -} - -void -PortableInterceptor::tao_RequestInfo_life::tao_release ( - RequestInfo_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::RequestInfo_ptr -PortableInterceptor::tao_RequestInfo_life::tao_nil ( - void - ) -{ - return RequestInfo::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_RequestInfo_life::tao_marshal ( - RequestInfo_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::RequestInfo_ptr -PortableInterceptor::tao_RequestInfo_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return RequestInfo::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_RequestInfo_cast::tao_upcast ( - void *src - ) -{ - RequestInfo **tmp = - ACE_static_cast (RequestInfo **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1168,58 +1012,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ClientRequestInfo::_tao_class_id = 0; -PortableInterceptor::ClientRequestInfo_ptr -PortableInterceptor::tao_ClientRequestInfo_life::tao_duplicate ( - ClientRequestInfo_ptr p - ) -{ - return ClientRequestInfo::_duplicate (p); -} - -void -PortableInterceptor::tao_ClientRequestInfo_life::tao_release ( - ClientRequestInfo_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ClientRequestInfo_ptr -PortableInterceptor::tao_ClientRequestInfo_life::tao_nil ( - void - ) -{ - return ClientRequestInfo::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ClientRequestInfo_life::tao_marshal ( - ClientRequestInfo_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ClientRequestInfo_ptr -PortableInterceptor::tao_ClientRequestInfo_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ClientRequestInfo::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ClientRequestInfo_cast::tao_upcast ( - void *src - ) -{ - ClientRequestInfo **tmp = - ACE_static_cast (ClientRequestInfo **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1410,58 +1202,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ServerRequestInfo::_tao_class_id = 0; -PortableInterceptor::ServerRequestInfo_ptr -PortableInterceptor::tao_ServerRequestInfo_life::tao_duplicate ( - ServerRequestInfo_ptr p - ) -{ - return ServerRequestInfo::_duplicate (p); -} - -void -PortableInterceptor::tao_ServerRequestInfo_life::tao_release ( - ServerRequestInfo_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ServerRequestInfo_ptr -PortableInterceptor::tao_ServerRequestInfo_life::tao_nil ( - void - ) -{ - return ServerRequestInfo::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ServerRequestInfo_life::tao_marshal ( - ServerRequestInfo_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ServerRequestInfo_ptr -PortableInterceptor::tao_ServerRequestInfo_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ServerRequestInfo::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ServerRequestInfo_cast::tao_upcast ( - void *src - ) -{ - ServerRequestInfo **tmp = - ACE_static_cast (ServerRequestInfo **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1652,58 +1392,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ClientRequestInterceptor::_tao_class_id = 0; -PortableInterceptor::ClientRequestInterceptor_ptr -PortableInterceptor::tao_ClientRequestInterceptor_life::tao_duplicate ( - ClientRequestInterceptor_ptr p - ) -{ - return ClientRequestInterceptor::_duplicate (p); -} - -void -PortableInterceptor::tao_ClientRequestInterceptor_life::tao_release ( - ClientRequestInterceptor_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ClientRequestInterceptor_ptr -PortableInterceptor::tao_ClientRequestInterceptor_life::tao_nil ( - void - ) -{ - return ClientRequestInterceptor::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ClientRequestInterceptor_life::tao_marshal ( - ClientRequestInterceptor_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ClientRequestInterceptor_ptr -PortableInterceptor::tao_ClientRequestInterceptor_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ClientRequestInterceptor::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ClientRequestInterceptor_cast::tao_upcast ( - void *src - ) -{ - ClientRequestInterceptor **tmp = - ACE_static_cast (ClientRequestInterceptor **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1898,58 +1586,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ServerRequestInterceptor::_tao_class_id = 0; -PortableInterceptor::ServerRequestInterceptor_ptr -PortableInterceptor::tao_ServerRequestInterceptor_life::tao_duplicate ( - ServerRequestInterceptor_ptr p - ) -{ - return ServerRequestInterceptor::_duplicate (p); -} - -void -PortableInterceptor::tao_ServerRequestInterceptor_life::tao_release ( - ServerRequestInterceptor_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ServerRequestInterceptor_ptr -PortableInterceptor::tao_ServerRequestInterceptor_life::tao_nil ( - void - ) -{ - return ServerRequestInterceptor::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ServerRequestInterceptor_life::tao_marshal ( - ServerRequestInterceptor_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ServerRequestInterceptor_ptr -PortableInterceptor::tao_ServerRequestInterceptor_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ServerRequestInterceptor::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ServerRequestInterceptor_cast::tao_upcast ( - void *src - ) -{ - ServerRequestInterceptor **tmp = - ACE_static_cast (ServerRequestInterceptor **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2144,58 +1780,6 @@ TAO_NAMESPACE_END int PortableInterceptor::PolicyFactory::_tao_class_id = 0; -PortableInterceptor::PolicyFactory_ptr -PortableInterceptor::tao_PolicyFactory_life::tao_duplicate ( - PolicyFactory_ptr p - ) -{ - return PolicyFactory::_duplicate (p); -} - -void -PortableInterceptor::tao_PolicyFactory_life::tao_release ( - PolicyFactory_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::PolicyFactory_ptr -PortableInterceptor::tao_PolicyFactory_life::tao_nil ( - void - ) -{ - return PolicyFactory::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_PolicyFactory_life::tao_marshal ( - PolicyFactory_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::PolicyFactory_ptr -PortableInterceptor::tao_PolicyFactory_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PolicyFactory::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_PolicyFactory_cast::tao_upcast ( - void *src - ) -{ - PolicyFactory **tmp = - ACE_static_cast (PolicyFactory **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2382,58 +1966,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ORBInitInfo::_tao_class_id = 0; -PortableInterceptor::ORBInitInfo_ptr -PortableInterceptor::tao_ORBInitInfo_life::tao_duplicate ( - ORBInitInfo_ptr p - ) -{ - return ORBInitInfo::_duplicate (p); -} - -void -PortableInterceptor::tao_ORBInitInfo_life::tao_release ( - ORBInitInfo_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ORBInitInfo_ptr -PortableInterceptor::tao_ORBInitInfo_life::tao_nil ( - void - ) -{ - return ORBInitInfo::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ORBInitInfo_life::tao_marshal ( - ORBInitInfo_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ORBInitInfo_ptr -PortableInterceptor::tao_ORBInitInfo_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ORBInitInfo::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ORBInitInfo_cast::tao_upcast ( - void *src - ) -{ - ORBInitInfo **tmp = - ACE_static_cast (ORBInitInfo **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2941,58 +2473,6 @@ TAO_NAMESPACE_END int PortableInterceptor::ORBInitializer::_tao_class_id = 0; -PortableInterceptor::ORBInitializer_ptr -PortableInterceptor::tao_ORBInitializer_life::tao_duplicate ( - ORBInitializer_ptr p - ) -{ - return ORBInitializer::_duplicate (p); -} - -void -PortableInterceptor::tao_ORBInitializer_life::tao_release ( - ORBInitializer_ptr p - ) -{ - CORBA::release (p); -} - -PortableInterceptor::ORBInitializer_ptr -PortableInterceptor::tao_ORBInitializer_life::tao_nil ( - void - ) -{ - return ORBInitializer::_nil (); -} - -CORBA::Boolean -PortableInterceptor::tao_ORBInitializer_life::tao_marshal ( - ORBInitializer_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableInterceptor::ORBInitializer_ptr -PortableInterceptor::tao_ORBInitializer_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ORBInitializer::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableInterceptor::tao_ORBInitializer_cast::tao_upcast ( - void *src - ) -{ - ORBInitializer **tmp = - ACE_static_cast (ORBInitializer **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/PortableInterceptorC.h b/TAO/tao/PortableInterceptorC.h index 6737a5f0eb8..4253b2e5f48 100644 --- a/TAO/tao/PortableInterceptorC.h +++ b/TAO/tao/PortableInterceptorC.h @@ -80,42 +80,19 @@ TAO_NAMESPACE PortableInterceptor class Interceptor; typedef Interceptor *Interceptor_ptr; - struct tao_Interceptor_life; typedef TAO_Objref_Var_T< - Interceptor, - tao_Interceptor_life + Interceptor > Interceptor_var; typedef TAO_Objref_Out_T< - Interceptor, - tao_Interceptor_life + Interceptor > Interceptor_out; - struct TAO_Export tao_Interceptor_life - { - static Interceptor_ptr tao_duplicate (Interceptor_ptr); - static void tao_release (Interceptor_ptr); - static Interceptor_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Interceptor_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_Interceptor_cast - { - static Interceptor_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -367,42 +344,19 @@ TAO_NAMESPACE PortableInterceptor class Current; typedef Current *Current_ptr; - struct tao_Current_life; typedef TAO_Objref_Var_T< - Current, - tao_Current_life + Current > Current_var; typedef TAO_Objref_Out_T< - Current, - tao_Current_life + Current > Current_out; - struct TAO_Export tao_Current_life - { - static Current_ptr tao_duplicate (Current_ptr); - static void tao_release (Current_ptr); - static Current_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Current_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_Current_cast - { - static Current_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -496,42 +450,19 @@ TAO_NAMESPACE PortableInterceptor class RequestInfo; typedef RequestInfo *RequestInfo_ptr; - struct tao_RequestInfo_life; typedef TAO_Objref_Var_T< - RequestInfo, - tao_RequestInfo_life + RequestInfo > RequestInfo_var; typedef TAO_Objref_Out_T< - RequestInfo, - tao_RequestInfo_life + RequestInfo > RequestInfo_out; - struct TAO_Export tao_RequestInfo_life - { - static RequestInfo_ptr tao_duplicate (RequestInfo_ptr); - static void tao_release (RequestInfo_ptr); - static RequestInfo_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - RequestInfo_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_RequestInfo_cast - { - static RequestInfo_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -744,42 +675,19 @@ TAO_NAMESPACE PortableInterceptor class ClientRequestInfo; typedef ClientRequestInfo *ClientRequestInfo_ptr; - struct tao_ClientRequestInfo_life; typedef TAO_Objref_Var_T< - ClientRequestInfo, - tao_ClientRequestInfo_life + ClientRequestInfo > ClientRequestInfo_var; typedef TAO_Objref_Out_T< - ClientRequestInfo, - tao_ClientRequestInfo_life + ClientRequestInfo > ClientRequestInfo_out; - struct TAO_Export tao_ClientRequestInfo_life - { - static ClientRequestInfo_ptr tao_duplicate (ClientRequestInfo_ptr); - static void tao_release (ClientRequestInfo_ptr); - static ClientRequestInfo_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ClientRequestInfo_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ClientRequestInfo_cast - { - static ClientRequestInfo_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -943,42 +851,19 @@ TAO_NAMESPACE PortableInterceptor class ServerRequestInfo; typedef ServerRequestInfo *ServerRequestInfo_ptr; - struct tao_ServerRequestInfo_life; typedef TAO_Objref_Var_T< - ServerRequestInfo, - tao_ServerRequestInfo_life + ServerRequestInfo > ServerRequestInfo_var; typedef TAO_Objref_Out_T< - ServerRequestInfo, - tao_ServerRequestInfo_life + ServerRequestInfo > ServerRequestInfo_out; - struct TAO_Export tao_ServerRequestInfo_life - { - static ServerRequestInfo_ptr tao_duplicate (ServerRequestInfo_ptr); - static void tao_release (ServerRequestInfo_ptr); - static ServerRequestInfo_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServerRequestInfo_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ServerRequestInfo_cast - { - static ServerRequestInfo_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -1164,42 +1049,19 @@ TAO_NAMESPACE PortableInterceptor class ClientRequestInterceptor; typedef ClientRequestInterceptor *ClientRequestInterceptor_ptr; - struct tao_ClientRequestInterceptor_life; typedef TAO_Objref_Var_T< - ClientRequestInterceptor, - tao_ClientRequestInterceptor_life + ClientRequestInterceptor > ClientRequestInterceptor_var; typedef TAO_Objref_Out_T< - ClientRequestInterceptor, - tao_ClientRequestInterceptor_life + ClientRequestInterceptor > ClientRequestInterceptor_out; - struct TAO_Export tao_ClientRequestInterceptor_life - { - static ClientRequestInterceptor_ptr tao_duplicate (ClientRequestInterceptor_ptr); - static void tao_release (ClientRequestInterceptor_ptr); - static ClientRequestInterceptor_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ClientRequestInterceptor_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ClientRequestInterceptor_cast - { - static ClientRequestInterceptor_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -1326,42 +1188,19 @@ TAO_NAMESPACE PortableInterceptor class ServerRequestInterceptor; typedef ServerRequestInterceptor *ServerRequestInterceptor_ptr; - struct tao_ServerRequestInterceptor_life; typedef TAO_Objref_Var_T< - ServerRequestInterceptor, - tao_ServerRequestInterceptor_life + ServerRequestInterceptor > ServerRequestInterceptor_var; typedef TAO_Objref_Out_T< - ServerRequestInterceptor, - tao_ServerRequestInterceptor_life + ServerRequestInterceptor > ServerRequestInterceptor_out; - struct TAO_Export tao_ServerRequestInterceptor_life - { - static ServerRequestInterceptor_ptr tao_duplicate (ServerRequestInterceptor_ptr); - static void tao_release (ServerRequestInterceptor_ptr); - static ServerRequestInterceptor_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServerRequestInterceptor_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ServerRequestInterceptor_cast - { - static ServerRequestInterceptor_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -1489,42 +1328,19 @@ TAO_NAMESPACE PortableInterceptor class PolicyFactory; typedef PolicyFactory *PolicyFactory_ptr; - struct tao_PolicyFactory_life; typedef TAO_Objref_Var_T< - PolicyFactory, - tao_PolicyFactory_life + PolicyFactory > PolicyFactory_var; typedef TAO_Objref_Out_T< - PolicyFactory, - tao_PolicyFactory_life + PolicyFactory > PolicyFactory_out; - struct TAO_Export tao_PolicyFactory_life - { - static PolicyFactory_ptr tao_duplicate (PolicyFactory_ptr); - static void tao_release (PolicyFactory_ptr); - static PolicyFactory_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - PolicyFactory_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_PolicyFactory_cast - { - static PolicyFactory_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -1623,42 +1439,19 @@ TAO_NAMESPACE PortableInterceptor class ORBInitInfo; typedef ORBInitInfo *ORBInitInfo_ptr; - struct tao_ORBInitInfo_life; typedef TAO_Objref_Var_T< - ORBInitInfo, - tao_ORBInitInfo_life + ORBInitInfo > ORBInitInfo_var; typedef TAO_Objref_Out_T< - ORBInitInfo, - tao_ORBInitInfo_life + ORBInitInfo > ORBInitInfo_out; - struct TAO_Export tao_ORBInitInfo_life - { - static ORBInitInfo_ptr tao_duplicate (ORBInitInfo_ptr); - static void tao_release (ORBInitInfo_ptr); - static ORBInitInfo_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ORBInitInfo_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ORBInitInfo_cast - { - static ORBInitInfo_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -1956,42 +1749,19 @@ TAO_NAMESPACE PortableInterceptor class ORBInitializer; typedef ORBInitializer *ORBInitializer_ptr; - struct tao_ORBInitializer_life; typedef TAO_Objref_Var_T< - ORBInitializer, - tao_ORBInitializer_life + ORBInitializer > ORBInitializer_var; typedef TAO_Objref_Out_T< - ORBInitializer, - tao_ORBInitializer_life + ORBInitializer > ORBInitializer_out; - struct TAO_Export tao_ORBInitializer_life - { - static ORBInitializer_ptr tao_duplicate (ORBInitializer_ptr); - static void tao_release (ORBInitializer_ptr); - static ORBInitializer_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ORBInitializer_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_ORBInitializer_cast - { - static ORBInitializer_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/PortableServer/Default_ORTC.cpp b/TAO/tao/PortableServer/Default_ORTC.cpp index e35b23c75a3..1ffa0bb6ae3 100644 --- a/TAO/tao/PortableServer/Default_ORTC.cpp +++ b/TAO/tao/PortableServer/Default_ORTC.cpp @@ -93,22 +93,6 @@ TAO_NAMESPACE_END // TAO_IDL - Generated from // be/be_visitor_valuetype/valuetype_cs.cpp:94 -void -TAO_Default_ORT::tao_ObjectReferenceTemplate_life::tao_add_ref ( - TAO_Default_ORT::ObjectReferenceTemplate * p - ) -{ - CORBA::add_ref (p); -} - -void -TAO_Default_ORT::tao_ObjectReferenceTemplate_life::tao_remove_ref ( - TAO_Default_ORT::ObjectReferenceTemplate * p - ) -{ - CORBA::remove_ref (p); -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Value_Var_T< diff --git a/TAO/tao/PortableServer/Default_ORTC.h b/TAO/tao/PortableServer/Default_ORTC.h index 3a87cf7e3a5..44283fe536e 100644 --- a/TAO/tao/PortableServer/Default_ORTC.h +++ b/TAO/tao/PortableServer/Default_ORTC.h @@ -80,24 +80,16 @@ TAO_NAMESPACE TAO_Default_ORT typedef TAO_Value_Var_T< - ObjectReferenceTemplate, - tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate > ObjectReferenceTemplate_var; typedef TAO_Value_Out_T< - ObjectReferenceTemplate, - tao_ObjectReferenceTemplate_life + ObjectReferenceTemplate > ObjectReferenceTemplate_out; - struct TAO_PortableServer_Export tao_ObjectReferenceTemplate_life - { - static void tao_add_ref (ObjectReferenceTemplate *); - static void tao_remove_ref (ObjectReferenceTemplate *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/PortableServer/ImR_LocatorC.cpp b/TAO/tao/PortableServer/ImR_LocatorC.cpp index ffb1cab1228..41a891f588e 100644 --- a/TAO/tao/PortableServer/ImR_LocatorC.cpp +++ b/TAO/tao/PortableServer/ImR_LocatorC.cpp @@ -54,58 +54,6 @@ int ImplementationRepository::Locator::_tao_class_id = 0; -ImplementationRepository::Locator_ptr -ImplementationRepository::tao_Locator_life::tao_duplicate ( - Locator_ptr p - ) -{ - return Locator::_duplicate (p); -} - -void -ImplementationRepository::tao_Locator_life::tao_release ( - Locator_ptr p - ) -{ - CORBA::release (p); -} - -ImplementationRepository::Locator_ptr -ImplementationRepository::tao_Locator_life::tao_nil ( - void - ) -{ - return Locator::_nil (); -} - -CORBA::Boolean -ImplementationRepository::tao_Locator_life::tao_marshal ( - Locator_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -ImplementationRepository::Locator_ptr -ImplementationRepository::tao_Locator_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return Locator::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -ImplementationRepository::tao_Locator_cast::tao_upcast ( - void *src - ) -{ - Locator **tmp = - ACE_static_cast (Locator **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/PortableServer/ImR_LocatorC.h b/TAO/tao/PortableServer/ImR_LocatorC.h index 1f3cf853abb..0cb6815d334 100644 --- a/TAO/tao/PortableServer/ImR_LocatorC.h +++ b/TAO/tao/PortableServer/ImR_LocatorC.h @@ -79,42 +79,19 @@ TAO_NAMESPACE ImplementationRepository class Locator; typedef Locator *Locator_ptr; - struct tao_Locator_life; typedef TAO_Objref_Var_T< - Locator, - tao_Locator_life + Locator > Locator_var; typedef TAO_Objref_Out_T< - Locator, - tao_Locator_life + Locator > Locator_out; - struct TAO_PortableServer_Export tao_Locator_life - { - static Locator_ptr tao_duplicate (Locator_ptr); - static void tao_release (Locator_ptr); - static Locator_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Locator_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_Locator_cast - { - static Locator_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/PortableServer/ImplRepoC.cpp b/TAO/tao/PortableServer/ImplRepoC.cpp index 40e50776681..a04b8094ca6 100644 --- a/TAO/tao/PortableServer/ImplRepoC.cpp +++ b/TAO/tao/PortableServer/ImplRepoC.cpp @@ -54,58 +54,6 @@ int ImplementationRepository::ServerObject::_tao_class_id = 0; -ImplementationRepository::ServerObject_ptr -ImplementationRepository::tao_ServerObject_life::tao_duplicate ( - ServerObject_ptr p - ) -{ - return ServerObject::_duplicate (p); -} - -void -ImplementationRepository::tao_ServerObject_life::tao_release ( - ServerObject_ptr p - ) -{ - CORBA::release (p); -} - -ImplementationRepository::ServerObject_ptr -ImplementationRepository::tao_ServerObject_life::tao_nil ( - void - ) -{ - return ServerObject::_nil (); -} - -CORBA::Boolean -ImplementationRepository::tao_ServerObject_life::tao_marshal ( - ServerObject_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -ImplementationRepository::ServerObject_ptr -ImplementationRepository::tao_ServerObject_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ServerObject::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -ImplementationRepository::tao_ServerObject_cast::tao_upcast ( - void *src - ) -{ - ServerObject **tmp = - ACE_static_cast (ServerObject **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2814,58 +2762,6 @@ TAO_NAMESPACE_END int ImplementationRepository::Administration::_tao_class_id = 0; -ImplementationRepository::Administration_ptr -ImplementationRepository::tao_Administration_life::tao_duplicate ( - Administration_ptr p - ) -{ - return Administration::_duplicate (p); -} - -void -ImplementationRepository::tao_Administration_life::tao_release ( - Administration_ptr p - ) -{ - CORBA::release (p); -} - -ImplementationRepository::Administration_ptr -ImplementationRepository::tao_Administration_life::tao_nil ( - void - ) -{ - return Administration::_nil (); -} - -CORBA::Boolean -ImplementationRepository::tao_Administration_life::tao_marshal ( - Administration_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -ImplementationRepository::Administration_ptr -ImplementationRepository::tao_Administration_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return Administration::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -ImplementationRepository::tao_Administration_cast::tao_upcast ( - void *src - ) -{ - Administration **tmp = - ACE_static_cast (Administration **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -6751,58 +6647,6 @@ TAO_NAMESPACE_END int ImplementationRepository::ServerInformationIterator::_tao_class_id = 0; -ImplementationRepository::ServerInformationIterator_ptr -ImplementationRepository::tao_ServerInformationIterator_life::tao_duplicate ( - ServerInformationIterator_ptr p - ) -{ - return ServerInformationIterator::_duplicate (p); -} - -void -ImplementationRepository::tao_ServerInformationIterator_life::tao_release ( - ServerInformationIterator_ptr p - ) -{ - CORBA::release (p); -} - -ImplementationRepository::ServerInformationIterator_ptr -ImplementationRepository::tao_ServerInformationIterator_life::tao_nil ( - void - ) -{ - return ServerInformationIterator::_nil (); -} - -CORBA::Boolean -ImplementationRepository::tao_ServerInformationIterator_life::tao_marshal ( - ServerInformationIterator_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -ImplementationRepository::ServerInformationIterator_ptr -ImplementationRepository::tao_ServerInformationIterator_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return ServerInformationIterator::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -ImplementationRepository::tao_ServerInformationIterator_cast::tao_upcast ( - void *src - ) -{ - ServerInformationIterator **tmp = - ACE_static_cast (ServerInformationIterator **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/PortableServer/ImplRepoC.h b/TAO/tao/PortableServer/ImplRepoC.h index 69bac16f8d1..09a338a0c1e 100644 --- a/TAO/tao/PortableServer/ImplRepoC.h +++ b/TAO/tao/PortableServer/ImplRepoC.h @@ -83,42 +83,19 @@ TAO_NAMESPACE ImplementationRepository class ServerObject; typedef ServerObject *ServerObject_ptr; - struct tao_ServerObject_life; typedef TAO_Objref_Var_T< - ServerObject, - tao_ServerObject_life + ServerObject > ServerObject_var; typedef TAO_Objref_Out_T< - ServerObject, - tao_ServerObject_life + ServerObject > ServerObject_out; - struct TAO_PortableServer_Export tao_ServerObject_life - { - static ServerObject_ptr tao_duplicate (ServerObject_ptr); - static void tao_release (ServerObject_ptr); - static ServerObject_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServerObject_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServerObject_cast - { - static ServerObject_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -792,42 +769,19 @@ TAO_NAMESPACE ImplementationRepository class ServerInformationIterator; typedef ServerInformationIterator *ServerInformationIterator_ptr; - struct tao_ServerInformationIterator_life; typedef TAO_Objref_Var_T< - ServerInformationIterator, - tao_ServerInformationIterator_life + ServerInformationIterator > ServerInformationIterator_var; typedef TAO_Objref_Out_T< - ServerInformationIterator, - tao_ServerInformationIterator_life + ServerInformationIterator > ServerInformationIterator_out; - struct TAO_PortableServer_Export tao_ServerInformationIterator_life - { - static ServerInformationIterator_ptr tao_duplicate (ServerInformationIterator_ptr); - static void tao_release (ServerInformationIterator_ptr); - static ServerInformationIterator_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServerInformationIterator_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServerInformationIterator_cast - { - static ServerInformationIterator_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from @@ -838,42 +792,19 @@ TAO_NAMESPACE ImplementationRepository class Administration; typedef Administration *Administration_ptr; - struct tao_Administration_life; typedef TAO_Objref_Var_T< - Administration, - tao_Administration_life + Administration > Administration_var; typedef TAO_Objref_Out_T< - Administration, - tao_Administration_life + Administration > Administration_out; - struct TAO_PortableServer_Export tao_Administration_life - { - static Administration_ptr tao_duplicate (Administration_ptr); - static void tao_release (Administration_ptr); - static Administration_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Administration_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_Administration_cast - { - static Administration_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/PortableServer/PortableServerC.cpp b/TAO/tao/PortableServer/PortableServerC.cpp index 5c625c2ca39..db11d3a4fe8 100644 --- a/TAO/tao/PortableServer/PortableServerC.cpp +++ b/TAO/tao/PortableServer/PortableServerC.cpp @@ -77,9 +77,7 @@ PortableServer::POAList::POAList (void) PortableServer::POAList::POAList (CORBA::ULong max) : TAO_Unbounded_Object_Sequence< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life, - PortableServer::tao_POA_cast + PortableServer::POA_var > (max) {} @@ -92,9 +90,7 @@ PortableServer::POAList::POAList ( ) : TAO_Unbounded_Object_Sequence< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life, - PortableServer::tao_POA_cast + PortableServer::POA_var > (max, length, buffer, release) {} @@ -102,9 +98,7 @@ PortableServer::POAList::POAList ( PortableServer::POAList::POAList (const POAList &seq) : TAO_Unbounded_Object_Sequence< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life, - PortableServer::tao_POA_cast + PortableServer::POA_var > (seq) {} @@ -125,8 +119,7 @@ template class PortableServer::POAList, TAO_Object_Manager< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life + PortableServer::POA_var > >; @@ -875,58 +868,6 @@ TAO_NAMESPACE_END int PortableServer::ThreadPolicy::_tao_class_id = 0; -PortableServer::ThreadPolicy_ptr -PortableServer::tao_ThreadPolicy_life::tao_duplicate ( - PortableServer::ThreadPolicy_ptr p - ) -{ - return PortableServer::ThreadPolicy::_duplicate (p); -} - -void -PortableServer::tao_ThreadPolicy_life::tao_release ( - PortableServer::ThreadPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ThreadPolicy_ptr -PortableServer::tao_ThreadPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::ThreadPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ThreadPolicy_life::tao_marshal ( - PortableServer::ThreadPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ThreadPolicy_ptr -PortableServer::tao_ThreadPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ThreadPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ThreadPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ThreadPolicy **tmp = - ACE_static_cast (PortableServer::ThreadPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1169,58 +1110,6 @@ TAO_NAMESPACE_END int PortableServer::LifespanPolicy::_tao_class_id = 0; -PortableServer::LifespanPolicy_ptr -PortableServer::tao_LifespanPolicy_life::tao_duplicate ( - PortableServer::LifespanPolicy_ptr p - ) -{ - return PortableServer::LifespanPolicy::_duplicate (p); -} - -void -PortableServer::tao_LifespanPolicy_life::tao_release ( - PortableServer::LifespanPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::LifespanPolicy_ptr -PortableServer::tao_LifespanPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::LifespanPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_LifespanPolicy_life::tao_marshal ( - PortableServer::LifespanPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::LifespanPolicy_ptr -PortableServer::tao_LifespanPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::LifespanPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_LifespanPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::LifespanPolicy **tmp = - ACE_static_cast (PortableServer::LifespanPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1464,58 +1353,6 @@ TAO_NAMESPACE_END int PortableServer::IdUniquenessPolicy::_tao_class_id = 0; -PortableServer::IdUniquenessPolicy_ptr -PortableServer::tao_IdUniquenessPolicy_life::tao_duplicate ( - PortableServer::IdUniquenessPolicy_ptr p - ) -{ - return PortableServer::IdUniquenessPolicy::_duplicate (p); -} - -void -PortableServer::tao_IdUniquenessPolicy_life::tao_release ( - PortableServer::IdUniquenessPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::IdUniquenessPolicy_ptr -PortableServer::tao_IdUniquenessPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::IdUniquenessPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_IdUniquenessPolicy_life::tao_marshal ( - PortableServer::IdUniquenessPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::IdUniquenessPolicy_ptr -PortableServer::tao_IdUniquenessPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::IdUniquenessPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_IdUniquenessPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::IdUniquenessPolicy **tmp = - ACE_static_cast (PortableServer::IdUniquenessPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -1760,58 +1597,6 @@ TAO_NAMESPACE_END int PortableServer::IdAssignmentPolicy::_tao_class_id = 0; -PortableServer::IdAssignmentPolicy_ptr -PortableServer::tao_IdAssignmentPolicy_life::tao_duplicate ( - PortableServer::IdAssignmentPolicy_ptr p - ) -{ - return PortableServer::IdAssignmentPolicy::_duplicate (p); -} - -void -PortableServer::tao_IdAssignmentPolicy_life::tao_release ( - PortableServer::IdAssignmentPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::IdAssignmentPolicy_ptr -PortableServer::tao_IdAssignmentPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::IdAssignmentPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_IdAssignmentPolicy_life::tao_marshal ( - PortableServer::IdAssignmentPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::IdAssignmentPolicy_ptr -PortableServer::tao_IdAssignmentPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::IdAssignmentPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_IdAssignmentPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::IdAssignmentPolicy **tmp = - ACE_static_cast (PortableServer::IdAssignmentPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2068,58 +1853,6 @@ TAO_NAMESPACE_END int PortableServer::ImplicitActivationPolicy::_tao_class_id = 0; -PortableServer::ImplicitActivationPolicy_ptr -PortableServer::tao_ImplicitActivationPolicy_life::tao_duplicate ( - PortableServer::ImplicitActivationPolicy_ptr p - ) -{ - return PortableServer::ImplicitActivationPolicy::_duplicate (p); -} - -void -PortableServer::tao_ImplicitActivationPolicy_life::tao_release ( - PortableServer::ImplicitActivationPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ImplicitActivationPolicy_ptr -PortableServer::tao_ImplicitActivationPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::ImplicitActivationPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ImplicitActivationPolicy_life::tao_marshal ( - PortableServer::ImplicitActivationPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ImplicitActivationPolicy_ptr -PortableServer::tao_ImplicitActivationPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ImplicitActivationPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ImplicitActivationPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ImplicitActivationPolicy **tmp = - ACE_static_cast (PortableServer::ImplicitActivationPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2369,58 +2102,6 @@ TAO_NAMESPACE_END int PortableServer::ServantRetentionPolicy::_tao_class_id = 0; -PortableServer::ServantRetentionPolicy_ptr -PortableServer::tao_ServantRetentionPolicy_life::tao_duplicate ( - PortableServer::ServantRetentionPolicy_ptr p - ) -{ - return PortableServer::ServantRetentionPolicy::_duplicate (p); -} - -void -PortableServer::tao_ServantRetentionPolicy_life::tao_release ( - PortableServer::ServantRetentionPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ServantRetentionPolicy_ptr -PortableServer::tao_ServantRetentionPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::ServantRetentionPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ServantRetentionPolicy_life::tao_marshal ( - PortableServer::ServantRetentionPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ServantRetentionPolicy_ptr -PortableServer::tao_ServantRetentionPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ServantRetentionPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ServantRetentionPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ServantRetentionPolicy **tmp = - ACE_static_cast (PortableServer::ServantRetentionPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2683,58 +2364,6 @@ TAO_NAMESPACE_END int PortableServer::RequestProcessingPolicy::_tao_class_id = 0; -PortableServer::RequestProcessingPolicy_ptr -PortableServer::tao_RequestProcessingPolicy_life::tao_duplicate ( - PortableServer::RequestProcessingPolicy_ptr p - ) -{ - return PortableServer::RequestProcessingPolicy::_duplicate (p); -} - -void -PortableServer::tao_RequestProcessingPolicy_life::tao_release ( - PortableServer::RequestProcessingPolicy_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::RequestProcessingPolicy_ptr -PortableServer::tao_RequestProcessingPolicy_life::tao_nil ( - void - ) -{ - return PortableServer::RequestProcessingPolicy::_nil (); -} - -CORBA::Boolean -PortableServer::tao_RequestProcessingPolicy_life::tao_marshal ( - PortableServer::RequestProcessingPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::RequestProcessingPolicy_ptr -PortableServer::tao_RequestProcessingPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::RequestProcessingPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_RequestProcessingPolicy_cast::tao_upcast ( - void *src - ) -{ - PortableServer::RequestProcessingPolicy **tmp = - ACE_static_cast (PortableServer::RequestProcessingPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -2928,58 +2557,6 @@ TAO_NAMESPACE_END int PortableServer::POAManager::_tao_class_id = 0; -PortableServer::POAManager_ptr -PortableServer::tao_POAManager_life::tao_duplicate ( - PortableServer::POAManager_ptr p - ) -{ - return PortableServer::POAManager::_duplicate (p); -} - -void -PortableServer::tao_POAManager_life::tao_release ( - PortableServer::POAManager_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::POAManager_ptr -PortableServer::tao_POAManager_life::tao_nil ( - void - ) -{ - return PortableServer::POAManager::_nil (); -} - -CORBA::Boolean -PortableServer::tao_POAManager_life::tao_marshal ( - PortableServer::POAManager_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::POAManager_ptr -PortableServer::tao_POAManager_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::POAManager::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_POAManager_cast::tao_upcast ( - void *src - ) -{ - PortableServer::POAManager **tmp = - ACE_static_cast (PortableServer::POAManager **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -3302,58 +2879,6 @@ TAO_NAMESPACE_END int PortableServer::AdapterActivator::_tao_class_id = 0; -PortableServer::AdapterActivator_ptr -PortableServer::tao_AdapterActivator_life::tao_duplicate ( - PortableServer::AdapterActivator_ptr p - ) -{ - return PortableServer::AdapterActivator::_duplicate (p); -} - -void -PortableServer::tao_AdapterActivator_life::tao_release ( - PortableServer::AdapterActivator_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::AdapterActivator_ptr -PortableServer::tao_AdapterActivator_life::tao_nil ( - void - ) -{ - return PortableServer::AdapterActivator::_nil (); -} - -CORBA::Boolean -PortableServer::tao_AdapterActivator_life::tao_marshal ( - PortableServer::AdapterActivator_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::AdapterActivator_ptr -PortableServer::tao_AdapterActivator_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::AdapterActivator::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_AdapterActivator_cast::tao_upcast ( - void *src - ) -{ - PortableServer::AdapterActivator **tmp = - ACE_static_cast (PortableServer::AdapterActivator **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -3528,58 +3053,6 @@ TAO_NAMESPACE_END int PortableServer::ServantManager::_tao_class_id = 0; -PortableServer::ServantManager_ptr -PortableServer::tao_ServantManager_life::tao_duplicate ( - PortableServer::ServantManager_ptr p - ) -{ - return PortableServer::ServantManager::_duplicate (p); -} - -void -PortableServer::tao_ServantManager_life::tao_release ( - PortableServer::ServantManager_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ServantManager_ptr -PortableServer::tao_ServantManager_life::tao_nil ( - void - ) -{ - return PortableServer::ServantManager::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ServantManager_life::tao_marshal ( - PortableServer::ServantManager_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ServantManager_ptr -PortableServer::tao_ServantManager_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ServantManager::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ServantManager_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ServantManager **tmp = - ACE_static_cast (PortableServer::ServantManager **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -3753,58 +3226,6 @@ TAO_NAMESPACE_END int PortableServer::ServantActivator::_tao_class_id = 0; -PortableServer::ServantActivator_ptr -PortableServer::tao_ServantActivator_life::tao_duplicate ( - PortableServer::ServantActivator_ptr p - ) -{ - return PortableServer::ServantActivator::_duplicate (p); -} - -void -PortableServer::tao_ServantActivator_life::tao_release ( - PortableServer::ServantActivator_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ServantActivator_ptr -PortableServer::tao_ServantActivator_life::tao_nil ( - void - ) -{ - return PortableServer::ServantActivator::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ServantActivator_life::tao_marshal ( - PortableServer::ServantActivator_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ServantActivator_ptr -PortableServer::tao_ServantActivator_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ServantActivator::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ServantActivator_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ServantActivator **tmp = - ACE_static_cast (PortableServer::ServantActivator **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -3993,58 +3414,6 @@ TAO_NAMESPACE_END int PortableServer::ServantLocator::_tao_class_id = 0; -PortableServer::ServantLocator_ptr -PortableServer::tao_ServantLocator_life::tao_duplicate ( - PortableServer::ServantLocator_ptr p - ) -{ - return PortableServer::ServantLocator::_duplicate (p); -} - -void -PortableServer::tao_ServantLocator_life::tao_release ( - PortableServer::ServantLocator_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::ServantLocator_ptr -PortableServer::tao_ServantLocator_life::tao_nil ( - void - ) -{ - return PortableServer::ServantLocator::_nil (); -} - -CORBA::Boolean -PortableServer::tao_ServantLocator_life::tao_marshal ( - PortableServer::ServantLocator_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::ServantLocator_ptr -PortableServer::tao_ServantLocator_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::ServantLocator::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_ServantLocator_cast::tao_upcast ( - void *src - ) -{ - PortableServer::ServantLocator **tmp = - ACE_static_cast (PortableServer::ServantLocator **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -4234,58 +3603,6 @@ TAO_NAMESPACE_END int PortableServer::POA::_tao_class_id = 0; -PortableServer::POA_ptr -PortableServer::tao_POA_life::tao_duplicate ( - PortableServer::POA_ptr p - ) -{ - return PortableServer::POA::_duplicate (p); -} - -void -PortableServer::tao_POA_life::tao_release ( - PortableServer::POA_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::POA_ptr -PortableServer::tao_POA_life::tao_nil ( - void - ) -{ - return PortableServer::POA::_nil (); -} - -CORBA::Boolean -PortableServer::tao_POA_life::tao_marshal ( - PortableServer::POA_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::POA_ptr -PortableServer::tao_POA_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::POA::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_POA_cast::tao_upcast ( - void *src - ) -{ - PortableServer::POA **tmp = - ACE_static_cast (PortableServer::POA **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< @@ -5825,58 +5142,6 @@ TAO_NAMESPACE_END int PortableServer::Current::_tao_class_id = 0; -PortableServer::Current_ptr -PortableServer::tao_Current_life::tao_duplicate ( - PortableServer::Current_ptr p - ) -{ - return PortableServer::Current::_duplicate (p); -} - -void -PortableServer::tao_Current_life::tao_release ( - PortableServer::Current_ptr p - ) -{ - CORBA::release (p); -} - -PortableServer::Current_ptr -PortableServer::tao_Current_life::tao_nil ( - void - ) -{ - return PortableServer::Current::_nil (); -} - -CORBA::Boolean -PortableServer::tao_Current_life::tao_marshal ( - PortableServer::Current_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -PortableServer::Current_ptr -PortableServer::tao_Current_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return PortableServer::Current::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -PortableServer::tao_Current_cast::tao_upcast ( - void *src - ) -{ - PortableServer::Current **tmp = - ACE_static_cast (PortableServer::Current **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/PortableServer/PortableServerC.h b/TAO/tao/PortableServer/PortableServerC.h index bc7ddfe2bbb..68bdd00e635 100644 --- a/TAO/tao/PortableServer/PortableServerC.h +++ b/TAO/tao/PortableServer/PortableServerC.h @@ -90,29 +90,8 @@ TAO_NAMESPACE PortableServer class POA; typedef POA *POA_ptr; - struct tao_POA_life; - typedef TAO_Objref_Var_T<POA, tao_POA_life> POA_var; - typedef TAO_Objref_Out_T<POA, tao_POA_life> POA_out; - - struct TAO_PortableServer_Export tao_POA_life - { - static POA_ptr tao_duplicate (POA_ptr); - static void tao_release (POA_ptr); - static POA_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - POA_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_POA_cast - { - static POA_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<POA> POA_var; + typedef TAO_Objref_Out_T<POA> POA_out; #endif /* end #if !defined */ @@ -126,8 +105,7 @@ TAO_NAMESPACE PortableServer POAList, TAO_Object_Manager< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life + PortableServer::POA_var > > POAList_var; @@ -138,8 +116,7 @@ TAO_NAMESPACE PortableServer POAList_var, TAO_Object_Manager< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life + PortableServer::POA_var > > POAList_out; @@ -148,9 +125,7 @@ TAO_NAMESPACE PortableServer : public TAO_Unbounded_Object_Sequence< PortableServer::POA, - PortableServer::POA_var, - PortableServer::tao_POA_life, - PortableServer::tao_POA_cast + PortableServer::POA_var > { public: @@ -408,29 +383,8 @@ TAO_NAMESPACE PortableServer class ThreadPolicy; typedef ThreadPolicy *ThreadPolicy_ptr; - struct tao_ThreadPolicy_life; - typedef TAO_Objref_Var_T<ThreadPolicy, tao_ThreadPolicy_life> ThreadPolicy_var; - typedef TAO_Objref_Out_T<ThreadPolicy, tao_ThreadPolicy_life> ThreadPolicy_out; - - struct TAO_PortableServer_Export tao_ThreadPolicy_life - { - static ThreadPolicy_ptr tao_duplicate (ThreadPolicy_ptr); - static void tao_release (ThreadPolicy_ptr); - static ThreadPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ThreadPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ThreadPolicy_cast - { - static ThreadPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ThreadPolicy> ThreadPolicy_var; + typedef TAO_Objref_Out_T<ThreadPolicy> ThreadPolicy_out; #endif /* end #if !defined */ @@ -528,29 +482,8 @@ TAO_NAMESPACE PortableServer class LifespanPolicy; typedef LifespanPolicy *LifespanPolicy_ptr; - struct tao_LifespanPolicy_life; - typedef TAO_Objref_Var_T<LifespanPolicy, tao_LifespanPolicy_life> LifespanPolicy_var; - typedef TAO_Objref_Out_T<LifespanPolicy, tao_LifespanPolicy_life> LifespanPolicy_out; - - struct TAO_PortableServer_Export tao_LifespanPolicy_life - { - static LifespanPolicy_ptr tao_duplicate (LifespanPolicy_ptr); - static void tao_release (LifespanPolicy_ptr); - static LifespanPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - LifespanPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_LifespanPolicy_cast - { - static LifespanPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<LifespanPolicy> LifespanPolicy_var; + typedef TAO_Objref_Out_T<LifespanPolicy> LifespanPolicy_out; #endif /* end #if !defined */ @@ -646,29 +579,8 @@ TAO_NAMESPACE PortableServer class IdUniquenessPolicy; typedef IdUniquenessPolicy *IdUniquenessPolicy_ptr; - struct tao_IdUniquenessPolicy_life; - typedef TAO_Objref_Var_T<IdUniquenessPolicy, tao_IdUniquenessPolicy_life> IdUniquenessPolicy_var; - typedef TAO_Objref_Out_T<IdUniquenessPolicy, tao_IdUniquenessPolicy_life> IdUniquenessPolicy_out; - - struct TAO_PortableServer_Export tao_IdUniquenessPolicy_life - { - static IdUniquenessPolicy_ptr tao_duplicate (IdUniquenessPolicy_ptr); - static void tao_release (IdUniquenessPolicy_ptr); - static IdUniquenessPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - IdUniquenessPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_IdUniquenessPolicy_cast - { - static IdUniquenessPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<IdUniquenessPolicy> IdUniquenessPolicy_var; + typedef TAO_Objref_Out_T<IdUniquenessPolicy> IdUniquenessPolicy_out; #endif /* end #if !defined */ @@ -764,29 +676,8 @@ TAO_NAMESPACE PortableServer class IdAssignmentPolicy; typedef IdAssignmentPolicy *IdAssignmentPolicy_ptr; - struct tao_IdAssignmentPolicy_life; - typedef TAO_Objref_Var_T<IdAssignmentPolicy, tao_IdAssignmentPolicy_life> IdAssignmentPolicy_var; - typedef TAO_Objref_Out_T<IdAssignmentPolicy, tao_IdAssignmentPolicy_life> IdAssignmentPolicy_out; - - struct TAO_PortableServer_Export tao_IdAssignmentPolicy_life - { - static IdAssignmentPolicy_ptr tao_duplicate (IdAssignmentPolicy_ptr); - static void tao_release (IdAssignmentPolicy_ptr); - static IdAssignmentPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - IdAssignmentPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_IdAssignmentPolicy_cast - { - static IdAssignmentPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<IdAssignmentPolicy> IdAssignmentPolicy_var; + typedef TAO_Objref_Out_T<IdAssignmentPolicy> IdAssignmentPolicy_out; #endif /* end #if !defined */ @@ -884,29 +775,8 @@ TAO_NAMESPACE PortableServer class ImplicitActivationPolicy; typedef ImplicitActivationPolicy *ImplicitActivationPolicy_ptr; - struct tao_ImplicitActivationPolicy_life; - typedef TAO_Objref_Var_T<ImplicitActivationPolicy, tao_ImplicitActivationPolicy_life> ImplicitActivationPolicy_var; - typedef TAO_Objref_Out_T<ImplicitActivationPolicy, tao_ImplicitActivationPolicy_life> ImplicitActivationPolicy_out; - - struct TAO_PortableServer_Export tao_ImplicitActivationPolicy_life - { - static ImplicitActivationPolicy_ptr tao_duplicate (ImplicitActivationPolicy_ptr); - static void tao_release (ImplicitActivationPolicy_ptr); - static ImplicitActivationPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ImplicitActivationPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ImplicitActivationPolicy_cast - { - static ImplicitActivationPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ImplicitActivationPolicy> ImplicitActivationPolicy_var; + typedef TAO_Objref_Out_T<ImplicitActivationPolicy> ImplicitActivationPolicy_out; #endif /* end #if !defined */ @@ -1006,29 +876,8 @@ TAO_NAMESPACE PortableServer class ServantRetentionPolicy; typedef ServantRetentionPolicy *ServantRetentionPolicy_ptr; - struct tao_ServantRetentionPolicy_life; - typedef TAO_Objref_Var_T<ServantRetentionPolicy, tao_ServantRetentionPolicy_life> ServantRetentionPolicy_var; - typedef TAO_Objref_Out_T<ServantRetentionPolicy, tao_ServantRetentionPolicy_life> ServantRetentionPolicy_out; - - struct TAO_PortableServer_Export tao_ServantRetentionPolicy_life - { - static ServantRetentionPolicy_ptr tao_duplicate (ServantRetentionPolicy_ptr); - static void tao_release (ServantRetentionPolicy_ptr); - static ServantRetentionPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServantRetentionPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServantRetentionPolicy_cast - { - static ServantRetentionPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ServantRetentionPolicy> ServantRetentionPolicy_var; + typedef TAO_Objref_Out_T<ServantRetentionPolicy> ServantRetentionPolicy_out; #endif /* end #if !defined */ @@ -1129,29 +978,8 @@ TAO_NAMESPACE PortableServer class RequestProcessingPolicy; typedef RequestProcessingPolicy *RequestProcessingPolicy_ptr; - struct tao_RequestProcessingPolicy_life; - typedef TAO_Objref_Var_T<RequestProcessingPolicy, tao_RequestProcessingPolicy_life> RequestProcessingPolicy_var; - typedef TAO_Objref_Out_T<RequestProcessingPolicy, tao_RequestProcessingPolicy_life> RequestProcessingPolicy_out; - - struct TAO_PortableServer_Export tao_RequestProcessingPolicy_life - { - static RequestProcessingPolicy_ptr tao_duplicate (RequestProcessingPolicy_ptr); - static void tao_release (RequestProcessingPolicy_ptr); - static RequestProcessingPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - RequestProcessingPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_RequestProcessingPolicy_cast - { - static RequestProcessingPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<RequestProcessingPolicy> RequestProcessingPolicy_var; + typedef TAO_Objref_Out_T<RequestProcessingPolicy> RequestProcessingPolicy_out; #endif /* end #if !defined */ @@ -1233,29 +1061,8 @@ TAO_NAMESPACE PortableServer class POAManager; typedef POAManager *POAManager_ptr; - struct tao_POAManager_life; - typedef TAO_Objref_Var_T<POAManager, tao_POAManager_life> POAManager_var; - typedef TAO_Objref_Out_T<POAManager, tao_POAManager_life> POAManager_out; - - struct TAO_PortableServer_Export tao_POAManager_life - { - static POAManager_ptr tao_duplicate (POAManager_ptr); - static void tao_release (POAManager_ptr); - static POAManager_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - POAManager_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_POAManager_cast - { - static POAManager_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<POAManager> POAManager_var; + typedef TAO_Objref_Out_T<POAManager> POAManager_out; #endif /* end #if !defined */ @@ -1455,29 +1262,8 @@ TAO_NAMESPACE PortableServer class AdapterActivator; typedef AdapterActivator *AdapterActivator_ptr; - struct tao_AdapterActivator_life; - typedef TAO_Objref_Var_T<AdapterActivator, tao_AdapterActivator_life> AdapterActivator_var; - typedef TAO_Objref_Out_T<AdapterActivator, tao_AdapterActivator_life> AdapterActivator_out; - - struct TAO_PortableServer_Export tao_AdapterActivator_life - { - static AdapterActivator_ptr tao_duplicate (AdapterActivator_ptr); - static void tao_release (AdapterActivator_ptr); - static AdapterActivator_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - AdapterActivator_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_AdapterActivator_cast - { - static AdapterActivator_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<AdapterActivator> AdapterActivator_var; + typedef TAO_Objref_Out_T<AdapterActivator> AdapterActivator_out; #endif /* end #if !defined */ @@ -1559,29 +1345,8 @@ TAO_NAMESPACE PortableServer class ServantManager; typedef ServantManager *ServantManager_ptr; - struct tao_ServantManager_life; - typedef TAO_Objref_Var_T<ServantManager, tao_ServantManager_life> ServantManager_var; - typedef TAO_Objref_Out_T<ServantManager, tao_ServantManager_life> ServantManager_out; - - struct TAO_PortableServer_Export tao_ServantManager_life - { - static ServantManager_ptr tao_duplicate (ServantManager_ptr); - static void tao_release (ServantManager_ptr); - static ServantManager_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServantManager_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServantManager_cast - { - static ServantManager_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ServantManager> ServantManager_var; + typedef TAO_Objref_Out_T<ServantManager> ServantManager_out; #endif /* end #if !defined */ @@ -1651,29 +1416,8 @@ TAO_NAMESPACE PortableServer class ServantActivator; typedef ServantActivator *ServantActivator_ptr; - struct tao_ServantActivator_life; - typedef TAO_Objref_Var_T<ServantActivator, tao_ServantActivator_life> ServantActivator_var; - typedef TAO_Objref_Out_T<ServantActivator, tao_ServantActivator_life> ServantActivator_out; - - struct TAO_PortableServer_Export tao_ServantActivator_life - { - static ServantActivator_ptr tao_duplicate (ServantActivator_ptr); - static void tao_release (ServantActivator_ptr); - static ServantActivator_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServantActivator_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServantActivator_cast - { - static ServantActivator_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ServantActivator> ServantActivator_var; + typedef TAO_Objref_Out_T<ServantActivator> ServantActivator_out; #endif /* end #if !defined */ @@ -1777,29 +1521,8 @@ TAO_NAMESPACE PortableServer class ServantLocator; typedef ServantLocator *ServantLocator_ptr; - struct tao_ServantLocator_life; - typedef TAO_Objref_Var_T<ServantLocator, tao_ServantLocator_life> ServantLocator_var; - typedef TAO_Objref_Out_T<ServantLocator, tao_ServantLocator_life> ServantLocator_out; - - struct TAO_PortableServer_Export tao_ServantLocator_life - { - static ServantLocator_ptr tao_duplicate (ServantLocator_ptr); - static void tao_release (ServantLocator_ptr); - static ServantLocator_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - ServantLocator_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_ServantLocator_cast - { - static ServantLocator_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<ServantLocator> ServantLocator_var; + typedef TAO_Objref_Out_T<ServantLocator> ServantLocator_out; #endif /* end #if !defined */ @@ -2910,29 +2633,8 @@ TAO_NAMESPACE PortableServer class Current; typedef Current *Current_ptr; - struct tao_Current_life; - typedef TAO_Objref_Var_T<Current, tao_Current_life> Current_var; - typedef TAO_Objref_Out_T<Current, tao_Current_life> Current_out; - - struct TAO_PortableServer_Export tao_Current_life - { - static Current_ptr tao_duplicate (Current_ptr); - static void tao_release (Current_ptr); - static Current_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - Current_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_PortableServer_Export tao_Current_cast - { - static Current_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; + typedef TAO_Objref_Var_T<Current> Current_var; + typedef TAO_Objref_Out_T<Current> Current_out; #endif /* end #if !defined */ diff --git a/TAO/tao/Sequence_T.cpp b/TAO/tao/Sequence_T.cpp index 261fd3c6d3c..3d1a70f2a24 100644 --- a/TAO/tao/Sequence_T.cpp +++ b/TAO/tao/Sequence_T.cpp @@ -388,10 +388,10 @@ TAO_Bounded_Sequence<T,MAX>::replace (CORBA::ULong max, // class TAO_Object_Manager // ************************************************************* -template <typename T, typename T_var, typename T_life> -TAO_Object_Manager<T,T_var,T_life> & -TAO_Object_Manager<T,T_var,T_life>::operator= ( - const TAO_Object_Manager<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Object_Manager<T,T_var> & +TAO_Object_Manager<T,T_var>::operator= ( + const TAO_Object_Manager<T,T_var> & rhs ) { if (this == &rhs) @@ -412,9 +412,9 @@ TAO_Object_Manager<T,T_var,T_life>::operator= ( return *this; } -template <typename T, typename T_var, typename T_life> -TAO_Object_Manager<T,T_var,T_life> & -TAO_Object_Manager<T,T_var,T_life>::operator= (T * p) +template <typename T, typename T_var> +TAO_Object_Manager<T,T_var> & +TAO_Object_Manager<T,T_var>::operator= (T * p) { if (this->release_) { @@ -433,9 +433,9 @@ TAO_Object_Manager<T,T_var,T_life>::operator= (T * p) return *this; } -template <typename T, typename T_var, typename T_life> -TAO_Object_Manager<T,T_var,T_life> & -TAO_Object_Manager<T,T_var,T_life>::operator= (const T_var & p) +template <typename T, typename T_var> +TAO_Object_Manager<T,T_var> & +TAO_Object_Manager<T,T_var>::operator= (const T_var & p) { if (this->release_) { @@ -454,18 +454,18 @@ TAO_Object_Manager<T,T_var,T_life>::operator= (const T_var & p) return *this; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> T *& -TAO_Object_Manager<T,T_var,T_life>::out (void) +TAO_Object_Manager<T,T_var>::out (void) { TAO::Objref_Traits<T>::tao_release (*this->ptr_); *this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> T * -TAO_Object_Manager<T,T_var,T_life>::_retn (void) +TAO_Object_Manager<T,T_var>::_retn (void) { T *temp = *this->ptr_; *this->ptr_ = TAO::Objref_Traits<T>::tao_nil (); @@ -547,29 +547,29 @@ TAO_Pseudo_Object_Manager<T,T_var>::operator= (const T_var & p) // ************************************************************* // constructor for unbounded seq -template <typename T, typename T_var, typename T_life, typename T_cast> -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -TAO_Unbounded_Object_Sequence (CORBA::ULong maximum) +template <typename T, typename T_var> +TAO_Unbounded_Object_Sequence<T,T_var>::TAO_Unbounded_Object_Sequence ( + CORBA::ULong maximum + ) : TAO_Unbounded_Base_Sequence ( maximum, - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( + TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf ( maximum ) ) { } -template <typename T, typename T_var, typename T_life, typename T_cast> -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -TAO_Unbounded_Object_Sequence ( - const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &rhs +template <typename T, typename T_var> +TAO_Unbounded_Object_Sequence<T,T_var>::TAO_Unbounded_Object_Sequence ( + const TAO_Unbounded_Object_Sequence<T,T_var> &rhs ) : TAO_Unbounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( + TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf ( this->maximum_ ); T ** const tmp2 = @@ -588,18 +588,18 @@ TAO_Unbounded_Object_Sequence ( } } -template<typename T, typename T_var, typename T_life, typename T_cast> -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -~TAO_Unbounded_Object_Sequence (void) +template<typename T, typename T_var> +TAO_Unbounded_Object_Sequence<T,T_var>::~TAO_Unbounded_Object_Sequence (void) { this->_deallocate_buffer (); } // Assignment operator. -template <typename T, typename T_var, typename T_life, typename T_cast> -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>& -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -operator= (const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &rhs) +template <typename T, typename T_var> +TAO_Unbounded_Object_Sequence<T,T_var> & +TAO_Unbounded_Object_Sequence<T,T_var>::operator= ( + const TAO_Unbounded_Object_Sequence<T,T_var> &rhs + ) { if (this == &rhs) { @@ -619,9 +619,9 @@ operator= (const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &rhs) if (this->maximum_ < rhs.maximum_) { - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::freebuf (tmp); + TAO_Unbounded_Object_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( + TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf ( rhs.maximum_ ); } @@ -635,7 +635,7 @@ operator= (const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &rhs) else { this->buffer_ = - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( + TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf ( rhs.maximum_ ); } @@ -654,9 +654,9 @@ operator= (const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &rhs) return *this; } -template <typename T, typename T_var, typename T_life, typename T_cast> +template <typename T, typename T_var> T ** -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( +TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf ( CORBA::ULong nelems ) { @@ -673,9 +673,9 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf ( return buf; } -template <typename T, typename T_var, typename T_life, typename T_cast> +template <typename T, typename T_var> void -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::freebuf (T ** buffer) +TAO_Unbounded_Object_Sequence<T,T_var>::freebuf (T ** buffer) { if (buffer == 0) { @@ -697,14 +697,14 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::freebuf (T ** buffer) delete [] buffer; } -template<typename T, typename T_var, typename T_life, typename T_cast> +template<typename T, typename T_var> void -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_allocate_buffer ( +TAO_Unbounded_Object_Sequence<T,T_var>::_allocate_buffer ( CORBA::ULong length ) { T ** tmp = - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::allocbuf (length); + TAO_Unbounded_Object_Sequence<T,T_var>::allocbuf (length); if (this->buffer_ != 0) { @@ -735,9 +735,9 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_allocate_buffer ( this->buffer_ = tmp; } -template<typename T, typename T_var, typename T_life, typename T_cast> +template<typename T, typename T_var> void -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_deallocate_buffer ( +TAO_Unbounded_Object_Sequence<T,T_var>::_deallocate_buffer ( void ) { @@ -755,13 +755,13 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_deallocate_buffer ( tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::freebuf (tmp); + TAO_Unbounded_Object_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = 0; } -template<typename T, typename T_var, typename T_life, typename T_cast> +template<typename T, typename T_var> void -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_shrink_buffer ( +TAO_Unbounded_Object_Sequence<T,T_var>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) @@ -780,35 +780,25 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::_shrink_buffer ( // Operations for class TAO_Bounded_Object_Sequence // ************************************************************* -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>:: -TAO_Bounded_Object_Sequence (void) +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Object_Sequence<T,T_var,MAX>::TAO_Bounded_Object_Sequence (void) : TAO_Bounded_Base_Sequence ( MAX, - TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf (MAX) + TAO_Bounded_Object_Sequence<T,T_var,MAX>::allocbuf (MAX) ) { } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>:: -TAO_Bounded_Object_Sequence ( - const TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Object_Sequence<T,T_var,MAX>::TAO_Bounded_Object_Sequence ( + const TAO_Bounded_Object_Sequence<T,T_var,MAX> & rhs ) : TAO_Bounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf (MAX); + TAO_Bounded_Object_Sequence<T,T_var,MAX>::allocbuf (MAX); T ** const tmp2 = ACE_reinterpret_cast (T** ACE_CAST_CONST, @@ -827,14 +817,10 @@ TAO_Bounded_Object_Sequence ( } } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> -TAO_Bounded_Object_Sequence<T, T_var,T_life,T_cast,MAX> & -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::operator= ( - const TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Object_Sequence<T, T_var,MAX> & +TAO_Bounded_Object_Sequence<T,T_var,MAX>::operator= ( + const TAO_Bounded_Object_Sequence<T,T_var,MAX> & rhs ) { if (this == &rhs) @@ -864,7 +850,7 @@ TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::operator= ( else { this->buffer_ = - TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf ( + TAO_Bounded_Object_Sequence<T,T_var,MAX>::allocbuf ( rhs.maximum_ ); } @@ -885,13 +871,9 @@ TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::operator= ( return *this; } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template <typename T, typename T_var, size_t MAX> T ** -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf ( +TAO_Bounded_Object_Sequence<T,T_var,MAX>::allocbuf ( CORBA::ULong ) { @@ -908,13 +890,9 @@ TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf ( return buf; } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::freebuf (T ** buffer) +TAO_Bounded_Object_Sequence<T,T_var,MAX>::freebuf (T ** buffer) { // How much do we deallocate? Easy! allocbuf() always creates MAX // elements and initialize them to T::_nil(). So we can be @@ -931,29 +909,21 @@ TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::freebuf (T ** buffer) delete [] buffer; } -template<typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template<typename T, typename T_var, size_t MAX> void -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::_allocate_buffer ( +TAO_Bounded_Object_Sequence<T,T_var,MAX>::_allocate_buffer ( CORBA::ULong length ) { // For this class memory is never reallocated so the implementation // is *really* simple. this->buffer_ = - TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::allocbuf (length); + TAO_Bounded_Object_Sequence<T,T_var,MAX>::allocbuf (length); } -template<typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template<typename T, typename T_var, size_t MAX> void -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::_deallocate_buffer ( +TAO_Bounded_Object_Sequence<T,T_var,MAX>::_deallocate_buffer ( void ) { @@ -964,17 +934,13 @@ TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::_deallocate_buffer ( T ** tmp = ACE_reinterpret_cast (T **, this->buffer_); - TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::freebuf (tmp); + TAO_Bounded_Object_Sequence<T,T_var,MAX>::freebuf (tmp); this->buffer_ = 0; } -template<typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template<typename T, typename T_var, size_t MAX> void -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>::_shrink_buffer ( +TAO_Bounded_Object_Sequence<T,T_var,MAX>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) diff --git a/TAO/tao/Sequence_T.h b/TAO/tao/Sequence_T.h index 4d934fe824f..1b293a7cbde 100644 --- a/TAO/tao/Sequence_T.h +++ b/TAO/tao/Sequence_T.h @@ -243,17 +243,10 @@ public: // ************************************************************* -template<typename T, - typename T_var, - typename T_life, - typename T_cast> +template<typename T, typename T_var> class TAO_Unbounded_Object_Sequence; template<class T,class T_var> class TAO_Unbounded_Pseudo_Sequence; -template<typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template<typename T, typename T_var, size_t MAX> class TAO_Bounded_Object_Sequence; template<size_t MAX> class TAO_Bounded_String_Sequence; @@ -281,7 +274,7 @@ template<size_t MAX> class TAO_Bounded_String_Sequence; * says that T_ptr *could* map to a type different to T* in the * particular case of TAO it does map to <T*>. */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Object_Manager { public: @@ -297,7 +290,7 @@ public: * release value on the <rhs>. * + In any case a new reference to the same object is created. */ - TAO_Object_Manager (const TAO_Object_Manager<T,T_var,T_life> & rhs); + TAO_Object_Manager (const TAO_Object_Manager<T,T_var> & rhs); /** * Constructor from address of an element, it should be private and @@ -315,15 +308,15 @@ public: * @@ TODO what happens if rhs.release_ is true an this->relase_ is * false? */ - TAO_Object_Manager<T,T_var,T_life> & operator= ( - const TAO_Object_Manager<T,T_var,T_life> & rhs + TAO_Object_Manager<T,T_var> & operator= ( + const TAO_Object_Manager<T,T_var> & rhs ); /// Assignment from T *. - TAO_Object_Manager<T,T_var,T_life> & operator= (T *); + TAO_Object_Manager<T,T_var> & operator= (T *); /// Assignment from T_life. - TAO_Object_Manager<T,T_var,T_life> & operator= (const T_var &); + TAO_Object_Manager<T,T_var> & operator= (const T_var &); /// Return pointer. T * operator-> (void) const; @@ -453,10 +446,7 @@ private: * class, in charge of handling the object lifetime, examples are * pseudo objects, object references, valuetypes, and strings. */ -template<typename T, - typename T_var, - typename T_life, - typename T_cast> +template<typename T, typename T_var> class TAO_Unbounded_Object_Sequence : public TAO_Unbounded_Base_Sequence { @@ -522,7 +512,7 @@ public: * flag to TRUE. */ TAO_Unbounded_Object_Sequence ( - const TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> & + const TAO_Unbounded_Object_Sequence<T,T_var> & ); /// The destructor releases all object reference memebrs and frees @@ -547,12 +537,12 @@ public: * the reallocation is performed. After reallocation, the release * flag is always set to TRUE. */ - TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast> &operator= ( - const TAO_Unbounded_Object_Sequence <T,T_var,T_life,T_cast> & + TAO_Unbounded_Object_Sequence<T,T_var> &operator= ( + const TAO_Unbounded_Object_Sequence <T,T_var> & ); /// read-write accessor - TAO_Object_Manager<T,T_var,T_life> operator[] ( + TAO_Object_Manager<T,T_var> operator[] ( CORBA::ULong slot ) const; @@ -596,11 +586,7 @@ public: * * Please see the documentation for the unbounded case. */ -template<typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template<typename T, typename T_var, size_t MAX> class TAO_Bounded_Object_Sequence : public TAO_Bounded_Base_Sequence { public: @@ -622,19 +608,19 @@ public: /// Copy constructor. TAO_Bounded_Object_Sequence ( - const TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX> & + const TAO_Bounded_Object_Sequence<T,T_var,MAX> & ); /// destructor ~TAO_Bounded_Object_Sequence (void); /// Assignment from another Bounded sequence. - TAO_Bounded_Object_Sequence &operator= ( - const TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX> & + TAO_Bounded_Object_Sequence<T,T_var,MAX> &operator= ( + const TAO_Bounded_Object_Sequence<T,T_var,MAX> & ); /// Read-write accessor. - TAO_Object_Manager<T,T_var,T_life> operator[] ( + TAO_Object_Manager<T,T_var> operator[] ( CORBA::ULong slot ) const; diff --git a/TAO/tao/Sequence_T.i b/TAO/tao/Sequence_T.i index 1e4a223985c..6d61b4e1d6c 100644 --- a/TAO/tao/Sequence_T.i +++ b/TAO/tao/Sequence_T.i @@ -121,25 +121,25 @@ TAO_Bounded_Sequence<T, MAX>::operator[] (CORBA::ULong i) const // Inline operations for class TAO_Object_Manager<T> // ************************************************************* -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::~TAO_Object_Manager (void) +TAO_Object_Manager<T,T_var>::~TAO_Object_Manager (void) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::TAO_Object_Manager ( - const TAO_Object_Manager<T,T_var,T_life> & rhs +TAO_Object_Manager<T,T_var>::TAO_Object_Manager ( + const TAO_Object_Manager<T,T_var> & rhs ) : ptr_ (rhs.ptr_), release_ (rhs.release_) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::TAO_Object_Manager ( +TAO_Object_Manager<T,T_var>::TAO_Object_Manager ( T ** buffer, CORBA::Boolean release ) @@ -148,46 +148,46 @@ TAO_Object_Manager<T,T_var,T_life>::TAO_Object_Manager ( { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T * -TAO_Object_Manager<T,T_var,T_life>::operator-> (void) const +TAO_Object_Manager<T,T_var>::operator-> (void) const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::operator const T_var () const +TAO_Object_Manager<T,T_var>::operator const T_var () const { return TAO::Objref_Traits<T>::tao_duplicate (*this->ptr_); } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::operator const T *() const +TAO_Object_Manager<T,T_var>::operator const T *() const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life>::operator T *&() +TAO_Object_Manager<T,T_var>::operator T *&() { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T * -TAO_Object_Manager<T,T_var,T_life>::in (void) const +TAO_Object_Manager<T,T_var>::in (void) const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T *& -TAO_Object_Manager<T,T_var,T_life>::inout (void) +TAO_Object_Manager<T,T_var>::inout (void) { return *this->ptr_; } @@ -285,28 +285,28 @@ TAO_Pseudo_Object_Manager<T,T_var>::_retn (void) // class TAO_Unbounded_Object_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life, typename T_cast> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -TAO_Unbounded_Object_Sequence (void) +TAO_Unbounded_Object_Sequence<T,T_var>::TAO_Unbounded_Object_Sequence (void) { } -template <typename T, typename T_var, typename T_life, typename T_cast> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>:: -TAO_Unbounded_Object_Sequence (CORBA::ULong maximum, - CORBA::ULong length, - T* *value, - CORBA::Boolean release) +TAO_Unbounded_Object_Sequence<T,T_var>::TAO_Unbounded_Object_Sequence ( + CORBA::ULong maximum, + CORBA::ULong length, + T* *value, + CORBA::Boolean release + ) : TAO_Unbounded_Base_Sequence (maximum, length, value, release) { } -template <typename T, typename T_var, typename T_life, typename T_cast> +template <typename T, typename T_var> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life> -TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::operator[] ( +TAO_Object_Manager<T,T_var> +TAO_Unbounded_Object_Sequence<T,T_var>::operator[] ( CORBA::ULong slot ) const { @@ -314,47 +314,35 @@ TAO_Unbounded_Object_Sequence<T,T_var,T_life,T_cast>::operator[] ( T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); return - TAO_Object_Manager<T,T_var,T_life> (tmp + slot, this->release_); + TAO_Object_Manager<T,T_var> (tmp + slot, this->release_); } // ************************************************************* // class TAO_Bounded_Object_Sequence // ************************************************************* -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template <typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>:: -~TAO_Bounded_Object_Sequence (void) +TAO_Bounded_Object_Sequence<T,T_var,MAX>::~TAO_Bounded_Object_Sequence (void) { this->_deallocate_buffer (); } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template <typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Object_Sequence<T,T_var,T_life,T_cast,MAX>:: -TAO_Bounded_Object_Sequence (CORBA::ULong length, - T ** value, - CORBA::Boolean release) +TAO_Bounded_Object_Sequence<T,T_var,MAX>::TAO_Bounded_Object_Sequence ( + CORBA::ULong length, + T ** value, + CORBA::Boolean release + ) : TAO_Bounded_Base_Sequence (MAX, length, value, release) { } -template <typename T, - typename T_var, - typename T_life, - typename T_cast, - size_t MAX> +template <typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Object_Manager<T,T_var,T_life> -TAO_Bounded_Object_Sequence<T, T_var,T_life,T_cast,MAX>::operator[] ( +TAO_Object_Manager<T,T_var> +TAO_Bounded_Object_Sequence<T, T_var,MAX>::operator[] ( CORBA::ULong slot ) const { @@ -362,7 +350,7 @@ TAO_Bounded_Object_Sequence<T, T_var,T_life,T_cast,MAX>::operator[] ( T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); return - TAO_Object_Manager<T,T_var,T_life> (tmp + slot, this->release_ ); + TAO_Object_Manager<T,T_var> (tmp + slot, this->release_ ); } // ************************************************************* diff --git a/TAO/tao/Special_Basic_Argument_T.h b/TAO/tao/Special_Basic_Argument_T.h index ae6b6e0ee38..ec992a1e147 100644 --- a/TAO/tao/Special_Basic_Argument_T.h +++ b/TAO/tao/Special_Basic_Argument_T.h @@ -41,6 +41,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S const & arg (void); + private: S const & x_; }; @@ -63,6 +65,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: mutable S & x_; }; @@ -81,6 +85,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S & arg (void); + private: mutable S & x_; }; @@ -102,6 +108,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + S excp (void); S retn (void); diff --git a/TAO/tao/Special_Basic_Argument_T.inl b/TAO/tao/Special_Basic_Argument_T.inl index 4ecbd2c88d3..d216d29aa74 100644 --- a/TAO/tao/Special_Basic_Argument_T.inl +++ b/TAO/tao/Special_Basic_Argument_T.inl @@ -8,6 +8,14 @@ TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::In_Special_Basic_Argument_T ( : x_ (x) {} +template<typename S, typename to_S, typename from_S> +ACE_INLINE +S const & +TAO::In_Special_Basic_Argument_T<S,to_S,from_S>::arg (void) +{ + return this->x_; +} + // =========================================================================== template<typename S, typename to_S, typename from_S> @@ -17,6 +25,14 @@ Inout_Special_Basic_Argument_T (S & x) : x_ (x) {} +template<typename S, typename to_S, typename from_S> +ACE_INLINE +S & +TAO::Inout_Special_Basic_Argument_T<S,to_S,from_S>::arg (void) +{ + return this->x_; +} + // =========================================================================== template<typename S, typename to_S, typename from_S> @@ -26,6 +42,14 @@ Out_Special_Basic_Argument_T (S & x) : x_ (x) {} +template<typename S, typename to_S, typename from_S> +ACE_INLINE +S & +TAO::Out_Special_Basic_Argument_T<S,to_S,from_S>::arg (void) +{ + return this->x_; +} + // =========================================================================== template<typename S, typename to_S, typename from_S> @@ -37,6 +61,14 @@ Ret_Special_Basic_Argument_T (void) template<typename S, typename to_S, typename from_S> ACE_INLINE +S & +TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::arg (void) +{ + return this->x_; +} + +template<typename S, typename to_S, typename from_S> +ACE_INLINE S TAO::Ret_Special_Basic_Argument_T<S,to_S,from_S>::excp (void) { diff --git a/TAO/tao/TAOC.cpp b/TAO/tao/TAOC.cpp index a151795ce5a..1e8035abf82 100644 --- a/TAO/tao/TAOC.cpp +++ b/TAO/tao/TAOC.cpp @@ -227,58 +227,6 @@ template class int TAO::BufferingConstraintPolicy::_tao_class_id = 0; -TAO::BufferingConstraintPolicy_ptr -TAO::tao_BufferingConstraintPolicy_life::tao_duplicate ( - TAO::BufferingConstraintPolicy_ptr p - ) -{ - return TAO::BufferingConstraintPolicy::_duplicate (p); -} - -void -TAO::tao_BufferingConstraintPolicy_life::tao_release ( - TAO::BufferingConstraintPolicy_ptr p - ) -{ - CORBA::release (p); -} - -TAO::BufferingConstraintPolicy_ptr -TAO::tao_BufferingConstraintPolicy_life::tao_nil ( - void - ) -{ - return TAO::BufferingConstraintPolicy::_nil (); -} - -CORBA::Boolean -TAO::tao_BufferingConstraintPolicy_life::tao_marshal ( - TAO::BufferingConstraintPolicy_ptr p, - TAO_OutputCDR &cdr - ) -{ - return p->marshal (cdr); -} - -TAO::BufferingConstraintPolicy_ptr -TAO::tao_BufferingConstraintPolicy_cast::tao_narrow ( - CORBA::Object *p - ACE_ENV_ARG_DECL - ) -{ - return TAO::BufferingConstraintPolicy::_narrow (p ACE_ENV_ARG_PARAMETER); -} - -CORBA::Object * -TAO::tao_BufferingConstraintPolicy_cast::tao_upcast ( - void *src - ) -{ - TAO::BufferingConstraintPolicy **tmp = - ACE_static_cast (TAO::BufferingConstraintPolicy **, src); - return *tmp; -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class TAO_Objref_Var_T< diff --git a/TAO/tao/TAOC.h b/TAO/tao/TAOC.h index 9d99aaceb9f..c5c747e37b2 100644 --- a/TAO/tao/TAOC.h +++ b/TAO/tao/TAOC.h @@ -144,30 +144,9 @@ TAO_NAMESPACE TAO class BufferingConstraintPolicy; typedef BufferingConstraintPolicy *BufferingConstraintPolicy_ptr; - struct tao_BufferingConstraintPolicy_life; - typedef TAO_Objref_Var_T<BufferingConstraintPolicy, tao_BufferingConstraintPolicy_life> BufferingConstraintPolicy_var; - typedef TAO_Objref_Out_T<BufferingConstraintPolicy, tao_BufferingConstraintPolicy_life> BufferingConstraintPolicy_out; + typedef TAO_Objref_Var_T<BufferingConstraintPolicy> BufferingConstraintPolicy_var; + typedef TAO_Objref_Out_T<BufferingConstraintPolicy> BufferingConstraintPolicy_out; - struct TAO_Export tao_BufferingConstraintPolicy_life - { - static BufferingConstraintPolicy_ptr tao_duplicate (BufferingConstraintPolicy_ptr); - static void tao_release (BufferingConstraintPolicy_ptr); - static BufferingConstraintPolicy_ptr tao_nil (void); - static CORBA::Boolean tao_marshal ( - BufferingConstraintPolicy_ptr, - TAO_OutputCDR & - ); - }; - - struct TAO_Export tao_BufferingConstraintPolicy_cast - { - static BufferingConstraintPolicy_ptr tao_narrow ( - CORBA::Object_ptr - ACE_ENV_ARG_DECL - ); - static CORBA::Object_ptr tao_upcast (void *); - }; - #endif /* end #if !defined */ // TAO_IDL - Generated from diff --git a/TAO/tao/UB_String_Argument_T.h b/TAO/tao/UB_String_Argument_T.h index ff49204096d..763d6810266 100644 --- a/TAO/tao/UB_String_Argument_T.h +++ b/TAO/tao/UB_String_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S * arg (void) const; + private: const S * x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S *& arg (void); + private: S *& x_; }; @@ -80,6 +84,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S *& arg (void); + private: mutable S *& x_; }; @@ -101,6 +107,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S *& arg (void); + S * excp (void); S * retn (void); diff --git a/TAO/tao/UB_String_Argument_T.inl b/TAO/tao/UB_String_Argument_T.inl index 28353d99b39..587df549db4 100644 --- a/TAO/tao/UB_String_Argument_T.inl +++ b/TAO/tao/UB_String_Argument_T.inl @@ -1,31 +1,68 @@ // $Id$ template<typename S> +ACE_INLINE TAO::In_UB_String_Argument_T<S>::In_UB_String_Argument_T (const S * x) : x_ (x) {} +template<typename S> +ACE_INLINE +const S * +TAO::In_UB_String_Argument_T<S>::arg (void) const +{ + return this->x_; +} + // ========================================================================== template<typename S> +ACE_INLINE TAO::Inout_UB_String_Argument_T<S>::Inout_UB_String_Argument_T (S *& x) : x_ (x) {} +template<typename S> +ACE_INLINE +S *& +TAO::Inout_UB_String_Argument_T<S>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, typename S_out> +ACE_INLINE TAO::Out_UB_String_Argument_T<S,S_out>::Out_UB_String_Argument_T (S_out & x) : x_ (x.ptr ()) {} +template<typename S, typename S_out> +ACE_INLINE +S *& +TAO::Out_UB_String_Argument_T<S,S_out>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, typename S_var> +ACE_INLINE TAO::Ret_UB_String_Argument_T<S,S_var>::Ret_UB_String_Argument_T (void) {} template<typename S, typename S_var> +ACE_INLINE +S *& +TAO::Ret_UB_String_Argument_T<S,S_var>::arg (void) +{ + return this->x_.out (); +} + +template<typename S, typename S_var> +ACE_INLINE S * TAO::Ret_UB_String_Argument_T<S,S_var>::excp (void) { @@ -33,6 +70,7 @@ TAO::Ret_UB_String_Argument_T<S,S_var>::excp (void) } template<typename S, typename S_var> +ACE_INLINE S * TAO::Ret_UB_String_Argument_T<S,S_var>::retn (void) { @@ -42,6 +80,7 @@ TAO::Ret_UB_String_Argument_T<S,S_var>::retn (void) // ========================================================================== template<typename S, typename S_var> +ACE_INLINE TAO::In_UB_String_SArgument_T<S,S_var>::In_UB_String_SArgument_T (void) {} @@ -55,10 +94,12 @@ TAO::In_UB_String_SArgument_T<S,S_var>::arg (void) const // ========================================================================== template<typename S, typename S_var> +ACE_INLINE TAO::Inout_UB_String_SArgument_T<S,S_var>::Inout_UB_String_SArgument_T (void) {} template<typename S, typename S_var> +ACE_INLINE S *& TAO::Inout_UB_String_SArgument_T<S,S_var>::arg (void) { @@ -68,12 +109,14 @@ TAO::Inout_UB_String_SArgument_T<S,S_var>::arg (void) // ========================================================================== template<typename S, typename S_var> +ACE_INLINE TAO::Out_UB_String_SArgument_T<S,S_var>::Out_UB_String_SArgument_T ( void ) {} template<typename S, typename S_var> +ACE_INLINE S *& TAO::Out_UB_String_SArgument_T<S,S_var>::arg (void) { @@ -83,6 +126,7 @@ TAO::Out_UB_String_SArgument_T<S,S_var>::arg (void) // ========================================================================== template<typename S, typename S_var> +ACE_INLINE TAO::Ret_UB_String_SArgument_T<S,S_var>::Ret_UB_String_SArgument_T (void) {} diff --git a/TAO/tao/Valuetype/Sequence_T.cpp b/TAO/tao/Valuetype/Sequence_T.cpp index 1aba6361a74..4d88da21b92 100644 --- a/TAO/tao/Valuetype/Sequence_T.cpp +++ b/TAO/tao/Valuetype/Sequence_T.cpp @@ -17,10 +17,10 @@ ACE_RCSID (Valuetype, // class TAO_Valuetype_Manager // ************************************************************* -template <typename T, typename T_var, typename T_life> -TAO_Valuetype_Manager<T,T_var,T_life> & -TAO_Valuetype_Manager<T,T_var,T_life>::operator= ( - const TAO_Valuetype_Manager<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Valuetype_Manager<T,T_var> & +TAO_Valuetype_Manager<T,T_var>::operator= ( + const TAO_Valuetype_Manager<T,T_var> & rhs ) { if (this == &rhs) @@ -30,9 +30,9 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= ( if (this->release_) { - T_life::tao_remove_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_remove_ref (*this->ptr_); *this->ptr_ = *rhs.ptr_; - T_life::tao_add_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_add_ref (*this->ptr_); } else { @@ -42,9 +42,9 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= ( return *this; } -template <typename T, typename T_var, typename T_life> -TAO_Valuetype_Manager<T,T_var,T_life> & -TAO_Valuetype_Manager<T,T_var,T_life>::operator= (T * p) +template <typename T, typename T_var> +TAO_Valuetype_Manager<T,T_var> & +TAO_Valuetype_Manager<T,T_var>::operator= (T * p) { if (this->release_) { @@ -52,7 +52,7 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= (T * p) // that of a var variable. Therefore we will not duplicate the // user provided pointer before assigning it to the internal // variable. - T_life::tao_remove_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_remove_ref (*this->ptr_); *this->ptr_ = p; } else @@ -63,9 +63,9 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= (T * p) return *this; } -template <typename T, typename T_var, typename T_life> -TAO_Valuetype_Manager<T,T_var,T_life> & -TAO_Valuetype_Manager<T,T_var,T_life>::operator= (const T_var & p) +template <typename T, typename T_var> +TAO_Valuetype_Manager<T,T_var> & +TAO_Valuetype_Manager<T,T_var>::operator= (const T_var & p) { if (this->release_) { @@ -78,9 +78,9 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= (const T_var & p) (*this->ptr_)->_remove_ref (); } - T_life::tao_remove_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_remove_ref (*this->ptr_); *this->ptr_ = p.in (); - T_life::tao_add_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_add_ref (*this->ptr_); } else { @@ -94,10 +94,10 @@ TAO_Valuetype_Manager<T,T_var,T_life>::operator= (const T_var & p) // class TAO_Abstract_Manager // ************************************************************* -template<typename T, typename T_var, typename T_life> -TAO_Abstract_Manager<T,T_var,T_life> & -TAO_Abstract_Manager<T,T_var,T_life>::operator= ( - const TAO_Abstract_Manager<T,T_var,T_life> & rhs +template<typename T, typename T_var> +TAO_Abstract_Manager<T,T_var> & +TAO_Abstract_Manager<T,T_var>::operator= ( + const TAO_Abstract_Manager<T,T_var> & rhs ) { if (this == &rhs) @@ -107,17 +107,17 @@ TAO_Abstract_Manager<T,T_var,T_life>::operator= ( if (this->release_) { - T_life::tao_release (*this->ptr_); - T_life::tao_duplicate (*rhs->ptr_); + TAO::Objref_Traits<T>::tao_release (*this->ptr_); + TAO::Objref_Traits<T>::tao_duplicate (*rhs->ptr_); } *this->ptr_ = *rhs.ptr_; return *this; } -template<typename T, typename T_var, typename T_life> -TAO_Abstract_Manager<T,T_var,T_life> & -TAO_Abstract_Manager<T,T_var,T_life>::operator= (T * p) +template<typename T, typename T_var> +TAO_Abstract_Manager<T,T_var> & +TAO_Abstract_Manager<T,T_var>::operator= (T * p) { if (this->release_) { @@ -125,16 +125,16 @@ TAO_Abstract_Manager<T,T_var,T_life>::operator= (T * p) // that of a var variable. Therefore we will not duplicate the // user provided pointer before assigning it to the internal // variable. - T_life::tao_release (*this->ptr_); + TAO::Objref_Traits<T>::tao_release (*this->ptr_); } *this->ptr_ = p; return *this; } -template<typename T, typename T_var, typename T_life> -TAO_Abstract_Manager<T,T_var,T_life> & -TAO_Abstract_Manager<T,T_var,T_life>::operator= (const T_var & p) +template<typename T, typename T_var> +TAO_Abstract_Manager<T,T_var> & +TAO_Abstract_Manager<T,T_var>::operator= (const T_var & p) { if (this->release_) { @@ -142,26 +142,26 @@ TAO_Abstract_Manager<T,T_var,T_life>::operator= (const T_var & p) // that of a var variable. Therefore we duplicate p's // pointer before assigning it to the internal // variable. - T_life::tao_release (*this->ptr_); - T_life::tao_duplicate (p.in ()); + TAO::Objref_Traits<T>::tao_release (*this->ptr_); + TAO::Objref_Traits<T>::tao_duplicate (p.in ()); } *this->ptr_ = p.in (); return *this; } -template<typename T, typename T_var, typename T_life> -TAO_Abstract_Manager<T,T_var,T_life>::operator const T_var () const +template<typename T, typename T_var> +TAO_Abstract_Manager<T,T_var>::operator const T_var () const { - T_life::tao_duplicate (*this->ptr_); + TAO::Objref_Traits<T>::tao_duplicate (*this->ptr_); return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> T *& -TAO_Abstract_Manager<T,T_var,T_life>::out (void) +TAO_Abstract_Manager<T,T_var>::out (void) { - T_life::tao_release (*this->ptr_); + TAO::Objref_Traits<T>::tao_release (*this->ptr_); *this->ptr_ = 0; return *this->ptr_; } @@ -170,29 +170,27 @@ TAO_Abstract_Manager<T,T_var,T_life>::out (void) // Operations for class TAO_Unbounded_Valuetype_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Valuetype_Sequence ( +template <typename T, typename T_var> +TAO_Unbounded_Valuetype_Sequence<T,T_var>::TAO_Unbounded_Valuetype_Sequence ( CORBA::ULong maximum ) : TAO_Unbounded_Base_Sequence ( maximum, - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf (maximum) + TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf (maximum) ) { } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Valuetype_Sequence ( - const TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Unbounded_Valuetype_Sequence<T,T_var>::TAO_Unbounded_Valuetype_Sequence ( + const TAO_Unbounded_Valuetype_Sequence<T,T_var> & rhs ) : TAO_Unbounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf ( + TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf ( this->maximum_ ); T ** const tmp2 = @@ -201,7 +199,7 @@ TAO_Unbounded_Valuetype_Sequence ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - T_life::tao_add_ref (tmp2[i]); + TAO::Value_Traits<T>::tao_add_ref (tmp2[i]); tmp1[i] = tmp2[i]; } @@ -213,17 +211,18 @@ TAO_Unbounded_Valuetype_Sequence ( } } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>:: -~TAO_Unbounded_Valuetype_Sequence (void) +template <typename T, typename T_var> +TAO_Unbounded_Valuetype_Sequence<T,T_var>::~TAO_Unbounded_Valuetype_Sequence ( + void + ) { this->_deallocate_buffer (); } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life> & -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::operator= ( - const TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Unbounded_Valuetype_Sequence<T,T_var> & +TAO_Unbounded_Valuetype_Sequence<T,T_var>::operator= ( + const TAO_Unbounded_Valuetype_Sequence<T,T_var> & rhs ) { if (this == &rhs) @@ -238,15 +237,15 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::operator= ( for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_remove_ref (tmp[i]); + TAO::Value_Traits<T>::tao_remove_ref (tmp[i]); tmp[i] = 0; } if (this->maximum_ < rhs.maximum_) { - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::freebuf (tmp); + TAO_Unbounded_Valuetype_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf (rhs.maximum_); + TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf (rhs.maximum_); } } else @@ -258,7 +257,7 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::operator= ( else { this->buffer_ = - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf ( + TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf ( rhs.maximum_ ); } @@ -273,16 +272,16 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::operator= ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - T_life::tao_add_ref (tmp2[i]); + TAO::Value_Traits<T>::tao_add_ref (tmp2[i]); tmp1[i] = tmp2[i]; } return *this; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> T ** -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf (CORBA::ULong nelems) +TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf (CORBA::ULong nelems) { T ** buf = 0; ACE_NEW_RETURN (buf, @@ -297,9 +296,9 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf (CORBA::ULong nelems) return buf; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::freebuf (T ** buffer) +TAO_Unbounded_Valuetype_Sequence<T,T_var>::freebuf (T ** buffer) { if (buffer == 0) { @@ -321,14 +320,14 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::freebuf (T ** buffer) delete [] buffer; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_allocate_buffer ( +TAO_Unbounded_Valuetype_Sequence<T,T_var>::_allocate_buffer ( CORBA::ULong length ) { T ** tmp = - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::allocbuf (length); + TAO_Unbounded_Valuetype_Sequence<T,T_var>::allocbuf (length); if (this->buffer_ != 0) { @@ -343,7 +342,7 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_allocate_buffer ( // the old instances. if (!this->release_) { - T_life::tao_add_ref (tmp[i]); + TAO::Value_Traits<T>::tao_add_ref (tmp[i]); tmp[i] = old[i]; } else @@ -360,9 +359,9 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_allocate_buffer ( this->buffer_ = tmp; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_deallocate_buffer (void) +TAO_Unbounded_Valuetype_Sequence<T,T_var>::_deallocate_buffer (void) { if (this->buffer_ == 0 || this->release_ == 0) { @@ -374,17 +373,17 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_deallocate_buffer (void) for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_remove_ref (tmp[i]); + TAO::Value_Traits<T>::tao_remove_ref (tmp[i]); tmp[i] = 0; } - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::freebuf (tmp); + TAO_Unbounded_Valuetype_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = 0; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_shrink_buffer ( +TAO_Unbounded_Valuetype_Sequence<T,T_var>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) @@ -394,7 +393,7 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_shrink_buffer ( for (CORBA::ULong i = nl; i < ol; ++i) { - T_life::tao_remove_ref (tmp[i]); + TAO::Value_Traits<T>::tao_remove_ref (tmp[i]); tmp[i] = 0; } } @@ -403,34 +402,34 @@ TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::_shrink_buffer ( // Operations for class TAO_Bounded_Valuetype_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Valuetype_Sequence (void) +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::TAO_Bounded_Valuetype_Sequence ( + void + ) : TAO_Bounded_Base_Sequence ( MAX, - TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf (MAX) + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::allocbuf (MAX) ) { } -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Valuetype_Sequence ( - const TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::TAO_Bounded_Valuetype_Sequence ( + const TAO_Bounded_Valuetype_Sequence<T,T_var,MAX> & rhs ) : TAO_Bounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf (MAX); + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::allocbuf (MAX); T ** const tmp2 = ACE_reinterpret_cast (T ** ACE_CAST_CONST, rhs.buffer_); for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - T_life::tao_add_ref (tmp2[i]); + TAO::Value_Traits<T>::tao_add_ref (tmp2[i]); tmp1[i] = tmp2[i]; } @@ -442,10 +441,10 @@ TAO_Bounded_Valuetype_Sequence ( } } -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>& -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::operator= ( - const TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>& +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::operator= ( + const TAO_Bounded_Valuetype_Sequence<T,T_var,MAX> & rhs ) { if (this == &rhs) @@ -460,7 +459,7 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::operator= ( for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_remove_ref (tmp[i]); + TAO::Value_Traits<T>::tao_remove_ref (tmp[i]); tmp[i] = 0; } // No need to reallocate the buffer since it is always of size @@ -475,7 +474,7 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::operator= ( else { this->buffer_ = - TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf ( + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::allocbuf ( rhs.maximum_ ); } @@ -490,16 +489,16 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::operator= ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - T_life::tao_add_ref (tmp2[i]); + TAO::Value_Traits<T>::tao_add_ref (tmp2[i]); tmp1[i] = tmp2[i]; } return *this; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> T ** -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf (CORBA::ULong) +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::allocbuf (CORBA::ULong) { T ** buf = 0; ACE_NEW_RETURN (buf, @@ -514,9 +513,9 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf (CORBA::ULong) return buf; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::freebuf (T ** buffer) +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::freebuf (T ** buffer) { // How much do we deallocate? Easy! allocbuf() always creates MAX // elements and initialize them to T::_nil(). So we can be @@ -525,7 +524,7 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::freebuf (T ** buffer) { if (buffer[i] != 0) { - T_life::tao_remove_ref (buffer[i]); + TAO::Value_Traits<T>::tao_remove_ref (buffer[i]); buffer[i] = 0; } } @@ -533,21 +532,21 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::freebuf (T ** buffer) delete [] buffer; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_allocate_buffer ( +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::_allocate_buffer ( CORBA::ULong length ) { // For this class memory is never reallocated so the implementation // is *really* simple. this->buffer_ = - TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::allocbuf (length); + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::allocbuf (length); } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_deallocate_buffer (void) +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::_deallocate_buffer (void) { if (this->release_ == 0) { @@ -556,13 +555,13 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_deallocate_buffer (void) T ** tmp = ACE_reinterpret_cast (T **, this->buffer_); - TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::freebuf (tmp); + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::freebuf (tmp); this->buffer_ = 0; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_shrink_buffer ( +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) @@ -572,7 +571,7 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_shrink_buffer ( for (CORBA::ULong i = nl; i < ol; ++i) { - T_life::tao_remove_ref (tmp[i]); + TAO::Value_Traits<T>::tao_remove_ref (tmp[i]); tmp[i] = 0; } } @@ -581,27 +580,27 @@ TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::_shrink_buffer ( // Operations for class TAO_Unbounded_Abstract_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Abstract_Sequence (CORBA::ULong maximum) +template <typename T, typename T_var> +TAO_Unbounded_Abstract_Sequence<T,T_var>::TAO_Unbounded_Abstract_Sequence ( + CORBA::ULong maximum + ) : TAO_Unbounded_Base_Sequence ( maximum, - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf (maximum) + TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf (maximum) ) { } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Abstract_Sequence ( - const TAO_Unbounded_Abstract_Sequence<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Unbounded_Abstract_Sequence<T,T_var>::TAO_Unbounded_Abstract_Sequence ( + const TAO_Unbounded_Abstract_Sequence<T,T_var> & rhs ) : TAO_Unbounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf ( + TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf ( this->maximum_ ); T ** const tmp2 = @@ -610,7 +609,7 @@ TAO_Unbounded_Abstract_Sequence ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - tmp1[i] = T_life::tao_duplicate (tmp2[i]); + tmp1[i] = TAO::Objref_Traits<T>::tao_duplicate (tmp2[i]); } this->buffer_ = tmp1; @@ -621,17 +620,18 @@ TAO_Unbounded_Abstract_Sequence ( } } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>:: -~TAO_Unbounded_Abstract_Sequence (void) +template <typename T, typename T_var> +TAO_Unbounded_Abstract_Sequence<T,T_var>::~TAO_Unbounded_Abstract_Sequence ( + void + ) { this->_deallocate_buffer (); } -template <typename T, typename T_var, typename T_life> -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life> & -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::operator= ( - const TAO_Unbounded_Abstract_Sequence<T,T_var,T_life> & rhs +template <typename T, typename T_var> +TAO_Unbounded_Abstract_Sequence<T,T_var> & +TAO_Unbounded_Abstract_Sequence<T,T_var>::operator= ( + const TAO_Unbounded_Abstract_Sequence<T,T_var> & rhs ) { if (this == &rhs) @@ -646,15 +646,15 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::operator= ( for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_release (tmp[i]); - tmp[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (tmp[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } if (this->maximum_ < rhs.maximum_) { - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::freebuf (tmp); + TAO_Unbounded_Abstract_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf ( + TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf ( rhs.maximum_ ); } @@ -668,7 +668,7 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::operator= ( else { this->buffer_ = - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf ( + TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf ( rhs.maximum_ ); } @@ -683,15 +683,15 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::operator= ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - tmp1[i] = T_life::tao_duplicate (tmp2[i]); + tmp1[i] = TAO::Objref_Traits<T>::tao_duplicate (tmp2[i]); } return *this; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> T ** -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf ( +TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf ( CORBA::ULong nelems ) { @@ -702,15 +702,15 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf ( for (CORBA::ULong i = 0; i < nelems; ++i) { - buf[i] = T_life::tao_nil (); + buf[i] = TAO::Objref_Traits<T>::tao_nil (); } return buf; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::freebuf (T ** buffer) +TAO_Unbounded_Abstract_Sequence<T,T_var>::freebuf (T ** buffer) { if (buffer == 0) { @@ -732,13 +732,13 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::freebuf (T ** buffer) delete [] buffer; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_allocate_buffer ( +TAO_Unbounded_Abstract_Sequence<T,T_var>::_allocate_buffer ( CORBA::ULong length ) { - T ** tmp = TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::allocbuf (length); + T ** tmp = TAO_Unbounded_Abstract_Sequence<T,T_var>::allocbuf (length); if (this->buffer_ != 0) { @@ -753,7 +753,7 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_allocate_buffer ( // the old instances. if (!this->release_) { - tmp[i] = T_life::tao_duplicate (old[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_duplicate (old[i]); } else { @@ -769,9 +769,9 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_allocate_buffer ( this->buffer_ = tmp; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_deallocate_buffer (void) +TAO_Unbounded_Abstract_Sequence<T,T_var>::_deallocate_buffer (void) { if (this->buffer_ == 0 || this->release_ == 0) { @@ -783,17 +783,17 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_deallocate_buffer (void) for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_release (tmp[i]); - tmp[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (tmp[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::freebuf (tmp); + TAO_Unbounded_Abstract_Sequence<T,T_var>::freebuf (tmp); this->buffer_ = 0; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> void -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_shrink_buffer ( +TAO_Unbounded_Abstract_Sequence<T,T_var>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) @@ -803,8 +803,8 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_shrink_buffer ( for (CORBA::ULong i = nl; i < ol; ++i) { - T_life::tao_release (tmp[i]); - tmp[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (tmp[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } } @@ -812,34 +812,34 @@ TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::_shrink_buffer ( // Operations for class TAO_Bounded_Abstract_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Abstract_Sequence (void) +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::TAO_Bounded_Abstract_Sequence ( + void + ) : TAO_Bounded_Base_Sequence ( MAX, - TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf (MAX) + TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::allocbuf (MAX) ) { } -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Abstract_Sequence ( - const TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::TAO_Bounded_Abstract_Sequence ( + const TAO_Bounded_Abstract_Sequence<T,T_var,MAX> & rhs ) : TAO_Bounded_Base_Sequence (rhs) { if (rhs.buffer_ != 0) { T ** tmp1 = - TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf (MAX); + TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::allocbuf (MAX); T ** const tmp2 = ACE_reinterpret_cast (T ** ACE_CAST_CONST, rhs.buffer_); for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - tmp1[i] = T_life::tao_duplicate (tmp2[i]); + tmp1[i] = TAO::Objref_Traits<T>::tao_duplicate (tmp2[i]); } this->buffer_ = tmp1; @@ -850,10 +850,10 @@ TAO_Bounded_Abstract_Sequence ( } } -template <typename T, typename T_var, typename T_life, size_t MAX> -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX> & -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::operator= ( - const TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX> & rhs +template <typename T, typename T_var, size_t MAX> +TAO_Bounded_Abstract_Sequence<T,T_var,MAX> & +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::operator= ( + const TAO_Bounded_Abstract_Sequence<T,T_var,MAX> & rhs ) { if (this == &rhs) @@ -868,8 +868,8 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::operator= ( for (CORBA::ULong i = 0; i < this->length_; ++i) { - T_life::tao_release (tmp[i]); - tmp[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (tmp[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } // No need to reallocate the buffer since it is always of size // MAX @@ -883,7 +883,7 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::operator= ( else { this->buffer_ = - TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf ( + TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::allocbuf ( rhs.maximum_ ); } @@ -898,15 +898,15 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::operator= ( for (CORBA::ULong i = 0; i < rhs.length_; ++i) { - tmp1[i] = T_life::tao_duplicate (tmp2[i]); + tmp1[i] = TAO::Objref_Traits<T>::tao_duplicate (tmp2[i]); } return *this; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> T ** -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf (CORBA::ULong) +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::allocbuf (CORBA::ULong) { T ** buf = 0; ACE_NEW_RETURN (buf, @@ -915,46 +915,46 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf (CORBA::ULong) for (CORBA::ULong i = 0; i < MAX; ++i) { - buf[i] = T_life::tao_nil (); + buf[i] = TAO::Objref_Traits<T>::tao_nil (); } return buf; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::freebuf (T ** buffer) +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::freebuf (T ** buffer) { // How much do we deallocate? Easy! allocbuf() always creates MAX // elements and initialize them to T::_nil(). So we can be // complaint and call CORBA::release() on each one. for (CORBA::ULong i = 0; i < MAX; ++i) { - if (buffer[i] != T_life::tao_nil ()) + if (buffer[i] != TAO::Objref_Traits<T>::tao_nil ()) { - T_life::tao_release (buffer[i]); - buffer[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (buffer[i]); + buffer[i] = TAO::Objref_Traits<T>::tao_nil (); } } delete [] buffer; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::_allocate_buffer ( +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::_allocate_buffer ( CORBA::ULong length ) { // For this class memory is never reallocated so the implementation // is *really* simple. this->buffer_ = - TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::allocbuf (length); + TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::allocbuf (length); } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::_deallocate_buffer (void) +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::_deallocate_buffer (void) { if (this->release_ == 0) { @@ -963,13 +963,13 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::_deallocate_buffer (void) T ** tmp = ACE_reinterpret_cast (T **, this->buffer_); - TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::freebuf (tmp); + TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::freebuf (tmp); this->buffer_ = 0; } -template <typename T, typename T_var, typename T_life, size_t MAX> +template <typename T, typename T_var, size_t MAX> void -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::_shrink_buffer ( +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::_shrink_buffer ( CORBA::ULong nl, CORBA::ULong ol ) @@ -979,8 +979,8 @@ TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::_shrink_buffer ( for (CORBA::ULong i = nl; i < ol; ++i) { - T_life::tao_release (tmp[i]); - tmp[i] = T_life::tao_nil (); + TAO::Objref_Traits<T>::tao_release (tmp[i]); + tmp[i] = TAO::Objref_Traits<T>::tao_nil (); } } diff --git a/TAO/tao/Valuetype/Sequence_T.h b/TAO/tao/Valuetype/Sequence_T.h index 1955c6307c6..cf6a64c2605 100644 --- a/TAO/tao/Valuetype/Sequence_T.h +++ b/TAO/tao/Valuetype/Sequence_T.h @@ -21,7 +21,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Unbounded_Valuetype_Sequence; /** @@ -34,10 +34,10 @@ class TAO_Unbounded_Valuetype_Sequence; * * @see TAO_Object_Manager */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Valuetype_Manager { - friend class TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>; + friend class TAO_Unbounded_Valuetype_Sequence<T,T_var>; public: // @@ Use partial template specialization here to give access only // to the right kind of sequence. @@ -51,7 +51,7 @@ public: * release value on the <rhs>. * + In any case a new reference to the same object is created. */ - TAO_Valuetype_Manager (const TAO_Valuetype_Manager<T,T_var,T_life> & rhs); + TAO_Valuetype_Manager (const TAO_Valuetype_Manager<T,T_var> & rhs); /** * Constructor from address of an element, it should be private and @@ -70,15 +70,15 @@ public: * @@ TODO what happens if rhs.release_ is true an this->relase_ is * false? */ - TAO_Valuetype_Manager<T,T_var,T_life> &operator= ( - const TAO_Valuetype_Manager<T,T_var,T_life> & rhs + TAO_Valuetype_Manager<T,T_var> &operator= ( + const TAO_Valuetype_Manager<T,T_var> & rhs ); /// Assignment from T *. - TAO_Valuetype_Manager<T,T_var,T_life> &operator= (T *); + TAO_Valuetype_Manager<T,T_var> &operator= (T *); /// Assignment from T_var. - TAO_Valuetype_Manager<T,T_var,T_life> &operator= (const T_var &); + TAO_Valuetype_Manager<T,T_var> &operator= (const T_var &); /// Return pointer. T * operator-> (void) const; @@ -126,7 +126,7 @@ private: * * @see TAO_Object_Manager */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Abstract_Manager { // friend class TAO_Unbounded_Abstract_Sequence<T,T_var>; @@ -138,7 +138,7 @@ public: * release value on the <rhs>. * + In any case a new reference to the same object is created. */ - TAO_Abstract_Manager (const TAO_Abstract_Manager<T,T_var,T_life> & rhs); + TAO_Abstract_Manager (const TAO_Abstract_Manager<T,T_var> & rhs); /** * Constructor from address of an element, it should be private and @@ -157,15 +157,15 @@ public: * @@ TODO what happens if rhs.release_ is true an this->relase_ is * false? */ - TAO_Abstract_Manager<T,T_var,T_life> & operator= ( - const TAO_Abstract_Manager<T,T_var,T_life> & rhs + TAO_Abstract_Manager<T,T_var> & operator= ( + const TAO_Abstract_Manager<T,T_var> & rhs ); /// Assignment from T *. - TAO_Abstract_Manager<T,T_var,T_life> & operator= (T *); + TAO_Abstract_Manager<T,T_var> & operator= (T *); /// Assignment from T_var. - TAO_Abstract_Manager<T,T_var,T_life> & operator= (const T_var &); + TAO_Abstract_Manager<T,T_var> & operator= (const T_var &); /// Return pointer. T * operator-> (void) const; @@ -210,7 +210,7 @@ private: * * @see TAO_Unbounded_Object_Sequence */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Unbounded_Valuetype_Sequence : public TAO_Unbounded_Base_Sequence { public: @@ -230,7 +230,7 @@ public: /// Copy ctor, deep copies. TAO_Unbounded_Valuetype_Sequence ( - const TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life> & + const TAO_Unbounded_Valuetype_Sequence<T,T_var> & ); /// The destructor releases all object reference memebrs and frees @@ -242,12 +242,12 @@ public: * members and frees all string members, and then performs a * deepcopy to create a new structure. */ - TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life> & operator= ( - const TAO_Unbounded_Valuetype_Sequence <T,T_var,T_life> & + TAO_Unbounded_Valuetype_Sequence<T,T_var> & operator= ( + const TAO_Unbounded_Valuetype_Sequence <T,T_var> & ); /// read-write accessor - TAO_Valuetype_Manager<T,T_var,T_life> operator[] (CORBA::ULong slot) const; + TAO_Valuetype_Manager<T,T_var> operator[] (CORBA::ULong slot) const; /// The allocbuf function allocates a vector of T elements that can /// be passed to the T *data constructor. @@ -274,7 +274,7 @@ public: * * Please see the documentation for the unbounded case. */ -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> class TAO_Bounded_Valuetype_Sequence : public TAO_Bounded_Base_Sequence { public: @@ -290,19 +290,19 @@ public: /// Copy constructor. TAO_Bounded_Valuetype_Sequence ( - const TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX> & + const TAO_Bounded_Valuetype_Sequence<T,T_var,MAX> & ); /// destructor ~TAO_Bounded_Valuetype_Sequence (void); /// Assignment from another Bounded sequence. - TAO_Bounded_Valuetype_Sequence &operator= ( - const TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX> & + TAO_Bounded_Valuetype_Sequence<T,T_var,MAX> &operator= ( + const TAO_Bounded_Valuetype_Sequence<T,T_var,MAX> & ); /// Read-write accessor. - TAO_Valuetype_Manager<T,T_var,T_life> operator[] (CORBA::ULong slot) const; + TAO_Valuetype_Manager<T,T_var> operator[] (CORBA::ULong slot) const; /// Allocate storage for a sequence.. static T ** allocbuf (CORBA::ULong length); @@ -329,7 +329,7 @@ public: * * @see TAO_Unbounded_Object_Sequence */ -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> class TAO_Unbounded_Abstract_Sequence : public TAO_Unbounded_Base_Sequence { public: @@ -349,7 +349,7 @@ public: /// Copy ctor, deep copies. TAO_Unbounded_Abstract_Sequence ( - const TAO_Unbounded_Abstract_Sequence<T,T_var,T_life> & + const TAO_Unbounded_Abstract_Sequence<T,T_var> & ); /// The destructor releases all object reference memebrs and frees @@ -361,12 +361,12 @@ public: * members and frees all string members, and then performs a * deepcopy to create a new structure. */ - TAO_Unbounded_Abstract_Sequence<T,T_var,T_life> &operator= ( - const TAO_Unbounded_Abstract_Sequence <T,T_var,T_life> & + TAO_Unbounded_Abstract_Sequence<T,T_var> &operator= ( + const TAO_Unbounded_Abstract_Sequence <T,T_var> & ); /// read-write accessor - TAO_Abstract_Manager<T,T_var,T_life> operator[] (CORBA::ULong slot) const; + TAO_Abstract_Manager<T,T_var> operator[] (CORBA::ULong slot) const; /// The allocbuf function allocates a vector of T elements that can /// be passed to the T *data constructor. @@ -393,7 +393,7 @@ public: * * Please see the documentation for the unbounded case. */ -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> class TAO_Bounded_Abstract_Sequence : public TAO_Bounded_Base_Sequence { public: @@ -409,19 +409,19 @@ public: /// Copy constructor. TAO_Bounded_Abstract_Sequence ( - const TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX> & + const TAO_Bounded_Abstract_Sequence<T,T_var,MAX> & ); /// destructor ~TAO_Bounded_Abstract_Sequence (void); /// Assignment from another Bounded sequence. - TAO_Bounded_Abstract_Sequence &operator= ( - const TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX> & + TAO_Bounded_Abstract_Sequence<T,T_var,MAX> &operator= ( + const TAO_Bounded_Abstract_Sequence<T,T_var,MAX> & ); /// Read-write accessor. - TAO_Abstract_Manager<T,T_var,T_life> operator[] (CORBA::ULong slot) const; + TAO_Abstract_Manager<T,T_var> operator[] (CORBA::ULong slot) const; /// Allocate storage for a sequence.. static T ** allocbuf (CORBA::ULong length); diff --git a/TAO/tao/Valuetype/Sequence_T.inl b/TAO/tao/Valuetype/Sequence_T.inl index f8bbada422e..ede1d15cf39 100644 --- a/TAO/tao/Valuetype/Sequence_T.inl +++ b/TAO/tao/Valuetype/Sequence_T.inl @@ -5,25 +5,25 @@ // Inline operations for class TAO_Valuetype_Manager // ************************************************************* -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::~TAO_Valuetype_Manager (void) +TAO_Valuetype_Manager<T,T_var>::~TAO_Valuetype_Manager (void) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::TAO_Valuetype_Manager ( - const TAO_Valuetype_Manager<T,T_var,T_life> & rhs +TAO_Valuetype_Manager<T,T_var>::TAO_Valuetype_Manager ( + const TAO_Valuetype_Manager<T,T_var> & rhs ) : ptr_ (rhs.ptr_), release_ (rhs.release_) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::TAO_Valuetype_Manager( +TAO_Valuetype_Manager<T,T_var>::TAO_Valuetype_Manager( T ** buffer, CORBA::Boolean release ) @@ -32,66 +32,66 @@ TAO_Valuetype_Manager<T,T_var,T_life>::TAO_Valuetype_Manager( { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T * -TAO_Valuetype_Manager<T,T_var,T_life>::operator-> (void) const +TAO_Valuetype_Manager<T,T_var>::operator-> (void) const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::operator const T_var () const +TAO_Valuetype_Manager<T,T_var>::operator const T_var () const { - T_life::tao_add_ref (*this->ptr_); + TAO::Value_Traits<T>::tao_add_ref (*this->ptr_); return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::operator const T * () const +TAO_Valuetype_Manager<T,T_var>::operator const T * () const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life>::operator T *& () +TAO_Valuetype_Manager<T,T_var>::operator T *& () { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T * -TAO_Valuetype_Manager<T,T_var,T_life>::in (void) const +TAO_Valuetype_Manager<T,T_var>::in (void) const { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T *& -TAO_Valuetype_Manager<T,T_var,T_life>::inout (void) +TAO_Valuetype_Manager<T,T_var>::inout (void) { return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T *& -TAO_Valuetype_Manager<T,T_var,T_life>::out (void) +TAO_Valuetype_Manager<T,T_var>::out (void) { TAO::Value_Traits<T>::tao_remove_ref (*this->ptr_); *this->ptr_ = 0; return *this->ptr_; } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE T * -TAO_Valuetype_Manager<T,T_var,T_life>::_retn (void) +TAO_Valuetype_Manager<T,T_var>::_retn (void) { T * temp = *this->ptr_; *this->ptr_ = 0; @@ -102,25 +102,25 @@ TAO_Valuetype_Manager<T,T_var,T_life>::_retn (void) // Inline operations for class TAO_Abstract_Manager // ************************************************************* -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life>::~TAO_Abstract_Manager (void) +TAO_Abstract_Manager<T,T_var>::~TAO_Abstract_Manager (void) { } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life>::TAO_Abstract_Manager ( - const TAO_Abstract_Manager<T,T_var,T_life> & rhs +TAO_Abstract_Manager<T,T_var>::TAO_Abstract_Manager ( + const TAO_Abstract_Manager<T,T_var> & rhs ) : ptr_ (rhs.ptr_), release_ (rhs.release_) { } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life>::TAO_Abstract_Manager( +TAO_Abstract_Manager<T,T_var>::TAO_Abstract_Manager( T ** buffer, CORBA::Boolean release ) @@ -129,48 +129,48 @@ TAO_Abstract_Manager<T,T_var,T_life>::TAO_Abstract_Manager( { } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE T * -TAO_Abstract_Manager<T,T_var,T_life>::operator-> (void) const +TAO_Abstract_Manager<T,T_var>::operator-> (void) const { return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life>::operator const T * () const +TAO_Abstract_Manager<T,T_var>::operator const T * () const { return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life>::operator T *& () +TAO_Abstract_Manager<T,T_var>::operator T *& () { return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE T * -TAO_Abstract_Manager<T,T_var,T_life>::in (void) const +TAO_Abstract_Manager<T,T_var>::in (void) const { return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE T *& -TAO_Abstract_Manager<T,T_var,T_life>::inout (void) +TAO_Abstract_Manager<T,T_var>::inout (void) { return *this->ptr_; } -template<typename T, typename T_var, typename T_life> +template<typename T, typename T_var> ACE_INLINE T * -TAO_Abstract_Manager<T,T_var,T_life>::_retn (void) +TAO_Abstract_Manager<T,T_var>::_retn (void) { T * temp = *this->ptr_; *this->ptr_ = 0; @@ -181,19 +181,17 @@ TAO_Abstract_Manager<T,T_var,T_life>::_retn (void) // class TAO_Unbounded_Valuetype_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Valuetype_Sequence ( +TAO_Unbounded_Valuetype_Sequence<T,T_var>::TAO_Unbounded_Valuetype_Sequence ( void ) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Valuetype_Sequence ( +TAO_Unbounded_Valuetype_Sequence<T,T_var>::TAO_Unbounded_Valuetype_Sequence ( CORBA::ULong maximum, CORBA::ULong length, T ** value, @@ -203,36 +201,34 @@ TAO_Unbounded_Valuetype_Sequence ( { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life> -TAO_Unbounded_Valuetype_Sequence<T,T_var,T_life>::operator[] ( +TAO_Valuetype_Manager<T,T_var> +TAO_Unbounded_Valuetype_Sequence<T,T_var>::operator[] ( CORBA::ULong slot ) const { ACE_ASSERT (slot < this->maximum_); T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); - return TAO_Valuetype_Manager<T,T_var,T_life> (tmp + slot, this->release_); + return TAO_Valuetype_Manager<T,T_var> (tmp + slot, this->release_); } // ************************************************************* // class TAO_Bounded_Valuetype_Sequence // ************************************************************* -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>:: -~TAO_Bounded_Valuetype_Sequence ( +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::~TAO_Bounded_Valuetype_Sequence ( void ) { this->_deallocate_buffer (); } -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Valuetype_Sequence ( +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::TAO_Bounded_Valuetype_Sequence ( CORBA::ULong length, T **value, CORBA::Boolean release @@ -241,33 +237,33 @@ TAO_Bounded_Valuetype_Sequence ( { } -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Valuetype_Manager<T,T_var,T_life> -TAO_Bounded_Valuetype_Sequence<T,T_var,T_life,MAX>::operator[] ( +TAO_Valuetype_Manager<T,T_var> +TAO_Bounded_Valuetype_Sequence<T,T_var,MAX>::operator[] ( CORBA::ULong slot ) const { ACE_ASSERT (slot < this->maximum_); T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); - return TAO_Valuetype_Manager<T,T_var,T_life> (tmp + slot, this->release_); + return TAO_Valuetype_Manager<T,T_var> (tmp + slot, this->release_); } // ************************************************************* // class TAO_Unbounded_Abstract_Sequence // ************************************************************* -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Abstract_Sequence (void) +TAO_Unbounded_Abstract_Sequence<T,T_var>::TAO_Unbounded_Abstract_Sequence ( + void + ) { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>:: -TAO_Unbounded_Abstract_Sequence ( +TAO_Unbounded_Abstract_Sequence<T,T_var>::TAO_Unbounded_Abstract_Sequence ( CORBA::ULong maximum, CORBA::ULong length, T ** value, @@ -277,34 +273,34 @@ TAO_Unbounded_Abstract_Sequence ( { } -template <typename T, typename T_var, typename T_life> +template <typename T, typename T_var> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life> -TAO_Unbounded_Abstract_Sequence<T,T_var,T_life>::operator[] ( +TAO_Abstract_Manager<T,T_var> +TAO_Unbounded_Abstract_Sequence<T,T_var>::operator[] ( CORBA::ULong slot ) const { ACE_ASSERT (slot < this->maximum_); T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); - return TAO_Abstract_Manager<T,T_var,T_life> (tmp + slot, this->release_); + return TAO_Abstract_Manager<T,T_var> (tmp + slot, this->release_); } // ************************************************************* // class TAO_Bounded_Abstract_Sequence // ************************************************************* -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>:: -~TAO_Bounded_Abstract_Sequence (void) +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::~TAO_Bounded_Abstract_Sequence ( + void + ) { this->_deallocate_buffer (); } -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>:: -TAO_Bounded_Abstract_Sequence ( +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::TAO_Bounded_Abstract_Sequence ( CORBA::ULong length, T ** value, CORBA::Boolean release @@ -313,14 +309,14 @@ TAO_Bounded_Abstract_Sequence ( { } -template<typename T, typename T_var, typename T_life, size_t MAX> +template<typename T, typename T_var, size_t MAX> ACE_INLINE -TAO_Abstract_Manager<T,T_var,T_life> -TAO_Bounded_Abstract_Sequence<T,T_var,T_life,MAX>::operator[] ( +TAO_Abstract_Manager<T,T_var> +TAO_Bounded_Abstract_Sequence<T,T_var,MAX>::operator[] ( CORBA::ULong slot ) const { ACE_ASSERT (slot < this->maximum_); T ** const tmp = ACE_reinterpret_cast (T ** ACE_CAST_CONST, this->buffer_); - return TAO_Abstract_Manager<T,T_var,T_life> (tmp + slot, this->release_); + return TAO_Abstract_Manager<T,T_var> (tmp + slot, this->release_); } diff --git a/TAO/tao/Valuetype/ValueBase.cpp b/TAO/tao/Valuetype/ValueBase.cpp index 84c747280e4..d07857e479c 100644 --- a/TAO/tao/Valuetype/ValueBase.cpp +++ b/TAO/tao/Valuetype/ValueBase.cpp @@ -48,20 +48,6 @@ CORBA::remove_ref (CORBA::ValueBase *val) } } -// =========================================================== - -void -CORBA::tao_ValueBase_life::tao_add_ref (ValueBase *p) -{ - CORBA::add_ref (p); -} - -void -CORBA::tao_ValueBase_life::tao_remove_ref (ValueBase *p) -{ - CORBA::remove_ref (p); -} - // *********************************************************************** CORBA::ValueBase::ValueBase (void) diff --git a/TAO/tao/Valuetype/ValueBase.h b/TAO/tao/Valuetype/ValueBase.h index 0c36015f1fd..bd4a460118b 100644 --- a/TAO/tao/Valuetype/ValueBase.h +++ b/TAO/tao/Valuetype/ValueBase.h @@ -43,14 +43,8 @@ namespace CORBA extern TAO_Valuetype_Export void add_ref (ValueBase *); extern TAO_Valuetype_Export void remove_ref (ValueBase *); - typedef TAO_Value_Var_T<ValueBase, tao_ValueBase_life> ValueBase_var; - typedef TAO_Value_Out_T<ValueBase, tao_ValueBase_life> ValueBase_out; - - struct TAO_Valuetype_Export tao_ValueBase_life - { - static void tao_add_ref (ValueBase *); - static void tao_remove_ref (ValueBase *); - }; + typedef TAO_Value_Var_T<ValueBase> ValueBase_var; + typedef TAO_Value_Out_T<ValueBase> ValueBase_out; /** * @class ValueBase diff --git a/TAO/tao/Valuetype/ValueFactory.cpp b/TAO/tao/Valuetype/ValueFactory.cpp index 895fb166cfc..8308d0f8901 100644 --- a/TAO/tao/Valuetype/ValueFactory.cpp +++ b/TAO/tao/Valuetype/ValueFactory.cpp @@ -31,20 +31,6 @@ CORBA::remove_ref (CORBA::ValueFactoryBase *val) // =========================================================== -void -CORBA::tao_ValueFactoryBase_life::tao_add_ref (ValueFactoryBase *p) -{ - CORBA::add_ref (p); -} - -void -CORBA::tao_ValueFactoryBase_life::tao_remove_ref (ValueFactoryBase *p) -{ - CORBA::remove_ref (p); -} - -// =========================================================== - CORBA::ValueFactoryBase::ValueFactoryBase (void) : _tao_reference_count_ (1) { diff --git a/TAO/tao/Valuetype/ValueFactory.h b/TAO/tao/Valuetype/ValueFactory.h index 59183a72d0f..e2a941ea54f 100644 --- a/TAO/tao/Valuetype/ValueFactory.h +++ b/TAO/tao/Valuetype/ValueFactory.h @@ -33,17 +33,11 @@ namespace CORBA extern TAO_Valuetype_Export void add_ref (ValueFactoryBase *); extern TAO_Valuetype_Export void remove_ref (ValueFactoryBase *); - typedef TAO_Value_Var_T<ValueFactoryBase, - tao_ValueFactoryBase_life> + typedef TAO_Value_Var_T<ValueFactoryBase> ValueFactoryBase_var; typedef ValueFactoryBase_var ValueFactory_var; - struct TAO_Valuetype_Export tao_ValueFactoryBase_life - { - static void tao_add_ref (ValueFactoryBase *); - static void tao_remove_ref (ValueFactoryBase *); - }; class TAO_Valuetype_Export ValueFactoryBase { diff --git a/TAO/tao/Valuetype/Value_VarOut_T.cpp b/TAO/tao/Valuetype/Value_VarOut_T.cpp index 6b3bbb8b541..34831929326 100644 --- a/TAO/tao/Valuetype/Value_VarOut_T.cpp +++ b/TAO/tao/Valuetype/Value_VarOut_T.cpp @@ -25,55 +25,55 @@ TAO::Value_Traits<T>::tao_remove_ref (T * p) // =============================================================== -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::TAO_Value_Var_T (void) +template <typename T> +TAO_Value_Var_T<T>::TAO_Value_Var_T (void) : ptr_ (0) {} -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::TAO_Value_Var_T (T * p) +template <typename T> +TAO_Value_Var_T<T>::TAO_Value_Var_T (T * p) : ptr_ (p) {} -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::TAO_Value_Var_T (const T * p) +template <typename T> +TAO_Value_Var_T<T>::TAO_Value_Var_T (const T * p) : ptr_ (ACE_const_cast (T *, p)) {} -template <typename T, typename T_life> +template <typename T> T * -TAO_Value_Var_T<T,T_life>::ptr (void) const +TAO_Value_Var_T<T>::ptr (void) const { return this->ptr_; } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::TAO_Value_Var_T ( - const TAO_Value_Var_T<T,T_life> & p +template <typename T> +TAO_Value_Var_T<T>::TAO_Value_Var_T ( + const TAO_Value_Var_T<T> & p ) { TAO::Value_Traits<T>::tao_add_ref (p.ptr ()); this->ptr_ = p.ptr (); } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::~TAO_Value_Var_T (void) +template <typename T> +TAO_Value_Var_T<T>::~TAO_Value_Var_T (void) { TAO::Value_Traits<T>::tao_remove_ref (this->ptr_); } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life> & -TAO_Value_Var_T<T,T_life>::operator= (T * p) +template <typename T> +TAO_Value_Var_T<T> & +TAO_Value_Var_T<T>::operator= (T * p) { TAO::Value_Traits<T>::tao_remove_ref (this->ptr_); this->ptr_ = p; return *this; } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life> & -TAO_Value_Var_T<T,T_life>::operator= (const TAO_Value_Var_T & p) +template <typename T> +TAO_Value_Var_T<T> & +TAO_Value_Var_T<T>::operator= (const TAO_Value_Var_T & p) { if (this != &p) { @@ -86,51 +86,51 @@ TAO_Value_Var_T<T,T_life>::operator= (const TAO_Value_Var_T & p) return *this; } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::operator const T * () const +template <typename T> +TAO_Value_Var_T<T>::operator const T * () const { return this->ptr_; } -template <typename T, typename T_life> -TAO_Value_Var_T<T,T_life>::operator T *& () +template <typename T> +TAO_Value_Var_T<T>::operator T *& () { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Value_Var_T<T,T_life>::operator-> (void) const +TAO_Value_Var_T<T>::operator-> (void) const { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Value_Var_T<T,T_life>::in (void) const +TAO_Value_Var_T<T>::in (void) const { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Value_Var_T<T,T_life>::inout (void) +TAO_Value_Var_T<T>::inout (void) { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Value_Var_T<T,T_life>::out (void) +TAO_Value_Var_T<T>::out (void) { TAO::Value_Traits<T>::tao_remove_ref (this->ptr_); this->ptr_ = 0; return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Value_Var_T<T,T_life>::_retn (void) +TAO_Value_Var_T<T>::_retn (void) { T * tmp = this->ptr_; this->ptr_ = 0; @@ -139,37 +139,37 @@ TAO_Value_Var_T<T,T_life>::_retn (void) // ************************************************************* -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life>::TAO_Value_Out_T (T *& p) +template <typename T> +TAO_Value_Out_T<T>::TAO_Value_Out_T (T *& p) : ptr_ (p) { this->ptr_ = 0; } -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life>::TAO_Value_Out_T (TAO_Value_Var_T<T,T_life> & p) +template <typename T> +TAO_Value_Out_T<T>::TAO_Value_Out_T (TAO_Value_Var_T<T> & p) : ptr_ (p.out ()) { TAO::Value_Traits<T>::tao_remove_ref (this->ptr_); this->ptr_ = 0; } -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life>::TAO_Value_Out_T (const TAO_Value_Out_T<T,T_life> & p) +template <typename T> +TAO_Value_Out_T<T>::TAO_Value_Out_T (const TAO_Value_Out_T<T> & p) : ptr_ (ACE_const_cast (THIS_OUT_TYPE &, p).ptr_) {} -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life> & -TAO_Value_Out_T<T,T_life>::operator= (const TAO_Value_Out_T<T,T_life> & p) +template <typename T> +TAO_Value_Out_T<T> & +TAO_Value_Out_T<T>::operator= (const TAO_Value_Out_T<T> & p) { this->ptr_ = ACE_const_cast (THIS_OUT_TYPE &, p).ptr_; return *this; } -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life> & -TAO_Value_Out_T<T,T_life>::operator= (const TAO_Value_Var_T<T,T_life> & p) +template <typename T> +TAO_Value_Out_T<T> & +TAO_Value_Out_T<T>::operator= (const TAO_Value_Var_T<T> & p) { T * tmp = p.ptr (); TAO::Value_Traits<T>::tao_add_ref (tmp); @@ -177,30 +177,30 @@ TAO_Value_Out_T<T,T_life>::operator= (const TAO_Value_Var_T<T,T_life> & p) return *this; } -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life> & -TAO_Value_Out_T<T,T_life>::operator= (T * p) +template <typename T> +TAO_Value_Out_T<T> & +TAO_Value_Out_T<T>::operator= (T * p) { this->ptr_ = p; return *this; } -template <typename T, typename T_life> -TAO_Value_Out_T<T,T_life>::operator T *& () +template <typename T> +TAO_Value_Out_T<T>::operator T *& () { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T *& -TAO_Value_Out_T<T,T_life>::ptr (void) +TAO_Value_Out_T<T>::ptr (void) { return this->ptr_; } -template <typename T, typename T_life> +template <typename T> T * -TAO_Value_Out_T<T,T_life>::operator-> (void) +TAO_Value_Out_T<T>::operator-> (void) { return this->ptr_; } diff --git a/TAO/tao/Valuetype/Value_VarOut_T.h b/TAO/tao/Valuetype/Value_VarOut_T.h index 320542876db..7f869aecd6c 100644 --- a/TAO/tao/Valuetype/Value_VarOut_T.h +++ b/TAO/tao/Valuetype/Value_VarOut_T.h @@ -42,13 +42,13 @@ namespace TAO * @brief Parametrized implementation of _var class for valuetypes. * */ -template <typename T, typename T_life> +template <typename T> class TAO_Value_Var_T { public: TAO_Value_Var_T (void); TAO_Value_Var_T (T *); - TAO_Value_Var_T (const TAO_Value_Var_T<T,T_life> &); + TAO_Value_Var_T (const TAO_Value_Var_T<T> &); // (TAO extension) TAO_Value_Var_T (const T *); @@ -56,7 +56,7 @@ public: ~TAO_Value_Var_T (void); TAO_Value_Var_T &operator= (T *); - TAO_Value_Var_T &operator= (const TAO_Value_Var_T<T,T_life> &); + TAO_Value_Var_T &operator= (const TAO_Value_Var_T<T> &); T * operator-> (void) const; @@ -82,16 +82,16 @@ private: * @brief Parametrized implementation of _out class for valuetypes. * */ -template <typename T, typename T_life> +template <typename T> class TAO_Value_Out_T { public: TAO_Value_Out_T (T *&); - TAO_Value_Out_T (TAO_Value_Var_T<T,T_life> &); - TAO_Value_Out_T (const TAO_Value_Out_T<T,T_life> &); + TAO_Value_Out_T (TAO_Value_Var_T<T> &); + TAO_Value_Out_T (const TAO_Value_Out_T<T> &); - TAO_Value_Out_T &operator= (const TAO_Value_Out_T<T,T_life> &); - TAO_Value_Out_T &operator= (const TAO_Value_Var_T<T,T_life> &); + TAO_Value_Out_T &operator= (const TAO_Value_Out_T<T> &); + TAO_Value_Out_T &operator= (const TAO_Value_Var_T<T> &); TAO_Value_Out_T &operator= (T *); operator T *& (); @@ -100,7 +100,7 @@ public: T * operator-> (void); private: - typedef TAO_Value_Out_T<T, T_life> THIS_OUT_TYPE; + typedef TAO_Value_Out_T<T> THIS_OUT_TYPE; T *& ptr_; }; diff --git a/TAO/tao/Var_Array_Argument_T.h b/TAO/tao/Var_Array_Argument_T.h index f42814838c8..6ce9cc7ad7d 100644 --- a/TAO/tao/Var_Array_Argument_T.h +++ b/TAO/tao/Var_Array_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S & arg (void) const; + private: S_forany x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: S_forany x_; }; @@ -84,6 +88,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S_slice *& arg (void); + private: S_slice *& x_; }; @@ -108,6 +114,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S_slice *& arg (void); + S_slice * excp (void); S_slice * retn (void); diff --git a/TAO/tao/Var_Array_Argument_T.inl b/TAO/tao/Var_Array_Argument_T.inl index 2c6153bb378..ff094ac9bad 100644 --- a/TAO/tao/Var_Array_Argument_T.inl +++ b/TAO/tao/Var_Array_Argument_T.inl @@ -7,6 +7,14 @@ In_Var_Array_Argument_T (const S x) : x_ ((S_slice *) x) {} +template<typename S, typename S_slice, typename S_forany> +ACE_INLINE +const S & +TAO::In_Var_Array_Argument_T<S,S_slice,S_forany>::arg (void) const +{ + return this->x_.in (); +} + // ========================================================================== template<typename S, typename S_forany> @@ -17,6 +25,14 @@ TAO::Inout_Var_Array_Argument_T<S,S_forany>::Inout_Var_Array_Argument_T ( : x_ (x) {} +template<typename S, typename S_forany> +ACE_INLINE +S & +TAO::Inout_Var_Array_Argument_T<S,S_forany>::arg (void) +{ + return this->x_.inout (); +} + // ========================================================================== template<typename S, @@ -31,6 +47,18 @@ Out_Var_Array_Argument_T (S_out x) { } +template<typename S, + typename S_slice, + typename S_var, + typename S_out, + typename S_forany> +ACE_INLINE +S_slice *& +TAO::Out_Var_Array_Argument_T<S,S_slice,S_var,S_out,S_forany>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, typename S_slice, typename S_var, typename S_forany> @@ -41,6 +69,14 @@ Ret_Var_Array_Argument_T (void) template<typename S, typename S_slice, typename S_var, typename S_forany> ACE_INLINE +S_slice *& +TAO::Ret_Var_Array_Argument_T<S,S_slice,S_var,S_forany>::arg (void) +{ + return this->x_.out (); +} + +template<typename S, typename S_slice, typename S_var, typename S_forany> +ACE_INLINE S_slice * TAO::Ret_Var_Array_Argument_T<S,S_slice,S_var,S_forany>::excp (void) { diff --git a/TAO/tao/Var_Size_Argument_T.h b/TAO/tao/Var_Size_Argument_T.h index 7d48c9aadde..19ca7f03982 100644 --- a/TAO/tao/Var_Size_Argument_T.h +++ b/TAO/tao/Var_Size_Argument_T.h @@ -40,6 +40,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + const S & arg (void) const; + private: const S * x_; }; @@ -62,6 +64,8 @@ namespace TAO virtual void interceptor_param (Dynamic::Parameter &); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S & arg (void); + private: S * x_; }; @@ -80,6 +84,8 @@ namespace TAO virtual CORBA::Boolean demarshal (TAO_InputCDR &); + S *& arg (void); + private: S *& x_; }; @@ -101,6 +107,8 @@ namespace TAO virtual void interceptor_result (CORBA::Any *); virtual CORBA::Boolean interceptor_replace (CORBA::Any &); + S *& arg (void); + S * excp (void); S * retn (void); diff --git a/TAO/tao/Var_Size_Argument_T.inl b/TAO/tao/Var_Size_Argument_T.inl index 7d0142c4ee4..5a39bcf2b7b 100644 --- a/TAO/tao/Var_Size_Argument_T.inl +++ b/TAO/tao/Var_Size_Argument_T.inl @@ -6,6 +6,14 @@ TAO::In_Var_Size_Argument_T<S>::In_Var_Size_Argument_T (S const & x) : x_ (&x) {} +template<typename S> +ACE_INLINE +const S & +TAO::In_Var_Size_Argument_T<S>::arg (void) const +{ + return *this->x_; +} + // ========================================================================== template<typename S> @@ -14,6 +22,14 @@ TAO::Inout_Var_Size_Argument_T<S>::Inout_Var_Size_Argument_T (S & x) : x_ (&x) {} +template<typename S> +ACE_INLINE +S & +TAO::Inout_Var_Size_Argument_T<S>::arg (void) +{ + return *this->x_; +} + // ========================================================================== template<typename S, typename S_out> @@ -22,6 +38,14 @@ TAO::Out_Var_Size_Argument_T<S,S_out>::Out_Var_Size_Argument_T (S_out x) : x_ (x.ptr ()) {} +template<typename S, typename S_out> +ACE_INLINE +S *& +TAO::Out_Var_Size_Argument_T<S,S_out>::arg (void) +{ + return this->x_; +} + // ========================================================================== template<typename S, typename S_var> @@ -31,6 +55,14 @@ TAO::Ret_Var_Size_Argument_T<S,S_var>::Ret_Var_Size_Argument_T (void) template<typename S, typename S_var> ACE_INLINE +S *& +TAO::Ret_Var_Size_Argument_T<S,S_var>::arg (void) +{ + return this->x_.out (); +} + +template<typename S, typename S_var> +ACE_INLINE S * TAO::Ret_Var_Size_Argument_T<S,S_var>::excp (void) { |