home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: h:\somnt\include\REQUEST.xh.
- * Generated using:
- * SOM Precompiler somipc: Development
- * SOM Emitter emitxh.dll: Development
- */
-
- /*
- *
- * COMPONENT_NAME: somd
- *
- * ORIGINS: 27
- *
- *
- * 10H9767, 10H9769 (C) COPYRIGHT International Business Machines Corp. 1992,1994
- * All Rights Reserved
- * Licensed Materials - Property of IBM
- * US Government Users Restricted Rights - Use, duplication or
- * disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- *
- * IDL interface spec for CORBA Request object.
- */
-
-
- #ifndef SOM_Request_xh
- #define SOM_Request_xh
-
- class Request;
-
- #define Request_MajorVersion 2
- #define Request_MinorVersion 1
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- #ifndef Request_API
- #define Request_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class Container;
-
- /*
- * End of user-defined types.
- */
-
- /*
- * Passthru lines: File: "C.xh", "after"
- */
- /*
- * Flags defined on requests
- */
-
- #define ARG_IN 0x00000001 /* defined in somir.h */
- #define ARG_OUT 0x00000002 /* defined in somir.h */
- #define ARG_INOUT 0x00000004 /* defined in somir.h */
- #define IN_COPY_VALUE 0x00000008 /* add_arg flag */
- #define DEPENDENT_LIST 0x00000010 /* add_item flag */
- #define OUT_LIST_MEMORY 0x00000020 /* req flag */
- #define INV_NO_RESPONSE 0x00000040 /* invoke flag */
- #define INV_TERM_ON_ERR 0x00000080 /* invoke flag */
- #define RESP_NO_WAIT 0x00000100 /* response flag */
- /* Internal Use Flags */
- #define AUTH_IN_MSG 0x00010000 /* msg includes auth info */
- #define ACKONEWAY 0x00020000 /* ack oneway messages */
- #define ENV_IN_MSG 0x00040000 /* msg includes env info */
- #define CTX_IN_MSG 0x00080000 /* msg includes ctx info */
- #define OBJ_OWNED 0x00100000 /* arg. mem. is obj. owned */
- #define CALLER_OWNED 0x00200000 /* arg mem is caller owned */
- #define RESULT_OUT 0x00400000 /* method result, not arg */
- #define CLIENT_SIDE 0x00800000 /* client side of request */
- #define SERVER_SIDE 0x01000000 /* server side of request */
- #define TXCTX_IN_MSG 0x02000000 /* msg includes trans info */
- #define ARG_IS_PTRARG 0x10000000 /* ptr to arg, !aggregate */
- #define ARG_IS_COMPONENT 0x20000000 /* comp of aggregate type */
- #define ROOT_NOT_PTRARG 0x40000000 /* root struct not ptr */
- #define RESERVED_FLAGS 0x8c00fe00 /* future/internal use */
-
- class Request;
- /*
- * Functions for multiple deferred-synchronous requests.
- */
- ORBStatus SOMLINK send_multiple_requests (
- IN Request* reqs[], /* array of Requests */
- IN Environment *env,
- IN long count, /* number of Requests */
- IN Flags invoke_flags
- );
-
- ORBStatus SOMLINK get_next_response (
- INOUT Environment *env,
- IN Flags response_flags,
- OUT Request* *req
- );
-
-
- /* A procedure to create the Request Class */
- SOMEXTERN
- #if (defined(SOM_Module_REQUEST_Source) || defined(Request_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Request))
- WIN32_DLLEXPORT
- #else
- WIN32_DLLIMPORT
- #endif
- SOMClass * SOMLINK RequestNewClass(
- integer4,
- integer4 );
-
- /* The API to the Request class object, and the methods it introduces. */
- SOMEXTERN struct RequestClassDataStructure {
- SOMClass *classObject;
- somMToken add_arg;
- somMToken invoke;
- somMToken send;
- somMToken get_response;
- somMToken destroy;
- somMToken _get_objref;
- somMToken _set_objref;
- somMToken _get_ctx;
- somMToken _set_ctx;
- somMToken _get_operation;
- somMToken _set_operation;
- somMToken _get_argument_list;
- somMToken _set_argument_list;
- somMToken _get_return_result;
- somMToken _set_return_result;
- somMToken _get_req_flags;
- somMToken _set_req_flags;
- somMToken _get_env;
- somMToken _set_env;
- }
- #if !(defined(SOM_Module_REQUEST_Source) || defined(Request_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Request))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK RequestClassData;
- #define _Request RequestClassData.classObject
-
- /* The API to parentMtabs for Request, and the instance data it introduces. */
- SOMEXTERN struct RequestCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- }
- #if !(defined(SOM_Module_REQUEST_Source) || defined(Request_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Request))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK RequestCClassData;
-
- /*
- * -- Typedefs for Request Method Procedures
- */
- extern "C" {
- typedef ORBStatus SOMLINK somTP_Request_add_arg(Request *somSelf, Environment *ev,
- Identifier name,
- TypeCode arg_type,
- void* value,
- long len,
- Flags arg_flags);
- typedef somTP_Request_add_arg *somTD_Request_add_arg;
- typedef ORBStatus SOMLINK somTP_Request_invoke(Request *somSelf, Environment *ev,
- Flags invoke_flags);
- typedef somTP_Request_invoke *somTD_Request_invoke;
- typedef ORBStatus SOMLINK somTP_Request_send(Request *somSelf, Environment *ev,
- Flags invoke_flags);
- typedef somTP_Request_send *somTD_Request_send;
- typedef ORBStatus SOMLINK somTP_Request_get_response(Request *somSelf, Environment *ev,
- Flags response_flags);
- typedef somTP_Request_get_response *somTD_Request_get_response;
- typedef ORBStatus SOMLINK somTP_Request_destroy(Request *somSelf, Environment *ev);
- typedef somTP_Request_destroy *somTD_Request_destroy;
-
- /*
- * -- Typedefs for Reintroduced Wrapper Methods
- */
- typedef void SOMLINK somTP_Request_somDefaultInit(Request *somSelf,
- somInitCtrl* ctrl);
- typedef somTP_Request_somDefaultInit *somTD_Request_somDefaultInit;
- typedef void SOMLINK somTP_Request_somDestruct(Request *somSelf,
- octet doFree,
- somDestructCtrl* ctrl);
- typedef somTP_Request_somDestruct *somTD_Request_somDestruct;
- typedef void SOMLINK somTP_Request_somDefaultCopyInit(Request *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultCopyInit *somTD_Request_somDefaultCopyInit;
- typedef Request* SOMLINK somTP_Request_somDefaultAssign(Request *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultAssign *somTD_Request_somDefaultAssign;
- typedef void SOMLINK somTP_Request_somDefaultConstCopyInit(Request *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultConstCopyInit *somTD_Request_somDefaultConstCopyInit;
- typedef void SOMLINK somTP_Request_somDefaultVCopyInit(Request *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultVCopyInit *somTD_Request_somDefaultVCopyInit;
- typedef void SOMLINK somTP_Request_somDefaultConstVCopyInit(Request *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultConstVCopyInit *somTD_Request_somDefaultConstVCopyInit;
- typedef Request* SOMLINK somTP_Request_somDefaultConstAssign(Request *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultConstAssign *somTD_Request_somDefaultConstAssign;
- typedef Request* SOMLINK somTP_Request_somDefaultVAssign(Request *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultVAssign *somTD_Request_somDefaultVAssign;
- typedef Request* SOMLINK somTP_Request_somDefaultConstVAssign(Request *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Request_somDefaultConstVAssign *somTD_Request_somDefaultConstVAssign;
- typedef void SOMLINK somTP_Request_somInit(Request *somSelf);
- typedef somTP_Request_somInit *somTD_Request_somInit;
- typedef void SOMLINK somTP_Request_somFree(Request *somSelf);
- typedef somTP_Request_somFree *somTD_Request_somFree;
- typedef void SOMLINK somTP_Request_somUninit(Request *somSelf);
- typedef somTP_Request_somUninit *somTD_Request_somUninit;
- typedef SOMClass* SOMLINK somTP_Request_somGetClass(Request *somSelf);
- typedef somTP_Request_somGetClass *somTD_Request_somGetClass;
- typedef string SOMLINK somTP_Request_somGetClassName(Request *somSelf);
- typedef somTP_Request_somGetClassName *somTD_Request_somGetClassName;
- typedef long SOMLINK somTP_Request_somGetSize(Request *somSelf);
- typedef somTP_Request_somGetSize *somTD_Request_somGetSize;
- typedef boolean SOMLINK somTP_Request_somIsA(Request *somSelf,
- SOMClass* aClassObj);
- typedef somTP_Request_somIsA *somTD_Request_somIsA;
- typedef boolean SOMLINK somTP_Request_somIsInstanceOf(Request *somSelf,
- SOMClass* aClassObj);
- typedef somTP_Request_somIsInstanceOf *somTD_Request_somIsInstanceOf;
- typedef boolean SOMLINK somTP_Request_somRespondsTo(Request *somSelf,
- somId mId);
- typedef somTP_Request_somRespondsTo *somTD_Request_somRespondsTo;
- typedef boolean SOMLINK somTP_Request_somDispatch(Request *somSelf,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_Request_somDispatch *somTD_Request_somDispatch;
- typedef boolean SOMLINK somTP_Request_somClassDispatch(Request *somSelf,
- SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_Request_somClassDispatch *somTD_Request_somClassDispatch;
- typedef boolean SOMLINK somTP_Request_somCastObj(Request *somSelf,
- SOMClass* cls);
- typedef somTP_Request_somCastObj *somTD_Request_somCastObj;
- typedef boolean SOMLINK somTP_Request_somResetObj(Request *somSelf);
- typedef somTP_Request_somResetObj *somTD_Request_somResetObj;
- typedef SOMObject* SOMLINK somTP_Request_somPrintSelf(Request *somSelf);
- typedef somTP_Request_somPrintSelf *somTD_Request_somPrintSelf;
- typedef void SOMLINK somTP_Request_somDumpSelf(Request *somSelf,
- long level);
- typedef somTP_Request_somDumpSelf *somTD_Request_somDumpSelf;
- typedef void SOMLINK somTP_Request_somDumpSelfInt(Request *somSelf,
- long level);
- typedef somTP_Request_somDumpSelfInt *somTD_Request_somDumpSelfInt;
- }
-
- #endif /* Request_API */
-
-
- /*
- * -- This emitter believes that method thunks are unavailable,
- * -- so somResolve will be called.
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) (somResolve(obj,mToken))
-
- /*
- * -- The C++ Wrapper Class for Request
- */
- class Request : public SOMObject
- {
- public:
-
- // Request::new creates the class object if necessary, and then uses somNewNoInit
- // to allocate memory and create the object. Initialization is in ctors.
- void *operator new(size_t)
- {
- if (!_Request) RequestNewClass(Request_MajorVersion,Request_MinorVersion);
- return (void*)
- SOM_Resolve(_Request,SOMClass,somNewNoInit)
- ((SOMClass *)((void*)_Request));
- }
-
- // Request::delete uses somDestruct.
- void operator delete(void * obj)
- {
- if (obj && *(void**)obj) {
- SOM_Resolve(obj,SOMObject,somDestruct)
- ((SOMObject*)obj, 1, 0);
- }
- }
-
- Request()
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (RequestCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultInit(0);
- }
-
- Request(Request* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (RequestCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
- Request(const Request* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (RequestCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
-
- /* method: add_arg */
- ORBStatus add_arg(Environment *ev,
- Identifier name,
- TypeCode arg_type,
- void* value,
- long len,
- Flags arg_flags)
- {
- return SOM_ResolveD(this,Request,Request,add_arg)
- (this, ev,name,arg_type,value,len,arg_flags);
- }
-
-
- /* method: invoke */
- ORBStatus invoke(Environment *ev,
- Flags invoke_flags)
- {
- return SOM_ResolveD(this,Request,Request,invoke)
- (this, ev,invoke_flags);
- }
-
-
- /* method: send */
- ORBStatus send(Environment *ev,
- Flags invoke_flags)
- {
- return SOM_ResolveD(this,Request,Request,send)
- (this, ev,invoke_flags);
- }
-
-
- /* method: get_response */
- ORBStatus get_response(Environment *ev,
- Flags response_flags)
- {
- return SOM_ResolveD(this,Request,Request,get_response)
- (this, ev,response_flags);
- }
-
-
- /* method: destroy */
- ORBStatus destroy(Environment *ev)
- {
- return SOM_ResolveD(this,Request,Request,destroy)
- (this, ev);
- }
-
-
- /*
- * Reintroduce inherited methods
- */
-
- /* initializer method: somDefaultInit */
- void somDefaultInit(somInitCtrl* ctrl)
- {
- SOM_ResolveD(this,Request,SOMObject,somDefaultInit)
- (this,ctrl);
- }
-
-
- /* method: somDestruct */
- void somDestruct(octet doFree,
- somDestructCtrl* ctrl)
- {
- SOM_ResolveD(this,Request,SOMObject,somDestruct)
- (this,doFree,ctrl);
- }
-
-
- /* initializer method: somDefaultCopyInit */
- void somDefaultCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Request,SOMObject,somDefaultCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultAssign */
- Request* somDefaultAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somDefaultAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstCopyInit */
- void somDefaultConstCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Request,SOMObject,somDefaultConstCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultVCopyInit */
- void somDefaultVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Request,SOMObject,somDefaultVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstVCopyInit */
- void somDefaultConstVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Request,SOMObject,somDefaultConstVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstAssign */
- Request* somDefaultConstAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somDefaultConstAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultVAssign */
- Request* somDefaultVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somDefaultVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstVAssign */
- Request* somDefaultConstVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somDefaultConstVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somInit */
- void somInit()
- {
- SOM_ResolveD(this,Request,SOMObject,somInit)
- (this);
- }
-
-
- /* method: somFree */
- void somFree()
- {
- SOM_ResolveD(this,Request,SOMObject,somFree)
- (this);
- }
-
-
- /* method: somUninit */
- void somUninit()
- {
- SOM_ResolveD(this,Request,SOMObject,somUninit)
- (this);
- }
-
-
- /* method: somGetClass */
- SOMClass* somGetClass()
- {
- return SOM_ResolveD(this,Request,SOMObject,somGetClass)
- (this);
- }
-
-
- /* method: somGetClassName */
- string somGetClassName()
- {
- return SOM_ResolveD(this,Request,SOMObject,somGetClassName)
- (this);
- }
-
-
- /* method: somGetSize */
- long somGetSize()
- {
- return SOM_ResolveD(this,Request,SOMObject,somGetSize)
- (this);
- }
-
-
- /* method: somIsA */
- boolean somIsA(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somIsA)
- (this,aClassObj);
- }
-
-
- /* method: somIsInstanceOf */
- boolean somIsInstanceOf(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,Request,SOMObject,somIsInstanceOf)
- (this,aClassObj);
- }
-
-
- /* method: somRespondsTo */
- boolean somRespondsTo(somId mId)
- {
- return SOM_ResolveD(this,Request,SOMObject,somRespondsTo)
- (this,mId);
- }
-
-
- /* va_list method: somDispatch */
- /* the va_list invocation form */
- boolean Request_somDispatch(somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,Request,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- }
-
- /* the varargs invocation form */
- boolean somDispatch(somToken* retValue,
- somId methodId,
- ...)
- {
- va_list ap;
- va_start(ap, methodId);
- boolean __somResult =
- SOM_ResolveD(this,Request,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* va_list method: somClassDispatch */
- /* the va_list invocation form */
- boolean Request_somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,Request,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- }
-
- /* the varargs invocation form */
- boolean somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- ...)
- {
- va_list ap;
- va_start(ap, methodId);
- boolean __somResult =
- SOM_ResolveD(this,Request,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* method: somCastObj */
- boolean somCastObj(SOMClass* cls)
- {
- return SOM_ResolveD(this,Request,SOMObject,somCastObj)
- (this,cls);
- }
-
-
- /* method: somResetObj */
- boolean somResetObj()
- {
- return SOM_ResolveD(this,Request,SOMObject,somResetObj)
- (this);
- }
-
-
- /* method: somPrintSelf */
- SOMObject* somPrintSelf()
- {
- return SOM_ResolveD(this,Request,SOMObject,somPrintSelf)
- (this);
- }
-
-
- /* method: somDumpSelf */
- void somDumpSelf(long level)
- {
- SOM_ResolveD(this,Request,SOMObject,somDumpSelf)
- (this,level);
- }
-
-
- /* method: somDumpSelfInt */
- void somDumpSelfInt(long level)
- {
- SOM_ResolveD(this,Request,SOMObject,somDumpSelfInt)
- (this,level);
- }
-
-
-
- }; /* Request */
-
-
-
- #endif /* SOM_Request_xh */
-