18 #include <vlutil/vlThread.h>
20 #include <vlutil/vlRunnable.h>
23 #include <boost/function.hpp>
24 #include <boost/signal.hpp>
31 class DtAsynchronousEventQueue;
32 class DtAsynchronousAgentManager;
34 class DtEntityTypeMapper;
36 class DtSelectionManager;
48 const std::string& uniqueName,
const std::string& className);
54 virtual const std::string& className()
const;
57 virtual bool observersPublished()
const;
60 virtual void setObserversPublished(
bool isPublished);
64 virtual bool overrideGlobalViewControl()
const;
68 virtual void setOverrideGlobalViewControl(
bool enabled);
73 virtual bool viewControlEnabled()
const;
77 virtual void setLocalViewControlEnabled(
bool enabled);
81 bool localViewControlEnabled()
const;
89 void setUseTopoForFlatEarthVectorConversion(
bool flag );
90 bool useTopoForFlatEarthVectorConversion()
const;
94 virtual void queueDriverFunction(
const boost::function<
void ()>&
function);
97 virtual void queueConnectionFunction(
const boost::function<
void ()>&
function);
100 bool useThreadFlag()
const
102 return myUseThreadFlag;
123 virtual bool onStart();
127 virtual bool onStop();
133 void startPublishingObservers();
136 void stopPublishingObservers();
140 virtual bool onTick();
151 void setConnectionState(
bool state );
154 virtual void slot_displayEngineAdded(
const DtDeRecord& igRecord );
157 virtual void slot_globalViewControlEnabledSet(
bool );
162 virtual void connectToDynamicSignals();
166 virtual void disconnectFromDynamicSignals();
168 virtual void slot_onViewChanged(
171 virtual void slot_onCurrentSelectionChanged(
175 virtual void slot_onVertexSelected(
const DtUniqueID& selected,
178 virtual void slot_onVertexDeselected(
const DtUniqueID& deselected,
181 virtual void slot_onEntityInfoToggled(
186 virtual void slot_onEntityIndicatorMouseDown(
DtMouseState& mouseState,
187 const DtUniqueID&
id,
const std::string& displayEngineName,
188 const std::string& windowName,
const std::string& channelName);
190 virtual void slot_onEntityIndicatorMouseUp(
DtMouseState& mouseState,
191 const DtUniqueID&
id,
const std::string& displayEngineName,
192 const std::string& windowName,
const std::string& channelName);
194 virtual void slot_onEntityIndicatorMouseDblClick(
DtMouseState& mouseState,
195 const DtUniqueID&
id,
const std::string& displayEngineName,
196 const std::string& windowName,
const std::string& channelName);
200 virtual void slot_onTacticalGraphicIndicatorMouseDown(
202 const std::string& windowName,
203 const std::string& channelName);
205 virtual void slot_onTacticalGraphicIndicatorMouseUp(
207 const std::string& windowName,
208 const std::string& channelName);
210 virtual void slot_onTacticalGraphicIndicatorMouseDblClick(
212 const std::string& windowName,
213 const std::string& channelName);
216 virtual void slot_onCoordinateSystemChanged(
217 const std::string& coordinateSystem,
218 const std::string& coordinateParameters );
221 virtual void slot_onObserverObjectAttached(
222 const std::string& observerName,
DtUniqueID id);
225 virtual void slot_onObserverDetached(
const std::string& observerName);
228 virtual void attachObserverObject(
const std::string& observerName,
232 virtual void toggleEntitySelected(
const DtUniqueID&
id);
234 virtual void performObserverAction(
239 virtual void slot_onObserverDestroyed(
DtObserver* observer);
241 virtual void slot_onObserverCreated(
DtObserver* observer);
244 virtual void startPublishingObserver(
DtObserver* observer );
247 virtual void stopPublishingObserver(
DtObserver* observer );
250 virtual void updateObservers();
253 const DtUniqueID&
id,
const std::string& displayEngineName,
254 const std::string& windowName,
const std::string& channelName);
257 const DtUniqueID&
id,
const std::string& displayEngineName,
258 const std::string& windowName,
const std::string& channelName);
261 const DtUniqueID&
id,
const std::string& displayEngineName,
262 const std::string& windowName,
const std::string& channelName);
270 virtual void runFunctionQueue(FunctionCallQueue& queue);