14 #include <osg/Referenced>
32 #include <tbb/spin_rw_mutex.h>
52 virtual void setModelDefinitionsDirectory(
const DtFilename& f);
53 virtual const DtFilename& modelDefinitionsDirectory()
const;
83 virtual void initialize()
override;
132 virtual bool needsShaderGeneration(
const std::string&
filename,
const LoadFileOptions& options)
const override;
134 virtual void encodeOptionsString(
135 const LoadFileOptions& loadFileOptions, osgDB::ReaderWriter::Options& options)
const override;
137 virtual void decodeOptions(
138 const osgDB::ReaderWriter::Options& options,
LoadFileOptions& loadFileOptions)
const override;
141 const std::string& inputFilename,
157 osg::Node* terrainNode();
158 osg::Node* propNode();
159 virtual void createManagers()
override;
181 virtual void nodePagedIn(
const osg::Node* node,
const std::string& fileName, osg::NodePath& parentalNodePath,
bool oceanExtracted)
override;
192 virtual void slot_childLoaded(
const osg::Group* page,
const osg::Node* child,
const std::string& fileName, osg::Node*& returnedNode)
override;
195 virtual void slot_childPagedIn(
const osg::Group* page,
const osg::Node* child)
override;
203 inline const char* makVrv::creatorTypeName<DtDisabledIndirectManager>(void) {
return "DtPagedTilesIndirectManagerCreator"; }
245 virtual int state(
int stateNumber)
const override;
248 virtual void setState(
int stateNumber,
int stateValue)
override;
virtual void slot_childAboutToPageOut(const osg::Group *page, const osg::Node *child)
slot for when paged tile is about to page out called in the main thread just before a tile has been p...
Replaces DtTerrain so we can supply our own DtFeatureLayer type.
Definition: vrfVrvOverrides.h:87
Contains makVrv::DtModelSetRealizationManager class.
The feature layer is a type of terrain layer which contains features, such as points, lines, areas, and props created from them.
Definition: DtFeatureLayer.h:25
virtual void slot_childPagedIn(const osg::Group *page, const osg::Node *child)
slot for when paged tile has already been paged in only called in the main thread. Called after a tile has been added to the scenegraph does not update the signal count since it is only called in the main thread NOTE: each time the signature of this function change the same change needs to be made in JrmDisabledIndirectManager.h
virtual void removeModel(DtOsgArticulatedModel &model)
Remove the art part ids associated with this model from the DtEntityWheelManager. ...
The DtOsgRenderer is the component responsible for rendering 3D images onto the screen via OpenSceneG...
Definition: DtOsgRenderer.h:91
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
Definition: vrfVrvOverrides.h:164
Currently these are not thread safe in Vantage, so, override here to provide thread safety around add...
Definition: vrfVrvOverrides.h:256
handles the management of paged tiles and terrain patches being added to the indirect rendering syste...
Definition: DtPagedTilesIndirectManager.h:69
DtModelSetStringProvider is an interface for a class to provide strings for model sets...
Definition: DtModelSetStringProvider.h:25
virtual void addTextureLoaderToSceneGraph(osg::Group &myTerrainGroup)
Add a texture loader node to the scenegraph. It processes textures and gets them to loaded (onto the ...
Definition: vrfVrvOverrides.h:173
Display engine.
Definition: vrfVrvOverrides.h:45
virtual void removeModel(DtOsgArticulatedModel &model)
Remove the art part ids associated with this model from the DtEntityWheelManager. ...
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
DtFilename myModelDefinitionsDirectory
Definition: vrfVrvOverrides.h:61
Definition: vrfVrvOverrides.h:107
Variadic templated creator class for creating a custom version of a DtVirtualBaseClassCreator This cl...
Definition: DtVirtualBaseClassCustomCreator.h:25
Contains makVrv::DtEntityWheelManager class.
virtual void getModelSetList(StringList &outList) const override
Get the list of model set names.
Definition: vrfVrvOverrides.h:214
tbb::spin_rw_mutex myMutex
Definition: vrfVrvOverrides.h:285
PrintLevel
Definition: DtDebugLog.h:42
An articulated model manipulator for controlling an articulated model. Supports indirect rendering of...
Definition: DtOsgArticulatedModel.h:67
Contains makVrv::DtDeSharedState class.
Definition: vrfVrvOverrides.h:148
Contains makVrv::DtTerrain class.
The element type manager is responsible for knowing about the types of elements as well as owning the...
Definition: DtElementDefinitionManager.h:561
DtVrfModelSetStringProvider(makVrv::DtDe &de)
Definition: vrfVrvOverrides.h:212
Contains makVrv::DtEntityRotorManager class.
The DtOsgFileCache creator..
Definition: DtOsgFileCache.h:460
Definition: vrfOsgArticulatedModel.h:14
Definition: vrfVrvOverrides.h:272
Definition: vrfVrvOverrides.h:151
virtual int stringToModelSet(const makVrv::DtUnicode &modelSetString) const override
Get the model set that's mapped to the specified string.
Definition: vrfVrvOverrides.h:221
virtual void addModel(DtOsgArticulatedModel &model, DtUniqueID uniqueId, DtUniqueID elementId)
Add a model which will have some rotors.
makVrv::DtVirtualBaseClassCustomCreator< DtDisabledIndirectManager, makVrv::DtPagedTilesIndirectManagerCreator, makVrv::DtOsgTerrainPatchObject &, const bool &, const bool & > DtDisabledIndirectManagerCreator
Definition: vrfVrvOverrides.h:207
The OSG implementation of makVrv::DtOsgFileCache. This will cache files as .ive's for quicker load ti...
Definition: DtOsgFileCache.h:56
Definition: vrfVrvOverrides.h:124
osg::ref_ptr< makVrv::DtRenderToggleTransform > myTransform
Definition: vrfVrvOverrides.h:252
The DtDeSharedState represents all the data that is shared between the master and its slaves...
Definition: DtDeSharedState.h:47
A DtOsgTerrainPatchObject contains the methods for loading a file as a terrain. When loading a file a...
Definition: DtOsgTerrainPatchObject.h:54
virtual void addModel(DtOsgArticulatedModel &model, DtUniqueID uniqueId, DtUniqueID elementId)
Add a model which will have its wheel rotating.
Definition: vrfVrvOverrides.h:209
virtual makVrv::DtUnicode modelSetToString(makVrv::DtModelSetId modelSet) const override
Get the string that's mapped to the specified model set.
Definition: vrfVrvOverrides.h:217
std::vector< DtUnicode > StringList
Definition: DtModelSetStringProvider.h:30
virtual void setModelSetName(int modelSet, const makVrv::DtUnicode &name) override
Change the string associated with a model set (if it exists) or add a new string to model set mapping...
Definition: vrfVrvOverrides.h:228
The DtEntityWheelManager class is responsible for collecting art part ids related to wheels and then ...
Definition: DtEntityWheelManager.h:39
The terrain creator for the DtTerrain class.
Definition: DtTerrain.h:486
Definition: DtFileCache.h:45
VRV creator.
Definition: vrfVrvOverrides.h:91
Contains makVrv::DtOsgSceneConnector class.
Creator class for DtDeSharedState.
Definition: DtDeSharedState.h:1306
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
The DtRenderer is the component responsible for rendering 3D images onto the screen.
Definition: DtRenderer.h:49
virtual void nodePagedIn(const osg::Node *node, const std::string &fileName, osg::NodePath &parentalNodePath, bool oceanExtracted)
Indirect a node directly (utility function) can be used to indirect a scenegraph, so whole openflight...
tbb::spin_rw_mutex myMutex
Definition: vrfVrvOverrides.h:269
Contains makVrv::DtIndirectGeometryCallbackConnector class.
std::vector< DtVrfOsgArticulatedModel * > myArticulatedModels
Definition: vrfVrvOverrides.h:251
Contains makVrv::DtOsgFileCache class.
Contains makVrv::DtPagedTilesIndirectManager class.
Contains makVrv::DtModelSetStringProvider class.
Abstract creator base class.
Definition: DtRenderer.h:184
virtual void loadDefaults()
Load the default definitions.
#define DT_DLL_vantageTerrainImplementation
This file is used to determine how to build.
Definition: vantageTerrainImplementationDefines.h:28
virtual void setState(int stateNumber, int stateValue)
Set the state on the model.
TargetApplication
Definition: DtTerrainOperationRecord.h:26
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
virtual void postInitialize()
Connect initialized components and call postInit signal.
virtual void nodePagingOut(const osg::Node *node)
Let the manger know a node is paging out should only be called in the main thread' NOTE: each time th...
This special class will allow for multiple articulated models to be added to the same transform...
Definition: vrfVrvOverrides.h:233
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
Shared state.
Definition: vrfVrvOverrides.h:65
virtual void createDebugLog(const std::string &fileName, DtDebugLog::PrintLevel level)
create the debug log for logging information to a file
Definition: vrfVrvOverrides.h:120
VRV Creator.
Definition: vrfVrvOverrides.h:69
DtModelSetId
Definition: DtModelSetEnums.h:19
static DtUnicode fromAscii(const std::string &ascii)
Create a unicode string from an ascii string, the string MUST be zero terminated if the length is not...
Contains makVrv::DtOsgRenderer class.
Contains makVrv::DtIGLogger class.
A connector class to listen in on signal_terrainPatchCreated and install the DtIndirectGeometryCallba...
Definition: DtIndirectGeometryCallbackConnector.h:25
Handles the caching of files. Includes functions for excluding files with certain extensions from bei...
Definition: DtFileCache.h:37
virtual int state(int stateNumber) const override
Get a state of the model Returns -1 if no such state exists.
DtTerrain is a facade around terrain functionality.
Definition: DtTerrain.h:57
virtual int numModelSets() const override
Get the current number of model set names on the model set list.
Definition: vrfVrvOverrides.h:224
virtual void slot_childLoaded(const osg::Group *page, const osg::Node *child, const std::string &fileName, osg::Node *&returnedNode)
slot for when a paged tile is loaded (but not added to the scenegraph) called by the paged in a backg...
class to manage rotors of each model and their corresponding rotors' states
Definition: DtEntityRotorManager.h:29