VR-Forces 5.0.1 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 | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
makVrf::DtWeatherLocalNetInterface Class Reference

Local network interface for weather state objects. These objects must have a DtWeatherStateRepository to work with this net interface.

Inheritance diagram for makVrf::DtWeatherLocalNetInterface:
Inheritance graph
[legend]

Public Member Functions

 DtWeatherLocalNetInterface (DtStateData *vrfObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
virtual ~DtWeatherLocalNetInterface ()
 
virtual bool init (const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 
virtual void updatePublisher ()
 
virtual DtString type () const
 
virtual int weatherRecordIndex () const
 
virtual void destroyPublisher ()
 
- Public Member Functions inherited from makVrf::DtSimLocalControlObjectNetInterface
 DtSimLocalControlObjectNetInterface (DtStateData *vrfObject, DtVrlinkNetworkInterface *mgr, bool publishObject=true)
 
virtual ~DtSimLocalControlObjectNetInterface ()
 
virtual void forceUpdate ()
 
virtual DtControlObjectRepositorycontrolObjectNetworkState () const
 
virtual DtObjectPublisherpublisher ()
 
virtual bool setEntityPublisher (DtVrfExtControlObjectPublisher *publisher)
 
virtual
DtVrfExtControlObjectPublisher
controlObjectPublisher () const
 
virtual void updateUuid ()
 
- Public Member Functions inherited from makVrf::DtSimLocalEnvironmentalNetInterface
 DtSimLocalEnvironmentalNetInterface (DtStateData *vrfObject, DtVrlinkNetworkInterface *mgr, bool publishObject=true)
 
virtual ~DtSimLocalEnvironmentalNetInterface ()
 
virtual bool publisherUserSupplied () const
 
virtual bool setEntityPublisher (DtEnvironmentProcessPublisher *publisher)
 
virtual
DtEnvironmentProcessPublisher
environmentalPublisher () const
 
virtual void setupNetworkRepository ()
 
virtual bool publishObject () const
 
virtual bool isLocal () const
 
virtual RTI::ObjectClassHandle objectClassHandle () const
 
- Public Member Functions inherited from makVrf::DtSimEnvironmentalNetInterface
 DtSimEnvironmentalNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *objMgr, bool publishObject=true)
 
virtual ~DtSimEnvironmentalNetInterface ()
 
virtual bool init ()
 
virtual
DtEnvironmentProcessRepository
environmentalNetworkState () const
 
virtual bool isUnit () const
 
virtual bool isEntity () const
 
virtual bool isEnvironmental () const
 
- Public Member Functions inherited from makVrf::DtSimObjectNetInterface
 DtSimObjectNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *, bool publishObject=true)
 
virtual ~DtSimObjectNetInterface ()
 
virtual void tick ()
 
virtual int maxNameLength () const
 
virtual void toBeRemoved ()
 
virtual void parallelTick ()
 

Static Public Member Functions

static DtSimObjectNetInterfacecreator (DtStateData *vrfObject, DtVrlinkNetworkInterface *, bool publishObject)
 
- Static Public Member Functions inherited from makVrf::DtSimLocalControlObjectNetInterface
static DtSimObjectNetInterfacecreator (DtStateData *vrfObject, DtVrlinkNetworkInterface *mgr, bool publishObject)
 
- Static Public Member Functions inherited from makVrf::DtSimLocalEnvironmentalNetInterface
static
DtSimLocalEnvironmentalNetInterface
isLocalEnvironmentalNetInterface (const DtSimObjectNetInterface *objNetInterface)
 
static void setHeartbeatVariance (double variance)
 
static double heartbeatVariance ()
 
- 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 ()
 

Protected Member Functions

virtual
DtEnvironmentProcessRepository
epsr () const
 
virtual void setupRecords ()
 
virtual void updateGeometryRecord ()
 
virtual void updateStateRecord ()
 
virtual void updateWindLayers ()
 
virtual
DtEnvironmentProcessPublisher
_createPublisher (const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 
virtual bool createPublisher (const DtEntityIdentifier &entityId)
 
virtual void setupMetocPublisher ()
 
virtual void metocTick ()
 
virtual void updateMetocPublishers ()
 
virtual void updateMetocSurfacePublishers (const DtWeatherStateComponent *)
 
virtual void updateMetocSubsurfacePublishers (const DtWeatherStateComponent *)
 
virtual void updateMetocWaterPublishers (const DtWeatherStateComponent *)
 
virtual void updateMetocTropospherePublishers (const DtWeatherStateComponent *)
 
virtual void updateCommonMetocWeatherRepository (const DtWeatherStateComponent *, DtVrfWeatherStateRepositoryPtr repo)
 
virtual void updateMetocGeoreference (const DtWeatherStateComponent *, DtVrfEnvironmentConditionStateRepositoryPtr repo)
 
virtual void onTick () override
 
METOC mapping functions

These functions map specific VRF internal states to METOC state.

virtual std::vector< unsignedmapCloudStateToLayerAltitudes (DtVrfWeatherCloudState cloudState) const
 
virtual DtCloudTypeEnum32 mapVrvCloudTypeToMetocCloudType (int) const
 
virtual DtCloudTypeEnum32 mapCloudStateToCloudType (DtVrfWeatherCloudState cloudState, unsigned altitude) const
 
virtual float mapCloudStateToCloudCoverage (DtVrfWeatherCloudState cloudState, unsigned altitude) const
 
virtual float mapCloudStateToCloudDensity (DtVrfWeatherCloudState cloudState, unsigned altitude) const
 
virtual DtPrecipitationTypeEnum32 mapVrfPrecipitationtypeToMetocPrecipitationType (int vrfPrecipitationType) const
 
virtual DtHazeTypeEnum32 mapFogColorToHazeType (const DtVector &fogColor)
 
virtual DtHazeTypeEnum32 mapObscurantToHazeType (int obscurant)
 
virtual float mapSwellStateToSwellHeight (int state)
 
virtual float mapSwellStateToSwellLength (int state)
 
virtual int mapSwellStateToSwellPeriod (int state)
 
virtual float mapSeaStateToWaveHeight (int state)
 
virtual float mapSeaStateToWaveLength (int state)
 
virtual int mapSeaStateToWavePeriod (int state)
 
virtual DtGeoLocationTypeEnum32 mapEntityTypeToGeoLocationType (const DtObjectType &type)
 
- Protected Member Functions inherited from makVrf::DtSimLocalControlObjectNetInterface
virtual bool updateGeometry ()
 
virtual bool updateBoundingGeometry ()
 
virtual bool updateObjectState ()
 
virtual bool updateEnvModelType ()
 
virtual bool updateVrfDataAsSeenByRemote ()
 
virtual
DtEnvironmentProcessRepository
_createSR () const
 
virtual const
makVrf::DtEnvironmentalStateComponent
environmentalStateComponent ()
 
virtual const
makVrf::DtEnvironmentalLocationStateComponent
environmentalLocationStateComponent ()
 
virtual const
makVrf::DtVrfStateComponent
vrfStateComponent ()
 
virtual const
makVrf::DtVrfGeometryStateComponent
vrfGeometryStateComponent ()
 
virtual void firstTimeInitialize ()
 
virtual bool wantsToCreatePublisher () const
 
- Protected Member Functions inherited from makVrf::DtSimObjectNetInterface
bool runFullyThreaded () const
 
const DtStateDatavrfObject () const
 
DtStateDatanextFrameVrfObject ()
 
virtual const DtStateRepositorynetworkState () const
 

Protected Attributes

DtVrfEnvironmentalWeatherStateRecordmyEnvironmentalStateRecord
 
DtVrfSubsurfacePublisherPtr myMetocSubsurfacePublisher
 
DtVrfLandSurfacePublisherPtr myMetocSurfacePublisher
 
DtVrfWaterSurfacePublisherPtr myMetocWaterPublisher
 
std::vector
< DtVrfTropospherePublisherPtr
myMetocTropospherePublishers
 
bool mySetMetocGeoreference
 
DtGeoLocationTypeEnum32 myMetocGeoLocationType
 
- Protected Attributes inherited from makVrf::DtSimLocalControlObjectNetInterface
bool myPublisherUserSupplied
 
DtVrfExtControlObjectPublishermyControlObjectPublisher
 
std::vector< charmyPropertyBuffer
 
DtClock myClock
 
DtTime myLastTimeUpdated
 
bool myNeedsFullUpdate
 
const
makVrf::DtEnvironmentalStateComponent
myEnvironmentalStateComponent
 
const
makVrf::DtEnvironmentalLocationStateComponent
myEnvironmentalLocationStateComponent
 
const makVrf::DtVrfStateComponentmyVrfStateComponent
 
const
makVrf::DtVrfGeometryStateComponent
myVrfGeometryStateComponent
 
bool myFirstTimeInitialize
 
DtVector myLastParentPosition
 
- Protected Attributes inherited from makVrf::DtSimLocalEnvironmentalNetInterface
bool myPublisherUserSupplied
 
DtEnvironmentProcessPublishermyEnvironmentalPublisher
 
bool myPublishObject
 
- Protected Attributes inherited from makVrf::DtSimObjectNetInterface
DtStateDatamySimObject
 
DtVrlinkNetworkInterfacemyObjectManager
 
DtStateRepositorymyNetworkState
 
bool myNeedsNetworkSetup
 
DtNetInterfaceParallelLock myLock
 

Static Protected Attributes

static DtObjectType theAreaType
 
static DtObjectType theBoxType
 
static DtObjectType theCircleType
 
- Static Protected Attributes inherited from makVrf::DtSimLocalEnvironmentalNetInterface
static double theHeartbeatVariance
 
- Static Protected Attributes inherited from makVrf::DtSimObjectNetInterface
static
DtSimObjectNetInterfaceFactory
theFactory
 
static DtNonVrfUUIDResolvertheNonVrfUUIDResolver
 

Private Member Functions

 DtWeatherLocalNetInterface ()
 
 DtWeatherLocalNetInterface (const DtWeatherLocalNetInterface &orig)
 
const DtWeatherLocalNetInterfaceoperator= (const DtWeatherLocalNetInterface &orig)
 

Additional Inherited Members

- Static Public Attributes inherited from makVrf::DtSimObjectNetInterface
static tbb::spin_rw_mutex thePublisherCreationMutex
 
static tbb::spin_rw_mutex thePublisherTickMutex
 

Constructor & Destructor Documentation

makVrf::DtWeatherLocalNetInterface::DtWeatherLocalNetInterface ( )
private

default constructor

makVrf::DtWeatherLocalNetInterface::DtWeatherLocalNetInterface ( const DtWeatherLocalNetInterface orig)
private
makVrf::DtWeatherLocalNetInterface::DtWeatherLocalNetInterface ( DtStateData vrfObject,
DtVrlinkNetworkInterface ,
bool  publishObject = true 
)

read/writable contructor

virtual makVrf::DtWeatherLocalNetInterface::~DtWeatherLocalNetInterface ( )
virtual

destructor; calls destroyPublisher()

Member Function Documentation

const DtWeatherLocalNetInterface& makVrf::DtWeatherLocalNetInterface::operator= ( const DtWeatherLocalNetInterface orig)
private
virtual bool makVrf::DtWeatherLocalNetInterface::init ( const DtEntityIdentifier &  id = DtEntityIdentifier::nullId())
virtual

Override of base class init(), calls createPublisher().

Reimplemented from makVrf::DtSimLocalEnvironmentalNetInterface.

virtual void makVrf::DtWeatherLocalNetInterface::updatePublisher ( )
virtual

Update this publisher's contents.

Reimplemented from makVrf::DtSimLocalControlObjectNetInterface.

Reimplemented in makVrf::DtGlobalEnvironmentLocalNetInterface.

virtual DtString makVrf::DtWeatherLocalNetInterface::type ( ) const
virtual

Return type string for publisher that can be referred to in ope files (see "vrfNetIfTypes.h")

Reimplemented from makVrf::DtSimLocalControlObjectNetInterface.

Reimplemented in makVrf::DtGlobalEnvironmentLocalNetInterface.

static DtSimObjectNetInterface* makVrf::DtWeatherLocalNetInterface::creator ( DtStateData vrfObject,
DtVrlinkNetworkInterface ,
bool  publishObject 
)
static
virtual int makVrf::DtWeatherLocalNetInterface::weatherRecordIndex ( ) const
virtual
virtual void makVrf::DtWeatherLocalNetInterface::destroyPublisher ( )
virtual

Called by the destructor (and also by setPublisher() in some cases). Deletes the publisher.

Reimplemented from makVrf::DtSimLocalControlObjectNetInterface.

virtual DtEnvironmentProcessRepository* makVrf::DtWeatherLocalNetInterface::epsr ( ) const
protectedvirtual

Shortcut for accessing the network repository.

virtual void makVrf::DtWeatherLocalNetInterface::setupRecords ( )
protectedvirtual

Creates and sets the records to the VRL state repository.

Reimplemented in makVrf::DtGlobalEnvironmentLocalNetInterface.

virtual void makVrf::DtWeatherLocalNetInterface::updateGeometryRecord ( )
protectedvirtual
virtual void makVrf::DtWeatherLocalNetInterface::updateStateRecord ( )
protectedvirtual
virtual void makVrf::DtWeatherLocalNetInterface::updateWindLayers ( )
protectedvirtual
virtual DtEnvironmentProcessPublisher* makVrf::DtWeatherLocalNetInterface::_createPublisher ( const DtEntityIdentifier &  id = DtEntityIdentifier::nullId())
protectedvirtual

Override this functions to use a subclass of DtEnvironmentProcessPublisher.

Reimplemented from makVrf::DtSimLocalEnvironmentalNetInterface.

Reimplemented in makVrf::DtGlobalEnvironmentLocalNetInterface.

virtual bool makVrf::DtWeatherLocalNetInterface::createPublisher ( const DtEntityIdentifier &  id)
protectedvirtual

Called by init() to create a VR-Link publisher, deriving classes create the type of publisher needed for that entity type.

Reimplemented from makVrf::DtSimLocalControlObjectNetInterface.

virtual void makVrf::DtWeatherLocalNetInterface::setupMetocPublisher ( )
protectedvirtual

Create and sets the METOC publisher.

Reimplemented in makVrf::DtGlobalEnvironmentLocalNetInterface.

virtual void makVrf::DtWeatherLocalNetInterface::metocTick ( )
protectedvirtual
virtual void makVrf::DtWeatherLocalNetInterface::updateMetocPublishers ( )
protectedvirtual

Updates the METOC publishers.

virtual void makVrf::DtWeatherLocalNetInterface::updateMetocSurfacePublishers ( const DtWeatherStateComponent )
protectedvirtual

Updates the Surface publishers.

virtual void makVrf::DtWeatherLocalNetInterface::updateMetocSubsurfacePublishers ( const DtWeatherStateComponent )
protectedvirtual

Updates the Subsurface publishers.

virtual void makVrf::DtWeatherLocalNetInterface::updateMetocWaterPublishers ( const DtWeatherStateComponent )
protectedvirtual

Updates the Water publishers.

virtual void makVrf::DtWeatherLocalNetInterface::updateMetocTropospherePublishers ( const DtWeatherStateComponent )
protectedvirtual

Updates the Troposphere publishers.

virtual void makVrf::DtWeatherLocalNetInterface::updateCommonMetocWeatherRepository ( const DtWeatherStateComponent ,
DtVrfWeatherStateRepositoryPtr  repo 
)
protectedvirtual

Updates the common METOC repository fields.

virtual void makVrf::DtWeatherLocalNetInterface::updateMetocGeoreference ( const DtWeatherStateComponent ,
DtVrfEnvironmentConditionStateRepositoryPtr  repo 
)
protectedvirtual

Updates the GeoReference used by METOC to indicate the area of validity for this weather state.

virtual std::vector<unsigned> makVrf::DtWeatherLocalNetInterface::mapCloudStateToLayerAltitudes ( DtVrfWeatherCloudState  cloudState) const
protectedvirtual
virtual DtCloudTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapVrvCloudTypeToMetocCloudType ( int  ) const
protectedvirtual
virtual DtCloudTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapCloudStateToCloudType ( DtVrfWeatherCloudState  cloudState,
unsigned  altitude 
) const
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapCloudStateToCloudCoverage ( DtVrfWeatherCloudState  cloudState,
unsigned  altitude 
) const
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapCloudStateToCloudDensity ( DtVrfWeatherCloudState  cloudState,
unsigned  altitude 
) const
protectedvirtual
virtual DtPrecipitationTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapVrfPrecipitationtypeToMetocPrecipitationType ( int  vrfPrecipitationType) const
protectedvirtual
virtual DtHazeTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapFogColorToHazeType ( const DtVector fogColor)
protectedvirtual
virtual DtHazeTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapObscurantToHazeType ( int  obscurant)
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapSwellStateToSwellHeight ( int  state)
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapSwellStateToSwellLength ( int  state)
protectedvirtual
virtual int makVrf::DtWeatherLocalNetInterface::mapSwellStateToSwellPeriod ( int  state)
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapSeaStateToWaveHeight ( int  state)
protectedvirtual
virtual float makVrf::DtWeatherLocalNetInterface::mapSeaStateToWaveLength ( int  state)
protectedvirtual
virtual int makVrf::DtWeatherLocalNetInterface::mapSeaStateToWavePeriod ( int  state)
protectedvirtual
virtual DtGeoLocationTypeEnum32 makVrf::DtWeatherLocalNetInterface::mapEntityTypeToGeoLocationType ( const DtObjectType type)
protectedvirtual
virtual void makVrf::DtWeatherLocalNetInterface::onTick ( )
overrideprotectedvirtual

Override of base class onTick() Checks if VR-Forces-specific data has changed. If it has, sets the object changed flag. Calls updatePublisher().

Reimplemented from makVrf::DtSimLocalControlObjectNetInterface.

Member Data Documentation

DtVrfEnvironmentalWeatherStateRecord* makVrf::DtWeatherLocalNetInterface::myEnvironmentalStateRecord
protected
DtVrfSubsurfacePublisherPtr makVrf::DtWeatherLocalNetInterface::myMetocSubsurfacePublisher
protected
DtVrfLandSurfacePublisherPtr makVrf::DtWeatherLocalNetInterface::myMetocSurfacePublisher
protected
DtVrfWaterSurfacePublisherPtr makVrf::DtWeatherLocalNetInterface::myMetocWaterPublisher
protected
std::vector<DtVrfTropospherePublisherPtr> makVrf::DtWeatherLocalNetInterface::myMetocTropospherePublishers
protected
bool makVrf::DtWeatherLocalNetInterface::mySetMetocGeoreference
protected
DtGeoLocationTypeEnum32 makVrf::DtWeatherLocalNetInterface::myMetocGeoLocationType
protected
DtObjectType makVrf::DtWeatherLocalNetInterface::theAreaType
staticprotected
DtObjectType makVrf::DtWeatherLocalNetInterface::theBoxType
staticprotected
DtObjectType makVrf::DtWeatherLocalNetInterface::theCircleType
staticprotected

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)