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>
35typedef void SoGLRenderPassCB(
void * userdata);
36typedef void SoGLPreRenderCB(
void * userdata,
class SoGLRenderAction * action);
37typedef float SoGLSortedObjectOrderCB(
void * userdata,
SoGLRenderAction * action);
85 void setPassCallback(SoGLRenderPassCB *
const func,
void *
const userdata);
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
virtual void invalidateState(void)
Definition SoAction.cpp:783
static void initClass(void)
Definition SoAction.cpp:392
SoAction(void)
Definition SoAction.cpp:357
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
void addDelayedPath(SoPath *path)
Definition SoGLRenderAction.cpp:1205
AbortCode
Definition SoGLRenderAction.h:60
@ DELAY
Definition SoGLRenderAction.h:61
@ ABORT
Definition SoGLRenderAction.h:61
@ PRUNE
Definition SoGLRenderAction.h:61
@ CONTINUE
Definition SoGLRenderAction.h:61
void setPassCallback(SoGLRenderPassCB *const func, void *const userdata)
Definition SoGLRenderAction.cpp:868
void setPassUpdate(const SbBool flag)
Definition SoGLRenderAction.cpp:847
AbortCode SoGLRenderAbortCB(void *userdata)
Definition SoGLRenderAction.h:70
SoGLRenderAction(const SbViewportRegion &viewportregion)
Definition SoGLRenderAction.cpp:625
SbBool handleTransparency(SbBool istransparent=0)
Definition SoGLRenderAction.cpp:1004
SbBool abortNow(void)
Definition SoGLRenderAction.cpp:1112
SbBool isPassUpdate(void) const
Definition SoGLRenderAction.cpp:858
void setSmoothing(const SbBool smooth)
Definition SoGLRenderAction.cpp:806
const SbViewportRegion & getViewportRegion(void) const
Definition SoGLRenderAction.cpp:688
void addPreRenderCallback(SoGLPreRenderCB *func, void *userdata)
Definition SoGLRenderAction.cpp:1296
void setTransparencyType(const TransparencyType type)
Definition SoGLRenderAction.cpp:770
int getSortedLayersNumPasses(void) const
Definition SoGLRenderAction.cpp:924
SbBool isRenderingDelayedPaths(void) const
Definition SoGLRenderAction.cpp:1218
void setSortedLayersNumPasses(int num)
Definition SoGLRenderAction.cpp:914
SbBool isSmoothing(void) const
Definition SoGLRenderAction.cpp:818
uint32_t getCacheContext(void) const
Definition SoGLRenderAction.cpp:902
void removePreRenderCallback(SoGLPreRenderCB *func, void *userdata)
Definition SoGLRenderAction.cpp:1309
TransparencyType getTransparencyType(void) const
Definition SoGLRenderAction.cpp:782
int getNumPasses(void) const
Definition SoGLRenderAction.cpp:838
SbBool getRenderingIsRemote(void) const
Definition SoGLRenderAction.cpp:1189
void setSortedObjectOrderStrategy(const SortedObjectOrderStrategy strategy, SoGLSortedObjectOrderCB *cb=NULL, void *closure=NULL)
Definition SoGLRenderAction.cpp:1334
TransparencyType
Definition SoGLRenderAction.h:50
@ ADD
Definition SoGLRenderAction.h:52
@ SORTED_OBJECT_SORTED_TRIANGLE_ADD
Definition SoGLRenderAction.h:55
@ SCREEN_DOOR
Definition SoGLRenderAction.h:51
@ BLEND
Definition SoGLRenderAction.h:53
@ SORTED_OBJECT_BLEND
Definition SoGLRenderAction.h:53
@ SORTED_LAYERS_BLEND
Definition SoGLRenderAction.h:57
@ SORTED_OBJECT_SORTED_TRIANGLE_BLEND
Definition SoGLRenderAction.h:56
@ DELAYED_ADD
Definition SoGLRenderAction.h:52
@ SORTED_OBJECT_ADD
Definition SoGLRenderAction.h:52
@ NONE
Definition SoGLRenderAction.h:57
@ DELAYED_BLEND
Definition SoGLRenderAction.h:53
void setAbortCallback(SoGLRenderAbortCB *const func, void *const userdata)
Definition SoGLRenderAction.cpp:756
void setNumPasses(const int num)
Definition SoGLRenderAction.cpp:829
int getCurPass(void) const
Definition SoGLRenderAction.cpp:1100
void setRenderingIsRemote(SbBool isremote)
Definition SoGLRenderAction.cpp:1176
void setViewportRegion(const SbViewportRegion &newregion)
Definition SoGLRenderAction.cpp:676
void getUpdateArea(SbVec2f &origin, SbVec2f &size) const
Definition SoGLRenderAction.cpp:713
SortedObjectOrderStrategy
Definition SoGLRenderAction.h:63
@ BBOX_CENTER
Definition SoGLRenderAction.h:64
@ BBOX_FARTHEST_CORNER
Definition SoGLRenderAction.h:66
@ CUSTOM_CALLBACK
Definition SoGLRenderAction.h:67
void setCacheContext(const uint32_t context)
Definition SoGLRenderAction.cpp:890
void setUpdateArea(const SbVec2f &origin, const SbVec2f &size)
Definition SoGLRenderAction.cpp:702
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