IPC API  3.40.00.06
Data Structures | Macros | Typedefs | Functions
RcmClient.h File Reference

Detailed Description

Remote Command Message Client Module. An RcmClient is used for sending messages to an RcmServer for processing.

See also
RcmServer.h
RCM Overview
#include <xdc/runtime/knl/GateThread.h>
Include dependency graph for RcmClient.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  RcmClient_Message
 Remote Command Message structure. More...
 
struct  RcmClient_Params
 Instance create parameters. More...
 
struct  RcmClient_Struct
 Opaque client structure large enough to hold an instance object. More...
 

Macros

#define RcmClient_S_SUCCESS   (0)
 Success return code. More...
 
#define RcmClient_E_FAIL   (-1)
 General failure return code. More...
 
#define RcmClient_E_EXECASYNCNOTENABLED   (-2)
 The client has not been configured for asynchronous notification. More...
 
#define RcmClient_E_EXECFAILED   (-3)
 The client was unable to send the command message to the server. More...
 
#define RcmClient_E_INVALIDHEAPID   (-4)
 A heap id must be provided in the create params. More...
 
#define RcmClient_E_INVALIDFXNIDX   (-5)
 Invalid function index. More...
 
#define RcmClient_E_MSGFXNERROR   (-6)
 Message function error. More...
 
#define RcmClient_E_IPCERROR   (-7)
 An unknown error has been detected from the IPC layer. More...
 
#define RcmClient_E_LISTCREATEFAILED   (-8)
 Failed to create the list object. More...
 
#define RcmClient_E_LOSTMSG   (-9)
 The expected reply message from the server was lost. More...
 
#define RcmClient_E_MSGALLOCFAILED   (-10)
 Insufficient memory to allocate a message. More...
 
#define RcmClient_E_MSGQCREATEFAILED   (-11)
 The client message queue could not be created. More...
 
#define RcmClient_E_MSGQOPENFAILED   (-12)
 The server message queue could not be opened. More...
 
#define RcmClient_E_SERVERERROR   (-13)
 The server returned an unknown error code. More...
 
#define RcmClient_E_SERVERNOTFOUND   (-14)
 The server specified in the create params was not found. More...
 
#define RcmClient_E_SYMBOLNOTFOUND   (-15)
 The given symbol was not found in the server symbol table. More...
 
#define RcmClient_E_NOMEMORY   (-16)
 There is insufficient memory left in the heap. More...
 
#define RcmClient_E_JOBIDNOTFOUND   (-17)
 The given job id was not found on the server. More...
 
#define RcmClient_INVALIDFXNIDX   ((UInt32)(0xFFFFFFFF))
 Invalid function index. More...
 
#define RcmClient_INVALIDHEAPID   ((UInt16)(0xFFFF))
 Invalid heap id. More...
 
#define RcmClient_INVALIDMSGID   (0)
 Invalid message id. More...
 
#define RcmClient_DEFAULTPOOLID   ((UInt16)(0x8000))
 Default worker pool id. More...
 
#define RcmClient_DISCRETEJOBID   (0)
 Invalid job stream id. More...
 

Typedefs

typedef struct RcmClient_Object_tag * RcmClient_Handle
 RcmClient instance object handle. More...
 
typedef Void(* RcmClient_CallbackFxn) (RcmClient_Message *, Ptr)
 Callback function type. More...
 

Functions

Int RcmClient_acquireJobId (RcmClient_Handle handle, UInt16 *jobId)
 Get a job id from the server. More...
 
Int RcmClient_addSymbol (RcmClient_Handle handle, String name, Fxn addr, UInt32 *index)
 Add a symbol and its address to the server table. More...
 
Int RcmClient_alloc (RcmClient_Handle handle, UInt32 dataSize, RcmClient_Message **message)
 Allocate a message from the heap configured for this instance. More...
 
Int RcmClient_checkForError (RcmClient_Handle handle, RcmClient_Message **returnMsg)
 Check if an error message has been returned from the server. More...
 
Int RcmClient_construct (RcmClient_Struct *structPtr, String server, const RcmClient_Params *params)
 Initialize a new instance object inside the provided structure. More...
 
Int RcmClient_create (String server, const RcmClient_Params *params, RcmClient_Handle *handle)
 Create an RcmClient instance. More...
 
Int RcmClient_delete (RcmClient_Handle *handlePtr)
 Delete an RcmClient instance. More...
 
Int RcmClient_destruct (RcmClient_Struct *structPtr)
 Finalize the instance object inside the provided structure. More...
 
Int RcmClient_exec (RcmClient_Handle handle, RcmClient_Message *cmdMsg, RcmClient_Message **returnMsg)
 Execute a command message on the server. More...
 
Int RcmClient_execAsync (RcmClient_Handle handle, RcmClient_Message *cmdMsg, RcmClient_CallbackFxn callback, Ptr appData)
 Execute a command message and use a callback for notification. More...
 
Int RcmClient_execCmd (RcmClient_Handle handle, RcmClient_Message *cmdMsg)
 Execute a one-way command message on the server. More...
 
Int RcmClient_execDpc (RcmClient_Handle handle, RcmClient_Message *cmdMsg, RcmClient_Message **returnMsg)
 Execute a deferred procedure call on the server. More...
 
Int RcmClient_execNoWait (RcmClient_Handle handle, RcmClient_Message *cmdMsg, UInt16 *msgId)
 Submit a command message to the server and return immediately. More...
 
Void RcmClient_exit (Void)
 Finalize the RcmClient module. More...
 
Int RcmClient_free (RcmClient_Handle handle, RcmClient_Message *msg)
 Free the given message. More...
 
Int RcmClient_getSymbolIndex (RcmClient_Handle handle, String name, UInt32 *index)
 Return the function index from the server. More...
 
Void RcmClient_init (Void)
 Initialize the RcmClient module. More...
 
Void RcmClient_Params_init (RcmClient_Params *params)
 Initialize the instance create params structure. More...
 
Int RcmClient_releaseJobId (RcmClient_Handle handle, UInt16 jobId)
 Return a job id to the server and release all resources. More...
 
Int RcmClient_removeSymbol (RcmClient_Handle handle, String name)
 Remove a symbol and from the server function table. More...
 
Int RcmClient_waitUntilDone (RcmClient_Handle handle, UInt16 msgId, RcmClient_Message **returnMsg)
 Block until the specified message has been executed. More...
 
Copyright 2015, Texas Instruments Incorporated