![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtCigiDriver.h,v $ $Revision: 1.18 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #ifndef DtCigiSignalProcessor_H_ 00014 #define DtCigiSignalProcessor_H_ 00015 00016 #include <vrvCigi/vrvCigi.h> 00017 #include <vrvCigi/DtCigiDriver.h> 00018 00019 #include <vrvCore/DtViewStateProcessor.h> 00020 #include <vrvUtil/DtCoordinateSystem.h> 00021 00022 #include <CigiBaseSignalProcessing.h> 00023 00024 #include <CigiCompCtrlV3_3.h> 00025 #include <boost/signals.hpp> 00026 00027 class CigiArtPartCtrlV3; 00028 class CigiAtmosCtrlV3; 00029 class CigiCelestialCtrlV3; 00030 class CigiCollDetSegDefV3; 00031 class CigiCollDetVolDefV3; 00032 class CigiCompCtrlV3_3; 00033 class CigiConfClampEntityCtrlV3; 00034 class CigiEarthModelDefV3; 00035 class CigiEntityCtrlV3_3; 00036 class CigiEnvCondReqV3; 00037 class CigiEnvRgnCtrlV3; 00038 class CigiHatHotReqV3_2; 00039 class CigiHatHotXRespV3_2; 00040 class CigiIGCtrlV3_3; 00041 class CigiLosSegReqV3_2; 00042 class CigiLosVectReqV3_2; 00043 class CigiMaritimeSurfaceCtrlV3; 00044 class CigiMotionTrackCtrlV3; 00045 class CigiPositionReqV3; 00046 class CigiRateCtrlV3_2; 00047 class CigiSensorCtrlV3; 00048 class CigiShortArtPartCtrlV3; 00049 class CigiShortCompCtrlV3_3; 00050 class CigiSymbolCloneV3_3; 00051 class CigiSymbolCtrlV3_3; 00052 class CigiTerrestrialSurfaceCtrlV3; 00053 class CigiTrajectoryDefV3; 00054 class CigiViewCtrlV3; 00055 class CigiViewDefV3; 00056 class CigiWaveCtrlV3; 00057 class CigiWeatherCtrlV3; 00058 class CigiShortSymbolCtrlV3_3; 00059 class CigiSymbolTextDefV3_3; 00060 class CigiSymbolSurfaceDefV3_3; 00061 class CigiSymbolCircleDefV3_3; 00062 class CigiSymbolLineDefV3_3; 00063 00064 namespace makVrv 00065 { 00066 class DtCigiEntityVisualizer; 00067 class DtViewStateProcessor; 00068 class DtAgentManagerInterface; 00069 class DtCigiConnection; 00070 00074 class DT_DLL_VRVCIGI DtCigiSignalProcessor : public DtVirtualBaseClass, 00075 public CigiBaseSignalProcessing 00076 { 00077 public: 00079 static DtCigiSignalProcessor& instance(DtCigiConnection& sim); 00080 00082 virtual ~DtCigiSignalProcessor(); 00083 00084 00090 virtual void OnIGCtrl(CigiBasePacket *Packet); 00091 00097 virtual void OnArtPartCtrl(CigiBasePacket *Packet); 00098 00104 virtual void OnAtmosCtrl(CigiBasePacket *Packet); 00105 00111 virtual void OnCelestialCtrl(CigiBasePacket *Packet); 00112 00118 virtual void OnCollDetSegDef(CigiBasePacket *Packet); 00119 00125 virtual void OnCollDetVolDef(CigiBasePacket *Packet); 00126 00132 virtual void OnCompCtrl(CigiBasePacket *Packet); 00133 00139 virtual void OnConfClampEntityCtrl(CigiBasePacket *Packet); 00140 00146 virtual void OnEarthModelDef(CigiBasePacket *Packet); 00147 00153 virtual void OnEntityCtrl(CigiBasePacket *Packet); 00154 00160 virtual void OnEnvCondReq(CigiBasePacket *Packet); 00161 00167 virtual void OnEnvCtrl(CigiBasePacket *Packet); 00168 00174 virtual void OnEnvRgnCtrl(CigiBasePacket *Packet); 00175 00181 virtual void OnHatReq(CigiBasePacket *Packet); 00182 00188 virtual void OnHatHotReq(CigiBasePacket *Packet); 00189 00195 virtual void OnHatHotXReq(CigiBasePacket *Packet); 00196 00202 virtual void OnHotReq(CigiBasePacket *Packet); 00203 00209 virtual void OnLosSegReq(CigiBasePacket *Packet); 00210 00216 virtual void OnLosVectReq(CigiBasePacket *Packet); 00217 00223 virtual void OnMaritimeSurfaceCtrl(CigiBasePacket *Packet); 00224 00230 virtual void OnMotionTrackCtrl(CigiBasePacket *Packet); 00231 00237 virtual void OnPostionReq(CigiBasePacket *Packet); 00238 00244 virtual void OnRateCtrl(CigiBasePacket *Packet); 00245 00251 virtual void OnSensorCtrl(CigiBasePacket *Packet); 00252 00258 virtual void OnShortArtPartCtrl(CigiBasePacket *Packet); 00259 00266 virtual void OnShortCompCtrl(CigiBasePacket *Packet); 00267 00273 virtual void OnShortSymbolCtrl(CigiBasePacket *Packet); 00274 00280 virtual void OnSpecEffDef(CigiBasePacket *Packet); 00281 00287 virtual void OnSymbolCircleDef(CigiBasePacket *Packet); 00288 00294 virtual void OnSymbolClone(CigiBasePacket *Packet); 00295 00301 virtual void OnSymbolCtrl(CigiBasePacket *Packet); 00302 00308 virtual void OnSymbolLineDef(CigiBasePacket *Packet); 00309 00315 virtual void OnSymbolTextDef(CigiBasePacket *Packet); 00316 00322 virtual void OnSymbolSurfaceDef(CigiBasePacket *Packet); 00323 00329 virtual void OnTerrestrialSurfaceCtrl(CigiBasePacket *Packet); 00330 00336 virtual void OnTrajectory(CigiBasePacket *Packet); 00337 00343 virtual void OnViewCtrl(CigiBasePacket *Packet); 00344 00350 virtual void OnViewDef(CigiBasePacket *Packet); 00351 00357 virtual void OnWaveCtrl(CigiBasePacket *Packet); 00358 00364 virtual void OnWeatherCtrl(CigiBasePacket *Packet); 00365 00371 virtual void OnUnrecognized(CigiBasePacket *Packet); 00372 00374 boost::signal<void (const CigiIGCtrlV3_3&)> signal_igControlReceived; 00375 boost::signal<void (const CigiArtPartCtrlV3&)> signal_artPartControlReceived; 00376 boost::signal<void (const CigiAtmosCtrlV3&)> signal_atmosphereControlReceived; 00377 boost::signal<void (const CigiCelestialCtrlV3&)> signal_celestialControlReceived; 00378 boost::signal<void (const CigiCollDetSegDefV3&)> signal_collisionDetectionSegmentDefinitionReceived; 00379 boost::signal<void (const CigiCollDetVolDefV3&)> signal_collisionDetectionVolumeDefinitionReceived; 00380 boost::signal<void (CigiCompCtrlV3_3&)> signal_componentControlReceived; 00381 boost::signal<void (CigiConfClampEntityCtrlV3&)> signal_conformalClampedEntityControlReceived; 00382 boost::signal<void (const CigiEarthModelDefV3&)> signal_earthModelDefinitionReceived; 00383 boost::signal<void (const CigiEntityCtrlV3_3&)> signal_entityControlReceived; 00384 boost::signal<void (const CigiEnvCondReqV3&)> signal_environmentalConditionsRequestReceived; 00385 boost::signal<void (const CigiEnvRgnCtrlV3&)> signal_environmentalRegionControlReceived; 00386 boost::signal<void (const CigiHatHotReqV3_2&)> signal_hatHotRequestReceived; 00387 boost::signal<void (const CigiHatHotXRespV3_2&)> signal_hatHotExtendedRequestReceived; 00388 boost::signal<void (const CigiLosSegReqV3_2&)> signal_losSegmentRequestReceived; 00389 boost::signal<void (CigiLosVectReqV3_2&)> signal_losVectorRequestReceived; 00390 boost::signal<void (CigiMaritimeSurfaceCtrlV3&)> signal_maritimeSurfaceConditionsControlReceived; 00391 boost::signal<void (CigiMotionTrackCtrlV3&)> signal_motionTrackerControlReceived; 00392 boost::signal<void (CigiPositionReqV3&)> signal_positionRequestReceived; 00393 boost::signal<void (const CigiRateCtrlV3_2&)> signal_rateControlReceived; 00394 boost::signal<void (const CigiSensorCtrlV3&)> signal_sensorControlReceived; 00395 boost::signal<void (const CigiShortArtPartCtrlV3&)> signal_shortArtPartControlReceived; 00396 boost::signal<void (CigiShortCompCtrlV3_3&)> signal_shortComponentControlReceived; 00397 boost::signal<void (const CigiShortSymbolCtrlV3_3&)> signal_shortSymbolControlReceived; 00398 boost::signal<void (const CigiSymbolCircleDefV3_3&)> signal_symbolCircleDefinitionReceived; 00399 boost::signal<void (const CigiSymbolCloneV3_3&)> signal_symbolCloneReceived; 00400 boost::signal<void (const CigiSymbolCtrlV3_3&)> signal_symbolControlReceived; 00401 boost::signal<void (const CigiSymbolLineDefV3_3&)> signal_symbolLineDefinitionReceived; 00402 boost::signal<void (const CigiSymbolTextDefV3_3&)> signal_symbolTextDefinitionReceived; 00403 boost::signal<void (const CigiSymbolSurfaceDefV3_3&)> signal_symbolSurfaceDefinitionReceived; 00404 boost::signal<void (const CigiTerrestrialSurfaceCtrlV3&)> signal_terrestrialSurfaceConditionsControlReceived; 00405 boost::signal<void (const CigiTrajectoryDefV3&)> signal_trajectoryDefinitionReceived; 00406 boost::signal<void (const CigiViewCtrlV3&)> signal_viewControlReceived; 00407 boost::signal<void (const CigiViewDefV3&)> signal_viewDefinitionReceived; 00408 boost::signal<void (const CigiWaveCtrlV3&)> signal_waveControlReceived; 00409 boost::signal<void (const CigiWeatherCtrlV3&)> signal_weatherControlReceived; 00410 boost::signal<void (const CigiBasePacket&)> signal_unrecognizedPacketReceived; 00411 00412 protected: 00414 DtCigiSignalProcessor(DtCigiConnection& connection); 00415 00416 protected: 00417 DtCigiConnection& myConnection; 00418 }; 00419 } // makVrv 00420 00421 #endif