3 #include "geometry/GeoManager.h"
5 LeonardGeoManager::LeonardGeoManager() : TGeoManager(), _wnode(nullptr), _node(nullptr) {
11 LeonardGeoManager::LeonardGeoManager(TGeoManager* geoman) : TGeoManager(*geoman), _wnode(nullptr), _node(nullptr) {}
13 LeonardGeoManager::~LeonardGeoManager(){}
15 TGeoNode* LeonardGeoManager::GetWorldNode(){
16 static const std::string routineName(
"LeonardGeoManager::GetWorldNode");
19 _wnode = (TGeoNode*) GetListOfNodes()->At(0);
20 while( _wnode != GetTopNode() ){
22 _wnode = GetCurrentNode();
24 COUT(DEBUG) <<
"Top _wnode is " << _wnode->GetName() <<
ENDL;
30 TEveGeoTopNode* LeonardGeoManager::GetEveGeoTopNode(){
33 _node =
new TEveGeoTopNode(
this, GetWorldNode());
40 std::string LeonardGeoManager::GetNodePath(TGeoNode* node,
char sep){
41 static const std::string routineName(
"LeonardGeoManager::GetNodePath");
43 std::string path = node->GetName();
47 while( node != GetTopNode() ){
49 node = GetCurrentNode();
50 std::string tempname = node->GetName();
51 path.insert(0, 1, sep);
52 path.insert(0, tempname);
#define COUT(level)
Smart log macro. It writes on stdout only if the specified verbosity level is lesser than the maximum...