VR-Forces 4.6 Class Documentation
 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
DtIntersectTimerPassThroughLayer Class Reference

This is a DtTerrainPassThroughLayer which times the intersection functions and provides average intersection time values for the contained implementation. More...

Inheritance diagram for DtIntersectTimerPassThroughLayer:
Inheritance graph
[legend]

Public Member Functions

 DtIntersectTimerPassThroughLayer (DtTerrainImplementation *implementation, DtConsoleCommandManager *cmdMgr)
virtual ~DtIntersectTimerPassThroughLayer ()
virtual bool chordIntersect (const DtChord &chord, DtVrfChordIntersectionRecord &record, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false, int flags=0) const
 Times the call to the contained terrain implementation.
virtual bool allIntersectsAlongChord (const DtChord &chord, DtVrfChordIntersectRecordList &intList, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false, int flags=0) const
 Times the call to the contained terrain implementation.
virtual void resetStatistics ()
virtual void printStatistics ()
- Public Member Functions inherited from DtTerrainPassThroughLayer
 DtTerrainPassThroughLayer (DtTerrainImplementation *terrainImplementation, DtConsoleCommandManager *cmdMgr)
 The implementation that this layer is wrapping must be passed in within the constructor.
virtual ~DtTerrainPassThroughLayer ()
virtual
MAKVRinTerra::DtFeatureDatabase
featureDatabase ()
 Access feature database.
virtual const
MAKVRinTerra::DtFeatureDatabase
featureDatabase () const
virtual
MAKVRinTerra::DtFeatureContext
featureContext ()
 Access feature context.
virtual const
MAKVRinTerra::DtFeatureContext
featureContext () const
virtual bool loadTerrain (const makArchives::DtGenericTerrainRecord &rec)
 Loads a terrain given the terrain record.
virtual const Coordinate_SystemcoordinateSystem () const
virtual void shutdown (bool block)
 Shutdown the terrain.
virtual void preloadTerrainAreas (const DtTerrainPagingGeometryList &preloadGeometry)
 Specifies a list of terrain areas that should be preloaded by the terrain implementation, in the case of a paging or streaming terrain source.
virtual bool chordIntersect (const DtChord &chord, DtVrfChordIntersectionRecord &record, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false) const
 Returns topmost intersection of chord with terrain in record.
virtual bool allIntersectsAlongChord (const DtChord &chord, DtVrfChordIntersectRecordList &intList, DtIntersectionRecord::DtIntersectionType irtFlag=DtIntersectionRecord::INT_ALL_DATA, bool *dataAvailable=0, bool overrideBlockingAssert=false) const
 Returns all intersections of chord with terrain.
virtual void cacheInformationForTerrainArea (unsigned minLOD, unsigned maxLOD, const DtExtent &cacheArea, double &estimatedTime, double &estimatedSize, std::vector< std::string > &elevationLayers, std::vector< std::string > &modelLayers, std::vector< std::string > &featureLayers) const
 Passed through to terrain implementation.
virtual void cacheTerrainArea (int requestId, unsigned minLOD, unsigned maxLOD, const DtExtent &cacheArea, DtCacheProgressCallbackFunction fcn=0, void *usr=0)
 Passed through to terrain implementation.
virtual void cancelCacheTerrainArea (int requestId)
 Passed through to terrain implementation.
virtual const
DtTerrainCapabilities
terrainCapabilities () const
virtual void setIntersectDataLoadExpireTime (const double &expireTime)
 No-op.
virtual void expireDataLoadRequestsBeforeTime (const double &currentTime)
 No-op.
virtual void processTrianglesInArea (DtTriangleOutputInterface &, const DtTerrainProcessPolygonsBox &box) const
- Public Member Functions inherited from DtTerrainImplementation
 DtTerrainImplementation (DtConsoleCommandManager *cmdManager)
virtual ~DtTerrainImplementation ()
virtual void init ()
 Called immediately after creation.
virtual void finishedLoading (const MAKVRinTerra::DtProj &proj)
 Called after terrain loaded successfully.
virtual double modelHeightDifferencesFromAppearances (int oldApp, int newApp) const
 If supported by the implementation, return the height difference from the currently loaded model as a transition from the old appearance to the new appearance.
virtual bool createFromExtent (const Dt3dBoundingVolume &)
 Creates an extent from the given extent. Not all implementations will support this.
virtual bool loadModel (const DtFilename &, const DtEntityType &t=DtEntityType())
 Defaults to loading terrain for gdb.
virtual DtTerrainInterfaceConfigconfigurationOptions ()
virtual const
DtTerrainInterfaceConfig
configurationOptions () const
virtual bool dataAvailable (const DtTerrainPagingGeometryList &geometry)
 Returns true if all of the terrain which intersects the geometry list is paged in.
virtual void breakUpChords (const MAKVRinTerra::DtProj &, const DtChord &chord, std::vector< DtChord > &chords)
virtual bool hasFeatureContext () const
 Returns true if there is an active feature context.
virtual DtTerrainGeometryHandlecreateEntityGeometry (const DtFilename &file)
 Create geometry in the terrain which represents the entity.
virtual
DtDynamicTerrainRequestHandle 
addDynamicTerrainChangeRequest (double time, makVrv::DtDynamicTerrainChange *command)
 Add a dynamic terrain change request to the system.
virtual DtDynamicTerrainQueryHandle queryDynamicTerrainFeatures (const DtDynamicTerrainQueryCallback &callback, makVrv::DtDynamicTerrainGeometry *geometry=0, bool useOriginalGeometry=false)
 Install a query which will call the supplied callback on matching dynamic terrain features as they are paged in.
virtual void queryCurrentDynamicTerrainFeatures (const DtDynamicTerrainQueryCallback &callback, makVrv::DtDynamicTerrainGeometry *geometry=0, bool useOriginalGeometry=false)
virtual void setAssertOnBlockingTerrainCalls (bool assertBlock)
 Determines if an exception should be thrown if a blocking terrain call is made.
virtual bool assertOnBlockingTerrainCalls () const
virtual void setWarnOnBlockingTerrainCalls (bool warnBlock)
 Determines if a warning should be printed out if a blocking terrain call is made.
virtual bool warnOnBlockingTerrainCalls () const

Static Public Member Functions

static DtTerrainPassThroughLayercreate (DtCreatorParam createParam)

Protected Member Functions

virtual void printStatistic (int statId)

Protected Attributes

DtConsoleCommandOwnermyCommandOwner
tbb::spin_mutex myMutex
DtPerformanceStats myDataAvailableIntersectionStats
DtPerformanceStats myDataUnavailableIntersectionStats
std::map< unsigned int,
unsigned int
myDataAvailableIntersectCount
std::map< unsigned int,
unsigned int
myDataUnavailableIntersectCount
- Protected Attributes inherited from DtTerrainPassThroughLayer
DtTerrainImplementationmyTerrainImplementation
- Protected Attributes inherited from DtTerrainImplementation
DtTerrainInterfaceConfig myConfig
bool myAssertOnBlockingTerrainCalls
 Determines if an exception should be thrown if a blocking terrain call is made.
bool myWarnOnBlockingTerrainCalls
boost::scoped_ptr
< MAKVRinTerra::DtFeatureDatabase
myFeatureDatabase
boost::scoped_ptr
< MAKVRinTerra::DtFeatureContext
myFeatureContext

Additional Inherited Members

- Public Types inherited from DtTerrainImplementation
typedef boost::function< void(const
makVrv::DtDynamicTerrainFeature &)> 
DtDynamicTerrainQueryCallback

Detailed Description

This is a DtTerrainPassThroughLayer which times the intersection functions and provides average intersection time values for the contained implementation.

Constructor & Destructor Documentation

DtIntersectTimerPassThroughLayer::DtIntersectTimerPassThroughLayer ( DtTerrainImplementation implementation,
DtConsoleCommandManager cmdMgr 
)
virtual DtIntersectTimerPassThroughLayer::~DtIntersectTimerPassThroughLayer ( )
virtual

Member Function Documentation

virtual bool DtIntersectTimerPassThroughLayer::chordIntersect ( const DtChord chord,
DtVrfChordIntersectionRecord record,
DtIntersectionRecord::DtIntersectionType  irtFlag = DtIntersectionRecord::INT_ALL_DATA,
bool dataAvailable = 0,
bool  overrideBlockingAssert = false,
int  flags = 0 
) const
virtual

Times the call to the contained terrain implementation.

Implements DtTerrainImplementation.

virtual bool DtIntersectTimerPassThroughLayer::allIntersectsAlongChord ( const DtChord chord,
DtVrfChordIntersectRecordList intList,
DtIntersectionRecord::DtIntersectionType  irtFlag = DtIntersectionRecord::INT_ALL_DATA,
bool dataAvailable = 0,
bool  overrideBlockingAssert = false,
int  flags = 0 
) const
virtual

Times the call to the contained terrain implementation.

Implements DtTerrainImplementation.

virtual void DtIntersectTimerPassThroughLayer::resetStatistics ( )
virtual
virtual void DtIntersectTimerPassThroughLayer::printStatistics ( )
virtual
static DtTerrainPassThroughLayer* DtIntersectTimerPassThroughLayer::create ( DtCreatorParam  createParam)
static
virtual void DtIntersectTimerPassThroughLayer::printStatistic ( int  statId)
protectedvirtual

Member Data Documentation

DtConsoleCommandOwner* DtIntersectTimerPassThroughLayer::myCommandOwner
protected
tbb::spin_mutex DtIntersectTimerPassThroughLayer::myMutex
mutableprotected
DtPerformanceStats DtIntersectTimerPassThroughLayer::myDataAvailableIntersectionStats
mutableprotected
DtPerformanceStats DtIntersectTimerPassThroughLayer::myDataUnavailableIntersectionStats
mutableprotected
std::map<unsigned int, unsigned int> DtIntersectTimerPassThroughLayer::myDataAvailableIntersectCount
mutableprotected
std::map<unsigned int, unsigned int> DtIntersectTimerPassThroughLayer::myDataUnavailableIntersectCount
mutableprotected

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

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)