12#ifndef ALICEO2_TRK_DETECTOR_H
13#define ALICEO2_TRK_DETECTOR_H
22#include <TLorentzVector.h>
46 o2::trkft3::Hit*
addHit(
int trackID,
unsigned short detID,
const TVector3& startPos,
const TVector3& endPos,
47 const TVector3& startMom,
double startE,
double endTime,
double eLoss,
48 unsigned char startStatus,
unsigned char endStatus);
59 void Reset()
override;
62 std::vector<o2::trkft3::Hit>*
getHits(
int iColl)
const
71 void configFromFile(std::string fileName =
"alice3_TRK_layout.txt");
72 void configToFile(std::string fileName =
"alice3_TRK_layout.txt");
80 int mNumberOfVolumesVD;
85 unsigned char mTrkStatusStart;
86 TLorentzVector mPositionStart;
87 TLorentzVector mMomentumStart;
90 GeometryTGeo* mGeometryTGeo;
91 std::vector<o2::trkft3::Hit>* mHits;
92 std::vector<std::unique_ptr<TRKCylindricalLayer>> mLayers;
93 TRKServices mServices;
95 std::vector<std::string> mFirstOrLastLayers;
96 bool InsideFirstOrLastLayer(std::string layerName);
98 void defineSensitiveVolumes();
108 void Print(FairVolume* vol,
int volume,
int subDetID,
int layer,
int stave,
int halfstave,
int mod,
int chip,
int chipID)
const;
110 template <
typename Det>
123struct UseShm<
o2::trk::Detector> {
124 static constexpr bool value =
true;
Definition of the Detector class.
void ConstructGeometry() override
void BeginPrimary() override
void InitializeO2Detector() override
void FinishPrimary() override
static constexpr Int_t sNumberVDPetalCases
layer names
void PostTrack() override
std::vector< o2::trkft3::Hit > * getHits(int iColl) const
o2::trkft3::Hit * addHit(int trackID, unsigned short detID, const TVector3 &startPos, const TVector3 &endPos, const TVector3 &startMom, double startE, double endTime, double eLoss, unsigned char startStatus, unsigned char endStatus)
void configFromFile(std::string fileName="alice3_TRK_layout.txt")
void EndOfEvent() override
void Print(FairVolume *vol, int volume, int subDetID, int layer, int stave, int halfstave, int mod, int chip, int chipID) const
Number of TRK layers.
static o2::base::Detector * create(bool active)
void configToFile(std::string fileName="alice3_TRK_layout.txt")
int getNumberOfLayers() const
Number of VD petals.
bool ProcessHits(FairVolume *v=nullptr) override
std::vector< int > mSensorID
std::vector< TString > mSensorName
layer identifiers
ClassDefOverride(Detector, 2)
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 ...
VectorOfTObjectPtrs other