17 #include <vlutil/vlThread.h>
19 #include <vlutil/vlRunnable.h>
21 #include <boost/function.hpp>
22 #include <boost/signal.hpp>
29 class DtAsynchronousEventQueue;
30 class DtAsynchronousAgentManager;
32 class DtEntityTypeMapper;
34 class DtSelectionManager;
46 const std::string& uniqueName,
const std::string& className);
52 virtual const std::string& className()
const;
55 virtual bool observersPublished()
const;
58 virtual void setObserversPublished(
bool isPublished);
62 virtual bool overrideGlobalViewControl()
const;
66 virtual void setOverrideGlobalViewControl(
bool enabled);
71 virtual bool viewControlEnabled()
const;
75 virtual void setLocalViewControlEnabled(
bool enabled);
79 bool localViewControlEnabled()
const;
87 void setUseTopoForFlatEarthVectorConversion(
bool flag );
88 bool useTopoForFlatEarthVectorConversion()
const;
92 virtual void queueDriverFunction(
const boost::function<
void ()>&
function);
95 virtual void queueConnectionFunction(
const boost::function<
void ()>&
function);
98 bool useThreadFlag()
const
100 return myUseThreadFlag;
121 virtual bool onStart();
125 virtual bool onStop();
131 void startPublishingObservers();
134 void stopPublishingObservers();
138 virtual bool onTick();
149 void setConnectionState(
bool state );
152 virtual void slot_displayEngineAdded(
const DtDeRecord& igRecord );
155 virtual void slot_globalViewControlEnabledSet(
bool );
160 virtual void connectToDynamicSignals();
164 virtual void disconnectFromDynamicSignals();
166 virtual void slot_onViewChanged(
169 virtual void slot_onCurrentSelectionChanged(
173 virtual void slot_onVertexSelected(
const DtUniqueID& selected,
176 virtual void slot_onVertexDeselected(
const DtUniqueID& deselected,
179 virtual void slot_onEntityInfoToggled(
184 virtual void slot_onEntityIndicatorMouseDown(
DtMouseState& mouseState,
185 const DtUniqueID&
id,
const std::string& displayEngineName,
186 const std::string& windowName,
const std::string& channelName);
188 virtual void slot_onEntityIndicatorMouseUp(
DtMouseState& mouseState,
189 const DtUniqueID&
id,
const std::string& displayEngineName,
190 const std::string& windowName,
const std::string& channelName);
192 virtual void slot_onEntityIndicatorMouseDblClick(
DtMouseState& mouseState,
193 const DtUniqueID&
id,
const std::string& displayEngineName,
194 const std::string& windowName,
const std::string& channelName);
198 virtual void slot_onTacticalGraphicIndicatorMouseDown(
200 const std::string& windowName,
201 const std::string& channelName);
203 virtual void slot_onTacticalGraphicIndicatorMouseUp(
205 const std::string& windowName,
206 const std::string& channelName);
208 virtual void slot_onTacticalGraphicIndicatorMouseDblClick(
210 const std::string& windowName,
211 const std::string& channelName);
214 virtual void slot_onCoordinateSystemChanged(
215 const std::string& coordinateSystem,
216 const std::string& coordinateParameters );
219 virtual void slot_onObserverObjectAttached(
220 const std::string& observerName,
DtUniqueID id);
223 virtual void slot_onObserverDetached(
const std::string& observerName);
226 virtual void attachObserverObject(
const std::string& observerName,
230 virtual void toggleEntitySelected(
const DtUniqueID&
id);
232 virtual void performObserverAction(
237 virtual void slot_onObserverDestroyed(
DtObserver* observer);
239 virtual void slot_onObserverCreated(
DtObserver* observer);
242 virtual void startPublishingObserver(
DtObserver* observer );
245 virtual void stopPublishingObserver(
DtObserver* observer );
248 virtual void updateObservers();
251 const DtUniqueID&
id,
const std::string& displayEngineName,
252 const std::string& windowName,
const std::string& channelName);
255 const DtUniqueID&
id,
const std::string& displayEngineName,
256 const std::string& windowName,
const std::string& channelName);
259 const DtUniqueID&
id,
const std::string& displayEngineName,
260 const std::string& windowName,
const std::string& channelName);
268 virtual void runFunctionQueue(FunctionCallQueue& queue);