From b2d131c143f49f469e714da189ae006a889478af Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Sun, 26 Aug 2007 09:46:49 +0000 Subject: [PATCH] Updated wrappers, and change Renderer so that private: to proteccted:. --- include/osgViewer/Renderer | 5 +++-- src/osgViewer/Renderer.cpp | 4 ++++ src/osgWrappers/osgViewer/Renderer.cpp | 6 ++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/include/osgViewer/Renderer b/include/osgViewer/Renderer index 2cf847a15..958442a0c 100644 --- a/include/osgViewer/Renderer +++ b/include/osgViewer/Renderer @@ -75,7 +75,7 @@ class OSGVIEWER_EXPORT Renderer : public osg::GraphicsOperation, public OpenGLQu virtual void release(); - private: + protected: void updateSceneView(osgUtil::SceneView* sceneView); @@ -91,7 +91,7 @@ class OSGVIEWER_EXPORT Renderer : public osg::GraphicsOperation, public OpenGLQu osg::ref_ptr _flushOperation; - struct TheadSafeQueue + struct OSGVIEWER_EXPORT TheadSafeQueue { OpenThreads::Mutex _mutex; OpenThreads::Block _block; @@ -99,6 +99,7 @@ class OSGVIEWER_EXPORT Renderer : public osg::GraphicsOperation, public OpenGLQu SceneViewList _queue; TheadSafeQueue(); + ~TheadSafeQueue(); void release() { diff --git a/src/osgViewer/Renderer.cpp b/src/osgViewer/Renderer.cpp index 88fd65f51..83b38f8cf 100644 --- a/src/osgViewer/Renderer.cpp +++ b/src/osgViewer/Renderer.cpp @@ -126,6 +126,10 @@ Renderer::TheadSafeQueue::TheadSafeQueue() _block.set(false); } +Renderer::TheadSafeQueue::~TheadSafeQueue() +{ +} + osgUtil::SceneView* Renderer::TheadSafeQueue::takeFront() { if (_queue.empty()) _block.block(); diff --git a/src/osgWrappers/osgViewer/Renderer.cpp b/src/osgWrappers/osgViewer/Renderer.cpp index 73f05faad..53e6a10bc 100644 --- a/src/osgWrappers/osgViewer/Renderer.cpp +++ b/src/osgWrappers/osgViewer/Renderer.cpp @@ -132,6 +132,12 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::Renderer) __void__release, "if this operation is a barrier then release it. ", ""); + I_ProtectedMethod1(void, updateSceneView, IN, osgUtil::SceneView *, sceneView, + Properties::NON_VIRTUAL, + Properties::NON_CONST, + __void__updateSceneView__osgUtil_SceneView_P1, + "", + ""); I_SimpleProperty(bool, Done, __bool__getDone, __void__setDone__bool);