1 #ifndef COIN_SOGLRENDERACTION_H
2 #define COIN_SOGLRENDERACTION_H
27 #include <Inventor/actions/SoAction.h>
28 #include <Inventor/actions/SoSubAction.h>
29 #include <Inventor/SbBasic.h>
30 #include <Inventor/SbViewportRegion.h>
31 #include <Inventor/system/inttypes.h>
32 #include <Inventor/lists/SoPathList.h>
33 #include <Inventor/lists/SbList.h>
35 typedef void SoGLRenderPassCB(
void * userdata);
36 typedef void SoGLPreRenderCB(
void * userdata,
class SoGLRenderAction * action);
37 typedef float SoGLSortedObjectOrderCB(
void * userdata,
SoGLRenderAction * action);
76 void setAbortCallback(SoGLRenderAbortCB *
const func,
void *
const userdata);
79 void setSmoothing(
const SbBool smooth);
80 SbBool isSmoothing(
void)
const;
81 void setNumPasses(
const int num);
82 int getNumPasses(
void)
const;
83 void setPassUpdate(
const SbBool flag);
84 SbBool isPassUpdate(
void)
const;
85 void setPassCallback(SoGLRenderPassCB *
const func,
void *
const userdata);
86 void setCacheContext(
const uint32_t context);
87 uint32_t getCacheContext(
void)
const;
89 void addDelayedPath(
SoPath * path);
90 SbBool isRenderingDelayedPaths(
void)
const;
92 SbBool handleTransparency(SbBool istransparent = FALSE);
93 int getCurPass(
void)
const;
94 SbBool abortNow(
void);
96 void setRenderingIsRemote(SbBool isremote);
97 SbBool getRenderingIsRemote(
void)
const;
101 void addPreRenderCallback(SoGLPreRenderCB * func,
void * userdata);
102 void removePreRenderCallback(SoGLPreRenderCB * func,
void * userdata);
104 void setSortedLayersNumPasses(
int num);
105 int getSortedLayersNumPasses(
void)
const;
108 SoGLSortedObjectOrderCB * cb = NULL,
109 void * closure = NULL);
116 void addTransPath(
SoPath * path);
117 void doPathSort(
void);
119 class SoGLRenderActionP * pimpl;
120 friend class SoGLRenderActionP;
123 #endif // !COIN_SOGLRENDERACTION_H
AbortCode
Definition: SoGLRenderAction.h:60
The SoState class manages the Coin scenegraph traversal state data.
Definition: SoState.h:35
@ BBOX_FARTHEST_CORNER
Definition: SoGLRenderAction.h:66
int getCurPass(void) const
Definition: SoGLRenderAction.cpp:1100
virtual void endTraversal(SoNode *node)
Definition: SoGLRenderAction.cpp:992
SbBool hasTerminated(void) const
Definition: SoAction.cpp:1018
@ BBOX_CENTER
Definition: SoGLRenderAction.h:64
const SbVec2s & getViewportSizePixels(void) const
Definition: SbViewportRegion.cpp:425
virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er)=0
SortedObjectOrderStrategy
Definition: SoGLRenderAction.h:63
The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:36
void pop(void)
Definition: SoState.cpp:284
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
const SoBoundingBoxCache * getBoundingBoxCache(void) const
Definition: SoShape.cpp:1537
static void setTransparencyTypeOverride(SoState *const state, SoNode *const node, const SbBool override)
Definition: SoOverrideElement.cpp:754
virtual void beginTraversal(SoNode *node)
Definition: SoGLRenderAction.cpp:933
int getSortedLayersNumPasses(void) const
Definition: SoGLRenderAction.cpp:924
@ SORTED_OBJECT_ADD
Definition: SoGLRenderAction.h:52
void setPassCallback(SoGLRenderPassCB *const func, void *const userdata)
Definition: SoGLRenderAction.cpp:868
@ NONE
Definition: SoGLRenderAction.h:57
void * get(const int index) const
Definition: SbPList.h:135
void multVecMatrix(const SbVec3f &src, SbVec3f &dst) const
Definition: SbMatrix.cpp:1357
void push(void)
Definition: SoState.cpp:265
The SbPList class is a container class for void pointers.
Definition: SbPList.h:31
virtual void beginTraversal(SoNode *node)
Definition: SoAction.cpp:1208
virtual SbName getName(void) const
Definition: SoBase.cpp:730
TransparencyType getTransparencyType(void) const
Definition: SoGLRenderAction.cpp:782
@ SORTED_OBJECT_SORTED_TRIANGLE_BLEND
Definition: SoGLRenderAction.h:56
float getDistance(const SbVec3f &point) const
Definition: SbPlane.cpp:242
virtual ~SoGLRenderAction(void)
Definition: SoGLRenderAction.cpp:665
void addDelayedPath(SoPath *path)
Definition: SoGLRenderAction.cpp:1205
const SbVec3f & getMin(void) const
Definition: SbBox3f.cpp:122
uint32_t getCacheContext(void) const
Definition: SoGLRenderAction.cpp:902
The SbBox3f class is an abstraction for an axis aligned 3 dimensional box.
Definition: SbBox3f.h:37
const SoPath * getCurPath(void)
Definition: SoAction.cpp:1044
static void postWarning(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:324
The SoAction class is the base class for all traversal actions.
Definition: SoAction.h:67
SbBool isSmoothing(void) const
Definition: SoGLRenderAction.cpp:818
The SoFullPath class allows examination of hidden children in paths.
Definition: SoFullPath.h:29
The SoPathList class is a container for pointers to SoPath objects.
Definition: SoPathList.h:31
@ PRUNE
Definition: SoGLRenderAction.h:61
void set(const int index, void *item)
Definition: SbPList.h:141
SoNode * getTail(void) const
Definition: SoFullPath.cpp:74
void setCacheContext(const uint32_t context)
Definition: SoGLRenderAction.cpp:890
void setSortedLayersNumPasses(int num)
Definition: SoGLRenderAction.cpp:914
The SoCallbackList is a container for callback function pointers.
Definition: SoCallbackList.h:35
SbBool abortNow(void)
Definition: SoGLRenderAction.cpp:1112
void setTransparencyType(const TransparencyType type)
Definition: SoGLRenderAction.cpp:770
The SbVec2s class is a 2 dimensional vector with short integer coordinates.
Definition: SbVec2s.h:37
The SoPath class is a container class for traversal path descriptions.
Definition: SoPath.h:43
void setNumPasses(const int num)
Definition: SoGLRenderAction.cpp:829
SoGLRenderAction(const SbViewportRegion &viewportregion)
Definition: SoGLRenderAction.cpp:625
virtual void invalidateState(void)
Definition: SoGLRenderAction.cpp:1237
const char * getString(void) const
Definition: SbName.cpp:278
void setViewportRegion(const SbViewportRegion &newregion)
Definition: SoGLRenderAction.cpp:676
const SbVec3f & getMax(void) const
Definition: SbBox3f.cpp:134
void setPassUpdate(const SbBool flag)
Definition: SoGLRenderAction.cpp:847
@ SORTED_OBJECT_SORTED_TRIANGLE_ADD
Definition: SoGLRenderAction.h:55
void setSortedObjectOrderStrategy(const SortedObjectOrderStrategy strategy, SoGLSortedObjectOrderCB *cb=NULL, void *closure=NULL)
Definition: SoGLRenderAction.cpp:1334
@ BLEND
Definition: SoGLRenderAction.h:53
SoState * getState(void) const
Definition: SoAction.cpp:1028
@ DELAY
Definition: SoGLRenderAction.h:61
void setSmoothing(const SbBool smooth)
Definition: SoGLRenderAction.cpp:806
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:37
@ SORTED_LAYERS_BLEND
Definition: SoGLRenderAction.h:57
The SoGetBoundingBoxAction class calculates bounding boxes for nodes and subgraphs.
Definition: SoGetBoundingBoxAction.h:34
void addPreRenderCallback(SoGLPreRenderCB *func, void *userdata)
Definition: SoGLRenderAction.cpp:1296
SbBool isRenderingDelayedPaths(void) const
Definition: SoGLRenderAction.cpp:1218
TransparencyType
Definition: SoGLRenderAction.h:50
SbBool getRenderingIsRemote(void) const
Definition: SoGLRenderAction.cpp:1189
void setUpdateArea(const SbVec2f &origin, const SbVec2f &size)
Definition: SoGLRenderAction.cpp:702
The SbViewportRegion class is a viewport within a full window.
Definition: SbViewportRegion.h:31
@ CUSTOM_CALLBACK
Definition: SoGLRenderAction.h:67
virtual SoType getTypeId(void) const =0
int getNumPasses(void) const
Definition: SoGLRenderAction.cpp:838
virtual void invalidateState(void)
Definition: SoAction.cpp:783
const SbViewportRegion & getViewportRegion(void) const
Definition: SoGLRenderAction.cpp:688
void setRenderingIsRemote(SbBool isremote)
Definition: SoGLRenderAction.cpp:1176
static void initClass(void)
Definition: SoAction.cpp:392
@ SCREEN_DOOR
Definition: SoGLRenderAction.h:51
void removePreRenderCallback(SoGLPreRenderCB *func, void *userdata)
Definition: SoGLRenderAction.cpp:1309
The SoOverrideElement maintains a list of overridable elements and a list over which elements should ...
Definition: SoOverrideElement.h:32
virtual void endTraversal(SoNode *node)
Definition: SoAction.cpp:1218
void transform(const SbMatrix &matrix)
Definition: SbBox3f.cpp:524
SbBool isOfType(SoType type) const
Definition: SoBase.cpp:710
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:47
void getUpdateArea(SbVec2f &origin, SbVec2f &size) const
Definition: SoGLRenderAction.cpp:713
SbName getName(void) const
Definition: SoType.cpp:628
int getLength(void) const
Definition: SoFullPath.cpp:106
SbBool handleTransparency(SbBool istransparent=0)
Definition: SoGLRenderAction.cpp:1004
AbortCode SoGLRenderAbortCB(void *userdata)
Definition: SoGLRenderAction.h:70
@ DELAYED_BLEND
Definition: SoGLRenderAction.h:53
@ ABORT
Definition: SoGLRenderAction.h:61
@ DELAYED_ADD
Definition: SoGLRenderAction.h:52
The SbPlane class represents a plane in 3D space.
Definition: SbPlane.h:34
@ CONTINUE
Definition: SoGLRenderAction.h:61
@ SORTED_OBJECT_BLEND
Definition: SoGLRenderAction.h:53
@ ADD
Definition: SoGLRenderAction.h:52
The SoGLRenderAction class renders the scene graph with OpenGL calls.
Definition: SoGLRenderAction.h:39
SbBool isCacheOpen(void) const
Definition: SoState.h:83
void setTerminated(const SbBool flag)
Definition: SoAction.cpp:1233
void setAbortCallback(SoGLRenderAbortCB *const func, void *const userdata)
Definition: SoGLRenderAction.cpp:756
SbBool isPassUpdate(void) const
Definition: SoGLRenderAction.cpp:858
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Jul 27 2020 for Coin by Doxygen. 1.8.18