VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCdbEffectTextureVisitor.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 
14 #include <osg/NodeVisitor>
15 
17 #include <boost/thread.hpp>
18 
19 #include <boost/thread/mutex.hpp>
20 
21 #include <map>
22 #include <set>
23 
24 namespace makVrv
25 {
26  class DtOsgEffectTextureController;
27  class DtEffectControllerFactory;
28 
33  class DT_DLL_VRVOSG DtCdbEffectTextureVisitor : public osg::NodeVisitor
34  {
35  public:
39  virtual ~DtCdbEffectTextureVisitor();
40 
41  protected:
42  // osg::NodeVisitor overrides
43  virtual void apply(osg::Node& node);
44  virtual void apply(osg::Geode& geode);
45  virtual void apply(osg::StateSet* stateSet);
46 
47  //If the effectTexture matches the CDBEffectTextureCode, we insert the effect shader in the VP,
48  //thus apply the effect tex to base tex
49  virtual bool checkAndInstallEffectTexture(osg::StateSet* stateSet, osg::Texture* baseTexture,
50  osg::Texture* effectTexture, int baseUnit, int effectUnit, DtCdbEffectTextureType type);
51 
52  typedef std::map<DtCdbEffectTextureType, osg::ref_ptr<DtOsgEffectTextureController> > Controllers;
54  };
55 }
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
DtCdbEffectTextureType
Definition: DtCdbEffectTextureUtils.h:24
std::map< DtCdbEffectTextureType, osg::ref_ptr< DtOsgEffectTextureController > > Controllers
Definition: DtCdbEffectTextureVisitor.h:52
Controllers myControllers
Definition: DtCdbEffectTextureVisitor.h:53
Contains the DtCdbEffectTextureUtils class.
Visitor that locates effect textures and installs them into the scene graph. Run this prior to runnin...
Definition: DtCdbEffectTextureVisitor.h:33
The scene object creators are registered with the scene object factory for accessing DtSceneObjectCre...
Definition: DtEffectControllerFactory.h:31
Contains DLL export macros.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)