ReqServerDynSK.cpp
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:2k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // This file is generated by omniidl (C++ backend)- omniORB_3_0. Do not edit.
  2. #include "ReqServer.h"
  3. #include <omniORB3/tcDescriptor.h>
  4. static const char* _0RL_library_version = omniORB_3_0;
  5. const CORBA::TypeCode_ptr _tc_ReqServer = CORBA::TypeCode::PR_interface_tc("IDL:ReqServer:1.0", "ReqServer");
  6. static void
  7. _0RL_tcParser_setObjectPtr_ReqServer(tcObjrefDesc *_desc, CORBA::Object_ptr _ptr)
  8. {
  9.   ReqServer_ptr _p = ReqServer::_narrow(_ptr);
  10.   ReqServer_ptr* pp = (ReqServer_ptr*)_desc->opq_objref;
  11.   if (_desc->opq_release && !CORBA::is_nil(*pp)) CORBA::release(*pp);
  12.   *pp = _p;
  13.   CORBA::release(_ptr);
  14. }
  15. static CORBA::Object_ptr
  16. _0RL_tcParser_getObjectPtr_ReqServer(tcObjrefDesc *_desc)
  17. {
  18.   return (CORBA::Object_ptr) *((ReqServer_ptr*)_desc->opq_objref);
  19. }
  20. void _0RL_buildDesc_cReqServer(tcDescriptor& _desc, const _CORBA_ObjRef_tcDesc_arg< _objref_ReqServer, ReqServer_Helper> & _d)
  21. {
  22.   _desc.p_objref.opq_objref = (void*) &_d._data;
  23.   _desc.p_objref.opq_release = _d._rel;
  24.   _desc.p_objref.setObjectPtr = _0RL_tcParser_setObjectPtr_ReqServer;
  25.   _desc.p_objref.getObjectPtr = _0RL_tcParser_getObjectPtr_ReqServer;
  26. }
  27. void _0RL_delete_ReqServer(void* _data) {
  28.   CORBA::release((ReqServer_ptr) _data);
  29. }
  30. void operator<<=(CORBA::Any& _a, ReqServer_ptr _s) {
  31.   tcDescriptor tcd;
  32.   _CORBA_ObjRef_tcDesc_arg< _objref_ReqServer, ReqServer_Helper>  tmp(_s,0);
  33.   _0RL_buildDesc_cReqServer(tcd, tmp);
  34.   _a.PR_packFrom(_tc_ReqServer, &tcd);
  35. }
  36. void operator<<=(CORBA::Any& _a, ReqServer_ptr* _sp) {
  37.   _a <<= *_sp;
  38.   CORBA::release(*_sp);
  39.   *_sp = ReqServer::_nil();
  40. }
  41. CORBA::Boolean operator>>=(const CORBA::Any& _a, ReqServer_ptr& _s) {
  42.   ReqServer_ptr sp = (ReqServer_ptr) _a.PR_getCachedData();
  43.   if (sp == 0) {
  44.     tcDescriptor tcd;
  45.     ReqServer_var tmp;
  46.     _0RL_buildDesc_cReqServer(tcd, tmp);
  47.     if( _a.PR_unpackTo(_tc_ReqServer, &tcd) ) {
  48.       if (!omniORB::omniORB_27_CompatibleAnyExtraction) {
  49.         ((CORBA::Any*)&_a)->PR_setCachedData((void*)(ReqServer_ptr)tmp,_0RL_delete_ReqServer);
  50.       }
  51.       _s = tmp._retn();
  52.       return 1;
  53.     } else {
  54.       _s = ReqServer::_nil(); return 0;
  55.     }
  56.   }
  57.   else {
  58.     CORBA::TypeCode_var tc = _a.type();
  59.     if (tc->equivalent(_tc_ReqServer)) {
  60.     _s = sp; return 1;
  61.     }
  62.     else {
  63.     _s = ReqServer::_nil(); return 0;
  64.     }
  65.   }
  66. }