BmnRoot
Loading...
Searching...
No Matches
BmnInnerTrackerGeometryDraw.h
Go to the documentation of this file.
1/*
2 Supplementary class to be used
3 * when drawing geometry boxes (modules, layer, dead zones)
4 * of detectors pertaining to the BM@N inner tracker system
5 Pavel Batyuk (pavel.batyuk@jinr.ru)
6 28 February 2020
7 */
8
9#ifndef BMNINNGEOM_H
10#define BMNINNGEOM_H 1
11
12#include <TNamed.h>
13#include <TSystem.h>
14#include <TBox.h>
15#include <TColor.h>
16#include <TPolyLine.h>
17
18#include <BmnGemStripStationSet.h>
19#include <BmnSiliconStationSet.h>
20
21using namespace std;
22
23class BmnInnerTrackerGeometryDraw : public TNamed {
24public:
26
28
30 return fGEM;
31 }
32
34 return fSILICON;
35 }
36
37 void GetGemBorders(TBox***& mods, TBox****& layers, TPolyLine****& deadZones) {
38 mods = gemModBoxes;
39 layers = gemLayBoxes;
40 deadZones = gemDeadZones;
41 }
42
43 void GetSiliconBorders(TBox***& mods, TBox****& layers, TPolyLine****& deadZones) {
44 mods = siliconModBoxes;
45 layers = siliconLayBoxes;
46 deadZones = siliconDeadZones;
47 }
48
49 void GetSiliconBorders(TBox***& mods) {
50 mods = siliconModBoxes;
51 }
52
53private:
54 // Geometries
56 BmnSiliconStationSet* fSILICON;
57
58 // Borders of boxes and layers
59 TBox*** gemModBoxes;
60 TBox**** gemLayBoxes;
61 TPolyLine**** gemDeadZones;
62
63 TBox*** siliconModBoxes;
64 TBox**** siliconLayBoxes;
65 TPolyLine**** siliconDeadZones;
66
67private:
68 void CreateBordersGem();
69 void CreateBordersSilicon();
70
72};
73
74#endif
75
BmnGemStripStationSet * GetGemGeometry()
void GetGemBorders(TBox ***&mods, TBox ****&layers, TPolyLine ****&deadZones)
BmnSiliconStationSet * GetSiliconGeometry()
void GetSiliconBorders(TBox ***&mods, TBox ****&layers, TPolyLine ****&deadZones)
STL namespace.