#include <interceptors.h>
Public Member Functions | |
virtual void | sendRequest (const char *interface_id, const char *operation_id, IOP::ServiceContextList &scl)=0 |
User must inherit his class from this one and implement virtual function. This class has to be compiled to a shared library, which must have the same name as the interceptor class. In addition to that this shared library implementation must include a function (with C rather than C++ linkage) called create_XXX (where XXX is the name of the interceptor class) which calls the constructor of the derived class and returns a pointer to the interface class. For example if there were an implemenation of the MyClientInterceptor, libMyClientInterceptor.so library would contain the compiled version of:
extern "C" IPCClientInterceptor * create_MyClientInterceptor() { return new MyClientInterceptor(); }
In order to use the MyClientInterceptor one must set the following environment variable:
> export TDAQ_IPC_CLIENT_INTERCEPTORS="MyClientInterceptor"
virtual void IPCClientInterceptor::sendRequest | ( | const char * | interface_id, | |
const char * | operation_id, | |||
IOP::ServiceContextList & | scl | |||
) | [pure virtual] |
This function must be implemented by a user specific interceptor class. It is called for every remote function which is issued by the application which installs this interceptor.
interface_id | Name of the remote interface which implements the function that is being invoked | |
operation_id | Name of the operation which is being invoked | |
scl | List of service contexts. For more infomation see omniORB documentation. |