1 #ifndef COIN_SOGLRENDERACTION_H
2 #define COIN_SOGLRENDERACTION_H
36 #include <Inventor/actions/SoAction.h>
37 #include <Inventor/actions/SoSubAction.h>
38 #include <Inventor/SbBasic.h>
39 #include <Inventor/SbViewportRegion.h>
40 #include <Inventor/system/inttypes.h>
41 #include <Inventor/lists/SoPathList.h>
42 #include <Inventor/lists/SbList.h>
45 typedef void SoGLPreRenderCB(
void * userdata,
class SoGLRenderAction * action);
48 class SoGLRenderActionP;
68 NONE, SORTED_LAYERS_BLEND
73 NONSOLID_SEPARATE_BACKFACE_PASS
93 void setAbortCallback(SoGLRenderAbortCB *
const func,
void *
const userdata);
94 void getAbortCallback(SoGLRenderAbortCB * & func_out,
void * & userdata_out)
const;
99 void setSmoothing(
const SbBool smooth);
100 SbBool isSmoothing(
void)
const;
101 void setNumPasses(
const int num);
102 int getNumPasses(
void)
const;
103 void setPassUpdate(
const SbBool flag);
104 SbBool isPassUpdate(
void)
const;
106 void setCacheContext(
const uint32_t context);
107 uint32_t getCacheContext(
void)
const;
109 void addDelayedPath(
SoPath * path);
110 SbBool isRenderingDelayedPaths(
void)
const;
112 SbBool handleTransparency(SbBool istransparent = FALSE);
113 void setCurPass(
const int passnum,
const int numpasses);
114 int getCurPass(
void)
const;
115 SbBool abortNow(
void);
117 void setRenderingIsRemote(SbBool isremote);
118 SbBool getRenderingIsRemote(
void)
const;
122 void addPreRenderCallback(SoGLPreRenderCB * func,
void * userdata);
123 void removePreRenderCallback(SoGLPreRenderCB * func,
void * userdata);
125 void setSortedLayersNumPasses(
int num);
126 int getSortedLayersNumPasses(
void)
const;
130 void * closure = NULL);
132 void setDelayedObjDepthWrite(SbBool write);
133 SbBool getDelayedObjDepthWrite(
void)
const;
135 SbBool isRenderingTranspPaths(
void)
const;
136 SbBool isRenderingTranspBackfaces(
void)
const;
139 friend class SoGLRenderActionP;
144 SbPimplPtr<SoGLRenderActionP> pimpl;
151 #endif // !COIN_SOGLRENDERACTION_H