GGS(GenericGEANT4Simulation)Software  2.7.0
 All Data Structures Namespaces Files Functions Variables Typedefs Macros
GeoManager.h
1 /*
2  * GeoManager.h
3  *
4  * Created on: 16 Mar 2017
5  * Author: Valerio Formato
6  */
7 
8 /*
9  * A simple class to interface to the TGeoManager object. This also takes care
10  * of mapping a node to its absolute path inside the geometry (needed by the
11  * node hash map).
12  */
13 
14 #include <cstdio>
15 #include <fstream>
16 #include <iostream>
17 #include <math.h>
18 #include <signal.h>
19 #include <stdlib.h>
20 
21 #include "TChain.h"
22 #include "TColor.h"
23 #include "TEveGeoNode.h"
24 #include "TFile.h"
25 #include "TGeoManager.h"
26 #include "TGeometry.h"
27 #include "TStyle.h"
28 #include "TSystem.h"
29 #include "TTimeStamp.h"
30 #include "TTree.h"
31 
32 #ifndef _EDGEOMANAGER_
33 #define _EDGEOMANAGER_
34 
35 class LeonardGeoManager : public TGeoManager {
36 
37 public:
39  LeonardGeoManager(TGeoManager *geoman);
41 
42  std::string GetNodePath(TGeoNode *node, char sep = '.');
43 
44  TGeoNode *GetWorldNode();
45  TEveGeoTopNode *GetEveGeoTopNode();
46 
47 private:
48  TGeoNode *_wnode;
49  TEveGeoTopNode *_node;
50 };
51 
52 #endif