VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends
makVrv::DtTrackAcquirer Class Reference

Base class for objects that identify entities that can be tracked on screen or in the scene. More...

Inheritance diagram for makVrv::DtTrackAcquirer:
Inheritance graph
[legend]

Classes

struct  DtByAngleComparision
 Used to std::sort a vector of DtTrackableEntities Sorts from 1 -> 0, first element will be the closest to the observers front vector. More...
 
struct  DtTrackableEntity
 A struct for storing dot product values from observer front vector to entities within the scene, using a struct as we only need to compare the first value, rather than both in a pair. More...
 

Public Types

typedef std::vector
< DtTrackableEntity
DtTrackableEntities
 Typedef vector for holding scene objects that are within a FOV. More...
 

Public Member Functions

virtual ~DtTrackAcquirer ()
 Virtual DTOR. More...
 
virtual bool initiateTrack ()
 Initiates the track acquirer. More...
 
virtual const DtElementID identifiedTrackableObjectId () const
 Get the unique ID for the object that has been identified for tracking, returns -1 if this has not been set. More...
 
virtual void setTrackAcquisitionBox (DtTrackAcquisitionBox &box)
 Get/ Set the acquisition box. More...
 
virtual const
DtTrackAcquisitionBox
trackAcquisitionBox () const
 
virtual DtTrackAcquisitionBoxtrackAcquisitionBox ()
 
virtual DtTrackableEntitiestrackableEntities ()
 Get / Set trackable entities. More...
 
virtual const DtTrackableEntitiestrackableEntities () const
 
virtual void setTrackAbleEntities (const DtTrackableEntities &entities)
 

Protected Member Functions

 DtTrackAcquirer (DtDe &de, DtObserver &observer, DtChannel &acquisitionChannel)
 CTOR. More...
 

Protected Attributes

DtDemyDe
 
DtTrackableEntities myTrackableEntities
 
DtTrackAcquisitionBoxmyAcquisitionBox
 
DtChannelmyAcquisitionChannel
 
DtObservermyObserver
 
DtElementID myObjectIdToTrack
 

Private Member Functions

 DtTrackAcquirer (const DtTrackAcquirer &orig)
 Unimplemented CCTOR. More...
 
DtTrackAcquireroperator= (const DtTrackAcquirer &rhs)
 Unimplemented Assignment CTOR. More...
 

Friends

class DtTrackAcquirerCreator
 

Detailed Description

Base class for objects that identify entities that can be tracked on screen or in the scene.

Any class inheriting from this class must implement initiateTrack(), see DtLosTrackAcquirer for an example. initiateTrack() should identify and populate the DtTrackableEntities vector with entities that are within the acquisition box that is set on this object. initiateTrack() should then decide which entity from DtTrackableEntities to track. This is normally the entity closest to the centre of the acquisition box. This entity's ID is then set to the myObjectIdToTrack variable. Track acquirers are not intended to continuously check whether the identified entity is still within the acqusition box, one must pass myObjectIdToTrack into, and use a DtTrackMonitor.

Member Typedef Documentation

Typedef vector for holding scene objects that are within a FOV.

Constructor & Destructor Documentation

virtual makVrv::DtTrackAcquirer::~DtTrackAcquirer ( )
virtual

Virtual DTOR.

makVrv::DtTrackAcquirer::DtTrackAcquirer ( DtDe de,
DtObserver observer,
DtChannel acquisitionChannel 
)
protected

CTOR.

makVrv::DtTrackAcquirer::DtTrackAcquirer ( const DtTrackAcquirer orig)
private

Unimplemented CCTOR.

Member Function Documentation

virtual bool makVrv::DtTrackAcquirer::initiateTrack ( )
virtual

Initiates the track acquirer.

Override in specific acquirers. Should return true if a track is initialised. This method creates an acquisition box with default values if one has not been added to this class before init'ed a track

Reimplemented in makVrv::DtLosTrackAcquirer.

virtual void makVrv::DtTrackAcquirer::setTrackAcquisitionBox ( DtTrackAcquisitionBox box)
virtual

Get/ Set the acquisition box.

virtual const DtTrackAcquisitionBox& makVrv::DtTrackAcquirer::trackAcquisitionBox ( ) const
virtual
virtual DtTrackAcquisitionBox& makVrv::DtTrackAcquirer::trackAcquisitionBox ( )
virtual
virtual DtTrackableEntities& makVrv::DtTrackAcquirer::trackableEntities ( )
virtual

Get / Set trackable entities.

virtual const DtTrackableEntities& makVrv::DtTrackAcquirer::trackableEntities ( ) const
virtual
virtual void makVrv::DtTrackAcquirer::setTrackAbleEntities ( const DtTrackableEntities entities)
virtual
virtual const DtElementID makVrv::DtTrackAcquirer::identifiedTrackableObjectId ( ) const
virtual

Get the unique ID for the object that has been identified for tracking, returns -1 if this has not been set.

DtTrackAcquirer& makVrv::DtTrackAcquirer::operator= ( const DtTrackAcquirer rhs)
private

Unimplemented Assignment CTOR.

Friends And Related Function Documentation

friend class DtTrackAcquirerCreator
friend

Member Data Documentation

DtDe& makVrv::DtTrackAcquirer::myDe
protected
DtTrackableEntities makVrv::DtTrackAcquirer::myTrackableEntities
protected
DtTrackAcquisitionBox* makVrv::DtTrackAcquirer::myAcquisitionBox
protected
DtChannel* makVrv::DtTrackAcquirer::myAcquisitionChannel
protected
DtObserver* makVrv::DtTrackAcquirer::myObserver
protected
DtElementID makVrv::DtTrackAcquirer::myObjectIdToTrack
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)