15#ifndef ALICEO2_FT3_DETECTOR_H_
16#define ALICEO2_FT3_DETECTOR_H_
26#include "TGeoManager.h"
27#include "TLorentzVector.h"
30#include <unordered_map>
70 std::vector<o2::itsmft::Hit>*
getHits(Int_t iColl)
const
79 void Reset()
override;
86 const TVector3& startMom,
double startE,
double endTime,
double eLoss,
87 unsigned char startStatus,
unsigned char endStatus);
105 LOG(fatal) <<
"Number of layers in the two directions are different! Returning 0.";
125 unsigned char mTrkStatusStart;
126 TLorentzVector mPositionStart;
127 TLorentzVector mMomentumStart;
132 std::vector<o2::itsmft::Hit>* mHits;
135 virtual void createMaterials();
138 void createGeometry();
141 void defineSensitiveVolumes();
147 std::array<std::vector<FT3Layer>, 2> mLayers;
148 bool mIsPipeActivated =
true;
150 template <
typename Det>
164 static constexpr bool value =
true;
Definition of the Detector class.
Definition of the GeometryManager class.
Definition of the ITSMFT Hit class.
static int getSensID(o2::detectors::DetID detid, int sensid)
std::array< std::vector< TString >, 2 > mLayerName
std::unordered_map< int, int > mActiveSensorMap
~Detector() override
Default destructor.
void InitializeO2Detector() override
Initialization of the detector is done here.
static constexpr int IdxBackwardDisks
void BeginPrimary() override
void EndOfEvent() override
static constexpr int IdxForwardDisks
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)
This method is an example of how to add your own point of type Hit to the clones array.
void Register() override
Registers the produced collections in FAIRRootManager.
std::vector< o2::itsmft::Hit > * getHits(Int_t iColl) const
Gets the produced collections.
void ConstructGeometry() override
Base class to create the detector geometry.
size_t getNumberOfLayers() const
Returns the number of layers.
Detector()
Default constructor.
Bool_t ProcessHits(FairVolume *v=nullptr) override
This method is called for each step during simulation (see FairMCApplication::Stepping())
void buildBasicFT3(const FT3BaseParam ¶m)
Int_t chipVolUID(Int_t id) const
void buildFT3NewVacuumVessel()
void FinishPrimary() override
void Reset() override
Has to be called after each event to reset the containers.
void PostTrack() override
GLsizei const GLfloat * value
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"