#include <XnVMultiProcessFlowServer.h>
List of all members.
Detailed Description
XnVMultiProcessFlowServer is both a XnVPointControl and a SessionListener. When placed into a NITE flow it stores the latest state it has according to events that arrive (PointCreate/Update/Destroy, SessionCreate/SessionDestroy, etc.) and calls WriteState. When WriteState() is called, it publishes the current state into a shared memory section. Clients (XnVMultiProcessFlowClient objects) which read the published state can then trigger the same events in different processes. NOTE: The object is NOT thread-safe, meaning, the WriteState and Reset methods must be called from the same thread that XnVPointListener::Update() is called on the point-listener which is connected to the server
Definition at line 29 of file XnVMultiProcessFlowServer.h.
Constructor & Destructor Documentation
XnVMultiProcessFlowServer::XnVMultiProcessFlowServer |
( |
const XnChar * |
strSectionName, |
|
|
const XnChar * |
strName = "XnVMultiProcessFlowServer" | |
|
) |
| | |
Create a XnVMultiProcessFlowServer
- Parameters:
-
[in] | strSectionName | The name of the Shared Memory section to which we will write |
[in] | strName | Name of the control, for log purposes. |
XnVMultiProcessFlowServer::~XnVMultiProcessFlowServer |
( |
|
) |
|
Member Function Documentation
void XnVMultiProcessFlowServer::CheckSessionStarted |
( |
|
) |
[private] |
XnStatus XnVMultiProcessFlowServer::Initialize |
( |
|
) |
|
Initialize the shared-memory Must be called before the first call to WriteState.
- Returns:
- XN_STATUS_OK on successful init, XN_STATUS_* error code otherwise
void XnVMultiProcessFlowServer::OnFocusStartDetected |
( |
const XnChar * |
strFocus, |
|
|
const XnPoint3D & |
ptPosition, |
|
|
XnFloat |
fProgress | |
|
) |
| | [protected, virtual] |
void XnVMultiProcessFlowServer::OnPointCreate |
( |
const XnVHandPointContext * |
pContext |
) |
[protected] |
void XnVMultiProcessFlowServer::OnPointDestroy |
( |
XnUInt32 |
nID |
) |
[protected] |
void XnVMultiProcessFlowServer::OnPointUpdate |
( |
const XnVHandPointContext * |
pContext |
) |
[protected] |
void XnVMultiProcessFlowServer::OnPrimaryPointCreate |
( |
const XnVHandPointContext * |
pContext, |
|
|
const XnPoint3D & |
ptSessionStarter | |
|
) |
| | [protected] |
void XnVMultiProcessFlowServer::OnPrimaryPointDestroy |
( |
XnUInt32 |
nID |
) |
[protected] |
void XnVMultiProcessFlowServer::OnPrimaryPointUpdate |
( |
const XnVHandPointContext * |
pContext |
) |
[protected] |
void XnVMultiProcessFlowServer::OnSessionEnd |
( |
|
) |
[protected, virtual] |
void XnVMultiProcessFlowServer::OnSessionStart |
( |
const XnPoint3D & |
ptPosition |
) |
[protected, virtual] |
void XnVMultiProcessFlowServer::Reset |
( |
|
) |
|
Reset stored state. Does not publish the state to clients. Calling WriteState() directly after calling this method will destroy the session and all points in clients. NOTE: Reset MUST be called before re-connecting a Server into a Nite flow, or undefined behavior will occur due to stale state data inside the server
Handle new hands batch. Write to internal state, to be written to the shared memory.
- Parameters:
-
[in] | hands | The current state of the hands |
XnStatus XnVMultiProcessFlowServer::WriteState |
( |
|
) |
[protected] |
Member Data Documentation
The documentation for this class was generated from the following file: