8#if !defined(_VANTAGEPOINTS_H_)
9#define _VANTAGEPOINTS_H_
40 bool init(
const char* xml);
48 bool freePoint(uint32
id, uint32 entityID);
62 std::map<uint32, PerchPoint> points;
64 uint64 intrinsicTimescaleMS;
66 uint64 motionStartedTime;
Geometry and 2D/3D math value classes: Color, Size, Point, PointFloat, Line, PolyLine,...
Cross-platform utility toolbox for CMSDK: threading, synchronization, shared memory,...
VantageState state
Current system state.
bool occupyPoint(uint32 id, uint32 entityID)
Mark a reserved point as occupied.
static bool UnitTest()
Self test.
const char * getPointData(uint32 id)
Opaque data string attached to a point in the XML.
const char * getPointLabel(uint32 id)
Label of a point.
uint32 count
Number of perch points.
uint32 reserveNextPoint(uint32 entityID)
Reserve the best available (least-overlapping free) point for an entity.
bool freePoint(uint32 id, uint32 entityID)
Release a point held by entityID.
bool init(const char *xml)
Parse the configuration from XML text.
PerchState
Lifecycle of a perch point: FREE, RESERVED (claimed, not yet reached), OCCUPIED, LEAVING (being vacat...
VantageState
State of the whole vantage system: IDLE, INMOTION (reconfiguring) or SETTLED.
One perch: id, occupancy state, occupying entity, last-visit time, label, opaque data and overlap wei...
std::vector< double > overlaps
Small recursive XML DOM parser (XMLNode) used by CMSDK for all PsySpec XML parsing.