00001 #include <esg/explorer/ObjsExplorer.h> 00002 #include <esg/iterator/IteratorSDS.h> 00003 00004 using namespace esg; 00005 00006 bool ObjsExplorer::_iterate(SceneGraphObject& obj) 00007 { 00008 SceneGraphObject* pCandidate; 00009 IteratorSDS* pIter = obj.traverseSubnodes(); 00010 00011 if (!pIter) return false; 00012 00013 pIter->initChildrenSearch(); 00014 00015 bool ret = false; 00016 pCandidate = pIter->firstChild(); 00017 while (pCandidate) { 00018 if (_explore(*pCandidate)) ret = true; 00019 pCandidate = pIter->nextChild(); 00020 } 00021 delete pIter; 00022 00023 return ret; 00024 } 00025 00026 ObjsExplorer::ObjsExplorer() 00027 { 00028 _pArea = NULL; 00029 _pTrArea = NULL; 00030 }