|
Pin
|
#include <ipind_plugin.h>
Public Attributes | |
| IPindPlugin | base_ |
| const char *(* | get_injection_data )(IPindPlugin *self) |
| t_rpc_message_schema const *(* | get_rpc_schema )(IPindPlugin *self, t_rpc_id rpcId) |
| void(* | do_rpc )(IPindPlugin *self, t_rpc_id rpcId, t_arg_count argCount, t_rpc_arg *rpcArgs, t_rpc_ret *retRpcArg) |
This structure should be allocated and returned by a plugin library in response to a call to load_plugin.
This structure can be placed as the first member of a user declared structure to provide plugin specific additional state.
| void(* IRPCPlugin::do_rpc) (IPindPlugin *self, t_rpc_id rpcId, t_arg_count argCount, t_rpc_arg *rpcArgs, t_rpc_ret *retRpcArg) |
Execute the RPC request. Store result in the specified retRpcArg.
This method is called by pind to actually process an RPC request. This method must be set and may not be NULL.
| [in] | self | A pointer to the plugin |
| [in] | rpcId | RPC request ID |
| [in] | argCount | Number of RPC arguments |
| [in] | rpcArgs | Array of RPC arguments |
| [out] | retRpcArg | Pointer to RPC return value arg. Will be filled with RPC execution result. |
| const char *(* IRPCPlugin::get_injection_data) (IPindPlugin *self) |
Get the injection data of the plugin.
The values returned from this method will be injected to Pin as environment variables. This method may be NULL.
| [in] | self | A pointer to the plugin |
| t_rpc_message_schema const *(* IRPCPlugin::get_rpc_schema) (IPindPlugin *self, t_rpc_id rpcId) |
Get the schema for the given id if supported by the plugin.
This method is called to retrieve an RPC schema when pind considers the plugin for processing an RPC request. This method must be set and may not be NULL.
| [in] | self | A pointer to the plugin |
| [in] | rpcId | RPC request ID |