VR-Link API Documentation for HLA 1.3
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
DtEmitterSystemRepository Class Reference

Instances of DtEmitterSystemRepository are used to store state data for emitter systems in both HLA and DIS environments. More...

+ Inheritance diagram for DtEmitterSystemRepository:
+ Collaboration diagram for DtEmitterSystemRepository:

Public Types

typedef DtEmitterBeamRepository *(* DtBeamStateRepCreator )()
 Function prototype for functions that create Beam State Repositories.

Public Member Functions

 DtEmitterSystemRepository ()
 default constructor
virtual ~DtEmitterSystemRepository ()
 destructor
 DtEmitterSystemRepository (const DtEmitterSystemRepository &orig)
 copy constructor
DtEmitterSystemRepositoryoperator= (const DtEmitterSystemRepository &orig)
 assignment operator
virtual DtStateRepositoryclone (bool copy=false) const
 Return a copy/empty object of the same type as this.
virtual void setEmitterFunction (DtEmissionFunc function)
 Set/Get the emitter function.
virtual DtEmissionFunc emitterFunction () const
virtual void setEmitterName (DtEmitterSysName name)
 Set/Get the emitter name.
virtual DtEmitterSysName emitterName () const
virtual void setEmitterNumber (DtU8 number)
 Set/Get the emitter number.
virtual DtU8 emitterNumber () const
virtual void setEventId (const DtEventId &id)
 Set/Get Event Id - not used until RPR 0.7.
virtual const DtEventIdeventId () const
virtual void printData () const
 Print data to the DtInfo stream.
virtual void printDataToStream (std::ostream &stream) const
 Print data to the specified stream.
virtual DtEmitterBeamRepositorybeamSRById (DtU8 beamId, DtEmitterSysRetCode *retcode=NULL)
 Return a pointer to the first BeamSR with specified beamID.
virtual DtEmitterBeamRepositoryaddBeam (DtU8 beamId=0, DtBeamType type=DtRegularBeam, DtEmitterSysRetCode *retcode=NULL)
 Add/remove a new emitter beam within this system.
virtual DtEmitterSysRetCode removeBeam (DtU8 beamId)
 removes an emitter beam, if there are duplicate beams it will remove the first beam with the given beamID.
virtual DtEmitterSysRetCode removeBeam (const DtGlobalObjectDesignator &id)
virtual int numBeams () const
 Returns number of beams.
virtual const DtListbeamList () const
 Returns DtList of DtEmitterBeamStateRepositories.
virtual DtListbeamList ()
bool isMember (DtEmitterBeamRepository *bsr) const
 Returns true if the give BSR is in this ESR's list of BSRs.
- Public Member Functions inherited from DtEmbeddedSystemRepository
 DtEmbeddedSystemRepository ()
 default constructor
 DtEmbeddedSystemRepository (const DtEmbeddedSystemRepository &orig)
 copy constructor
virtual ~DtEmbeddedSystemRepository ()
 destructor
DtEmbeddedSystemRepositoryoperator= (const DtEmbeddedSystemRepository &orig)
 assignment operator
virtual void setEntityId (const DtEntityIdentifier &id)
 Set the entity identifier.
virtual const DtEntityIdentifierentityId () const
 Get the entity identifier.
virtual void setHostId (const DtGlobalObjectDesignator &id)
 Set the host identifier.
virtual const
DtGlobalObjectDesignator
hostId () const
 Get the host identifier.
virtual void setRelativePosition (const DtVector &position)
 Set the position of the object relative to the entity.
virtual const DtVectorrelativePosition () const
 Get the position of the object relative to the entity.
- Public Member Functions inherited from DtStateRepository
virtual ~DtStateRepository ()
 destructor
DtStateRepositoryoperator= (const DtStateRepository &orig)
 assignment operator
virtual void setGlobalId (const DtGlobalObjectDesignator &id)
 Get/Set global identifier, or name.
virtual const
DtGlobalObjectDesignator
globalId () const
virtual void setLocalId (const DtObjectId &id)
 Get/Set local identifier, or handle.
virtual const DtObjectIdlocalId () const

Static Public Member Functions

static DtEmitterSystemRepositorycreate ()
static DtBeamStateRepCreator setStateRepCreator (DtBeamStateRepCreator creator)
 Give us a function to be used for creating Beam SRs.

Protected Member Functions

virtual void purgeBeamList ()

Protected Attributes

DtEventId myEventId
DtEmissionFunc myEmitterFunction
DtEmitterSysName myEmitterName
DtU8 myEmitterNumber
DtList myBeamList
 List of beams in this system.
- Protected Attributes inherited from DtEmbeddedSystemRepository
DtEntityIdentifier myEntityId
 Embedded system class attributes.
DtGlobalObjectDesignator myHostId
DtVector myRelativePosition
- Protected Attributes inherited from DtStateRepository
DtGlobalObjectDesignator myGlobalId
DtObjectId myLocalId

Static Protected Attributes

static DtBeamStateRepCreator theBeamStateRepCreator

Detailed Description

Instances of DtEmitterSystemRepository are used to store state data for emitter systems in both HLA and DIS environments.

Member Typedef Documentation

typedef DtEmitterBeamRepository*(* DtEmitterSystemRepository::DtBeamStateRepCreator)()

Function prototype for functions that create Beam State Repositories.

Constructor & Destructor Documentation

DtEmitterSystemRepository::DtEmitterSystemRepository ( )

default constructor

virtual DtEmitterSystemRepository::~DtEmitterSystemRepository ( )
virtual

destructor

DtEmitterSystemRepository::DtEmitterSystemRepository ( const DtEmitterSystemRepository orig)

copy constructor

Member Function Documentation

virtual DtEmitterBeamRepository* DtEmitterSystemRepository::addBeam ( DtU8  beamId = 0,
DtBeamType  type = DtRegularBeam,
DtEmitterSysRetCode retcode = NULL 
)
virtual

Add/remove a new emitter beam within this system.

If you add a beam with duplicate ID, retcode will be set to DtDuplicateBeam, and beamSRById will return the first beamSR with the given ID.

virtual const DtList* DtEmitterSystemRepository::beamList ( ) const
virtual

Returns DtList of DtEmitterBeamStateRepositories.

virtual DtList* DtEmitterSystemRepository::beamList ( )
virtual
virtual DtEmitterBeamRepository* DtEmitterSystemRepository::beamSRById ( DtU8  beamId,
DtEmitterSysRetCode retcode = NULL 
)
virtual

Return a pointer to the first BeamSR with specified beamID.

virtual DtStateRepository* DtEmitterSystemRepository::clone ( bool  copy = false) const
virtual

Return a copy/empty object of the same type as this.

Reimplemented from DtEmbeddedSystemRepository.

static DtEmitterSystemRepository* DtEmitterSystemRepository::create ( )
static

Reimplemented from DtEmbeddedSystemRepository.

virtual DtEmissionFunc DtEmitterSystemRepository::emitterFunction ( ) const
virtual
virtual DtEmitterSysName DtEmitterSystemRepository::emitterName ( ) const
virtual
virtual DtU8 DtEmitterSystemRepository::emitterNumber ( ) const
virtual
virtual const DtEventId& DtEmitterSystemRepository::eventId ( ) const
virtual
bool DtEmitterSystemRepository::isMember ( DtEmitterBeamRepository bsr) const

Returns true if the give BSR is in this ESR's list of BSRs.

virtual int DtEmitterSystemRepository::numBeams ( ) const
virtual

Returns number of beams.

DtEmitterSystemRepository& DtEmitterSystemRepository::operator= ( const DtEmitterSystemRepository orig)

assignment operator

virtual void DtEmitterSystemRepository::printData ( ) const
virtual

Print data to the DtInfo stream.

Reimplemented from DtEmbeddedSystemRepository.

virtual void DtEmitterSystemRepository::printDataToStream ( std::ostream &  stream) const
virtual

Print data to the specified stream.

Reimplemented from DtEmbeddedSystemRepository.

virtual void DtEmitterSystemRepository::purgeBeamList ( )
protectedvirtual
virtual DtEmitterSysRetCode DtEmitterSystemRepository::removeBeam ( DtU8  beamId)
virtual

removes an emitter beam, if there are duplicate beams it will remove the first beam with the given beamID.

This can cause crashes in HLA as this may not be the HLA object which was actually removed. It is safer in HLA to call removeBeam which takes a GlobalId

virtual DtEmitterSysRetCode DtEmitterSystemRepository::removeBeam ( const DtGlobalObjectDesignator id)
virtual
virtual void DtEmitterSystemRepository::setEmitterFunction ( DtEmissionFunc  function)
virtual

Set/Get the emitter function.

virtual void DtEmitterSystemRepository::setEmitterName ( DtEmitterSysName  name)
virtual

Set/Get the emitter name.

virtual void DtEmitterSystemRepository::setEmitterNumber ( DtU8  number)
virtual

Set/Get the emitter number.

virtual void DtEmitterSystemRepository::setEventId ( const DtEventId id)
virtual

Set/Get Event Id - not used until RPR 0.7.

static DtBeamStateRepCreator DtEmitterSystemRepository::setStateRepCreator ( DtBeamStateRepCreator  creator)
static

Give us a function to be used for creating Beam SRs.

Member Data Documentation

DtList DtEmitterSystemRepository::myBeamList
protected

List of beams in this system.

DtEmissionFunc DtEmitterSystemRepository::myEmitterFunction
protected
DtEmitterSysName DtEmitterSystemRepository::myEmitterName
protected
DtU8 DtEmitterSystemRepository::myEmitterNumber
protected
DtEventId DtEmitterSystemRepository::myEventId
protected
DtBeamStateRepCreator DtEmitterSystemRepository::theBeamStateRepCreator
staticprotected

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

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)