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);
52 ADD, DELAYED_ADD, SORTED_OBJECT_ADD,
53 BLEND, DELAYED_BLEND, SORTED_OBJECT_BLEND,
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;
The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:36
The SbViewportRegion class is a viewport within a full window.
Definition: SbViewportRegion.h:31
The SoAction class is the base class for all traversal actions.
Definition: SoAction.h:67
virtual void invalidateState(void)
Definition: SoAction.cpp:783
static void initClass(void)
Definition: SoAction.cpp:392
virtual void beginTraversal(SoNode *node)
Definition: SoAction.cpp:1208
virtual void endTraversal(SoNode *node)
Definition: SoAction.cpp:1218
The SoGLRenderAction class renders the scene graph with OpenGL calls.
Definition: SoGLRenderAction.h:39
AbortCode
Definition: SoGLRenderAction.h:60
@ ABORT
Definition: SoGLRenderAction.h:61
TransparencyType
Definition: SoGLRenderAction.h:50
@ BLEND
Definition: SoGLRenderAction.h:53
@ SCREEN_DOOR
Definition: SoGLRenderAction.h:51
@ SORTED_OBJECT_SORTED_TRIANGLE_BLEND
Definition: SoGLRenderAction.h:56
@ NONE
Definition: SoGLRenderAction.h:57
@ SORTED_OBJECT_SORTED_TRIANGLE_ADD
Definition: SoGLRenderAction.h:55
@ ADD
Definition: SoGLRenderAction.h:52
AbortCode SoGLRenderAbortCB(void *userdata)
Definition: SoGLRenderAction.h:70
SortedObjectOrderStrategy
Definition: SoGLRenderAction.h:63
@ BBOX_FARTHEST_CORNER
Definition: SoGLRenderAction.h:66
@ BBOX_CENTER
Definition: SoGLRenderAction.h:64
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:47
The SoPath class is a container class for traversal path descriptions.
Definition: SoPath.h:43