15 #ifndef OSGFX_TECHNIQUE_
16 #define OSGFX_TECHNIQUE_
18 #include <osgFX/Export>
20 #include <osg/Referenced>
23 #include <osg/NodeVisitor>
32 #define META_Technique(name, description) \
33 inline virtual const char *techniqueName() { return name; } \
34 inline virtual const char *techniqueDescription() { return description; }
82 inline int getNumPasses()
const;
104 inline void dirtyPasses();
116 virtual void define_passes() = 0;
125 typedef std::vector<osg::ref_ptr<osg::StateSet> > Pass_list;
133 return static_cast<int>(_passes.size());
138 return _passes[i].get();
143 return _passes[i].get();
virtual osg::Node * getOverrideChild(int)
virtual void getRequiredExtensions(std::vector< std::string > &) const
virtual const char * techniqueName()
osg::StateSet * getPassStateSet(int i)
virtual const char * techniqueDescription()
Technique(const Technique &)
virtual void traverse(osg::NodeVisitor &nv, Effect *fx)
void traverse_implementation(osg::NodeVisitor &nv, Effect *fx)
Technique & operator=(const Technique &)