Hi Robert,
For sure I'm using OSG 2.5.2 and removeView is :
void CompositeViewer::removeView(osgViewer::View* view)
{
for(RefViews::iterator itr = _views.begin();
itr != _views.end();
++itr)
{
if (*itr == view)
{
bool threadsWereRuinning = _threadsRunning;
if (threadsWereRuinning) stopThreading();
view->_viewerBase = 0;
_views.erase(itr);
if (threadsWereRuinning) startThreading();
return;
}
}
}
But stopThreading() is only called if _threadsRunning is true, wich is not
the case because as I said in a previous post we return before setting this
variable to true in void ViewerBase::startThreading() function if we are in
SingleThreaded mode.
So in this case (SingleThreaded) stopThreading() is not call, neither is
startThreading().
Kind regards,
2008/6/23 Robert Osfield <[EMAIL PROTECTED]>:
> Hi Alex,
>
> Checking svn logs we have:
>
> r6652 | robert | 2007-05-11 20:25:44 +0100 (Fri, 11 May 2007) | 6 lines
>
> Added new areThreadsRunning() method to Viewer and CompositeViewer.
>
> Added removeView(View*) method to CompositeViewer
>
> Added stopping/starting of threads in addView/removeView
>
>
> Which takes us back to over a year ago, the stop/startThreading() was
> added to add/removeView(). Are you using an older version of the OSG
> that one 2.2?
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
--
Alexandre AMALRIC Ingénieur R&D
===================================
PIXXIM S.A. 73E, rue Perrin-Solliers 13006 Marseille
http://www.pixxim.fr
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org