101 TGeoNode* node =
GetNode(hit_final, mod);
102 auto shape =
dynamic_cast<TGeoBBox*
>(node->GetVolume()->GetShape());
104 if(mod > 0 && mod < 6){
105 lpos = TMath::Abs( pos.X() + 114.5 - hit_final );
106 lneg = TMath::Abs( pos.X() - 114.5 - hit_final );
109 lpos = TMath::Abs( pos.Y() + 55.5 - hit_final );
110 lneg = TMath::Abs( pos.Y() - 55.5 - hit_final );
118 TGeoNavigator* nav = gGeoManager->GetCurrentNavigator();
119 TGeoNode* node =
GetNode(hit_final, mod);
120 auto shape =
dynamic_cast<TGeoBBox*
>(node->GetVolume()->GetShape());
121 Double_t origin[3] = {shape->GetOrigin()[0],shape->GetOrigin()[1],shape->GetOrigin()[2]};
122 Double_t master[3] = {0,0,0};
123 nav->LocalToMaster(origin,master);
124 TVector3 pos = TVector3(master[0],master[1],master[2]);
149 TGeoNavigator* nav = gGeoManager->GetCurrentNavigator();
156 const Double_t PxHit1 = *
mom[0];
157 const Double_t PyHit1 = *
mom[1];
158 const Double_t PzHit1 = *
mom[2];
160 Double_t Ymodule1 = -1000;
161 Double_t Zmodule1 = 0;
162 Double_t Xmodule11 = -1000;
163 Double_t Zmodule11 = 0;
164 Double_t dist1 = 1000;
189 for(
int i = 1; i<= 10; i++){
216 if(i == 10 && flag0){
259 Double_t Z = Zmodule1 - ZHit1;
260 X = XHit1 + (Z*(PxHit1/TMath::Sqrt(PxHit1*PxHit1 + PyHit1*PyHit1 + PzHit1*PzHit1)));
261 Y = YHit1 + (Z*(PyHit1/TMath::Sqrt(PxHit1*PxHit1 + PyHit1*PyHit1 + PzHit1*PzHit1)));
263 Double_t count_strips = -1;
266 for(
int i = 1; i <= 32; i++){
271 if(Y >= (count_strips - 3.25) && Y < count_strips){
273 if(Y > count_strips - 0.075)
278 if(Y > count_strips - (3.25/2.0))
290 Double_t Z = Zmodule11 - ZHit1;
291 X = XHit1 + (Z*(PxHit1/TMath::Sqrt(PxHit1*PxHit1 + PyHit1*PyHit1 + PzHit1*PzHit1)));
292 Y = YHit1 + (Z*(PyHit1/TMath::Sqrt(PxHit1*PxHit1 + PyHit1*PyHit1 + PzHit1*PzHit1)));
294 Double_t count_strips = -1;
297 for(
int i = 1; i <= 64; i++){
302 if(X >= (count_strips - 3.45) && X < count_strips){
304 if(X > count_strips - 0.075)
309 if(X > count_strips - (3.45/2.0))
331 if(mod >=6 && mod <= 10 || mod >= 16){
332 path =
"/cave_1/Upstream_Tagger_1/UpstreamTagger1_";path+=mod;path+=
"/glass_upstreamtagger_";path+=
fDetectorID;
333 Bool_t rc = nav->cd(path);
336 path1 =
"/cave_1/Upstream_Tagger_1/UpstreamTagger_";path1+=mod;path1+=
"/glass_upstreamtagger_";path1+=
fDetectorID;
337 Bool_t rc = nav->cd(path1);
340 return nav->GetCurrentNode();