56#ifndef _SO_SCENE_MANAGER_
57#define _SO_SCENE_MANAGER_
186 void *userData = NULL);
257 bool graphicsInitNeeded;
260 static void antialiasingCallback(
void *);
264 static bool updateRealTime;
267 static void realTimeSensorCB();
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
void SoSceneManagerRenderCB(void *userData, SoSceneManager *mgr)
callback function prototypes
Class for representing a viewport.
Base class for all events.
Renders a scene graph using OpenGL.
Allows nodes in a graph to receive input events.
Sensor class that can be attached to Inventor nodes.
Abstract base class for all database nodes.
Sensor for one-time only callbacks.
Field containing an SbTime.
Manages scene graph rendering and event handling.
SoHandleEventAction * getHandleEventAction() const
void setWindowSize(const SbVec2s &newSize)
Set the size of the window in which the scene manager should render.
const SbVec2s & getOrigin() const
Get the origin of the viewport within the window.
void setAntialiasing(bool smoothing, int numPasses)
Set the antialiasing for rendering.
void redraw()
This tells the app it is time to redraw by invoking the renderCB.
const SbViewportRegion & getViewportRegion() const
Gets current viewport region to use for rendering.
virtual void setSceneGraph(SoNode *newScene)
Set the scene graph which is managed here.
bool isAutoRedraw() const
Returns TRUE if there is currently a render callback registered.
const SbVec2s & getWindowSize() const
Get the size of the window in which the scene manager should render.
void setRedrawPriority(uint32_t priority)
Set the priority of the redraw sensor.
virtual ~SoSceneManager()
Constructor and destructor.
void getAntialiasing(bool &smoothing, int &numPasses) const
Get the antialiasing for rendering.
static void enableRealTimeUpdate(bool flag)
Enable/Disable the realTime global field update which normally happen right after a redraw.
void setOrigin(const SbVec2s &newOrigin)
Set the origin of the viewport within the window.
void setSize(const SbVec2s &newSize)
Set the size of the viewport within the window.
virtual void render(bool clearWindow=TRUE, bool clearZbuffer=TRUE)
Apply an SoGLRenderAction to the scene graph managed here.
void setBackgroundColor(const SbColor &c)
Set the window background color when in RGB mode.
SoSceneManager()
Constructor and destructor.
void reinitialize()
Reinitialize graphics.
void scheduleRedraw()
Schedule a redraw for some time in the near future.
virtual void deactivate()
Deactivate the scene manager.
uint32_t getRedrawPriority() const
Get the priority of the redraw sensor.
SoSceneManagerRenderCB * renderCB
void setViewportRegion(const SbViewportRegion &newRegion)
Sets current viewport region to use for rendering.
virtual SoNode * getSceneGraph() const
Get the scene graph which is managed here.
const SbColor & getBackgroundColor() const
Get the window background color when in RGB mode.
void setHandleEventAction(SoHandleEventAction *hea)
User supplied handle event action.
virtual void activate()
Activate the scene manager.
static uint32_t getDefaultRedrawPriority()
Get the default priority of the redraw sensor.
virtual bool processEvent(const SoEvent *event)
Process the passed event by applying an SoHandleEventAction to the scene graph managed here.
SoGLRenderAction * getGLRenderAction() const
const SbVec2s & getSize() const
Get the size and origin of the viewport within the window.
void setGLRenderAction(SoGLRenderAction *ra)
User supplied render action.
void setRenderCallback(SoSceneManagerRenderCB *f, void *userData=NULL)
The render callback provides a mechanism for automatically redrawing the scene in response to changes...
static bool isRealTimeUpdateEnabled()
Enable/Disable the realTime global field update which normally happen right after a redraw.
Abstract base class for Inventor sensors.