Jpp
PMT_choice.hh
Go to the documentation of this file.
1 #ifndef __PMTCHOICE__
2 #define __PMTCHOICE__
3 
4 
5 using namespace std;
6 
7 
8 /**
9  * \author rgruiz
10  */
11 
13 
14  vector < int > top_a = {0,4};
15 
16  vector < int > top_b = {3} ;
17 
18  vector < int > top_c = {2 , 6} ;
19 
20  vector < int > top_d = {5 , 8} ;
21 
22  vector < int > top_e = {10 , 1} ;
23 
24  vector < int > top_f = {9 , 7 , 11} ;
25 
26 };
27 
28 
30 
31  vector < int > bottom_a = {22} ;
32 
33  vector < int > bottom_b = {14 , 18 , 19 , 24 , 25 , 26} ;
34 
35  vector < int > bottom_c = {13 , 17 , 20 , 21 , 28 , 29} ;
36 
37  vector < int > bottom_d = {12 , 15 , 16 , 23 , 27 , 30} ;
38 
39 };
40 
41 
42 /**
43  * Select the PMTs in the upper hemisphere of a DOM.
44  *
45  * \param option user choice
46  * \return vector with chosen pmts
47  */
48 inline vector < int > setTopPMTs(int option){
49 
50  vector < int > topPMTs ;
51 
53 
54  switch(option){
55 
56  case 1 :
57 
58  topPMTs.insert(topPMTs.end(), t.top_a.begin(), t.top_a.end());
59 
60  break;
61 
62  case 2 :
63 
64  topPMTs.insert(topPMTs.end(), t.top_a.begin(), t.top_a.end());
65 
66  topPMTs.insert(topPMTs.end(), t.top_b.begin(), t.top_b.end());
67 
68  break;
69 
70  case 3 :
71 
72  topPMTs.insert(topPMTs.end(), t.top_a.begin(), t.top_a.end());
73 
74  topPMTs.insert(topPMTs.end(), t.top_b.begin(), t.top_b.end());
75 
76  topPMTs.insert(topPMTs.end(), t.top_c.begin(), t.top_c.end());
77 
78  topPMTs.insert(topPMTs.end(), t.top_d.begin(), t.top_d.end());
79 
80  topPMTs.insert(topPMTs.end(), t.top_e.begin(), t.top_e.end());
81 
82  topPMTs.insert(topPMTs.end(), t.top_f.begin(), t.top_f.end());
83 
84  break;
85 
86  }
87 
88  return topPMTs ;
89 
90 }
91 
92 
93 
94 /**
95  * Select the PMTs in the lower hemisphere of a DOM.
96  *
97  * \param option user choice
98  * \return vector with chosen pmts
99  */
100 inline vector < int > setBottomPMTs(int option){
101 
102  vector < int > bottomPMTs ;
103 
105 
106  switch(option){
107 
108  case 1 :
109 
110  bottomPMTs.insert(bottomPMTs.end(), b.bottom_a.begin(), b.bottom_a.end());
111 
112  break;
113 
114  case 2 :
115 
116  bottomPMTs.insert(bottomPMTs.end(), b.bottom_a.begin(), b.bottom_a.end());
117 
118  bottomPMTs.insert(bottomPMTs.end(), b.bottom_b.begin(), b.bottom_b.end());
119 
120  break;
121 
122  case 3 :
123 
124  bottomPMTs.insert(bottomPMTs.end(), b.bottom_a.begin(), b.bottom_a.end());
125 
126  bottomPMTs.insert(bottomPMTs.end(), b.bottom_b.begin(), b.bottom_b.end());
127 
128  bottomPMTs.insert(bottomPMTs.end(), b.bottom_c.begin(), b.bottom_c.end());
129 
130  break;
131 
132  case 4 :
133 
134  bottomPMTs.insert(bottomPMTs.end(), b.bottom_a.begin(), b.bottom_a.end());
135 
136  bottomPMTs.insert(bottomPMTs.end(), b.bottom_b.begin(), b.bottom_b.end());
137 
138  bottomPMTs.insert(bottomPMTs.end(), b.bottom_c.begin(), b.bottom_c.end());
139 
140  bottomPMTs.insert(bottomPMTs.end(), b.bottom_d.begin(), b.bottom_d.end());
141 
142  break;
143 
144  }
145 
146  return bottomPMTs ;
147 
148 }
149 
150 
151 #endif
pmt_clusters_bottom::bottom_d
vector< int > bottom_d
Definition: PMT_choice.hh:37
pmt_clusters_top::top_b
vector< int > top_b
Definition: PMT_choice.hh:16
pmt_clusters_bottom::bottom_a
vector< int > bottom_a
Definition: PMT_choice.hh:31
pmt_clusters_top
Definition: PMT_choice.hh:12
pmt_clusters_top::top_f
vector< int > top_f
Definition: PMT_choice.hh:24
pmt_clusters_top::top_d
vector< int > top_d
Definition: PMT_choice.hh:20
setTopPMTs
vector< int > setTopPMTs(int option)
Select the PMTs in the upper hemisphere of a DOM.
Definition: PMT_choice.hh:48
pmt_clusters_top::top_a
vector< int > top_a
Definition: PMT_choice.hh:14
setBottomPMTs
vector< int > setBottomPMTs(int option)
Select the PMTs in the lower hemisphere of a DOM.
Definition: PMT_choice.hh:100
pmt_clusters_top::top_e
vector< int > top_e
Definition: PMT_choice.hh:22
std::vector< int >
pmt_clusters_top::top_c
vector< int > top_c
Definition: PMT_choice.hh:18
pmt_clusters_bottom
Definition: PMT_choice.hh:29
pmt_clusters_bottom::bottom_b
vector< int > bottom_b
Definition: PMT_choice.hh:33
std
Definition: jaanetDictionary.h:36
pmt_clusters_bottom::bottom_c
vector< int > bottom_c
Definition: PMT_choice.hh:35