1 #ifndef COIN_SOCALLBACKACTION_H 2 #define COIN_SOCALLBACKACTION_H 38 #include <Inventor/actions/SoAction.h> 39 #include <Inventor/actions/SoSubAction.h> 40 #include <Inventor/elements/SoDecimationTypeElement.h> 41 #include <Inventor/lists/SbList.h> 42 #include <Inventor/nodes/SoComplexity.h> 43 #include <Inventor/nodes/SoDrawStyle.h> 44 #include <Inventor/nodes/SoLightModel.h> 45 #include <Inventor/nodes/SoMaterialBinding.h> 46 #include <Inventor/nodes/SoNormalBinding.h> 47 #include <Inventor/nodes/SoPickStyle.h> 48 #include <Inventor/nodes/SoShapeHints.h> 49 #include <Inventor/nodes/SoTexture2.h> 50 #include <Inventor/nodes/SoTextureCoordinateBinding.h> 51 #include <Inventor/nodes/SoUnits.h> 61 class SoCallbackActionP;
100 void addPreCallback(
const SoType type, SoCallbackActionCB * cb,
void * userdata);
101 void addPostCallback(
const SoType type, SoCallbackActionCB * cb,
void * userdata);
103 void addPreTailCallback(SoCallbackActionCB * cb,
void * userdata);
104 void addPostTailCallback(SoCallbackActionCB * cb,
void * userdata);
108 void addPointCallback(
const SoType type,
SoPointCB * cb,
void * userdata);
111 float getDecimationPercentage(
void)
const;
112 float getComplexity(
void)
const;
114 int32_t getNumCoordinates(
void)
const;
115 const SbVec3f & getCoordinate3(
const int index)
const;
116 const SbVec4f & getCoordinate4(
const int index)
const;
118 unsigned short getLinePattern(
void)
const;
119 float getLineWidth(
void)
const;
120 float getPointSize(
void)
const;
121 const SbName & getFontName(
void)
const;
122 float getFontSize(
void)
const;
124 const SbVec3f & getLightAttenuation(
void)
const;
127 float & shininess,
float & transparency,
128 const int index = 0)
const;
130 uint32_t getNumNormals(
void)
const;
131 const SbVec3f & getNormal(
const int index)
const;
133 int32_t getNumProfileCoordinates(
void)
const;
134 const SbVec2f & getProfileCoordinate2(
const int index)
const;
135 const SbVec3f & getProfileCoordinate3(
const int index)
const;
140 float getCreaseAngle(
void)
const;
141 int32_t getNumTextureCoordinates(
void)
const;
142 const SbVec2f & getTextureCoordinate2(
const int index)
const;
143 const SbVec3f & getTextureCoordinate3(
const int index)
const;
144 const SbVec4f & getTextureCoordinate4(
const int index)
const;
146 const SbColor & getTextureBlendColor(
void)
const;
147 const unsigned char * getTextureImage(
SbVec2s & size,
int & numcomps)
const;
148 const unsigned char * getTextureImage(
SbVec3s & size,
int & numcomps)
const;
149 const SbMatrix & getTextureMatrix(
void)
const;
154 const SbMatrix & getModelMatrix(
void)
const;
156 float getFocalDistance(
void)
const;
157 const SbMatrix & getProjectionMatrix(
void)
const;
158 const SbMatrix & getViewingMatrix(
void)
const;
162 int32_t getSwitch(
void)
const;
164 Response getCurrentResponse(
void)
const;
165 void invokePreCallbacks(
const SoNode *
const node);
166 void invokePostCallbacks(
const SoNode *
const node);
167 void invokeTriangleCallbacks(
const SoShape *
const shape,
171 void invokeLineSegmentCallbacks(
const SoShape *
const shape,
174 void invokePointCallbacks(
const SoShape *
const shape,
177 SbBool shouldGeneratePrimitives(
const SoShape * shape)
const;
180 void setCurrentNode(
SoNode *
const node);
182 void setCallbackAll(SbBool callbackall);
183 SbBool isCallbackAll(
void)
const;
189 void commonConstructor(
void);
193 friend class SoCallbackActionP;
199 #endif // !COIN_SOCALLBACKACTION_H The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:49
The SbColor class contains the red, green and blue components which make up a color value...
Definition: SbColor.h:39
static void initClass(void)
Definition: SoAction.cpp:370
FaceType
Definition: SoShapeHints.h:62
The SoPrimitiveVertex class represents a single vertex of a generated primitive.
Definition: SoPrimitiveVertex.h:43
The SbVec4f class is a 4 dimensional vector with floating point coordinates.
Definition: SbVec4f.h:49
ShapeType
Definition: SoShapeHints.h:57
Units
Definition: SoUnits.h:51
VertexOrdering
Definition: SoShapeHints.h:51
void SoPointCB(void *userdata, SoCallbackAction *action, const SoPrimitiveVertex *v)
Definition: SoCallbackAction.h:76
Style
Definition: SoDrawStyle.h:52
Type
Definition: SoComplexity.h:50
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:56
virtual SoNode * getCurPathTail(void)
Definition: SoAction.cpp:1118
The SbVec3s class is a 3 dimensional vector with short integer coordinates.
Definition: SbVec3s.h:51
The SoAction class is the base class for all traversal actions.
Definition: SoAction.h:77
Binding
Definition: SoTextureCoordinateBinding.h:49
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:51
Wrap
Definition: SoTexture2.h:65
Response
Definition: SoCallbackAction.h:94
Model
Definition: SoLightModel.h:49
Model
Definition: SoTexture2.h:58
Type
Definition: SoDecimationTypeElement.h:48
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition: SbMatrix.h:47
void SoTriangleCB(void *userdata, SoCallbackAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const SoPrimitiveVertex *v3)
Definition: SoCallbackAction.h:67
Response SoCallbackActionCB(void *userdata, SoCallbackAction *action, const SoNode *node)
Definition: SoCallbackAction.h:96
void SoLineSegmentCB(void *userdata, SoCallbackAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2)
Definition: SoCallbackAction.h:72
The SbViewVolume class is a viewing volume in 3D space.
Definition: SbViewVolume.h:50
The SoCallbackAction class invokes callbacks at specific nodes.
Definition: SoCallbackAction.h:80
The SoNodeList class is a container for pointers to SoNode objects.
Definition: SoNodeList.h:40
virtual void beginTraversal(SoNode *node)
Definition: SoAction.cpp:1270
Style
Definition: SoPickStyle.h:49
The SbViewportRegion class is a viewport within a full window.
Definition: SbViewportRegion.h:40
The SoShape class is the superclass for geometry shapes.
Definition: SoShape.h:52
Binding
Definition: SoNormalBinding.h:49
The SbVec2s class is a 2 dimensional vector with short integer coordinates.
Definition: SbVec2s.h:51
The SoType class is the basis for the run-time type system in Coin.
Definition: SoType.h:59
The SbName class stores strings by reference.
Definition: SbName.h:40
Binding
Definition: SoMaterialBinding.h:49