VR-Forces 4.2 Class Documentation
fogOfWarHandler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: fogOfWarHandler.h,v $ $Revision: 1.1 $ $State: Exp $
7 ******************************************************************************/
8 
11 
14 
15 #pragma once
16 
17 #if DtDIS
18 #include <vrfDis/vrfDis.h>
19 #elif DtHLA
20 #ifndef DtHLA_1516
21 #include <vrfHla13/vrfHla13.h>
22 #else
23 #ifdef DtHLA_1516_EVOLVED
24 #include <vrfHla1516e/vrfHla1516e.h>
25 #else
26 #include <vrfHla1516/vrfHla1516.h>
27 #endif
28 #endif
29 #endif
30 
32 
33 #include <vrvUtil/DtSignalConnectionManager.h>
34 #include <vrvVrl/DtEntitySimDataProcessor.h>
37 
38 namespace makVrv
39 {
40  namespace DT_PROTOCOL_NAMESPACE
41  {
43  }
44 }
45 
46 namespace makVrf
47 {
48  class DtVrfSelectionFilter;
49 
50  namespace VRF_PROTOCOL_NAMESPACE
51  {
53  class VRF_PROTOCOL_EXPORT DtVrfFogOfWarEntityDataProcessor : public makVrv::DT_PROTOCOL_NAMESPACE::DtEntitySimDataProcessor
54  {
55  public:
56  DtVrfFogOfWarEntityDataProcessor(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection&);
57 
58  virtual void setState(
59  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener& listener,
60  makVrv::DtVrlinkSimulatedEntityState& state);
61  };
62 
65  {
66  public:
67  DtVrfFogOfWarEnvironmentalDataProcessor(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection&);
68 
69  virtual void setState(
70  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener,
72  };
73 
76  {
77  public:
78  DtVrfFogOfWarAggregateDataProcessor(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection&);
79 
80  virtual void setState(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener& listener,
82  };
83 
85  {
86  public:
87  DtVrfFogOfWarHandler(DtVrfDriver*, makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection* c);
88  virtual ~DtVrfFogOfWarHandler();
89 
92  virtual void slot_addFogOfWarFilter(const DtVrfSelectionFilter*);
93 
95  virtual void slot_removeFogOfWarFilter(const std::string&);
96 
97  protected:
98 
99  virtual void executeFiltersForEntities();
100 
102  virtual void executeFiltersForEntity(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener&);
103 
104  virtual void onEntityDiscovered(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener& listener);
105  virtual void onEntityToBeDestroyed(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener& listener);
106 
108  virtual void entityForceIdChanged(int, makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener*);
109 
110  protected:
113  virtual void executeFilters();
114 
117  virtual bool executeFilters(const makVrv::DtVrlinkSimulatedBaseState*);
118 
119 
120  protected:
121  virtual void executeFiltersForTacticalGraphics(bool force = false);
122 
124  virtual void executeFiltersForEnvironmental(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface&,
125  bool force = false);
126 
127  virtual void onEnvironmentalDiscovered(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
128  virtual void onEnvironmentalToBeDestroyed(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
129  virtual void onEnvironmentalUpdated(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
130 
131  protected:
132  virtual void executeFiltersForAggregates();
133 
135  virtual void executeFiltersForAggregate(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener&);
136 
137  virtual void onAggregateDiscovered(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener& listener);
138  virtual void onAggregateToBeDestroyed(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener& listener);
139 
141  virtual void aggregateForceIdChanged(int, makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener*);
142 
143  protected:
145  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection* myConnection;
146 
147  typedef std::map<std::string, const DtVrfSelectionFilter*> FogOfWarFilters;
149 
150  makVrv::DtSignalConnectionManager myConnections;
151  makVrv::DtSignalConnectionManager myEnvironmentalConnections;
152 
156 
160 
161  typedef std::map<std::string, int> EnvironmentalForceMap;
163  };
164  }
165 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)