Added clears of input vectors in various get*() methods

This commit is contained in:
Robert Osfield
2009-06-19 11:02:15 +00:00
parent dfa3c9a2c9
commit 264746a5c2
2 changed files with 10 additions and 0 deletions

View File

@@ -348,6 +348,8 @@ void CompositeViewer::getCameras(Cameras& cameras, bool onlyActive)
void CompositeViewer::getScenes(Scenes& scenes, bool onlyValid)
{
scenes.clear();
typedef std::set<osgViewer::Scene*> SceneSet;
SceneSet sceneSet;
@@ -369,6 +371,8 @@ void CompositeViewer::getScenes(Scenes& scenes, bool onlyValid)
void CompositeViewer::getViews(Views& views, bool onlyValid)
{
views.clear();
for(RefViews::iterator vitr = _views.begin();
vitr != _views.end();
++vitr)
@@ -379,6 +383,8 @@ void CompositeViewer::getViews(Views& views, bool onlyValid)
void CompositeViewer::getAllThreads(Threads& threads, bool onlyActive)
{
threads.clear();
OperationThreads operationThreads;
getOperationThreads(operationThreads);

View File

@@ -939,16 +939,20 @@ void Viewer::updateTraversal()
void Viewer::getScenes(Scenes& scenes, bool onlyValid)
{
scenes.clear();
scenes.push_back(_scene.get());
}
void Viewer::getViews(Views& views, bool onlyValid)
{
views.clear();
views.push_back(this);
}
void Viewer::getAllThreads(Threads& threads, bool onlyActive)
{
threads.clear();
OperationThreads operationThreads;
getOperationThreads(operationThreads);