1 #ifndef COIN_SOGLMULTITEXTURECOORDINATEELEMENT_H     2 #define COIN_SOGLMULTITEXTURECOORDINATEELEMENT_H    38 class SoGLMultiTextureCoordinateElementP;
    39 typedef void SoTexCoordTexgenCB(
void * data);
    56   static  void setTexGen(
SoState * 
const state, 
SoNode * 
const node,
    58                          SoTexCoordTexgenCB * 
const texgenFunc,
    59                          void * 
const texgenData = NULL,
    60                          SoTextureCoordinateFunctionCB * 
const func = NULL,
    61                          void * 
const funcData = NULL);
    63   virtual CoordType 
getType(
const int unit = 0) 
const;
    67   void send(
const int unit, 
const int index) 
const;
    68   void send(
const int unit, 
const int index, 
const SbVec3f &c, 
const SbVec3f &n) 
const;
    72     GLUnitData() : texgenCB(NULL), texgenData(NULL) {}
    74     SoTexCoordTexgenCB * texgenCB;
    78   void initRender(
const SbBool * enabled, 
const int maxenabled) 
const;
    81   void send(
const int index)
 const {
    82     for (
int i = 0; i <= this->multimax; i++) {
    83       if (this->multienabled[i]) {
    88   void send(
const int index, 
const SbVec3f &c, 
const SbVec3f &n)
 const {
    89     for (
int i = 0; i <= this->multimax; i++) {
    90       if (this->multienabled[i]) {
    91         this->send(i, index, c, n);
    95   void initMulti(
SoState * state) 
const;
    96   static  void setTexGen(
SoState * 
const state, 
SoNode * 
const node,
    97                          SoTexCoordTexgenCB * 
const texgenFunc,
    98                          void * 
const texgenData = NULL,
    99                          SoTextureCoordinateFunctionCB * 
const func = NULL,
   100                          void * 
const funcData = NULL) {
   101     setTexGen(state, node, 0, texgenFunc, texgenData, func, funcData);
   105   virtual void setElt(
const int unit,
   106                       SoTexCoordTexgenCB *func,
   110   void doCallback(
const int unit) 
const;
   111   SoGLMultiTextureCoordinateElementP * pimpl;
   112   mutable const SbBool * multienabled;
   113   mutable int multimax;
   116 #endif // !COIN_SOGLMULTITEXTURECOORDINATEELEMENT_H static void initClass(void)
Definition: SoMultiTextureCoordinateElement.cpp:102
 
The SoMultiTextureCoordinateElement class is yet to be documented.FIXME: write doc. 
Definition: SoMultiTextureCoordinateElement.h:48
 
virtual void push(SoState *state)
Definition: SoMultiTextureCoordinateElement.cpp:508
 
static const SoMultiTextureCoordinateElement * getInstance(SoState *const state)
FIXME: write doc. 
Definition: SoMultiTextureCoordinateElement.cpp:272
 
The SoNode class is the base class for nodes used in scene graphs.Coin is a retained mode 3D visualiz...
Definition: SoNode.h:56
 
SoElement is the abstract base class for all elements. 
Definition: SoElement.h:43
 
The SoState class manages the Coin scenegraph traversal state data.The SoState class is used by actio...
Definition: SoState.h:44
 
The SbVec3f class is a 3 dimensional vector with floating point coordinates.This vector class is used...
Definition: SbVec3f.h:51
 
Definition: SoGLMultiTextureCoordinateElement.h:70
 
The SoGLMultiTextureCoordinateElement class stores the current gltexture coordinates for several unit...
Definition: SoGLMultiTextureCoordinateElement.h:41
 
static CoordType getType(SoState *const state, const int unit=0)
Definition: SoMultiTextureCoordinateElement.cpp:410
 
virtual void init(SoState *state)
FIXME: write doc. 
Definition: SoMultiTextureCoordinateElement.cpp:432
 
virtual void pop(SoState *state, const SoElement *prevTopElement)
Definition: SoElement.cpp:584