23 #include <osg/Texture>
25 #include <unordered_map>
26 #include <boost/thread.hpp>
31 class DtIndirectGeometryTextures;
32 class DtIndirectTexturePrototypeManager;
33 class DtIndirectDefaultTexturesContainer;
34 class DtEffectTextureRegistry;
59 virtual void collectTextures(
DtIndirectGeometryTextures& textures,
const osg::StateSet* stateSet,
const std::string &modelName)
const = 0;
69 virtual uint32_t flags(
const osg::Texture* srcOsgTexture,
const std::string& modelName,
DtEffectTextureType effectTextureType)
const;
117 static const std::string& theClassName();
127 typedef std::unordered_map<std::string, DtIndirectTextureCollectionPolicyCreator*>
RegistrationMap;
Contains makVrv::DtEffectTextureType declaration.
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
DtIndirectEffectTexturesTemplate myEffectTexturesTemplate
Definition: DtIndirectTextureCollectionPolicy.h:73
DtIndirectTexturePrototypeManager & myTexturePrototypeManager
Definition: DtIndirectTextureCollectionPolicy.h:77
DtIndirectDefaultTexturesContainer & myDefaultTexturesContainer
Definition: DtIndirectTextureCollectionPolicy.h:79
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
This class manages DtIndirectTexturePrototypes during the lifetime of the application.
Definition: DtIndirectTexturePrototypeManager.h:86
Abstract class to look in the stateset and collect textures specified via its template The effect tex...
Definition: DtIndirectTextureCollectionPolicy.h:43
Abstract class for creation of a particular texture collection policy.
Definition: DtIndirectTextureCollectionPolicy.h:88
RegistrationMap myCreators
Definition: DtIndirectTextureCollectionPolicy.h:129
DtDe & myDe
Definition: DtIndirectTextureCollectionPolicy.h:75
DtEffectTextureType
Definition: DtEffectTextureType.h:16
DtEffectTextureRegistry & myEffectTextureRegistry
Definition: DtIndirectTextureCollectionPolicy.h:81
Contains the DtIndirectEffectTexturesTemplate class declaration.
Contains makVrv::DtVirtualBaseClass class.
class which holds some static utility functions for handling effect textures once we work out how to ...
Definition: DtEffectTextureRegistry.h:32
This class represents the list of DtIndirectTexturePrototypes belonging to a particular sub-geometry...
Definition: DtIndirectGeometryTextures.h:38
Contains VirtualProgram execution priority constants.
Contains the DtIndirectEffectTextureShader class declaration.
loads and contains various core default textures used by the indirect system
Definition: DtIndirectDefaultTexturesContainer.h:30
DtDe & myDe
Definition: DtIndirectTextureCollectionPolicy.h:125
Factory for creating different collection policies.
Definition: DtIndirectTextureCollectionPolicy.h:103
This class is specifically used by the indirect system It's separate so that it doesn't interfere wit...
Definition: DtIndirectLog.h:30
Contains DLL export macros.
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:72
std::unordered_map< std::string, DtIndirectTextureCollectionPolicyCreator * > RegistrationMap
Definition: DtIndirectTextureCollectionPolicy.h:127
DtIndirectLog & myIndirectLog
Definition: DtIndirectTextureCollectionPolicy.h:83
Class that allows you to abstractly register effect texture types the effect texture types are client...
Definition: DtIndirectEffectTexturesTemplate.h:40