Go to the documentation of this file. 24 * @file TypeConversion.h 25 * @brief doil-CORBA type conversion 27 * @author This file was automatically generated from [idl_fname] 28 * by omniidl/doil backend 33 #ifndef [typeconv_include_guard] 34 #define [typeconv_include_guard] 37 [for inc in include_h] 41 #include <[types_h_path]> 43 [for decl in declarations] 47 #endif // [typeconv_include_guard] 53 * @file TypeConversion.h 54 * @brief doil-CORBA type conversion 56 * @author This file was automatically generated from [idl_fname] 57 * by omniidl/doil backend 62 #include <doil/corba/BasicTypeConversion.h> 63 #include <[typeconv_h_path]> 64 #include <doil/corba/SeqTypeConversion.h> 65 #include <doil/corba/CORBAManager.h> 68 [if node.corba.decl_type is "interface"] 69 #include <[node.local.iface_h_path]> 73 [for impl in implementations] 77 // end of TypeConversion 85 // corba object -> local object 87 corba_to_local([corba.name_fq]_ptr _from, 88 [local.iface_name_fq]* _to); 90 // local object -> corba object 92 local_to_corba([local.iface_name_fq]* _from, 93 [corba.name_fq]_ptr _to); 99 object_conv_cpp =
"""\ 100 // corba object -> local object 102 corba_to_local([corba.name_fq]_ptr _from, 103 [local.iface_name_fq]* _to) 105 doil::LocalBase* lobj; 106 lobj = doil::CORBA::CORBAManager::instance().toLocal((::CORBA::Object_ptr&)_from); 107 if (lobj == NULL) return false; 108 _to = dynamic_cast< [local.iface_name_fq]* >(lobj); 109 if (_to == NULL) return false; 113 // local object -> corba object 115 local_to_corba([local.iface_name_fq]* _from, 116 [corba.name_fq]_ptr _to) 118 CORBA::Object_ptr obj; 119 obj = doil::CORBA::CORBAManager::instance().toReference((doil::LocalBase*)_from); 120 _to = [corba.name_fq]::_narrow(obj); 121 if (CORBA::is_nil(_to)) return false; 130 // struct corba -> local 132 corba_to_local(const [corba.name_fq]& _from, 133 [local.name_fq]& _to); 135 // struct local -> corba 137 local_to_corba(const [local.name_fq]& _from, 138 [corba.name_fq]& _to); 143 struct_conv_cpp =
"""\ 144 // struct corba -> local 146 corba_to_local(const [corba.name_fq]& _from, 147 [local.name_fq]& _to) 150 [if mem.corba.tk is "tk_objref"] 151 if (!corba_to_local(([mem.corba.base_type]&)_from.[mem.corba.member_name], 152 _to.[mem.local.member_name])) 154 if (!corba_to_local(_from.[mem.corba.member_name], 155 _to.[mem.local.member_name])) 162 // struct local -> corba 164 local_to_corba(const [local.name_fq]& _from, 165 [corba.name_fq]& _to) 168 [if mem.corba.tk is "tk_objref"] 169 if (!local_to_corba(_from.[mem.local.member_name], 170 ([mem.corba.base_type]&)_to.[mem.corba.member_name])) 172 if (!local_to_corba(_from.[mem.local.member_name], 173 _to.[mem.corba.member_name])) 185 // union corba -> local 187 corba_to_local(const [local.name_fq]& _from, 188 [corba.name_fq]& _to); 190 // union local -> corba 192 corba_to_local(const [corba.name_fq]& _from, 193 [local.name_fq]& _to); 199 union_conv_cpp =
"""\ 200 // union corba -> local 202 corba_to_local(const [corba.name_fq]& _from, 203 [local.name_fq]& _to) 208 case [cas.corba.discriminator_fq] : 210 [cas.local.case_type] l[cas.local.case_member]; 211 [cas.corba.case_type] c[cas.corba.case_member]; 212 c[cas.corba.case_member] = _from.[cas.corba.case_member](); 213 corba_to_local(c[cas.corba.case_member], l[cas.local.case_member]); 214 _to.set_[cas.local.case_member](l[cas.local.case_member]); 224 // union local -> corba 226 local_to_corba(const [local.name_fq]& _from, 227 [corba.name_fq]& _to) 229 switch (_from.get_type()) 232 case [cas.local.discriminator_fq] : 234 [cas.corba.case_type] c[cas.corba.case_member]; 235 [cas.local.case_type] l[cas.local.case_member]; 236 l[cas.local.case_member] = _from.get_[cas.corba.case_member](); 237 local_to_corba(l[cas.local.case_member], c[cas.corba.case_member]); 238 _to.[cas.local.case_member](c[cas.corba.case_member]); 253 // enum corba -> local 255 corba_to_local(const [corba.name_fq]& _from, 256 [local.name_fq]& _to) 258 _to = [local.name_fq]((long)_from); 262 // enum local -> corba 264 local_to_corba(const [local.name_fq]& _from, 265 [corba.name_fq]& _to) 267 _to = [corba.name_fq]((long)_from); 278 exception_conv_h =
"""\ 279 // exxception corba -> local 281 corba_to_local(const [local.name_fq]& _from, 282 [corba.name_fq]& _to); 284 // exception local -> corba 286 corba_to_local(const [corba.name_fq]& _from, 287 [local.name_fq]& _to); 290 exception_conv_cpp =
"""\ 291 // exception corba -> local 293 corba_to_local(const [corba.name_fq]& _from, 294 [local.name_fq]& _to) 297 if (!corba_to_local(_from.[mem.corba.member_name], 298 _to.[mem.local.member_name])) 304 // exception local -> corba 306 local_to_corba(const [local.name_fq]& _from, 307 [corba.name_fq]& _to) 310 if (!local_to_corba(_from.[mem.local.member_name], 311 _to.[mem.corba.member_name])) 321 typedef_decl_h =
"""\ 322 [if corba.tk is "tk_alias"][elif corba.tk is "tk_string"][elif corba.tk is "tk_long"][else] 323 // typedef corba -> local : [corba.tk] 325 corba_to_local(const [corba.derived_type_fq]& _from, 326 [local.derived_type_fq]& _to); 328 // typedef local -> corba : [corba.tk] 330 local_to_corba(const [local.derived_type_fq]& _from, 331 [corba.derived_type_fq]& _to); 337 typedef_dec_cpp =
"""\ 338 [if corba.tk is "tk_alias"][elif corba.tk is "tk_string"][elif corba.tk is "tk_long"][else] 339 // typedef corba -> local : [corba.tk] 341 corba_to_local(const [corba.derived_type_fq]& _from, 342 [local.derived_type_fq]& _to) 344 [if corba.tk is "tk_sequence"] 345 return corba_to_local_seq< [corba.derived_type_fq], 346 [corba.element_type_fq], 347 [local.derived_type_fq], 348 [local.element_type_fq] >(_from, _to); 349 [elif corba.tk is "tk_enum"] 350 _to = [corba.derived_type_fq]((long)_from); 352 [elif corba.tk is "tk_string"] 353 return corba_to_local((const [corba.base_type])_from, 354 ([local.base_type]&)_to); 356 [if-any corba.is_primitive] 359 return corba_to_local((const [corba.base_type])_from, 360 ([local.base_type]&)_to); 365 // typedef local -> corba : [corba.tk] 367 local_to_corba(const [local.derived_type_fq]& _from, 368 [corba.derived_type_fq]& _to) 370 [if corba.tk is "tk_sequence"] 371 return local_to_corba_seq< [local.derived_type_fq], 372 [local.element_type_fq], 373 [corba.derived_type_fq], 374 [corba.element_type_fq] >(_from, _to); 375 [elif corba.tk is "tk_enum"] 376 _to = [corba.derived_type]((CORBA::Long)rhs); 378 [elif corba.tk is "tk_string"] 379 return local_to_corba((const [local.base_type]&)_from, 380 ([corba.base_type])_to); 382 [if-any corba.is_primitive] 385 return local_to_corba(([local.base_type])_from, 386 ([corba.base_type]&)_to); 408 * @file [local.servant_h] 409 * @brief [local.servant_name] CORBA servant for doil 411 * @author This file was automatically generated from [idl_fname] 412 * by omniidl/doil backend 416 #ifndef [local.servant_include_guard] 417 #define [local.servant_include_guard] 419 #include <coil/Properties.h> 420 #include <doil/corba/CORBAServantBase.h> 421 #include <doil/corba/BasicTypeConversion.h> 422 [for inc in include_h] 425 [for inc in inherits] 426 #include <[inc.local.servant_h]> 429 #include <[types_h_path]> 436 // interface class forward declaration 437 [for ns in local.iface_ns] 441 class [local.iface_name]; 442 [for-inv ns in local.iface_ns] 448 [for ns in local.servant_ns] 453 class [local.servant_name] 454 : public virtual [corba.name_poa], 455 [for inc in inherits] 456 public virtual [inc.local.servant_name_fq], 458 public virtual ::doil::CORBA::CORBAServantBase 461 [local.servant_name](doil::ImplBase* impl); 462 virtual ~[local.servant_name](); 464 [for op in operations] 465 virtual [op.return.corba.retn_type] [op.name] 467 [if-index a is last][a.corba.arg_type] [a.corba.arg_name] 468 [else][a.corba.arg_type] [a.corba.arg_name], [endif] 473 [local.iface_name_fq]* m_impl; 476 [for-inv ns in local.servant_ns] 482 void [local.servant_name]CORBAInit(coil::Properties& prop); 485 #endif // [local.servant_include_guard] 502 * @file [local.servant_cpp] 503 * @brief [local.iface_name] CORBA servant for doil 505 * @author This file was automatically generated from [idl_fname] 506 * by omniidl/doil backend 511 #include <doil/ImplBase.h> 512 #include <doil/corba/CORBAManager.h> 513 #include <[local.iface_h_path]> 514 #include <[local.servant_h_path]> 515 #include <[typeconv_h_path]> 517 [for ns in local.servant_ns] 524 [local.servant_name]::[local.servant_name](doil::ImplBase* impl) 525 : ::doil::CORBA::CORBAServantBase(impl), m_impl(NULL)[for inc in inherits], 526 [inc.local.servant_name_fq](impl)[endfor] 528 m_impl = dynamic_cast< [local.iface_name_fq]* >(impl); 529 if (m_impl == NULL) throw std::bad_alloc(); 536 [local.servant_name]::~[local.servant_name]() 541 [for op in operations] 546 [op.return.corba.retn_type] [local.servant_name]::[op.name] 548 [if-index a is last][a.corba.arg_type] [a.corba.arg_name] 549 [else][a.corba.arg_type] [a.corba.arg_name], [endif] 553 [a.local.var_type] [a.local.var_name]; 556 [for a in op.args][if a.corba.direction is "out"][else] 557 [if-any a.corba.is_primitive] 558 [a.local.var_name] = [a.corba.arg_name]; 560 corba_to_local([a.corba.arg_name], [a.local.var_name]); 564 [if op.return.corba.tk is "tk_void"] 565 [elif op.return.corba.tk is "tk_any"] 566 [op.return.local.retn_type] local_ret; 567 [op.return.corba.retn_type] corba_ret = 568 new [op.return.corba.base_type] (); 570 [elif op.return.corba.tk is "tk_struct"] 571 [op.return.local.retn_type] local_ret; 572 [op.return.corba.retn_type] corba_ret = 573 new [op.return.corba.base_type] (); 575 [elif op.return.corba.tk is "tk_alias"] 576 [if op.return.corba.deref_tk is "tk_long"] 577 [op.return.local.retn_type] local_ret; 578 [op.return.corba.retn_type] corba_ret; 580 [elif op.return.corba.deref_tk is "tk_string"] 581 [op.return.local.retn_type] local_ret; 582 [op.return.corba.retn_type] corba_ret; 585 [op.return.local.retn_type] local_ret; 586 [op.return.corba.retn_type] corba_ret = 587 new [op.return.corba.base_type] (); 591 [op.return.local.retn_type] local_ret; 592 [op.return.corba.retn_type] corba_ret; 596 ([for a in op.args][if-index a is last][a.local.var_name][else][a.local.var_name], [endif][endfor]); 598 [for a in op.args][if a.corba.direction is "in"][else] 599 local_to_corba([a.local.var_name], [a.corba.arg_name]); 601 [if op.return.corba.tk is "tk_void"][else] 602 [if op.return.corba.tk is "tk_any"] 603 local_to_corba(local_ret, *corba_ret); 604 [elif op.return.corba.tk is "tk_struct"] 605 local_to_corba(local_ret, *corba_ret); 606 [elif op.return.corba.tk is "tk_alias"] 607 [if op.return.corba.deref_tk is "tk_long"] 608 local_to_corba(local_ret, corba_ret); 609 [elif op.return.corba.deref_tk is "tk_string"] 610 local_to_corba(local_ret, corba_ret); 612 local_to_corba(local_ret, *corba_ret); 615 [if-any op.return.corba.is_primitive] 616 corba_ret = local_ret; 618 local_to_corba(local_ret, corba_ret); 626 [for-inv ns in local.servant_ns] 632 void [local.servant_name]CORBAInit(coil::Properties& prop) 634 doil::CORBA::CORBAManager& mgr(doil::CORBA::CORBAManager::instance()); 635 mgr.registerFactory("[local.servant_name]", 636 doil::New< [local.servant_name_fq] >, 637 doil::Delete< [local.servant_name_fq] >); 649 * @file [local.adapter_h] 650 * @brief [local.adapter_name] CORBA adapter for doil 652 * @author This file was automatically generated from [idl_fname] 653 * by omniidl/doil backend 657 #ifndef [local.adapter_include_guard] 658 #define [local.adapter_include_guard] 660 #include <coil/Properties.h> 661 #include <coil/Mutex.h> 662 #include <coil/Guard.h> 663 #include <doil/corba/CORBAManager.h> 664 #include <doil/ImplBase.h> 665 #include <[local.iface_h]> 666 [for inc in inherits] 667 #include <[inc.local.adapter_h]> 669 [for inc in include_h] 674 [for ns in local.adapter_ns] 679 class [local.adapter_name] 680 : public virtual ::doil::LocalBase, 681 [for inc in inherits] 682 public virtual [inc.local.adapter_name_fq], 684 public virtual [local.iface_name_fq] 687 typedef coil::Mutex Mutex; 688 typedef coil::Guard<Mutex> Guard; 690 [local.adapter_name](::CORBA::Object_ptr obj); 691 virtual ~[local.adapter_name](); 693 [for op in operations] 694 virtual [op.return.local.retn_type] [op.name] 696 [if-index a is last][a.local.arg_type] [a.local.arg_name] 697 [else][a.local.arg_type] [a.local.arg_name], [endif] 699 throw ([for raise in op.raises] 700 [if-index raise is first] 701 [raise.local.name_fq] 704 [raise.local.name_fq] 712 const char* id() {return "[corba.idl_name]";} 713 const char* name() {return m_name.c_str();} 716 Guard guard(m_refcountMutex); 721 Guard guard(m_refcountMutex); 728 [corba.name_fq]_ptr m_obj; 730 Mutex m_refcountMutex; 734 [for ns in local.adapter_ns] 738 #ifndef [local.servant_include_guard] 741 #endif // [local.servant_include_guard] 746 void [local.adapter_name]CORBAInit(coil::Properties& prop); 749 #endif // [local.adapter_include_guard] 757 * @file [local.adapter_cpp] 758 * @brief [local.iface_name] CORBA adapter for doil 760 * @author This file was automatically generated form [idl_fname] 761 * by omniidl/doil backend 766 #include <doil/ImplBase.h> 767 #include <doil/corba/CORBAManager.h> 768 #include <[local.iface_h_path]> 769 #include <[local.adapter_h_path]> 770 #include <[typeconv_h_path]> 771 #include <doil/corba/BasicTypeConversion.h> 773 [for ns in local.adapter_ns] 780 [local.adapter_name]::[local.adapter_name](::CORBA::Object_ptr obj) 781 : m_obj([corba.name_fq]::_nil()), 782 m_refcount(1)[for inc in inherits], 783 [inc.local.adapter_name_fq](obj)[endfor] 786 m_obj = [corba.name_fq]::_narrow(obj); 787 if (::CORBA::is_nil(m_obj)) throw std::bad_alloc(); 788 m_obj = [corba.name_fq]::_duplicate(m_obj); 794 [local.adapter_name]::~[local.adapter_name]() 796 ::CORBA::release(m_obj); 799 [for op in operations] 804 [op.return.local.retn_type] [local.adapter_name]::[op.name] 806 [if-index a is last][a.local.arg_type] [a.local.arg_name] 807 [else][a.local.arg_type] [a.local.arg_name], [endif] 809 throw ([for raise in op.raises] 810 [if-index raise is first] 811 [raise.local.name_fq] 814 [raise.local.name_fq] 819 // Convert Local to CORBA. 820 // (The direction of the argument is 'in' or 'inout'.) 822 [a.corba.base_type] [a.corba.var_name]; 824 [for a in op.args][if a.local.direction is "out"][else] 825 [if-any a.corba.is_primitive] 826 [a.corba.var_name] = [a.local.arg_name]; 828 [if a.local.tk is "tk_objref"] 829 local_to_corba(const_cast< [a.local.var_type] >([a.local.arg_name]), [a.corba.var_name]); 831 local_to_corba([a.local.arg_name], [a.corba.var_name]); 836 // Execute the method. 837 [if op.return.local.tk is "tk_void"][else] 838 [op.return.corba.retn_type] corba_ret; 839 [op.return.local.retn_type] local_ret; 842 ([for a in op.args][if-index a is last][a.corba.var_name][else][a.corba.var_name], [endif][endfor]); 844 // Convert CORBA to Local. 845 // (The direction of the argument is 'out' or 'inout'.) 846 [for a in op.args][if a.local.direction is "in"][else] 847 [if-any a.corba.is_primitive] 848 [a.local.arg_name] = [a.corba.var_name]; 850 corba_to_local([a.corba.var_name], [a.local.arg_name]); 854 // Generate the return value. 855 [if op.return.local.tk is "tk_void"][else] 856 [if op.return.local.tk is "tk_objref"] 857 corba_to_local(corba_ret, local_ret); 858 [elif op.return.local.tk is "tk_enum"] 859 corba_to_local(corba_ret, local_ret); 861 [if-any op.return.corba.is_primitive] 862 local_ret = corba_ret; 864 [if op.return.corba.deref_tk is "tk_long"] 865 local_ret = corba_ret; 866 [elif op.return.corba.deref_tk is "tk_string"] 867 corba_to_local(corba_ret, local_ret); 869 corba_to_local(*corba_ret, local_ret); 873 [if op.return.corba.tk is "tk_any"] 875 [elif op.return.corba.tk is "tk_struct"] 877 [elif op.return.corba.tk is "tk_string"] 878 ::CORBA::string_free(corba_ret); 879 [elif op.return.local.tk is "tk_objref"] 880 ::CORBA::release(corba_ret); 881 [elif op.return.corba.tk is "tk_alias"] 882 [if op.return.corba.deref_tk is "tk_long"] 883 [elif op.return.corba.deref_tk is "tk_string"] 884 ::CORBA::string_free(corba_ret); 894 [for ns in local.adapter_ns] 900 void [local.adapter_name]CORBAInit(coil::Properties& prop) 902 doil::CORBA::CORBAManager& mgr(doil::CORBA::CORBAManager::instance()); 903 mgr.registerAdapterFactory("[local.adapter_name]", 904 doil::New< [local.adapter_name_fq] >, 905 doil::Delete< [local.adapter_name_fq] >); 918 * @file [local.proxy_h] 919 * @brief [local.proxy_name] CORBA proxy for doil 921 * @author This file was automatically generated from [idl_fname] 922 * by omniidl/doil backend 926 #ifndef [local.proxy_include_guard] 927 #define [local.proxy_include_guard] 929 #include <coil/Properties.h> 930 #include <coil/Mutex.h> 931 #include <coil/Guard.h> 932 #include <doil/corba/CORBAManager.h> 933 #include <doil/corba/CORBAProxyBase.h> 934 #include <[local.iface_h]> 935 [for inc in inherits] 936 #include <[inc.local.proxy_h]> 938 [for inc in include_h] 943 [for ns in local.proxy_ns] 948 class [local.proxy_name] 949 : public virtual ::doil::CORBA::CORBAProxyBase, 950 [for inc in inherits] 951 public virtual [inc.local.proxy_name_fq], 953 public virtual [local.iface_name_fq] 956 typedef coil::Mutex Mutex; 957 typedef coil::Guard<Mutex> Guard; 959 [local.proxy_name](::CORBA::Object_ptr obj); 960 virtual ~[local.proxy_name](); 962 [for op in operations] 963 virtual [op.return.local.retn_type] [op.name] 965 [if-index a is last][a.local.arg_type] [a.local.arg_name] 966 [else][a.local.arg_type] [a.local.arg_name], [endif] 968 throw ([for raise in op.raises] 969 [if-index raise is first] 970 [raise.local.name_fq] 973 [raise.local.name_fq] 981 const char* id() {return "[corba.idl_name]";} 982 const char* name() {return m_name.c_str();} 985 Guard guard(m_refcountMutex); 990 Guard guard(m_refcountMutex); 997 [corba.name_fq]_ptr m_obj; 1000 Mutex m_refcountMutex; 1004 [for ns in local.proxy_ns] 1005 }; // namespace [ns] 1008 #ifndef [local.servant_include_guard] 1011 #endif // [local.servant_include_guard] 1016 void [local.proxy_name]CORBAInit(coil::Properties& prop); 1019 #endif // [local.proxy_include_guard] 1027 * @file [local.proxy_cpp] 1028 * @brief [local.iface_name] CORBA proxy for doil 1030 * @author This file was automatically generated form [idl_fname] 1031 * by omniidl/doil backend 1036 #include <doil/corba/CORBAManager.h> 1037 #include <[local.iface_h_path]> 1038 #include <[local.proxy_h_path]> 1039 #include <[typeconv_h_path]> 1040 #include <doil/corba/BasicTypeConversion.h> 1042 [for ns in local.proxy_ns] 1049 [local.proxy_name]::[local.proxy_name](::CORBA::Object_ptr obj) 1050 : m_obj([corba.name_fq]::_nil()), 1051 m_refcount(1)[for inc in inherits], 1052 [inc.local.proxy_name_fq](obj)[endfor] 1053 // : m_obj([corba.name_fq]::_nil())[for inc in inherits], 1054 // [inc.local.proxy_name_fq](obj)[endfor] 1057 m_obj = [corba.name_fq]::_narrow(obj); 1058 if (::CORBA::is_nil(m_obj)) throw std::bad_alloc(); 1059 m_obj = [corba.name_fq]::_duplicate(m_obj); 1065 [local.proxy_name]::~[local.proxy_name]() 1067 ::CORBA::release(m_obj); 1070 [for op in operations] 1075 [op.return.local.retn_type] [local.proxy_name]::[op.name] 1077 [if-index a is last][a.local.arg_type] [a.local.arg_name] 1078 [else][a.local.arg_type] [a.local.arg_name], [endif] 1080 throw ([for raise in op.raises] 1081 [if-index raise is first] 1082 [raise.local.name_fq] 1085 [raise.local.name_fq] 1090 // Convert Local to CORBA. 1091 // (The direction of the argument is 'in' or 'inout'.) 1093 [a.corba.base_type] [a.corba.var_name]; 1095 [for a in op.args][if a.local.direction is "out"][else] 1096 [if-any a.corba.is_primitive] 1097 // [a.corba.var_name] = [a.local.arg_name]; 1098 local_to_corba([a.local.arg_name], [a.corba.var_name]); 1100 [if a.local.tk is "tk_objref"] 1101 local_to_corba(const_cast< [a.local.var_type] >([a.local.arg_name]), [a.corba.var_name]); 1103 local_to_corba([a.local.arg_name], [a.corba.var_name]); 1108 // Execute the method. 1109 [if op.return.local.tk is "tk_void"][else] 1110 [op.return.corba.retn_type] corba_ret; 1111 [op.return.local.retn_type] local_ret; 1114 ([for a in op.args][if-index a is last][a.corba.var_name][else][a.corba.var_name], [endif][endfor]); 1116 // Convert CORBA to Local. 1117 // (The direction of the argument is 'out' or 'inout'.) 1118 [for a in op.args][if a.local.direction is "in"][else] 1119 [if-any a.corba.is_primitive] 1120 // [a.local.arg_name] = [a.corba.var_name]; 1121 corba_to_local([a.corba.var_name], [a.local.arg_name]); 1123 corba_to_local([a.corba.var_name], [a.local.arg_name]); 1127 // Generate the return value. 1128 [if op.return.local.tk is "tk_void"][else] 1129 [if op.return.local.tk is "tk_objref"] 1130 corba_to_local(corba_ret, local_ret); 1131 [elif op.return.local.tk is "tk_enum"] 1132 corba_to_local(corba_ret, local_ret); 1134 [if-any op.return.corba.is_primitive] 1135 // local_ret = corba_ret; 1136 corba_to_local(corba_ret, local_ret); 1138 [if op.return.corba.deref_tk is "tk_long"] 1139 // local_ret = corba_ret; 1140 corba_to_local(corba_ret, local_ret); 1141 [elif op.return.corba.deref_tk is "tk_string"] 1142 corba_to_local(corba_ret, local_ret); 1144 corba_to_local(*corba_ret, local_ret); 1148 [if op.return.corba.tk is "tk_any"] 1150 [elif op.return.corba.tk is "tk_struct"] 1152 [elif op.return.corba.tk is "tk_string"] 1153 ::CORBA::string_free(corba_ret); 1154 [elif op.return.local.tk is "tk_objref"] 1155 ::CORBA::release(corba_ret); 1156 [elif op.return.corba.tk is "tk_alias"] 1157 [if op.return.corba.deref_tk is "tk_long"] 1158 [elif op.return.corba.deref_tk is "tk_string"] 1159 ::CORBA::string_free(corba_ret); 1169 [for ns in local.proxy_ns] 1170 }; // namespace [ns] 1175 void [local.proxy_name]CORBAInit(coil::Properties& prop) 1177 doil::CORBA::CORBAManager& mgr(doil::CORBA::CORBAManager::instance()); 1178 mgr.registerProxyFactory("[local.proxy_name]", 1179 doil::New< [local.proxy_name_fq] >, 1180 doil::Delete< [local.proxy_name_fq] >);
openrtm_aist
Author(s): Noriaki Ando
autogenerated on Thu Jun 6 2019 19:26:00