19 #include <boost/signals.hpp>
21 #include <vlutil/vlTimeStampType.h>
29 class DtAgentManagerInterface;
30 class DtCoordinateSystem;
31 class DtDisplayUnitsConverter;
32 class DtElementChanges;
33 class DtEntityAppearanceMapper;
34 class DtEntityAppearanceMapperFactory;
35 class DtEntityAppearanceMapperFactoryCreator;
37 class DtSharedSettingsManager;
57 virtual void coordinateSystemChanged(
const std::string& coordinateName,
58 const std::string& coordinateOrigin );
70 virtual bool connect() = 0;
74 virtual bool connected()
const;
80 virtual bool disconnect() = 0;
83 virtual void tick(
double dt) = 0;
86 virtual double simTime()
const = 0;
89 virtual void setSimTime(
double simTime) = 0;
92 virtual double clockTime()
const = 0;
95 virtual DtTimeStampType timeStampType()
const = 0;
98 virtual void pauseConnection();
101 virtual void resumeConnection();
104 virtual bool connectionIsPaused()
const;
107 virtual void setViewControlChanged(
bool enabled ) = 0;
111 virtual void setConnectionFrameTime(
double frameTime ) = 0;
115 virtual double connectionFrameTime()
const = 0;
123 virtual void setUseTopoForFlatEarthVectorConversion(
bool enabled ) = 0;
126 virtual void observerUpdated(
const std::string& observerName,
127 double x,
double y,
double z,
128 double psi,
double theta,
double phi) = 0;
132 virtual void observerUpdated(
const std::string& observerName,
133 double x,
double y,
double z,
134 double psi,
double theta,
double phi,
135 double dx,
double dy,
double dz,
136 double dpsi,
double dtheta,
double dphi) = 0;
139 virtual void stopPublishingObserver(
const std::string& observerName) = 0;
142 virtual void startPublishingObserver(
const std::string& observerName) = 0;
146 const std::string& displayEngineName,
const std::string& windowName,
147 const std::string& channelName)>
150 const std::string& displayEngineName,
const std::string& windowName,
151 const std::string& channelName)>
154 const std::string& displayEngineName,
const std::string& windowName,
155 const std::string& channelName)>
160 const std::string& displayEngineName,
const std::string& windowName,
161 const std::string& channelName)>
164 const std::string& displayEngineName,
const std::string& windowName,
165 const std::string& channelName)>
168 const std::string& displayEngineName,
const std::string& windowName,
169 const std::string& channelName)>
173 boost::signal<void (DtViewStateProcessor::ObserverAction&)>
189 const DtUniqueID&
id,
const std::string& displayEngineName,
190 const std::string& windowName,
const std::string& channelName);
192 const DtUniqueID&
id,
const std::string& displayEngineName,
193 const std::string& windowName,
const std::string& channelName);
194 void entityIndicatorMouseDblClick(
DtMouseState& mouseState,
195 const DtUniqueID&
id,
const std::string& displayEngineName,
196 const std::string& windowName,
const std::string& channelName);
200 void tacticalGraphicIndicatorMouseDown(
DtMouseState& mouseState,
201 const DtUniqueID&
id,
const std::string& displayEngineName,
202 const std::string& windowName,
const std::string& channelName);
203 void tacticalGraphicIndicatorMouseUp(
DtMouseState& mouseState,
204 const DtUniqueID&
id,
const std::string& displayEngineName,
205 const std::string& windowName,
const std::string& channelName);
206 void tacticalGraphicIndicatorMouseDblClick(
DtMouseState& mouseState,
207 const DtUniqueID&
id,
const std::string& displayEngineName,
208 const std::string& windowName,
const std::string& channelName);
211 void setAppNumber(
int appNumber);
214 void setSiteId(
int siteId);
223 virtual bool isDisconnecting()
const;
Creator for DtEntityAppearanceMapperFactory class.
Definition: DtEntityAppearanceMapperFactory.h:69
The base class for protocol specific VRLink Simulations.
Definition: DtConnection.h:41
boost::signal< void()> signal_connected
Emitted when the connection finished connecting.
Definition: DtConnection.h:180
#define DT_DLL_VRVVRL
Definition: vrvVrl.h:19
Factory for creating appearance mappers for entity types.
Definition: DtEntityAppearanceMapperFactory.h:24
DtCoordinateSystem * myCoordinateSystem
Definition: DtConnection.h:231
boost::signal< void(DtViewStateProcessor::ObserverAction &)> signal_viewChanged
Emitted when a view control change is received.
Definition: DtConnection.h:174
Decoder for converting a particular entity type's appearance bits into generic enumerated values...
Definition: DtEntityAppearanceMapper.h:25
Contains makVrv:DtSelectionManager class.
boost::signal< void()> signal_coordinateSystemChanged
Emitted when the coordinate system changed.
Definition: DtConnection.h:177
boost::signal< void()> signal_toBeDisconnected
Emitted when the connection will be disconnecting.
Definition: DtConnection.h:183
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:45
AppearanceMapperMap myAppearanceMapperMap
Map of appearance mappers shared by entities of the same type.
Definition: DtConnection.h:236
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:37
x y t t *t x y t t t x y t t t x *y t *t t x *y t *t t x y t t t x y t t t x *y t *t t x *y t *t *t x y *z t t *t t x *y *z t *t *t t x y z t t t t x *y z t *t t t x * y(z *w))
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_entityIndicatorMouseDown
Emitted when an entity indicator is clicked.
Definition: DtConnection.h:148
Contains makVrv::DtRandomNumberGenerator class.
This class encapsulates the state associated with a mouse button event.
Definition: DtMouseState.h:23
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_tacticalGraphicIndicatorMouseDblClick
Definition: DtConnection.h:170
Utility class for doing global unit conversion.
Definition: DtDisplayUnitsSettingsManager.h:59
x y * z
Definition: exprtk.hpp:9133
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
boost::unordered_map< std::string, DtEntityAppearanceMapper * > AppearanceMapperMap
Definition: DtConnection.h:228
Contains makVrv:DtDriver class.
int mySiteId
Definition: DtConnection.h:242
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
Contains makVrv:DtBaseConnection class.
bool myIsPausedFlag
Definition: DtConnection.h:243
x y t t *t x y t t t x y t t t x *y t *t t x *y t *t t x y t t t x y t t t x(y+z)
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:36
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_tacticalGraphicIndicatorMouseDown
Emitted when an tactical graphic indicator is clicked.
Definition: DtConnection.h:162
bool myIsDisconnecting
Definition: DtConnection.h:244
Contains DLL export macros.
int myAppNumber
Definition: DtConnection.h:241
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_entityIndicatorMouseUp
Definition: DtConnection.h:152
DtDisplayUnitsConverter * myCoordinateConverter
Definition: DtConnection.h:233
DtEntityAppearanceMapperFactory * myMapperFactory
Factory responsible for creating Appearance Mappers.
Definition: DtConnection.h:239
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_entityIndicatorMouseDblClick
Definition: DtConnection.h:156
boost::signal< void(DtMouseState &, const DtUniqueID &, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)> signal_tacticalGraphicIndicatorMouseUp
Definition: DtConnection.h:166