12#ifndef ALICEO2_TRK_DETECTOR_H
13#define ALICEO2_TRK_DETECTOR_H
23#include <TLorentzVector.h>
50 const TVector3& startMom,
double startE,
double endTime,
double eLoss,
51 unsigned char startStatus,
unsigned char endStatus);
65 std::vector<o2::itsmft::Hit>*
getHits(
int iColl)
const
74 void buildTRKNewVacuumVessel();
75 void configFromFile(std::string fileName =
"alice3_TRK_layout.txt");
76 void configToFile(std::string fileName =
"alice3_TRK_layout.txt");
78 void configServices();
86 unsigned char mTrkStatusStart;
87 TLorentzVector mPositionStart;
88 TLorentzVector mMomentumStart;
92 std::vector<o2::itsmft::Hit>* mHits;
93 std::vector<TRKLayer> mLayers;
95 std::vector<TRKPetalCase> mPetalCases;
97 std::vector<std::string> mFirstOrLastLayers;
98 bool InsideFirstOrLastLayer(std::string layerName);
100 void defineSensitiveVolumes();
112 void Print(FairVolume* vol,
int volume,
int subDetID,
int layer,
int stave,
int halfstave,
int chipID)
const;
114 template <
typename Det>
127struct UseShm<
o2::trk::Detector> {
128 static constexpr bool value =
true;
Definition of the Detector class.
Definition of the ITSMFT Hit class.
Detector()
Default Constructor.
ClassDefOverride(Detector, 1)
void ConstructGeometry() override
void BeginPrimary() override
o2::itsmft::Hit * addHit(int trackID, int detID, const TVector3 &startPos, const TVector3 &endPos, const TVector3 &startMom, double startE, double endTime, double eLoss, unsigned char startStatus, unsigned char endStatus)
void InitializeO2Detector() override
void FinishPrimary() override
static constexpr Int_t sNumberVDPetalCases
layer names
static constexpr Int_t mNumberOfVolumesVD
hardcoded for the current geometry = 8 MLOT layers + 36 volumes in the VD. TODO: automatize or change...
void PostTrack() override
static constexpr Int_t mNumberOfVolumes
std::vector< o2::itsmft::Hit > * getHits(int iColl) const
void EndOfEvent() override
static o2::base::Detector * create(bool active)
int getNumberOfLayers() const
Number of VD petals.
int getNumberOfLayersVD() const
Number of TRK layers.
bool ProcessHits(FairVolume *v=nullptr) override
std::vector< int > mSensorID
int getNumberOfDisksVD() const
std::vector< TString > mSensorName
layer identifiers
GLsizei const GLfloat * value
GLenum GLuint GLint GLint layer
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...