remotemono
|
#include <IPCVector.h>
Classes | |
struct | VectorAPI |
struct | VectorLocalAPI |
struct | VectorRemoteAPI |
Public Member Functions | |
void | inject (blackbone::Process *process) |
void | uninject () |
VectorAPI & | getAPI () |
VectorPtr | vectorNew (uint32_t cap=16) |
void | vectorFree (VectorPtr v) |
void | vectorAdd (VectorPtr v, ElemT elem) |
void | vectorClear (VectorPtr v) |
uint32_t | vectorLength (VectorPtr v) |
uint32_t | vectorCapacity (VectorPtr v) |
DataPtr | vectorData (VectorPtr v) |
void | vectorGrow (VectorPtr v, uint32_t cap) |
VectorPtr | create (const std::vector< ElemT > &data) |
void | read (VectorPtr v, std::vector< ElemT > &out) |
A simple class representing a dynamically growing array in either the local or remote process. If it is in the remote process, a series of simple functions will be injected into the remote that can be called to manipulate such array objects in the remote process itself, and a remote array can also be queried and modified locally through RPC calls.
In RemoteMono, this class is mainly used to support the mono_*_foreach()
functions by having them collect the objects they iterate over into an IPCVector array that can then be read by the local process.