1 #ifndef COIN_SOCALLBACKACTION_H
2 #define COIN_SOCALLBACKACTION_H
29 #include <Inventor/actions/SoAction.h>
30 #include <Inventor/actions/SoSubAction.h>
31 #include <Inventor/elements/SoDecimationTypeElement.h>
32 #include <Inventor/lists/SbList.h>
33 #include <Inventor/nodes/SoComplexity.h>
34 #include <Inventor/nodes/SoDrawStyle.h>
35 #include <Inventor/nodes/SoLightModel.h>
36 #include <Inventor/nodes/SoMaterialBinding.h>
37 #include <Inventor/nodes/SoNormalBinding.h>
38 #include <Inventor/nodes/SoPickStyle.h>
39 #include <Inventor/nodes/SoShapeHints.h>
40 #include <Inventor/nodes/SoTexture2.h>
41 #include <Inventor/nodes/SoTextureCoordinateBinding.h>
42 #include <Inventor/nodes/SoUnits.h>
91 void addPreCallback(
const SoType type, SoCallbackActionCB * cb,
void * userdata);
92 void addPostCallback(
const SoType type, SoCallbackActionCB * cb,
void * userdata);
94 void addPreTailCallback(SoCallbackActionCB * cb,
void * userdata);
95 void addPostTailCallback(SoCallbackActionCB * cb,
void * userdata);
97 void addTriangleCallback(
const SoType type, SoTriangleCB * cb,
void * userdata);
98 void addLineSegmentCallback(
const SoType type, SoLineSegmentCB * cb,
void * userdata);
99 void addPointCallback(
const SoType type, SoPointCB * cb,
void * userdata);
101 SoDecimationTypeElement::Type getDecimationType(
void)
const;
102 float getDecimationPercentage(
void)
const;
103 float getComplexity(
void)
const;
105 int32_t getNumCoordinates(
void)
const;
106 const SbVec3f & getCoordinate3(
const int index)
const;
107 const SbVec4f & getCoordinate4(
const int index)
const;
109 unsigned short getLinePattern(
void)
const;
110 float getLineWidth(
void)
const;
111 float getPointSize(
void)
const;
112 const SbName & getFontName(
void)
const;
113 float getFontSize(
void)
const;
115 const SbVec3f & getLightAttenuation(
void)
const;
118 float & shininess,
float & transparency,
119 const int index = 0)
const;
121 uint32_t getNumNormals(
void)
const;
122 const SbVec3f & getNormal(
const int index)
const;
124 int32_t getNumProfileCoordinates(
void)
const;
125 const SbVec2f & getProfileCoordinate2(
const int index)
const;
126 const SbVec3f & getProfileCoordinate3(
const int index)
const;
131 float getCreaseAngle(
void)
const;
132 int32_t getNumTextureCoordinates(
void)
const;
133 const SbVec2f & getTextureCoordinate2(
const int index)
const;
134 const SbVec3f & getTextureCoordinate3(
const int index)
const;
135 const SbVec4f & getTextureCoordinate4(
const int index)
const;
137 const SbColor & getTextureBlendColor(
void)
const;
138 const unsigned char * getTextureImage(
SbVec2s & size,
int & numcomps)
const;
139 const unsigned char * getTextureImage(
SbVec3s & size,
int & numcomps)
const;
140 const SbMatrix & getTextureMatrix(
void)
const;
145 const SbMatrix & getModelMatrix(
void)
const;
147 float getFocalDistance(
void)
const;
148 const SbMatrix & getProjectionMatrix(
void)
const;
149 const SbMatrix & getViewingMatrix(
void)
const;
153 int32_t getSwitch(
void)
const;
155 Response getCurrentResponse(
void)
const;
156 void invokePreCallbacks(
const SoNode *
const node);
157 void invokePostCallbacks(
const SoNode *
const node);
158 void invokeTriangleCallbacks(
const SoShape *
const shape,
162 void invokeLineSegmentCallbacks(
const SoShape *
const shape,
165 void invokePointCallbacks(
const SoShape *
const shape,
168 SbBool shouldGeneratePrimitives(
const SoShape * shape)
const;
171 void setCurrentNode(
SoNode *
const node);
177 void commonConstructor(
void);
178 class SoCallbackActionP * pimpl;
179 friend class SoCallbackActionP;
182 #endif // !COIN_SOCALLBACKACTION_H
const SbVec4f & getTextureCoordinate4(const int index) const
Definition: SoCallbackAction.cpp:854
Response
Definition: SoCallbackAction.h:85
static float get(SoState *const state)
Definition: SoPointSizeElement.cpp:92
const SbMatrix & getModelMatrix(void) const
Definition: SoCallbackAction.cpp:953
void getMaterial(SbColor &ambient, SbColor &diffuse, SbColor &specular, SbColor &emission, float &shininess, float &transparency, const int index=0) const
Definition: SoCallbackAction.cpp:689
virtual ~SoCallbackAction()
Definition: SoCallbackAction.cpp:416
float getFontSize(void) const
Definition: SoCallbackAction.cpp:661
The SbName class stores strings by reference.
Definition: SbName.h:31
void setCurrentNode(SoNode *const node)
Definition: SoCallbackAction.cpp:1188
The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:36
SoMaterialBinding::Binding getMaterialBinding(void) const
Definition: SoCallbackAction.cpp:706
float getDecimationPercentage(void) const
Definition: SoCallbackAction.cpp:560
@ ABORT
Definition: SoCallbackAction.h:85
SoDrawStyle::Style getDrawStyle(void) const
Definition: SoCallbackAction.cpp:616
The SoShape class is the superclass for geometry shapes.
Definition: SoShape.h:43
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition: SbMatrix.h:37
void addPostTailCallback(SoCallbackActionCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:501
Response SoCallbackActionCB(void *userdata, SoCallbackAction *action, const SoNode *node)
Definition: SoCallbackAction.h:87
SoTexture2::Wrap getTextureWrapT(void) const
Definition: SoCallbackAction.cpp:931
const SbVec3f & getTextureCoordinate3(const int index) const
Definition: SoCallbackAction.cpp:844
const SbMatrix & getViewingMatrix(void) const
Definition: SoCallbackAction.cpp:989
SoLightModel::Model getLightModel(void) const
Definition: SoCallbackAction.cpp:670
void addPreTailCallback(SoCallbackActionCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:488
SoDecimationTypeElement::Type getDecimationType(void) const
Definition: SoCallbackAction.cpp:551
static float get(SoState *const state)
Definition: SoLineWidthElement.cpp:89
virtual void beginTraversal(SoNode *node)
Definition: SoAction.cpp:1208
const SbMatrix & getProjectionMatrix(void) const
Definition: SoCallbackAction.cpp:980
float getFocalDistance(void) const
Definition: SoCallbackAction.cpp:971
const SbColor & getTextureBlendColor(void) const
Definition: SoCallbackAction.cpp:873
const SbMatrix & getTextureMatrix(void) const
Definition: SoCallbackAction.cpp:904
SoCallbackAction(void)
Definition: SoCallbackAction.cpp:364
SoPickStyle::Style getPickStyle(void) const
Definition: SoCallbackAction.cpp:1018
The SoAction class is the base class for all traversal actions.
Definition: SoAction.h:67
SbBool shouldGeneratePrimitives(const SoShape *shape) const
Definition: SoCallbackAction.cpp:1161
const SbVec3f & getNormal(const int index) const
Definition: SoCallbackAction.cpp:725
SoUnits::Units getUnits(void) const
Definition: SoCallbackAction.cpp:962
void invokePreCallbacks(const SoNode *const node)
Definition: SoCallbackAction.cpp:1049
const SbVec2f & getProfileCoordinate2(const int index) const
Definition: SoCallbackAction.cpp:753
void invokeLineSegmentCallbacks(const SoShape *const shape, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2)
Definition: SoCallbackAction.cpp:1130
void addTriangleCallback(const SoType type, SoTriangleCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:515
static int getAllDerivedFrom(const SoType type, SoTypeList &list)
Definition: SoType.cpp:764
SoNormalBinding::Binding getNormalBinding(void) const
Definition: SoCallbackAction.cpp:734
void append(const Type item)
Definition: SbList.h:98
void addPostCallback(const SoType type, SoCallbackActionCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:477
Units
Definition: SoUnits.h:42
Binding
Definition: SoTextureCoordinateBinding.h:40
VertexOrdering
Definition: SoShapeHints.h:41
Style
Definition: SoDrawStyle.h:42
float getPointSize(void) const
Definition: SoCallbackAction.cpp:643
void invokeTriangleCallbacks(const SoShape *const shape, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2, const SoPrimitiveVertex *const v3)
Definition: SoCallbackAction.cpp:1114
SoPath * getPathAppliedTo(void) const
Definition: SoAction.cpp:831
void setViewportRegion(const SbViewportRegion &vp)
Definition: SoCallbackAction.cpp:400
The SbVec2s class is a 2 dimensional vector with short integer coordinates.
Definition: SbVec2s.h:37
virtual SoNode * getCurPathTail(void)
Definition: SoCallbackAction.cpp:1178
ShapeType
Definition: SoShapeHints.h:47
float getLineWidth(void) const
Definition: SoCallbackAction.cpp:634
The SoType class is the basis for the run-time type system in Coin.
Definition: SoType.h:50
SoShapeHints::ShapeType getShapeType(void) const
Definition: SoCallbackAction.cpp:790
float getComplexity(void) const
Definition: SoCallbackAction.cpp:569
The SbList class is a template container class for lists.
Definition: SoType.h:46
uint32_t getNumNormals(void) const
Definition: SoCallbackAction.cpp:716
SoTextureCoordinateBinding::Binding getTextureCoordinateBinding(void) const
Definition: SoCallbackAction.cpp:863
int getLength(void) const
Definition: SbList.h:145
Model
Definition: SoTexture2.h:47
SoTexture2::Model getTextureModel(void) const
Definition: SoCallbackAction.cpp:913
const SbVec2f & getTextureCoordinate2(const int index) const
Definition: SoCallbackAction.cpp:830
The SoPrimitiveVertex class represents a single vertex of a generated primitive.
Definition: SoPrimitiveVertex.h:33
The SoTypeList class is a container class for arrays of SoType objects.
Definition: SoTypeList.h:30
Response getCurrentResponse(void) const
Definition: SoCallbackAction.cpp:1038
The SbColor class contains the red, green and blue components which make up a color value.
Definition: SbColor.h:30
int32_t getNumTextureCoordinates(void) const
Definition: SoCallbackAction.cpp:820
SoState * getState(void) const
Definition: SoAction.cpp:1028
const SbViewVolume & getViewVolume(void) const
Definition: SoCallbackAction.cpp:998
virtual SoType getTypeId(void) const
Definition: SoShape.cpp:320
float getCreaseAngle(void) const
Definition: SoCallbackAction.cpp:810
Wrap
Definition: SoTexture2.h:54
SoShapeHints::VertexOrdering getVertexOrdering(void) const
Definition: SoCallbackAction.cpp:780
AppliedCode getWhatAppliedTo(void) const
Definition: SoAction.cpp:805
int32_t getNumProfileCoordinates(void) const
Definition: SoCallbackAction.cpp:744
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:37
@ CONTINUE
Definition: SoCallbackAction.h:85
void invokePointCallbacks(const SoShape *const shape, const SoPrimitiveVertex *const v)
Definition: SoCallbackAction.cpp:1145
unsigned short getLinePattern(void) const
Definition: SoCallbackAction.cpp:625
void addPointCallback(const SoType type, SoPointCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:539
The SoCallbackAction class invokes callbacks at specific nodes.
Definition: SoCallbackAction.h:70
SoTexture2::Wrap getTextureWrapR(void) const
Definition: SoCallbackAction.cpp:944
SoTexture2::Wrap getTextureWrapS(void) const
Definition: SoCallbackAction.cpp:922
void addLineSegmentCallback(const SoType type, SoLineSegmentCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:527
SoComplexity::Type getComplexityType(void) const
Definition: SoCallbackAction.cpp:578
The SbViewportRegion class is a viewport within a full window.
Definition: SbViewportRegion.h:31
FaceType
Definition: SoShapeHints.h:52
virtual SoType getTypeId(void) const =0
Style
Definition: SoPickStyle.h:40
const SbVec3f & getCoordinate3(const int index) const
Definition: SoCallbackAction.cpp:597
Model
Definition: SoLightModel.h:40
Binding
Definition: SoNormalBinding.h:40
const SbVec3f & getProfileCoordinate3(const int index) const
Definition: SoCallbackAction.cpp:762
static void initClass(void)
Definition: SoAction.cpp:392
The SbVec3s class is a 3 dimensional vector with short integer coordinates.
Definition: SbVec3s.h:36
The SbViewVolume class is a viewing volume in 3D space.
Definition: SbViewVolume.h:41
const SbVec4f & getCoordinate4(const int index) const
Definition: SoCallbackAction.cpp:607
The SoNodeList class is a container for pointers to SoNode objects.
Definition: SoNodeList.h:31
const unsigned char * getTextureImage(SbVec2s &size, int &numcomps) const
Definition: SoCallbackAction.cpp:882
The SoOverrideElement maintains a list of overridable elements and a list over which elements should ...
Definition: SoOverrideElement.h:32
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:47
@ PRUNE
Definition: SoCallbackAction.h:85
void traverse(SoNode *const node)
Definition: SoAction.cpp:902
virtual void beginTraversal(SoNode *node)
Definition: SoCallbackAction.cpp:1196
const SbVec3f & getLightAttenuation(void) const
Definition: SoCallbackAction.cpp:679
Binding
Definition: SoMaterialBinding.h:40
virtual SoNode * getCurPathTail(void)
Definition: SoAction.cpp:1053
int32_t getNumCoordinates(void) const
Definition: SoCallbackAction.cpp:587
int32_t getSwitch(void) const
Definition: SoCallbackAction.cpp:1027
Type
Definition: SoComplexity.h:41
uint16_t getData(void) const
Definition: SoType.cpp:641
const SoNodeList & getProfile(void) const
Definition: SoCallbackAction.cpp:771
const SbViewportRegion & getViewportRegion(void) const
Definition: SoCallbackAction.cpp:1009
void addPreCallback(const SoType type, SoCallbackActionCB *cb, void *userdata)
Definition: SoCallbackAction.cpp:466
SoShapeHints::FaceType getFaceType(void) const
Definition: SoCallbackAction.cpp:800
The SbVec4f class is a 4 dimensional vector with floating point coordinates.
Definition: SbVec4f.h:34
void setTerminated(const SbBool flag)
Definition: SoAction.cpp:1233
SoState * state
Definition: SoAction.h:132
const SbName & getFontName(void) const
Definition: SoCallbackAction.cpp:652
void invokePostCallbacks(const SoNode *const node)
Definition: SoCallbackAction.cpp:1082
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Jul 27 2020 for Coin by Doxygen. 1.8.18