9#ifndef ARICHBTESTGEOMETRYPAR_H
10#define ARICHBTESTGEOMETRYPAR_H
14#include <framework/gearbox/GearDir.h>
15#include <Math/Vector3D.h>
16#include <Math/Rotation3D.h>
32 for (
int i = 0; i < 4; i++)
tdc[i] = 0;
33 for (
int i = 0; i < 2; i++) {
42 for (
int i = 0; i < 3; i++) {
75 printf(
"----------------------------------------------------------------\n");
76 for (
int i = 0; i < 4; i++) printf(
"tdc%d= %d\t", i,
tdc[i]);
78 for (
int i = 0; i < 1; i++) printf(
"atdc%d= %d\t", i,
atdc);
80 for (
int i = 0; i < 2; i++) printf(
"slp%d= %3.3f\t", i,
slp[i]);
82 for (
int i = 0; i < 2; i++) printf(
"off%d= %3.3f\t", i,
offset[i]);
84 for (
int i = 0; i < 2; i++) printf(
"cutll%d= %d\t", i,
cutll[i]);
86 for (
int i = 0; i < 2; i++) printf(
"cutul%d= %d\t", i,
cutul[i]);
88 for (
int i = 0; i < 3; i++) printf(
"pos%d= %3.3f\t", i,
pos[i]);
130 void Print(
void)
const;
166 void setOffset(
const ROOT::Math::XYZVector&);
The Class for ARICH Beamtest Geometry Parameters.
ROOT::Math::XYZVector m_trackingShift
Tracking shift.
ROOT::Math::XYZVector m_rotationCenter
rotation center of the Aerogel RICH frame
ROOT::Math::Rotation3D m_frameRotation
rotation matrix of the Aerogel RICH frame
ARICHTracking * m_mwpc
Pointer to the tracking chambers.
ARICHBtestGeometryPar & operator=(const ARICHBtestGeometryPar &)=delete
Operator = (disabled)
void Initialize(const GearDir &content)
calculates detector parameters needed for geometry build and reconstruction.
std::vector< std::pair< int, int > > m_hapdeid
mapping of the electronic channel to the HAPD module nr and the channel number
void read(const GearDir &content)
gets geometry parameters from gearbox.
bool m_simple
True if parametrization initialized with simple geometry (beamtest)
bool m_init
True if parametrization is already initialized.
int m_nPads
Number of detector module pads.
void Initialize(const GearDir &modulecontent, const GearDir &mirrorcontent)
calculates detector parameters needed for geometry build and reconstruction.
std::vector< std::pair< double, double > > m_hapdmap
the position of the HAPD channels
ROOT::Math::XYZVector m_offset
Global offset.
bool m_averageAgel
flag for the reconstruction by using the average aerogel refractive index
Beamtest ARICH Geometry Tracking Class.
~ARICHTracking()
Default destructor.
ARICHTracking()
Default Constructor.
float slp[2]
Calibration constants of the MWPC ( ) - slopes for x an y direction.
int diff[2]
TDC difference.
int cutll[2]
Cuts on the tdc sums - lower levels.
float pos[3]
MWPC chamber position.
int tdc[4]
TDC of the 4 cathode signals.
void Print()
Debug printouts.
int status[2]
Status of the position determination.
int atdc
TDC of the anode signal.
float offset[2]
Calibration constants of the MWPC - offsets for x an y direction.
int cutul[2]
Cuts on the tdc sums - upper levels.
double reco[3]
Reconstructed position of the hit.
GearDir is the basic class used for accessing the parameter store.
void setOffset(const ROOT::Math::XYZVector &)
Set of the setup global offset.
ARICHBtestGeometryPar()
Constructor.
int AddHapdElectronicMapPair(int, int)
Set the mapping of the electronic channel to the HAPD module nr and the channel number.
void setRotationCenter(const ROOT::Math::XYZVector &)
Set the rotation center of the Aerogel RICH frame.
std::pair< double, double > GetHapdChannelPosition(int)
Get the position of the HAPD channel.
ROOT::Math::XYZVector getRotationCenter()
Get the rotation center of the Aerogel RICH frame.
void setTrackingShift(const ROOT::Math::XYZVector &)
Set the tracking shift.
ROOT::Math::Rotation3D getFrameRotation()
Get the rotation matrix of the Aerogel RICH frame.
std::pair< int, int > GetHapdElectronicMap(int)
Get the mapping of the electronic channel to the HAPD module nr and the channel number.
bool getAverageAgel()
Get the flag for the reconstruction by using the average aerogel refractive index.
void setFrameRotation(double)
Set the rotation angle of the Aerogel RICH frame.
void setMwpc(ARICHTracking *m_mwpc)
Set the pointer of the tracking MWPCs.
static ARICHBtestGeometryPar * Instance()
Static method to get a reference to the ARICHBtestGeometryPar instance.
void Print(void) const
Print some debug information.
static ARICHBtestGeometryPar * p_B4ARICHBtestGeometryParDB
Pointer that saves the instance of this class.
virtual ~ARICHBtestGeometryPar()
Destructor.
void setAverageAgel(bool)
Set the flag for the reconstruction by using the average aerogel refractive index.
ROOT::Math::XYZVector getTrackingShift()
Get the tracking shift.
int AddHapdChannelPositionPair(double, double)
Set the position of the HAPD channel.
ARICHTracking * getMwpc()
Get the pointer of the tracking MWPCs.
ROOT::Math::XYZVector getOffset()
Get the setup global offset.
Abstract base class for different kinds of events.