VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes
makVrf::DtEnvironmentConditionRemoteNetInterface Class Reference
Inheritance diagram for makVrf::DtEnvironmentConditionRemoteNetInterface:
Inheritance graph
[legend]

Public Member Functions

 DtEnvironmentConditionRemoteNetInterface (DtStateData *vrfObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
virtual ~DtEnvironmentConditionRemoteNetInterface ()
 
virtual void onTick () override
 
virtual RTI::ObjectClassHandle objectClassHandle () const override
 
virtual DtString type () const override
 
template<typename T , typename V >
void setReflectedObject (T *ro)
 
virtual void clearReflectedObject (bool shouldRemoveStateComponent=true)
 
- Public Member Functions inherited from makVrf::DtSimRemoteEnvironmentalNetInterface
 DtSimRemoteEnvironmentalNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
virtual ~DtSimRemoteEnvironmentalNetInterface ()
 
virtual bool init ()
 
virtual bool isValidReflectedObject (DtReflectedEnvironmentProcess *) const
 
virtual void setReflectedObject (DtReflectedEnvironmentProcess *reflectedObject)
 
virtual void clearReflectedObject ()
 
virtual void toBeRemoved ()
 
virtual bool isLocal () const
 
virtual void setUpdateReceived (bool updateReceived)
 
virtual bool updateReceived () const
 
virtual bool wantsToCreatePublisher () const
 
- Public Member Functions inherited from makVrf::DtSimEnvironmentalNetInterface
 DtSimEnvironmentalNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *objMgr, bool publishObject=true)
 
virtual ~DtSimEnvironmentalNetInterface ()
 
virtual DtControlObjectRepositorycontrolObjectNetworkState () const
 
virtual
DtEnvironmentProcessRepository
environmentalNetworkState () const
 
virtual bool isUnit () const
 
virtual bool isEntity () const
 
virtual bool isEnvironmental () const
 
- Public Member Functions inherited from makVrf::DtSimObjectNetInterface
DtVrfCallbackQueue::CallbackInterface::Ptr parallelContainer ()
 
 DtSimObjectNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
virtual ~DtSimObjectNetInterface ()
 
virtual bool init (const DtEntityIdentifier &id=DtEntityIdentifier())
 
virtual void tick ()
 
virtual int maxNameLength () const
 
virtual bool publishObject () const
 
virtual void sendFinalPduOnDestruction (bool)
 
bool isValid () const
 
virtual void parallelTick ()
 
virtual void forceUpdate ()
 

Static Public Member Functions

static DtSimObjectNetInterfacecreator (DtStateData *vrfObject, DtVrlinkNetworkInterface *, bool publishObject)
 
static void reflectedObjectUpdateCallbackFunction (DtReflectedObject *obj, void *userData)
 
- Static Public Member Functions inherited from makVrf::DtSimRemoteEnvironmentalNetInterface
static
DtSimRemoteEnvironmentalNetInterface
isRemoteEnvironmentalNetInterface (const DtSimObjectNetInterface *objNetInterface)
 
static void reflectedObjectUpdateCallbackFunction (DtReflectedObject *obj, void *userData)
 
static DtSimObjectNetInterfacecreator (DtStateData *simObject, DtVrlinkNetworkInterface *, bool publishObject)
 
- Static Public Member Functions inherited from makVrf::DtSimEnvironmentalNetInterface
static
DtSimEnvironmentalNetInterface
isEnvironmentalNetInterface (const DtSimObjectNetInterface *objNetInterface)
 
- Static Public Member Functions inherited from makVrf::DtSimObjectNetInterface
static void setNonVrfUUIDResolver (DtNonVrfUUIDResolver *)
 
static DtNonVrfUUIDResolvernonVrfUUIDResolver ()
 
static void addSimObjectNetInterfaceCreatorFcn (const DtString &type, DtSimObjectNetIfaceCreatorFcn fcn)
 
static void setFactory (DtSimObjectNetInterfaceFactory *factory)
 
static
DtSimObjectNetInterfaceFactory
factory ()
 
static DtSimObjectNetInterfacecreateNetInterface (const DtString &type, DtStateData *simObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
static int maxNameLengthForInterfaceType (const DtString &interfaceTypeString)
 
static void setNonVrfObjectsUUIDScheme (const DtString &)
 
static DtString nonVrfObjectsUUIDScheme ()
 

Public Attributes

tbb::spin_mutex myTroposphereLayerAltitudeByUuidMapMutex
 
- Public Attributes inherited from makVrf::DtSimObjectNetInterface
boost::signals2::signal< void()> signal_networkInterfaceDeleted
 

Static Public Attributes

static const int DtGlobalWeatherPriority
 
static const int DtDefaultWeatherPriority
 
- Static Public Attributes inherited from makVrf::DtSimObjectNetInterface
static tbb::spin_rw_mutex thePublisherCreationMutex
 
static tbb::spin_rw_mutex thePublisherTickMutex
 

Protected Types

typedef std::map< DtVrlUuid,
double
DtAltitudeByUuidMapType
 

Protected Member Functions

template<typename T >
T * getVrfStateComponent ()
 
template<typename T >
bool hasStateComponent ()
 
template<typename T >
T * createVrfStateComponent ()
 
template<typename T >
T * getOrCreateVrfStateComponent ()
 
void removeStateComponent ()
 
template<typename T >
void setupFromNetworkRepository ()
 
template<typename T >
void initializeRemoteStateComponents ()
 
virtual void updateFromReflectedObject ()
 
virtual int mapMetocCloudTypeToVrvCloudType (DtCloudTypeEnum32) const
 
virtual int mapHazeTypeToObscurant (DtHazeTypeEnum32 type) const
 
virtual
DtVrfWeatherPrecipitationType 
mapMetocPrecipitationTypeToVrfPrecipitationType (DtPrecipitationTypeEnum32) const
 
virtual
makVrf::DtTroposphereStateComponent
updateTroposphere (const DtTroposphereLayerStateRepository *stateRep, bool shouldSetDefaultsForMakExtensions=true)
 
virtual void updateMAKTroposphere (const DtTroposphereLayerStateRepository *stateRep)
 
virtual void updateFromMetocGeoreference (const DtEnvironmentConditionStateRepository *stateRep)
 
virtual
makVrf::DtSubsurfaceStateComponent
updateSubsurface (const DtSubsurfaceLayerStateRepository *stateRep, bool shouldSetDefaultsForMakExtensions=true)
 
virtual void updateMAKSubsurface (const DtSubsurfaceLayerStateRepository *stateRep)
 
virtual
makVrf::DtLandSurfaceStateComponent
updateLandSurface (const DtLandSurfaceStateRepository *stateRep, bool shouldSetDefaultsForMakExtensions=true)
 
virtual void updateMAKLandSurface (const DtLandSurfaceStateRepository *stateRep)
 
virtual
makVrf::DtWaterSurfaceStateComponent
updateWaterSurface (const DtWaterSurfaceStateRepository *stateRep, bool shouldSetDefaultsForMakExtensions=true)
 
virtual void updateMAKWaterSurface (const DtWaterSurfaceStateRepository *stateRep)
 
virtual void removeBaseUpdateCallback ()
 
virtual DtReflectedObjectreflectedObject () const
 
virtual void setEnvironmentConditionType (DtEnvironmentConditionType type)
 
virtual DtEnvironmentConditionType environmentConditionType () const
 
virtual void setEnvironmentConditionTypeFromObject (DtReflectedObject *obj)
 
- Protected Member Functions inherited from makVrf::DtSimRemoteEnvironmentalNetInterface
virtual void updateLocalGeometry ()
 
virtual void updateLocalBoundingGeometry ()
 
virtual void updateLocalObjectState ()
 
virtual void updateLocalObjectType ()
 
virtual void updateLocalModelType ()
 
virtual void updateUUIDIfNeeded ()
 
virtual DtVrfStateComponentgetOrCreateVrfStateComponent (DtControlObjectRepository *netState)
 
virtual
DtStatePropertiesStateComponent
getOrCreateStatePropertiesStateComponent (DtControlObjectRepository *netState)
 
- Protected Member Functions inherited from makVrf::DtSimObjectNetInterface
virtual void stateDataDestroyed ()
 
bool runFullyThreaded () const
 
const DtStateDatavrfObject () const
 
DtStateDatanextFrameVrfObject ()
 
virtual const DtStateRepositorynetworkState () const
 

Protected Attributes

DtReflectedObjectmyObject
 
DtEnvironmentConditionType myEnvironmentConditionType
 
DtFrameStateInterfacemyStateComponent
 
DtAltitudeByUuidMapType myTroposphereLayerAltitudeByUuidMap
 
DtVrfSubsurfaceLayer myLastSubsurfaceLayer
 
- Protected Attributes inherited from makVrf::DtSimRemoteEnvironmentalNetInterface
DtReflectedEnvironmentProcessmyReflectedObject
 
bool myUpdateReceived
 
- Protected Attributes inherited from makVrf::DtSimObjectNetInterface
DtStateDatamySimObject
 
DtVrlinkNetworkInterfacemyObjectManager
 
DtStateRepositorymyNetworkState
 
bool myNeedsNetworkSetup
 
DtNetInterfaceParallelLock myLock
 
boost::signals2::connection mySimObjectRemovalConnection
 
tbb::mutex myDeleteGuardMutex
 
DtVrfCallbackQueue::CallbackInterface::Ptr myParallelContainer
 

Static Protected Attributes

static std::unordered_map
< std::string,
DtEnvironmentConditionType
theHLAClassNameToEnvironmentConditionTypeMap
 
- Static Protected Attributes inherited from makVrf::DtSimObjectNetInterface
static
DtSimObjectNetInterfaceFactory
theFactory
 
static DtNonVrfUUIDResolvertheNonVrfUUIDResolver
 

Private Member Functions

 DtEnvironmentConditionRemoteNetInterface ()
 
 DtEnvironmentConditionRemoteNetInterface (const DtEnvironmentConditionRemoteNetInterface &orig)
 
const
DtEnvironmentConditionRemoteNetInterface
operator= (const DtEnvironmentConditionRemoteNetInterface &orig)
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrf::DtEnvironmentConditionRemoteNetInterface::DtEnvironmentConditionRemoteNetInterface ( )
private

Not implemented.

makVrf::DtEnvironmentConditionRemoteNetInterface::DtEnvironmentConditionRemoteNetInterface ( const DtEnvironmentConditionRemoteNetInterface orig)
private

Not implemented.

makVrf::DtEnvironmentConditionRemoteNetInterface::DtEnvironmentConditionRemoteNetInterface ( DtStateData vrfObject,
DtVrlinkNetworkInterface ,
bool  publishObject = true 
)

read/writable constructor

virtual makVrf::DtEnvironmentConditionRemoteNetInterface::~DtEnvironmentConditionRemoteNetInterface ( )
virtual

destructor

Member Function Documentation

const DtEnvironmentConditionRemoteNetInterface& makVrf::DtEnvironmentConditionRemoteNetInterface::operator= ( const DtEnvironmentConditionRemoteNetInterface orig)
private

Not implemented.

virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::onTick ( )
overridevirtual

override of base class onTick(), calls updateFromReflectedObject()

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

virtual RTI::ObjectClassHandle makVrf::DtEnvironmentConditionRemoteNetInterface::objectClassHandle ( ) const
overridevirtual

Returns the HLA object class handle of the reflected object.

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

virtual DtString makVrf::DtEnvironmentConditionRemoteNetInterface::type ( ) const
overridevirtual

Returns the type of net interface object. Strings are defined in netIfTypes.h.

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

static DtSimObjectNetInterface* makVrf::DtEnvironmentConditionRemoteNetInterface::creator ( DtStateData vrfObject,
DtVrlinkNetworkInterface ,
bool  publishObject 
)
static
template<typename T , typename V >
void makVrf::DtEnvironmentConditionRemoteNetInterface::setReflectedObject ( T *  ro)
inline
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::clearReflectedObject ( bool  shouldRemoveStateComponent = true)
virtual
static void makVrf::DtEnvironmentConditionRemoteNetInterface::reflectedObjectUpdateCallbackFunction ( DtReflectedObject obj,
void *  userData 
)
static
template<typename T >
T* makVrf::DtEnvironmentConditionRemoteNetInterface::getVrfStateComponent ( )
inlineprotected
template<typename T >
bool makVrf::DtEnvironmentConditionRemoteNetInterface::hasStateComponent ( )
inlineprotected
template<typename T >
T* makVrf::DtEnvironmentConditionRemoteNetInterface::createVrfStateComponent ( )
inlineprotected
template<typename T >
T* makVrf::DtEnvironmentConditionRemoteNetInterface::getOrCreateVrfStateComponent ( )
inlineprotected
void makVrf::DtEnvironmentConditionRemoteNetInterface::removeStateComponent ( )
protected
template<typename T >
void makVrf::DtEnvironmentConditionRemoteNetInterface::setupFromNetworkRepository ( )
inlineprotectedvirtual

initializes parts of the local repository from the network state rep. This needs to be done after the call to setReflectedObject()

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

template<typename T >
void makVrf::DtEnvironmentConditionRemoteNetInterface::initializeRemoteStateComponents ( )
inlineprotectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateFromReflectedObject ( )
protectedvirtual

this will copy from the reflected environment process and associated network state repository to the local state repository

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

virtual int makVrf::DtEnvironmentConditionRemoteNetInterface::mapMetocCloudTypeToVrvCloudType ( DtCloudTypeEnum32  ) const
protectedvirtual
virtual int makVrf::DtEnvironmentConditionRemoteNetInterface::mapHazeTypeToObscurant ( DtHazeTypeEnum32  type) const
protectedvirtual
virtual DtVrfWeatherPrecipitationType makVrf::DtEnvironmentConditionRemoteNetInterface::mapMetocPrecipitationTypeToVrfPrecipitationType ( DtPrecipitationTypeEnum32  ) const
protectedvirtual
virtual makVrf::DtTroposphereStateComponent* makVrf::DtEnvironmentConditionRemoteNetInterface::updateTroposphere ( const DtTroposphereLayerStateRepository stateRep,
bool  shouldSetDefaultsForMakExtensions = true 
)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateMAKTroposphere ( const DtTroposphereLayerStateRepository stateRep)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateFromMetocGeoreference ( const DtEnvironmentConditionStateRepository *  stateRep)
protectedvirtual
virtual makVrf::DtSubsurfaceStateComponent* makVrf::DtEnvironmentConditionRemoteNetInterface::updateSubsurface ( const DtSubsurfaceLayerStateRepository stateRep,
bool  shouldSetDefaultsForMakExtensions = true 
)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateMAKSubsurface ( const DtSubsurfaceLayerStateRepository stateRep)
protectedvirtual
virtual makVrf::DtLandSurfaceStateComponent* makVrf::DtEnvironmentConditionRemoteNetInterface::updateLandSurface ( const DtLandSurfaceStateRepository stateRep,
bool  shouldSetDefaultsForMakExtensions = true 
)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateMAKLandSurface ( const DtLandSurfaceStateRepository stateRep)
protectedvirtual
virtual makVrf::DtWaterSurfaceStateComponent* makVrf::DtEnvironmentConditionRemoteNetInterface::updateWaterSurface ( const DtWaterSurfaceStateRepository stateRep,
bool  shouldSetDefaultsForMakExtensions = true 
)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::updateMAKWaterSurface ( const DtWaterSurfaceStateRepository stateRep)
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::removeBaseUpdateCallback ( )
protectedvirtual
virtual DtReflectedObject* makVrf::DtEnvironmentConditionRemoteNetInterface::reflectedObject ( ) const
protectedvirtual

returns the pointer to the VR-Link reflected entity being used to represent this remote entity

Reimplemented from makVrf::DtSimRemoteEnvironmentalNetInterface.

virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::setEnvironmentConditionType ( DtEnvironmentConditionType  type)
protectedvirtual
virtual DtEnvironmentConditionType makVrf::DtEnvironmentConditionRemoteNetInterface::environmentConditionType ( ) const
protectedvirtual
virtual void makVrf::DtEnvironmentConditionRemoteNetInterface::setEnvironmentConditionTypeFromObject ( DtReflectedObject obj)
protectedvirtual

Member Data Documentation

DtReflectedObject* makVrf::DtEnvironmentConditionRemoteNetInterface::myObject
protected

Note that this is a reflected object because this class, while weather, also covers subsurface layers, which is technically not weather but instead an environment condition VR-Link abstracts this a bit so the hierarchy is not is not exactly replicated via the DtReflectedObject derived types.

DtEnvironmentConditionType makVrf::DtEnvironmentConditionRemoteNetInterface::myEnvironmentConditionType
protected

This is important since the interface is generic, but it can be instantiated by any environment condition.

DtFrameStateInterface* makVrf::DtEnvironmentConditionRemoteNetInterface::myStateComponent
protected
std::unordered_map<std::string, DtEnvironmentConditionType> makVrf::DtEnvironmentConditionRemoteNetInterface::theHLAClassNameToEnvironmentConditionTypeMap
staticprotected
DtAltitudeByUuidMapType makVrf::DtEnvironmentConditionRemoteNetInterface::myTroposphereLayerAltitudeByUuidMap
protected

TODO consider replacing this with just "myLastReceivedAltitude" since this class is not shared between multiple METOC troposphereLayers.

DtVrfSubsurfaceLayer makVrf::DtEnvironmentConditionRemoteNetInterface::myLastSubsurfaceLayer
protected
const int makVrf::DtEnvironmentConditionRemoteNetInterface::DtGlobalWeatherPriority
static
const int makVrf::DtEnvironmentConditionRemoteNetInterface::DtDefaultWeatherPriority
static
tbb::spin_mutex makVrf::DtEnvironmentConditionRemoteNetInterface::myTroposphereLayerAltitudeByUuidMapMutex

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)