19 #include "legionNet/boundarySpatialSpherical.h"
20 #include "legionDataStore/configuration.h"
24 #include <legionDataStore/dataTypes.h>
25 #include <legionDataStore/vector.h>
27 #include <matrix/vlVector.h>
29 #include <vlutil/vlTimeStampType.h>
33 #include <boost/signals2.hpp>
41 class WriteEntityRepository;
42 class BoundarySpatialSpherical;
43 class SimulationDatabase;
54 class ServerStatResult;
55 class ClientStatResult;
61 class DtEntityProcessor;
62 class DtFireEventProcessor;
63 class DtDetonationEventProcessor;
82 virtual void setConnectionConfiguration(
const Legion::Configuration& config);
89 virtual bool connect();
93 virtual bool connected()
const;
99 virtual bool disconnect();
102 virtual void tick(
double dt);
105 virtual double simTime()
const;
108 virtual void setSimTime(
double simTime);
111 virtual double clockTime()
const;
114 virtual DtTimeStampType timeStampType()
const;
118 virtual void setViewControlChanged(
bool enabled );
122 virtual void setConnectionFrameTime(
double frameTime );
126 virtual double connectionFrameTime()
const;
134 virtual void setUseTopoForFlatEarthVectorConversion(
bool enabled );
137 virtual void observerUpdated(
const std::string& observerName,
138 double x,
double y,
double z,
139 double psi,
double theta,
double phi);
143 virtual void observerUpdated(
const std::string& observerName,
144 double x,
double y,
double z,
145 double psi,
double theta,
double phi,
146 double dx,
double dy,
double dz,
147 double dpsi,
double dtheta,
double dphi);
150 virtual void stopPublishingObserver(
const std::string& observerName);
153 virtual void startPublishingObserver(
const std::string& observerName);
158 void setSupportsDelayedVisualizerCreation(
bool);
159 bool supportsDelayedVisualizerCreation()
const;
183 virtual void queueDriverFunction(boost::function<
void()> func);
188 virtual void queueConnectionFunction(boost::function<
void()> func);
190 Legion::SimulationDatabase* database();
191 Legion::Connection* connection();
192 Legion::ViewManager* viewManager();
200 virtual void setInterestSize(
int size);
201 virtual int interestSize();
204 virtual Legion::Vector3d observerForward();
205 virtual Legion::Vector3d observerLocation();
207 virtual void resetConnection();
209 virtual void setExternalCommunicationControl(
bool);
213 void addObserverPublisher(
const std::string& observerName);
214 void updateInterest();
216 void handleStats(
const MAK::ServerStatResult& servers,
const std::vector<MAK::ClientStatResult>& clients);
DtDetonationEventProcessor * myDetonationProcessor
Definition: DtLegionConnection.h:235
Creator for DtEntityAppearanceMapperFactory class.
Definition: DtEntityAppearanceMapperFactory.h:82
The base class for protocol specific VRLink Simulations.
Definition: DtConnection.h:43
boost::signals2::signal< void()> signal_exerciseConnectionCreated
Signal sent when the exercise connection is created, but before some initialization (like creating re...
Definition: DtLegionConnection.h:165
Legion::SimulationDatabase * myDatabase
Definition: DtLegionConnection.h:238
double myConnectionFrameTime
Definition: DtLegionConnection.h:228
boost::signals2::signal< void()> signal_preEndFrame
Sent right before end frame.
Definition: DtLegionConnection.h:177
bool myViewControlsEnabled
typedef boost::unordered_map<std::string,DtEntityAppearanceMapper*> AppearanceMapperMap; typedef boos...
Definition: DtLegionConnection.h:225
float myInterestSize
Definition: DtLegionConnection.h:243
DtEntityProcessor * myEntityProcessor
Definition: DtLegionConnection.h:233
bool mySupportsDelayedVisualizerCreation
Definition: DtLegionConnection.h:230
Legion::Vector3d myLastObserverLocation
Definition: DtLegionConnection.h:247
boost::signals2::signal< void()> signal_postTick
Signal sent after the tick has been completed.
Definition: DtLegionConnection.h:171
DtSignalConnectionManager myConnections
Definition: DtLegionConnection.h:227
boost::signals2::signal< void()> signal_preTick
Signal sent before the tick starts.
Definition: DtLegionConnection.h:168
voidpf void uLong size
Definition: ioapi.h:39
Contains makVrv:DtSelectionManager class.
Legion::BoundarySpatialSpherical * myBoundary
Definition: DtLegionConnection.h:248
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
The base class for protocol specific VRLink Simulations.
Definition: DtLegionConnection.h:67
DtLegionDriver & myDriver
Definition: DtLegionConnection.h:231
boost::signals2::signal< void()> signal_databaseCreated
Sent right after the database is created.
Definition: DtLegionConnection.h:180
Legion::Vector3d myObserverLocation
Definition: DtLegionConnection.h:246
#define VRV_LEGION_DLL
Definition: export.h:24
Contains makVrv::DtRandomNumberGenerator class.
Definition: DtDetonationEventProcessor.h:78
Contains makVrv::DtConnection class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
boost::signals2::signal< void()> signal_postBeginFrame
Sent right after begin frame.
Definition: DtLegionConnection.h:174
Contains makVrv:DtDriver class.
Legion::Connection * myConnection
Definition: DtLegionConnection.h:239
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
Contains makVrv:DtBaseConnection class.
Definition: DtFireEventProcessor.h:52
Legion::Vector3f myObserverForward
Definition: DtLegionConnection.h:245
Definition: DtEntityProcessor.h:48
bool myExternalCommunicationControl
Definition: DtLegionConnection.h:250
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
double mySimTime
Definition: DtLegionConnection.h:242
Legion::Configuration * myConnectionConfiguration
Definition: DtLegionConnection.h:237
Definition: DtLegionDriver.h:32
Legion::ViewManager * myViewManager
Definition: DtLegionConnection.h:240
bool myUseTopoForFlatEarthVectorConversion
Definition: DtLegionConnection.h:226
DtFireEventProcessor * myFireProcessor
Definition: DtLegionConnection.h:234