27#include <vrvVrl/DtVrlinkConnection.h>
28#include <vrvVrl/DtEntityStateInterceptorCreator.h>
29#include <vrvVrl/DtCustomReflectedEntityList.h>
30#include <vrvVrl/DtVrlinkReflectedAerodromeList.h>
31#include <vrfExtObjects/extEntityStateRepository.h>
34#include <vrfobjparam/smsLoader.h>
36class DtReflectedExtEntityList;
37class DtReflectedExtEntity;
38class DtExtEntityStateRepository;
48 DtReflectedExtEntityList, DtReflectedExtEntity, DtExtEntityStateRepository>;
69 makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor& listener,
const DtDDMRegionSet& regionsToUse)
97 virtual bool readyToAdd(DtReflectedObject* obj)
override;
122 virtual void discoverEntity(DtReflectedObject* obj, DtExtEntityStateRepository* entSR);
166 static DtVrvEntityReflectedListCreator&
instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
173 virtual DtReflectedEntityList*
create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor& listener)
override;
180 virtual DtReflectedEntityList*
create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor& l,
181 const DtDDMRegionSet& r)
override;
200 static DtEntityStateInterceptorCreator&
instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
213 virtual DtEntityStateRepository*
create(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* listener)
override;
221 :
public makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkReflectedAerodromeListCreator
227 static makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkReflectedAerodromeListCreator&
instance(
228 makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
233 virtual DtReflectedAerodromeList*
create(makVrv::DT_PROTOCOL_NAMESPACE::DtAerodromeExistenceListener& l)
override;
239 virtual DtReflectedAerodromeList*
create(
240 makVrv::DT_PROTOCOL_NAMESPACE::DtAerodromeExistenceListener& l,
const DtDDMRegionSet* s)
override;
virtual DtReflectedAerodromeList * create(makVrv::DT_PROTOCOL_NAMESPACE::DtAerodromeExistenceListener &l, const DtDDMRegionSet *s) override
Creates a new aerodrome reflected list with DDM regions (HLA-specific)
virtual DtReflectedAerodromeList * create(makVrv::DT_PROTOCOL_NAMESPACE::DtAerodromeExistenceListener &l) override
Creates a new aerodrome reflected list.
static makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkReflectedAerodromeListCreator & instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Gets or creates the singleton instance for a specific connection.
DtVreAerodromeReflectedListCreator(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Constructor.
MissingTypeSet myMissingTypes
Set of entity types we know aren't in the parameter database.
Definition vreVrvExtensions.h:153
std::set< DtEntityType > MissingTypeSet
Type alias for the set of missing entity types.
Definition vreVrvExtensions.h:147
virtual ~DtVreCustomReflectedEntityList() override
Virtual destructor.
virtual void initialize()
Initializes the reflected entity list.
std::vector< std::string > mySms
Currently loaded simulation model set filenames.
Definition vreVrvExtensions.h:136
DtSmsLoader mySmsLoader
Loader for simulation model sets.
Definition vreVrvExtensions.h:133
virtual void discoverEntity(DtReflectedObject *obj, DtExtEntityStateRepository *entSR)
Discovers and initializes an entity with parameter data.
std::map< DtReflectedObject *, DtEntityType > InitializedTypeMap
Type alias for mapping reflected objects to entity types.
Definition vreVrvExtensions.h:139
InitializedTypeMap myInitializedWithType
Map of reflected objects to their entity types.
Definition vreVrvExtensions.h:144
virtual bool readyToAdd(DtReflectedObject *obj) override
Determines if an entity is ready to be added to the list.
DtVreCustomReflectedEntityList(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor &listener)
Constructor for non-HLA protocols.
Definition vreVrvExtensions.h:59
virtual void entityUpdated(DtReflectedEntity *ent) override
Handles entity updates.
DtVrfParameterDb * parameterDatabase()
Gets the parameter database associated with this entity list.
virtual DtVreMessageResult handleSessionSmsList(DtVreMessage *msg)
Handles simulation model set list messages.
static void entityUpdatedCallback(DtReflectedEntity *entity, void *usr)
Static callback function for entity updates.
DtVreCustomReflectedEntityList(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor &listener, const DtDDMRegionSet ®ionsToUse)
Constructor for HLA protocol.
Definition vreVrvExtensions.h:68
virtual void entityAdded(DtReflectedEntity *ent) override
Handles a newly added entity.
virtual DtReflectedEntityList * create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor &l, const DtDDMRegionSet &r) override
Creates a new reflected entity list with DDM regions (HLA-specific)
static DtVrvEntityReflectedListCreator & instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Gets or creates the singleton instance for a specific connection.
DtVreEntityReflectedListCreator(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Constructor.
virtual DtReflectedEntityList * create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityElementProcessor &listener) override
Creates a new reflected entity list.
virtual ~DtVreEntityStateInterceptorCreator() override
Virtual destructor.
DtVreEntityStateInterceptorCreator()
Default constructor.
static DtEntityStateInterceptorCreator & instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Gets or creates the singleton instance for a specific connection.
virtual DtEntityStateRepository * create(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener *listener) override
Creates a new entity state repository.
Abstract base class for all VREngage messages.
Definition vreMessage.h:50
Defines export macros and protocol namespace for vrePlayerStationConnector.
#define VRL_DLL
Empty definition for non-Windows platforms.
Definition export.h:52
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
makVrv::DT_PROTOCOL_NAMESPACE::DtCustomReflectedEntityList< DtReflectedExtEntityList, DtReflectedExtEntity, DtExtEntityStateRepository > DtVreBaseCustomReflectedEntityList
Type of derived reflected entity list to create in VR-Vantage's DtVrlinkConnection.
Definition vreVrvExtensions.h:47
DtVreMessageResult
Enumeration of possible message handling results.
Definition vreMessage.h:33
Defines the base class for all VREngage messages.