19 #include <vlutil/vlRunnable.h>
22 #include <boost/function.hpp>
23 #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);
63 virtual bool viewControlEnabled()
const;
66 virtual void setViewControlEnabled(
bool enabled);
69 virtual void queueSimulationFunction(
const boost::function<
void ()>&
function);
72 bool useThreadFlag()
const
74 return myUseThreadFlag;
95 virtual bool onStart();
99 virtual bool onStop();
105 void startPublishingObservers();
108 void stopPublishingObservers();
112 virtual bool onTick();
123 void setConnectionState(
bool state );
126 virtual void slot_displayEngineAdded(
const DtDeRecord& igRecord );
131 virtual void connectToDynamicSignals();
135 virtual void disconnectFromDynamicSignals();
137 virtual void slot_onViewChanged(
140 virtual void slot_onCurrentSelectionChanged(
144 virtual void slot_onVertexSelected(
const DtUniqueID& selected,
147 virtual void slot_onVertexDeselected(
const DtUniqueID& deselected,
150 virtual void slot_onEntityInfoToggled(
155 virtual void slot_onEntityIndicatorMouseDown(
DtMouseState& mouseState,
156 const DtUniqueID&
id,
const std::string& displayEngineName,
157 const std::string& windowName,
const std::string& channelName);
159 virtual void slot_onEntityIndicatorMouseUp(
DtMouseState& mouseState,
160 const DtUniqueID&
id,
const std::string& displayEngineName,
161 const std::string& windowName,
const std::string& channelName);
163 virtual void slot_onEntityIndicatorMouseDblClick(
DtMouseState& mouseState,
164 const DtUniqueID&
id,
const std::string& displayEngineName,
165 const std::string& windowName,
const std::string& channelName);
169 virtual void slot_onTacticalGraphicIndicatorMouseDown(
171 const std::string& windowName,
172 const std::string& channelName);
174 virtual void slot_onTacticalGraphicIndicatorMouseUp(
176 const std::string& windowName,
177 const std::string& channelName);
179 virtual void slot_onTacticalGraphicIndicatorMouseDblClick(
181 const std::string& windowName,
182 const std::string& channelName);
185 virtual void slot_onCoordinateSystemChanged(
186 const std::string& coordinateSystem,
187 const std::string& coordinateParameters );
190 virtual void slot_onObserverObjectAttached(
191 const std::string& observerName,
DtUniqueID id);
194 virtual void slot_onObserverDetached(
const std::string& observerName);
197 virtual void attachObserverObject(
const std::string& observerName,
201 virtual void toggleEntitySelected(
const DtUniqueID&
id);
203 virtual void performObserverAction(
208 virtual void slot_onObserverDestroyed(
DtObserver* observer);
210 virtual void slot_onObserverCreated(
DtObserver* observer);
213 virtual void startPublishingObserver(
DtObserver* observer );
216 virtual void stopPublishingObserver(
DtObserver* observer );
219 virtual void updateObservers();
222 const DtUniqueID&
id,
const std::string& displayEngineName,
223 const std::string& windowName,
const std::string& channelName);
226 const DtUniqueID&
id,
const std::string& displayEngineName,
227 const std::string& windowName,
const std::string& channelName);
230 const DtUniqueID&
id,
const std::string& displayEngineName,
231 const std::string& windowName,
const std::string& channelName);
239 virtual void runFunctionQueue(FunctionCallQueue& queue);