20 #include <osgEarth/Layer>
22 #include <osg/observer_ptr>
23 #include <osg/ref_ptr>
26 #include <boost/thread/mutex.hpp>
27 #include <boost/thread/condition_variable.hpp>
29 #include <unordered_map>
43 class DtCellToGeoTypicalIndirectGeoMap;
44 class DtCellToGeoSpecificIndirectGeoMap;
45 class DtIndirectModelsContainer;
46 class DtModelSemanticsMapper;
47 class DtIndirectFadeParameters;
48 class DtCellIndirectGeo;
91 virtual void onDataPremerge(osg::Node* data);
95 virtual void onDataUnloaded(
const osg::Node* data);
98 virtual void slot_postTick();
102 virtual void processBuildingsExternalModelNodes(
const osg::Node* data);
105 virtual void processInstancedModelNodes(
const osg::Node* data);
109 virtual void processElevationsLodNodes(
const osg::Node* data);
115 const osg::Node* preloadModelAndRunDynamicTerrainParser(
const std::string& modelName);
124 osg::observer_ptr<const osgEarth::Layer>
myLayer;
DtCellToGeoTypicalIndirectGeoMap * myGtMap
instanced models go here geotypical, share models
Definition: DtIndirectBuildingsHandler.h:132
Helper for managing a map of feature tile nodes (for a layer) to DtCellGeoSpecificIndirectGeo DtCellG...
Definition: DtCellToGeoSpecificIndirectGeoMap.h:39
boost::condition_variable myProcessedNodeMapCondition
Definition: DtIndirectBuildingsHandler.h:143
#define DT_DLL_VRVOSGEARTH
Definition: vrvOsgEarth.h:21
std::map< std::string, NodeRefPtr > myProcessedNodeMap
Definition: DtIndirectBuildingsHandler.h:145
Helper for managing a map of feature tile nodes (for a layer) to DtCellGeoTypicalIndirectGeo DtCellGe...
Definition: DtCellToGeoTypicalIndirectGeoMap.h:39
class used to collect geometry coming in via buildings layer and add it to the indirect engine...
Definition: DtIndirectBuildingsHandler.h:69
const bool myDynamicTerrainInstallerActive
Definition: DtIndirectBuildingsHandler.h:149
class for holding an indirect geometry registrar (which holds the information about how to draw model...
Definition: DtIndirectModelsContainer.h:55
boost::mutex myProcessedNodeMapMutex
Definition: DtIndirectBuildingsHandler.h:142
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
const bool myCullFaceEnabled
Definition: DtIndirectBuildingsHandler.h:150
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
struct for holding the fade parameters used by the indirect rendering cull compute shader ...
Definition: DtIndirectFadeParameters.h:17
friend DtIndirectBuildingsHandlerCreator
creator friend class so it is the only one that can create new DtIndirectBuildingsHandler ...
Definition: DtIndirectBuildingsHandler.h:80
DtCellToGeoSpecificIndirectGeoMap * myProceduralGsMap
Procedural stuff that ends up as geodes. Is also geospecific in the sense that each.
Definition: DtIndirectBuildingsHandler.h:138
DtDe & myDe
Definition: DtIndirectBuildingsHandler.h:118
std::map< std::string, bool > myIsProcessingNodeMap
Definition: DtIndirectBuildingsHandler.h:146
Base class to provide boost signal/slot management.
DtSignalConnectionManager myConnections
manager for connections
Definition: DtIndirectBuildingsHandler.h:153
DtModelSemanticsMapper & myModelSematicsMapper
Definition: DtIndirectBuildingsHandler.h:147
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:70
DtVirtualBaseClassCreator< DtIndirectBuildingsHandler, const osgEarth::Layer &, const DtIndirectFadeParameters &, const bool &, const bool & > DtIndirectBuildingsHandlerCreator
creator
Definition: DtIndirectBuildingsHandler.h:51
osg::observer_ptr< const osgEarth::Layer > myLayer
store by observer ptr here onDataPremerge for a node can get launched (in another thread) just after ...
Definition: DtIndirectBuildingsHandler.h:124
DtCellToGeoSpecificIndirectGeoMap * myGsMap
external models go here geospecific
Definition: DtIndirectBuildingsHandler.h:128
const char * creatorTypeName< DtIndirectBuildingsHandler >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtIndirectBuildingsHandler.h:58
DtIndirectFadeParameters myFadeParameters
Definition: DtIndirectBuildingsHandler.h:140
The DtModelSemanticsMapper object is responsible for mapping Names of model semantics declarations (f...
Definition: DtModelSemanticsMapper.h:27
Contains DLL export macros.
Contains makVrv::DtIndirectFadeParameters class.
osg::ref_ptr< const osg::Node > NodeRefPtr
Definition: DtIndirectBuildingsHandler.h:144
DtIndirectModelsContainer * myGtModelsContainer
Definition: DtIndirectBuildingsHandler.h:133