![]() |
VR-Forces 4.10 Class Documentation
|
A DtPositionResponder processes CIGI Position request messages This class catches signals from the DtCigiSignalProcessor for CigiBasePositionReq packets and splits the processing for the base packet into V3 and V4 methods. More...
Classes | |
| struct | DtPositionRequestData |
| Struct for all Position Request data ParentID & ArticulatedModelID = -1 when not in use. More... | |
| struct | DtPositionResponseData |
| Struct for all Position response data In degrees. More... | |
Public Types | |
| enum | UpdateMode { OneShot = 0, Continuous } |
| Update mode for request. More... | |
| enum | ObjectClass { Entity = 0, ArticulatedPart, View, ViewGroup, MotionTracker } |
| Type of object request. More... | |
| enum | CoordinateClass { Geodetic = 0, ParentEntity, Submodel } |
| Coordinate System of request. More... | |
Public Member Functions | |
| virtual | ~DtPositionResponder () |
| Destructor/. More... | |
| virtual void | processContinuousPositionRequests () |
| Iterates through position requests that are set to continuous. More... | |
| virtual void | generatePositionResponse (DtPositionResponseData &responseDate) |
| Makes a call to the DtCigiConnetion to send a position response. More... | |
Public Attributes | |
| boost::signalslib::signal < void(DtPositionRequestData *)> | signal_positionCheckRequest |
| Signal to Position Handler for processing. More... | |
Protected Types | |
| typedef std::pair< DtUniqueID, int > | PositionDataId |
| Object ID & articulated part id Object ID = ViewID/ViewGrp ID when they are requested Entity requests with no required, artpartid = -1. More... | |
| typedef std::map < PositionDataId, DtPositionRequestData > | PositionRequestsMap |
Protected Member Functions | |
| DtPositionResponder (DtCigiConnection &connection) | |
| Constructor. More... | |
| void | processPositionRequest (CigiBasePositionReq &positionReq) |
| Takes CIGI packet passes to version processing. More... | |
| void | processPosReqV3 (CigiPositionReqV3 &posReq) |
| V3 Takes CIGI packet, sends response, adds to continuous request if needed. More... | |
| void | processPosReqV4 (CigiPositionReqV4 &posReq) |
| V4 Takes CIGI packet, sends response, adds to continuous request if needed. More... | |
| virtual void | sendPositionRequest (DtPositionRequestData &positionReq) |
| Sends the position request to the DtPositionHandler by raising a signal_positionCheckRequest signal. More... | |
Protected Attributes | |
| PositionRequestsMap | myPositionRequests |
| DtCigiConnection & | myConnection |
Private Member Functions | |
| DtPositionResponder & | operator= (const DtPositionResponder &orig) |
| (Unimplemented) Assignment Operator More... | |
| DtPositionResponder (const DtPositionResponder &orig) | |
| (Unimplemented) COPY CTOR More... | |
Friends | |
| class | DtPositionResponderCreator |
A DtPositionResponder processes CIGI Position request messages This class catches signals from the DtCigiSignalProcessor for CigiBasePositionReq packets and splits the processing for the base packet into V3 and V4 methods.
This class sends DtPositionRequestData structs via signals to the DtCigiPositionHandler for processing, as it has access to the rendering thread, and this class does not. The Position Response Data struct is declared in this class for tidyness, it is not used here. It is utilised by the DtCigiPositionHandler. All position requests for the connection are also stored here. The DtCigiConnection calls processContinuousPositionRequests to iterate through saved requests Motion tracker positional requests are not supported Geodetic requests for articulated parts are not supported
|
protected |
Object ID & articulated part id Object ID = ViewID/ViewGrp ID when they are requested Entity requests with no required, artpartid = -1.
|
protected |
|
virtual |
Destructor/.
|
protected |
Constructor.
|
private |
(Unimplemented) COPY CTOR
|
virtual |
Iterates through position requests that are set to continuous.
|
virtual |
Makes a call to the DtCigiConnetion to send a position response.
Converts any DtUnique entity IDs to CIGI Entity IDs, or DIS IDs if the connection object flag is checked
|
protected |
Takes CIGI packet passes to version processing.
|
protected |
V3 Takes CIGI packet, sends response, adds to continuous request if needed.
|
protected |
V4 Takes CIGI packet, sends response, adds to continuous request if needed.
|
protectedvirtual |
Sends the position request to the DtPositionHandler by raising a signal_positionCheckRequest signal.
|
private |
(Unimplemented) Assignment Operator
|
friend |
| boost::signalslib::signal<void ( DtPositionRequestData* )> makVrv::DtPositionResponder::signal_positionCheckRequest |
Signal to Position Handler for processing.
|
protected |
|
protected |