VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgConfigurableEffectController.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
16 
17 #include <string>
18 #include <vector>
19 
20 namespace osg
21 {
22  class Texture;
23  class StateSet;
24 }
25 
26 namespace makVrv
27 {
31  {
32  public:
35 
38 
39  private:
44 
45  public: // DtOsgEffectTextureController interface
46 
47  virtual bool installShaders(int baseUnit, int effectUnit, const osg::Texture* tex, osg::StateSet* stateSet, const std::string& baseTextureName) const;
48 
50  virtual void findEffectTexture(const std::string& baseTextureName, const osgDB::Options* dbOptions, const DtPossibleFileNamesCache& possibleFilenames, const osg::Texture* baseTexture, osg::ref_ptr<osg::Texture>& effectTexture) const;
51 
53  virtual bool isEffectTexture(const osg::Texture* tex, const std::string& texName) const;
54 
55  static bool isConfigurableMapTexture(const std::string& textureName);
56 
57  static std::vector<std::string> parseSuffix(const std::string& baseTextureName, const std::string& effectTextureName, DtDe& de);
58 
60  static std::vector<std::string> getSuffixBasedOnExtendedMaterial(const std::string& textPath, const osg::StateSet* stateSet);
61 
62 
63  protected:
64  static const std::set<std::string> theChannelIds;
65  static std::set<std::string> initChannelIds();
66  };
67 
71 }
Installs and control configurable mapping effects.
Definition: DtOsgConfigurableEffectController.h:30
A thread safe cache containing a list of possible file names for effect textures, based on the curren...
Definition: DtPossibleFileNamesCache.h:27
Contains makVrv::DtOsgEffectTextureController declaration.
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
static const std::set< std::string > theChannelIds
Definition: DtOsgConfigurableEffectController.h:64
DtEffectControllerCreatorTemplate< DtOsgConfigurableEffectController > DtConfigurableControllerCreator
Creator for configurable map controller.
Definition: DtOsgConfigurableEffectController.h:70
Base class for controllers that install and control effect textures.
Definition: DtOsgEffectTextureController.h:44
Contains makVrv::DtEffectControllerFactory class.
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:76
template for creating effect controller creators. Implements a simple create function which creates t...
Definition: DtEffectControllerCreatorTemplate.h:24

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)