From David Callu, added findSlaveIndexForCamera method

This commit is contained in:
Robert Osfield
2007-09-21 19:43:06 +00:00
parent 6630dcf15c
commit 5c36fbb18f
2 changed files with 22 additions and 10 deletions

View File

@@ -190,15 +190,25 @@ bool View::removeSlave(unsigned int pos)
return true;
}
View::Slave* View::findSlaveForCamera(osg::Camera* camera)
View::Slave * View::findSlaveForCamera(osg::Camera* camera)
{
if (_camera == camera) return 0;
unsigned int i = findSlaveIndexForCamera(camera);
if (i >= getNumSlaves()) return (NULL);
return &(_slaves[i]);
}
unsigned int View::findSlaveIndexForCamera(osg::Camera* camera)
{
if (_camera == camera) return _slaves.size();
for(unsigned int i=0; i<_slaves.size(); ++i)
{
if (_slaves[i]._camera == camera) return &(_slaves[i]);
if (_slaves[i]._camera == camera) return (i);
}
return 0;
return _slaves.size();
}