3 #include "geometry/GeoManager.h"
5 LeonardGeoManager::LeonardGeoManager() : TGeoManager(), _wnode(nullptr), _node(nullptr) { gGeoManager =
this; }
7 LeonardGeoManager::LeonardGeoManager(TGeoManager *geoman) : TGeoManager(*geoman), _wnode(nullptr), _node(nullptr) {}
9 LeonardGeoManager::~LeonardGeoManager() {}
11 TGeoNode *LeonardGeoManager::GetWorldNode() {
12 static const std::string routineName(
"LeonardGeoManager::GetWorldNode");
15 _wnode = (TGeoNode *)GetListOfNodes()->At(0);
16 while (_wnode != GetTopNode()) {
18 _wnode = GetCurrentNode();
20 COUT(DEBUG) <<
"Top _wnode is " << _wnode->GetName() <<
ENDL;
26 TEveGeoTopNode *LeonardGeoManager::GetEveGeoTopNode() {
29 _node =
new TEveGeoTopNode(
this, GetWorldNode());
35 std::string LeonardGeoManager::GetNodePath(TGeoNode *node,
char sep) {
36 static const std::string routineName(
"LeonardGeoManager::GetNodePath");
38 std::string path = node->GetName();
42 while (node != GetTopNode()) {
44 node = GetCurrentNode();
45 std::string tempname = node->GetName();
46 path.insert(0, 1, sep);
47 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...