VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSensorResponder.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCigi/vrvCigi.h>
13 
16 
17 #include <stdint.h> // for uint**_t
18 
19 #include <string.h>
20 #include <vrvUtil/signalslib.h>
21 
22 class CigiBaseSensorCtrl;
23 class CigiSensorCtrlV3;
24 class CigiSensorCtrlV4;
25 
26 namespace makVrv
27 {
28  class DtCigiConnection;
29 
37 
39  {
40  public:
42 
45  {
46  TrackOff = 0,
47  ForceCorrelate = 1,
48  Scene = 2,
49  Target = 3,
50  Ship = 4,
51  LOS = 5, // Our LOS Track
52  TMDefB = 6,
53  TMDefC = 7
54  };
55 
59  {
60  SearchingForTarget = 0,
61  TrackingTarget = 1,
62  ImpendingBreaklock = 2,
63  BreakLock = 3
64  };
65 
70  {
71  uint8_t SensorId; // Used for sensor tracking
72  std::string SensorName; // Used for sensor visualisation
77  bool Polarity;
78  bool SensorOn;
80  uint16_t ViewId;
81  float Gain; // 0 - 1.0
82  float Level; // 0 - 1.0
83  float AcCoupling; // > 0.0
84  float Noise; // 0 - 1.0
85  };
86 
90  {
91  uint8_t SensorId;
94  uint16_t ViewId;
95  uint16_t GateXSize;
96  uint16_t GateYSize;
99  uint32_t HostFrameNumber;
100  // Extended Vars
101  unsigned long long EntityID;
106  };
107 
108  typedef std::map<int, DtSensorRequestData> DtSensorRequestMap;
109 
111  virtual ~DtSensorResponder();
112 
116  vrvSignalsLib::signal<void( DtSensorRequestData* )> signal_sensorControlRequest;
117 
120  virtual void processSensorRequests();
121 
123  virtual void generateSensorResponse( DtSensorResponseData& response );
124  protected:
126  DtSensorResponder( DtCigiConnection& connection );
127 
129  void slot_processSensorControlRequest( CigiBaseSensorCtrl& packet );
130 
133  void processSensorControlV3( CigiSensorCtrlV3& packet );
134 
137  void processSensorControlV4( CigiSensorCtrlV4& packet );
138 
139  private:
141  DtSensorResponder& operator=( const DtSensorResponder& orig );
142 
144  DtSensorResponder( const DtSensorResponder& orig );
145 
146  protected:
149 
151  };
152 
156  {
157  public:
160 
162  virtual ~DtSensorResponderCreator();
163 
165  static DtSensorResponderCreator& instance( DtDe& de );
166 
168  static DtSensorResponderCreator& instance( DtCigiConnection& connection );
169 
171  virtual DtSensorResponderCreator* clone();
172 
174  static void copyInstance( DtCigiConnection& con, DtDe& de );
175 
177  virtual DtSensorResponder* create( DtCigiConnection& connection ) const;
178  };
179 }
unsigned long long EntityID
Definition: DtSensorResponder.h:101
bool EntityIdValid
Definition: DtSensorResponder.h:102
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
bool SensorOn
Definition: DtSensorResponder.h:78
float Level
Definition: DtSensorResponder.h:82
bool ResponseType
Definition: DtSensorResponder.h:79
uint32_t HostFrameNumber
Definition: DtSensorResponder.h:99
bool TrackWhiteBlack
Definition: DtSensorResponder.h:74
Contains DLL export macros.
DtCigiConnection & myCigiConnection
Definition: DtSensorResponder.h:147
DtSensorRequestMap mySensorRequests
Definition: DtSensorResponder.h:148
double TrackPointAltitude
Definition: DtSensorResponder.h:105
uint16_t ViewId
Definition: DtSensorResponder.h:80
std::string SensorName
Definition: DtSensorResponder.h:72
vrvSignalsLib::signal< void(DtSensorRequestData *)> signal_sensorControlRequest
Signal to the View Controller / Sensor Controller for processing of Sensor data signal_sensorControlR...
Definition: DtSensorResponder.h:116
DtSignalConnectionManager myConnections
Definition: DtSensorResponder.h:150
Contains makVrv::DtVirtualBaseClass class.
float AcCoupling
Definition: DtSensorResponder.h:83
Structure containing the data for the Sensor Response Packet.
Definition: DtSensorResponder.h:89
uint16_t GateYSize
Definition: DtSensorResponder.h:96
float GateXPosition
Definition: DtSensorResponder.h:97
uint16_t GateXSize
Definition: DtSensorResponder.h:95
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Definition: targetConfigurationDialog.h:35
uint8_t SensorId
Definition: DtSensorResponder.h:91
This class is responsible for the actual processing of CIGI data. This holds the entity visualizer...
Definition: DtCigiConnection.h:57
DtTrackMode TrackMode
Definition: DtSensorResponder.h:73
DtTrackMode
Track Mode Enum for Sensor Control Packet.
Definition: DtSensorResponder.h:44
This class catches Sesnor Control signals from the Cigi Signal handler, and processes them into V3 an...
Definition: DtSensorResponder.h:38
float Gain
Definition: DtSensorResponder.h:81
Base class to provide boost signal/slot management.
uint8_t SensorId
Definition: DtSensorResponder.h:71
double TrackPointLatitude
Definition: DtSensorResponder.h:103
float Noise
Definition: DtSensorResponder.h:84
bool ResponseType
Definition: DtSensorResponder.h:93
Creator Class for DtSensorResponder
Definition: DtSensorResponder.h:155
bool AutomaticGain
Definition: DtSensorResponder.h:75
double TrackPointLongitude
Definition: DtSensorResponder.h:104
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
DtSensorStatus
Enum for Sensor Status Used in response packets.
Definition: DtSensorResponder.h:58
bool Polarity
Definition: DtSensorResponder.h:77
std::map< int, DtSensorRequestData > DtSensorRequestMap
Definition: DtSensorResponder.h:108
#define DT_DLL_VRVCIGI
Definition: vrvCigi.h:19
float GateYPosition
Definition: DtSensorResponder.h:98
DtSensorStatus SensorStatus
Definition: DtSensorResponder.h:92
Structure containing the data of the processed inbound sensor control packet. These packets are sent ...
Definition: DtSensorResponder.h:69
uint16_t ViewId
Definition: DtSensorResponder.h:94
bool LineByLineDropout
Definition: DtSensorResponder.h:76

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)