15#ifndef ALICEO2_FT3_DETECTOR_H_
16#define ALICEO2_FT3_DETECTOR_H_
25#include "TGeoManager.h"
26#include "TLorentzVector.h"
66 std::vector<o2::itsmft::Hit>*
getHits(Int_t iColl)
const
75 void Reset()
override;
82 const TVector3& startMom,
double startE,
double endTime,
double eLoss,
83 unsigned char startStatus,
unsigned char endStatus);
101 LOG(fatal) <<
"Number of layers in the two directions are different! Returning 0.";
121 unsigned char mTrkStatusStart;
122 TLorentzVector mPositionStart;
123 TLorentzVector mMomentumStart;
128 std::vector<o2::itsmft::Hit>* mHits;
131 virtual void createMaterials();
134 void createGeometry();
137 void defineSensitiveVolumes();
143 std::array<std::vector<FT3Layer>, 2> mLayers;
144 bool mIsPipeActivated =
true;
146 template <
typename Det>
160 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
~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())
std::vector< Int_t > mLayerID
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"