NDRpcRequest Class Reference

Represents an RPC request and associated data. More...

List of all members.

Public Member Functions

uint32_t getDataLength (void)
 Gets the size of the data payload for this request.
void * getData (void)
 Returns a pointer to the data payload for the request.
NDNodeID getRequesterNodeID (void)
 Returns the NodeID of the node that issued the RPC.
NDRpcResponsecreateResponse (uint32_t len)
 Creates a response to an RPC request.
NDRpcResponseexec (void)
 Executes RPC request.
void release (void)
 Releases this object back to NetDog.

Static Public Member Functions

static void * operator new (size_t s)
static void operator delete (void *p)

Detailed Description

Represents an RPC request and associated data.

Created by calling NDChannel::createRpcRequest()

Do not use new/delete operators with this class


Member Function Documentation

NDRpcRequest::createResponse ( uint32_t  len  ) 

Creates a response to an RPC request.

Parameters:
len The length of the response structure, in bytes
Returns:
NDRpcResponse object
NDRpcRequest::exec ( void   ) 

Executes RPC request. This is a blocking call that pauses the current execution context. NetDog will still process other requests and action in the background.

Upon completion of the RPC request (when server response is recieved), function will return with an NDRpcResponse object containing the RPC server's response.

Returns:
NDRpcResponse object
NDRpcRequest::getData ( void   ) 

Returns a pointer to the data payload for the request.

This is the user-defined "parameter" that the RPC server will recieve.

Returns:
Pointer to data payload
NDRpcRequest::getDataLength ( void   ) 

Gets the size of the data payload for this request.

Returns:
Size of payload in bytes
NDRpcRequest::getRequesterNodeID ( void   ) 

Returns the NodeID of the node that issued the RPC.

Returns:
NodeID of the RPC caller.
NDRpcRequest::release ( void   ) 

Releases this request back to NetDog. This "frees" the request object.

Returns:
(void)

Generated on Wed Jul 21 18:14:48 2010 for nd2 by  doxygen 1.6.1