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 | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
makVrf::DtSimLocalEntityNetInterface Class Referenceabstract
Inheritance diagram for makVrf::DtSimLocalEntityNetInterface:
Inheritance graph
[legend]

Public Member Functions

 DtSimLocalEntityNetInterface (DtStateData *vrfObject, DtVrlinkNetworkInterface *objMgr, bool publishObject=true)
 
virtual ~DtSimLocalEntityNetInterface ()
 
virtual void onTick ()
 
virtual bool publishObject () const
 
virtual bool init (const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 
virtual bool publisherUserSupplied () const
 
virtual void updatePublisher ()=0
 
virtual bool createPublisher (const DtEntityIdentifier &id=DtEntityIdentifier::nullId())=0
 
virtual void destroyPublisher ()=0
 
virtual DtObjectPublisherpublisher ()=0
 
virtual void updateNet ()
 
virtual void setupNetworkRepository ()=0
 
virtual void updateUuid ()=0
 
virtual bool isLocal () const
 
virtual bool isAggregate () const =0
 
- Public Member Functions inherited from makVrf::DtSimEntityNetInterface
 DtSimEntityNetInterface (DtStateData *simObject, DtVrlinkNetworkInterface *objMgr, bool publishObject=true)
 
virtual ~DtSimEntityNetInterface ()
 
virtual
DtBaseEntityStateRepository * 
baseEntityNetworkState () 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 void tick ()
 
virtual bool isUnit () const =0
 
virtual bool isEntity () const =0
 
virtual bool wantsToCreatePublisher () const =0
 
virtual DtString type () const =0
 
virtual int maxNameLength () const
 
virtual void toBeRemoved ()
 
virtual RTI::ObjectClassHandle objectClassHandle () const =0
 
virtual void sendFinalPduOnDestruction (bool)
 
bool isValid () const
 
virtual void parallelTick ()
 
virtual void forceUpdate ()
 

Static Public Member Functions

static bool isVrfGlobalId (const DtGlobalObjectDesignator &identifier)
 
static
DtSimLocalEntityNetInterface
isLocalEntityNetInterface (const DtSimObjectNetInterface *objNetInterface)
 
static void setVrfDataTimeThreshold (DtTime time)
 
static void setHeartbeatVariance (double variance)
 
static double heartbeatVariance ()
 
- Static Public Member Functions inherited from makVrf::DtSimEntityNetInterface
static DtSimEntityNetInterfaceisEntityNetInterface (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 const
makVrf::DtEntityStateComponent
entityStateComponent ()
 
virtual const
makVrf::DtEntityLocationStateComponent
entityLocationStateComponent ()
 
virtual const
makVrf::DtVrfStateComponent
vrfStateComponent ()
 
virtual const
makVrf::DtVrfGeometryStateComponent
vrfGeometryStateComponent ()
 
virtual const
makVrf::DtArticulatedPartStateComponent
articulatedPartStateComponent ()
 
virtual const
makVrf::DtStatePropertiesStateComponent
statePropertiesStateComponent ()
 
virtual const
makVrf::DtHumanStateComponent
humanStateComponent ()
 
virtual const
makVrf::DtRangeItemsStateComponent
rangeItemsStateComponent ()
 
virtual const
makVrf::DtAisDataStateComponent
aisDataStateComponent ()
 
virtual const
makVrf::DtAircraftLightingStateComponent
aircraftLightingStateComponent ()
 
virtual const
makVrf::DtGroundVehicleLightingStateComponent
groundVehicleLightingStateComponent ()
 
- Protected Member Functions inherited from makVrf::DtSimObjectNetInterface
virtual void stateDataDestroyed ()
 
bool runFullyThreaded () const
 
const DtStateDatavrfObject () const
 
DtStateDatanextFrameVrfObject ()
 
virtual const DtStateRepositorynetworkState () const
 

Protected Attributes

bool myPublisherUserSupplied
 
bool myPublishObject
 
const
makVrf::DtArticulatedPartStateComponent
myArticulatedPartStateComponent
 
const
makVrf::DtStatePropertiesStateComponent
myStatePropertiesStateComponent
 
const
makVrf::DtEntityStateComponent
myEntityStateComponent
 
const
makVrf::DtEntityLocationStateComponent
myEntityLocationStateComponent
 
const
makVrf::DtVrfGeometryStateComponent
myVrfGeometryStateComponent
 
const makVrf::DtVrfStateComponentmyVrfStateComponent
 
const
makVrf::DtHumanStateComponent
myHumanStateComponent
 
const
makVrf::DtRangeItemsStateComponent
myRangeItemsStateComponent
 
const
makVrf::DtAisDataStateComponent
myAisDataStateComponent
 
const
makVrf::DtAircraftLightingStateComponent
myAircraftLightingStateComponent
 
const
makVrf::DtGroundVehicleLightingStateComponent
myGroundVehicleLightingStateComponent
 
- Protected Attributes inherited from makVrf::DtSimEntityNetInterface
DtDeadReckonTypes myDeadReckoningAlgorithm
 
- 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 double theHeartbeatVariance
 
- Static Protected Attributes inherited from makVrf::DtSimObjectNetInterface
static
DtSimObjectNetInterfaceFactory
theFactory
 
static DtNonVrfUUIDResolvertheNonVrfUUIDResolver
 

Private Member Functions

 DtSimLocalEntityNetInterface ()
 
 DtSimLocalEntityNetInterface (const DtSimLocalEntityNetInterface &orig)
 
const
DtSimLocalEntityNetInterface
operator= (const DtSimLocalEntityNetInterface &orig)
 

Additional Inherited Members

- Public Attributes inherited from makVrf::DtSimObjectNetInterface
boost::signals2::signal< void()> signal_networkInterfaceDeleted
 
- Static Public Attributes inherited from makVrf::DtSimObjectNetInterface
static tbb::spin_rw_mutex thePublisherCreationMutex
 
static tbb::spin_rw_mutex thePublisherTickMutex
 

Constructor & Destructor Documentation

makVrf::DtSimLocalEntityNetInterface::DtSimLocalEntityNetInterface ( )
private

default constructor

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

read/writable constructor

virtual makVrf::DtSimLocalEntityNetInterface::~DtSimLocalEntityNetInterface ( )
virtual

destructor; calls destroyPublisher().

Member Function Documentation

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

assignment operator; see note on copy constructor above.

virtual void makVrf::DtSimLocalEntityNetInterface::onTick ( )
virtual
virtual bool makVrf::DtSimLocalEntityNetInterface::publishObject ( ) const
inlinevirtual

Reimplemented from makVrf::DtSimObjectNetInterface.

virtual bool makVrf::DtSimLocalEntityNetInterface::init ( const DtEntityIdentifier &  id = DtEntityIdentifier::nullId())
virtual

Derived classes that need to perform virtual construction my override this function as desired.

Reimplemented from makVrf::DtSimObjectNetInterface.

virtual bool makVrf::DtSimLocalEntityNetInterface::publisherUserSupplied ( ) const
virtual

A true return indicates that the publisher currently used by the interface was supplied by the user rather than created by init().

virtual void makVrf::DtSimLocalEntityNetInterface::updatePublisher ( )
pure virtual
virtual bool makVrf::DtSimLocalEntityNetInterface::createPublisher ( const DtEntityIdentifier &  id = DtEntityIdentifier::nullId())
pure virtual

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

Implemented in makVrf::DtSimIndividualLocalEntityNetInterface, and makVrf::DtSimAggregateLocalEntityNetInterface.

virtual void makVrf::DtSimLocalEntityNetInterface::destroyPublisher ( )
pure virtual

Called by the destructor (and also by setPublisher() in some cases), deletes a publisher.

Implemented in makVrf::DtSimIndividualLocalEntityNetInterface, and makVrf::DtSimAggregateLocalEntityNetInterface.

virtual DtObjectPublisher* makVrf::DtSimLocalEntityNetInterface::publisher ( )
pure virtual

Returns the publisher used by this net interface.

Implemented in makVrf::DtSimIndividualLocalEntityNetInterface, and makVrf::DtSimAggregateLocalEntityNetInterface.

virtual void makVrf::DtSimLocalEntityNetInterface::updateNet ( )
virtual

Cause any necessary data to be send to the network. Called by onTick. Base class implementation causes a VrfData message to be sent if necessary.

Reimplemented in makVrf::DtSimIndividualLocalEntityNetInterface, and makVrf::DtSimAggregateLocalEntityNetInterface.

virtual void makVrf::DtSimLocalEntityNetInterface::setupNetworkRepository ( )
pure virtual

Initializes parts of the network repository created by the publisher This needs to be done after the local state repository has been initialized. Details depend upon which type of publisher (and therefore network state repository) is actually created.

Implemented in makVrf::DtSimIndividualLocalEntityNetInterface, and makVrf::DtSimAggregateLocalEntityNetInterface.

virtual void makVrf::DtSimLocalEntityNetInterface::updateUuid ( )
pure virtual
static bool makVrf::DtSimLocalEntityNetInterface::isVrfGlobalId ( const DtGlobalObjectDesignator identifier)
static

Returns true if given global object Id is a VR-Forces encoded global Id and false if it is not. Calls down to DtVrfObjectIdGenerator to make the check.

virtual bool makVrf::DtSimLocalEntityNetInterface::isLocal ( ) const
inlinevirtual

This network interface is for local entities.

Implements makVrf::DtSimObjectNetInterface.

virtual bool makVrf::DtSimLocalEntityNetInterface::isAggregate ( ) const
pure virtual
static DtSimLocalEntityNetInterface* makVrf::DtSimLocalEntityNetInterface::isLocalEntityNetInterface ( const DtSimObjectNetInterface objNetInterface)
static

This function will return the objNetInterface passed in, cast to a DtSimLocalEntityNetInterface*, provided the objNetInterface is indeed an local entity network interface.

static void makVrf::DtSimLocalEntityNetInterface::setVrfDataTimeThreshold ( DtTime  time)
static

Sets the time to update the vrf data message. The message will be sent on this time (default is five seconds) or if the data as seen by remote is different that the current time. If time is set to be -1, it will only be sent if the data is different.

static void makVrf::DtSimLocalEntityNetInterface::setHeartbeatVariance ( double  variance)
static

Variance to use for setting heartbeat thresholds. The actual threshold used will be heartbeat +/- a random value up to the variance. The default value is 2.5s.

static double makVrf::DtSimLocalEntityNetInterface::heartbeatVariance ( )
static
virtual const makVrf::DtEntityStateComponent* makVrf::DtSimLocalEntityNetInterface::entityStateComponent ( )
protectedvirtual
virtual const makVrf::DtEntityLocationStateComponent* makVrf::DtSimLocalEntityNetInterface::entityLocationStateComponent ( )
protectedvirtual
virtual const makVrf::DtVrfStateComponent* makVrf::DtSimLocalEntityNetInterface::vrfStateComponent ( )
protectedvirtual
virtual const makVrf::DtVrfGeometryStateComponent* makVrf::DtSimLocalEntityNetInterface::vrfGeometryStateComponent ( )
protectedvirtual
virtual const makVrf::DtArticulatedPartStateComponent* makVrf::DtSimLocalEntityNetInterface::articulatedPartStateComponent ( )
protectedvirtual
virtual const makVrf::DtStatePropertiesStateComponent* makVrf::DtSimLocalEntityNetInterface::statePropertiesStateComponent ( )
protectedvirtual
virtual const makVrf::DtHumanStateComponent* makVrf::DtSimLocalEntityNetInterface::humanStateComponent ( )
protectedvirtual
virtual const makVrf::DtRangeItemsStateComponent* makVrf::DtSimLocalEntityNetInterface::rangeItemsStateComponent ( )
protectedvirtual
virtual const makVrf::DtAisDataStateComponent* makVrf::DtSimLocalEntityNetInterface::aisDataStateComponent ( )
protectedvirtual
virtual const makVrf::DtAircraftLightingStateComponent* makVrf::DtSimLocalEntityNetInterface::aircraftLightingStateComponent ( )
protectedvirtual
virtual const makVrf::DtGroundVehicleLightingStateComponent* makVrf::DtSimLocalEntityNetInterface::groundVehicleLightingStateComponent ( )
protectedvirtual

Member Data Documentation

bool makVrf::DtSimLocalEntityNetInterface::myPublisherUserSupplied
protected
bool makVrf::DtSimLocalEntityNetInterface::myPublishObject
protected
double makVrf::DtSimLocalEntityNetInterface::theHeartbeatVariance
staticprotected
const makVrf::DtArticulatedPartStateComponent* makVrf::DtSimLocalEntityNetInterface::myArticulatedPartStateComponent
protected
const makVrf::DtStatePropertiesStateComponent* makVrf::DtSimLocalEntityNetInterface::myStatePropertiesStateComponent
protected
const makVrf::DtEntityStateComponent* makVrf::DtSimLocalEntityNetInterface::myEntityStateComponent
protected
const makVrf::DtEntityLocationStateComponent* makVrf::DtSimLocalEntityNetInterface::myEntityLocationStateComponent
protected
const makVrf::DtVrfGeometryStateComponent* makVrf::DtSimLocalEntityNetInterface::myVrfGeometryStateComponent
protected
const makVrf::DtVrfStateComponent* makVrf::DtSimLocalEntityNetInterface::myVrfStateComponent
protected
const makVrf::DtHumanStateComponent* makVrf::DtSimLocalEntityNetInterface::myHumanStateComponent
protected
const makVrf::DtRangeItemsStateComponent* makVrf::DtSimLocalEntityNetInterface::myRangeItemsStateComponent
protected
const makVrf::DtAisDataStateComponent* makVrf::DtSimLocalEntityNetInterface::myAisDataStateComponent
protected
const makVrf::DtAircraftLightingStateComponent* makVrf::DtSimLocalEntityNetInterface::myAircraftLightingStateComponent
protected
const makVrf::DtGroundVehicleLightingStateComponent* makVrf::DtSimLocalEntityNetInterface::myGroundVehicleLightingStateComponent
protected

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)