41 #include "TRestAxionEventProcess.h"
68 RESTDebug <<
"BoEP: Initial Position. X: " << fAxionEvent->GetPosition().X()
69 <<
" Y: " << fAxionEvent->GetPosition().Y() <<
" Z: " << fAxionEvent->GetPosition().Z()
71 RESTDebug <<
"BoEP: Initial Direction. X: " << fAxionEvent->GetDirection().X()
72 <<
" Y: " << fAxionEvent->GetDirection().Y() <<
" Z: " << fAxionEvent->GetDirection().Z()
74 fAxionEvent->RotateYX(fPosition, fInternalYaw, fInternalPitch);
75 fAxionEvent->RotateYX(fExternalRotationCenter, fExternalYaw, fExternalPitch);
76 fAxionEvent->Translate(TVector3(-fPosition.X(), -fPosition.Y(), -fPosition.Z()));
77 RESTDebug <<
" ---- " << RESTendl;
78 RESTDebug <<
"BoEP: Final Position. X: " << fAxionEvent->GetPosition().X()
79 <<
" Y: " << fAxionEvent->GetPosition().Y() <<
" Z: " << fAxionEvent->GetPosition().Z()
81 RESTDebug <<
"BoEP: Final Direction. X: " << fAxionEvent->GetDirection().X()
82 <<
" Y: " << fAxionEvent->GetDirection().Y() <<
" Z: " << fAxionEvent->GetDirection().Z()
84 RESTDebug <<
" ++++ " << RESTendl;
94 RESTDebug <<
"EoEP: Initial Position. X: " << fAxionEvent->GetPosition().X()
95 <<
" Y: " << fAxionEvent->GetPosition().Y() <<
" Z: " << fAxionEvent->GetPosition().Z()
97 RESTDebug <<
"EoEP: Initial Direction. X: " << fAxionEvent->GetDirection().X()
98 <<
" Y: " << fAxionEvent->GetDirection().Y() <<
" Z: " << fAxionEvent->GetDirection().Z()
100 RESTDebug <<
" ---- " << RESTendl;
101 fAxionEvent->Translate(TVector3(fPosition.X(), fPosition.Y(), fPosition.Z()));
103 fAxionEvent->RotateXY(fExternalRotationCenter, -fExternalPitch, -fExternalYaw);
104 fAxionEvent->RotateXY(fPosition, -fInternalPitch, -fInternalYaw);
106 RESTDebug <<
"EoEP: Final Position. X: " << fAxionEvent->GetPosition().X()
107 <<
" Y: " << fAxionEvent->GetPosition().Y() <<
" Z: " << fAxionEvent->GetPosition().Z()
109 RESTDebug <<
"EoEP: Final Direction. X: " << fAxionEvent->GetDirection().X()
110 <<
" Y: " << fAxionEvent->GetDirection().Y() <<
" Z: " << fAxionEvent->GetDirection().Z()
112 RESTDebug <<
" ++++ " << RESTendl;
124 RESTMetadata <<
"Position: (" << fPosition.X() <<
", " << fPosition.Y() <<
", " << fPosition.Z() <<
") mm"
126 RESTMetadata <<
" " << RESTendl;
127 RESTMetadata <<
"Internal Yaw angle (Y-axis): " << fInternalYaw *
units(
"degrees") <<
" degrees"
129 RESTMetadata <<
"Internal Pitch angle (X-axis): " << fInternalPitch *
units(
"degrees") <<
" degrees"
131 RESTMetadata <<
" " << RESTendl;
132 RESTMetadata <<
"External rotation center: (" << fExternalRotationCenter.X() <<
", "
133 << fExternalRotationCenter.Y() <<
", " << fExternalRotationCenter.Z() <<
") mm" << RESTendl;
134 RESTMetadata <<
"External Yaw angle (Y-axis): " << fExternalYaw *
units(
"degrees") <<
" degrees"
136 RESTMetadata <<
"External Pitch angle (X-axis): " << fExternalPitch *
units(
"degrees") <<
" degrees"
138 RESTMetadata <<
" " << RESTendl;
140 RESTMetadata <<
"Local axis is true " << RESTendl;
142 RESTMetadata <<
"Universal axis is true " << RESTendl;
143 RESTMetadata <<
" --------------------------- " << RESTendl;
144 RESTMetadata <<
" " << RESTendl;
A base class for any axion event process. Defines position, rotation and component displacement.
void BeginPrintProcess()
Pre-defined printer, can be used at the beginning in the implementation of PrintMetadata()
virtual void EndOfEventProcess(TRestEvent *evInput=nullptr) override
End of event process. Called directly after ProcessEvent()
~TRestAxionEventProcess()
virtual void BeginOfEventProcess(TRestEvent *evInput=nullptr) override
Begin of event process, preparation work. Called right before ProcessEvent()
void EndPrintProcess()
Adds the footer for PrintMetadata.
An event data class to define the parameters related to an axion particle.
virtual void EndOfEventProcess(TRestEvent *inputEvent=nullptr)
End of event process. Nothing to do. Called directly after ProcessEvent()
void BeginPrintProcess()
[name, cut range]
virtual void BeginOfEventProcess(TRestEvent *inputEvent=nullptr)
Begin of event process, preparation work. Called right before ProcessEvent()
A base class for any REST event.