![]() |
Project
|
#include <Detector.h>
Inherits FairDetector.
Inherited by o2::base::DetImpl< Detector >, and o2::base::DetImpl< Det >.
Public Member Functions | |
Detector (const char *name, Bool_t Active) | |
Detector () | |
Default Constructor. | |
~Detector () override | |
Default Destructor. | |
void | Material (Int_t imat, const char *name, Float_t a, Float_t z, Float_t dens, Float_t radl, Float_t absl, Float_t *buf=nullptr, Int_t nwbuf=0) |
void | Mixture (Int_t imat, const char *name, Float_t *a, Float_t *z, Float_t dens, Int_t nlmat, Float_t *wmat) |
void | Medium (Int_t numed, const char *name, Int_t nmat, Int_t isvol, Int_t ifield, Float_t fieldm, Float_t tmaxfd, Float_t stemax, Float_t deemax, Float_t epsil, Float_t stmin, Float_t *ubuf=nullptr, Int_t nbuf=0) |
void | SpecialCuts (Int_t numed, const std::initializer_list< std::pair< ECut, Float_t > > &parIDValMap) |
Custom processes and transport cuts. | |
void | SpecialCut (Int_t numed, ECut parID, Float_t val) |
Set cut by name and value. | |
void | SpecialProcesses (Int_t numed, const std::initializer_list< std::pair< EProc, int > > &parIDValMap) |
void | SpecialProcess (Int_t numed, EProc parID, int val) |
Set process by name and value. | |
void | Matrix (Int_t &nmat, Float_t theta1, Float_t phi1, Float_t theta2, Float_t phi2, Float_t theta3, Float_t phi3) const |
void | SetSpecialPhysicsCuts () override |
virtual void | addAlignableVolumes () const |
declare alignable volumes of detector | |
virtual void | fillParallelWorld () const |
fill parallel geometry with sensitive volumes of detector | |
virtual void | defineWrapperVolume (Int_t id, Double_t rmin, Double_t rmax, Double_t zspan) |
Sets per wrapper volume parameters. | |
virtual void | setNumberOfWrapperVolumes (Int_t n) |
Books arrays for wrapper volumes. | |
virtual void | defineLayer (Int_t nlay, Double_t phi0, Double_t r, Int_t nladd, Int_t nmod, Double_t lthick=0., Double_t dthick=0., UInt_t detType=0, Int_t buildFlag=0) |
virtual void | defineLayerTurbo (Int_t nlay, Double_t phi0, Double_t r, Int_t nladd, Int_t nmod, Double_t width, Double_t tilt, Double_t lthick=0., Double_t dthick=0., UInt_t detType=0, Int_t buildFlag=0) |
int | getMaterialID (int imat) const |
int | getMediumID (int imed) const |
void | getMediumIDMappingAsVector (std::vector< int > &mapping) |
std::string | addNameTo (const char *ext) const |
virtual std::string | getHitBranchNames (int probe) const =0 |
virtual void | updateHitTrackIndices (std::map< int, int > const &)=0 |
virtual void | attachHits (fair::mq::Channel &, fair::mq::Parts &)=0 |
virtual void | fillHitBranch (TTree &tr, fair::mq::Parts &parts, int &index)=0 |
virtual void | collectHits (int eventID, fair::mq::Parts &parts, int &index)=0 |
virtual void | mergeHitEntriesAndFlush (int eventID, TTree &target, std::vector< int > const &trackoffsets, std::vector< int > const &nprimaries, std::vector< int > const &subevtsOrdered)=0 |
virtual void | mergeHitEntries (TTree &origin, TTree &target, std::vector< int > const &trackoffsets, std::vector< int > const &nprimaries, std::vector< int > const &subevtsOrdered)=0 |
virtual void | InitializeO2Detector ()=0 |
void | Initialize () final |
virtual void | initializeLate ()=0 |
int | registerSensitiveVolumeAndGetVolID (std::string const &name) |
int | registerSensitiveVolumeAndGetVolID (TGeoVolume const *vol) |
TClonesArray * | GetCollection (int iColl) const final |
Static Public Member Functions | |
static void | setDensityFactor (Float_t density) |
static Float_t | getDensityFactor () |
static void | initFieldTrackingParams (int &mode, float &maxfield) |
static void | setDetId2HitBitIndex (std::vector< int > const &v) |
set the DetID to HitBitIndex mapping. Succeeds if not already set. | |
static std::vector< int > const & | getDetId2HitBitIndex () |
Protected Member Functions | |
Detector (const Detector &origin) | |
Detector & | operator= (const Detector &) |
This is the basic class for any AliceO2 detector module, whether it is sensitive or not. Detector classes depend on this.
Definition at line 49 of file Detector.h.
Detector::Detector | ( | const char * | name, |
Bool_t | Active | ||
) |
Definition at line 37 of file Detector.cxx.
Detector::Detector | ( | ) |
Default Constructor.
Definition at line 36 of file Detector.cxx.
|
overridedefault |
Default Destructor.
Definition at line 87 of file Detector.cxx.
|
protecteddefault |
Definition at line 75 of file Detector.cxx.
|
virtual |
declare alignable volumes of detector
Reimplemented in o2::cpv::Detector, o2::ft0::Detector, o2::fv0::Detector, o2::focal::Detector, o2::its::Detector, o2::mft::Detector, o2::mch::Detector, o2::phos::Detector, o2::tof::Detector, o2::trd::Detector, and o2::zdc::Detector.
Definition at line 169 of file Detector.cxx.
|
inline |
Definition at line 150 of file Detector.h.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
|
virtual |
Reimplemented in o2::its::Detector.
|
virtual |
Definition at line 117 of file Detector.cxx.
|
virtual |
Sets per wrapper volume parameters.
Reimplemented in o2::its::Detector.
Definition at line 110 of file Detector.cxx.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
|
virtual |
fill parallel geometry with sensitive volumes of detector
Reimplemented in o2::its::Detector.
Definition at line 174 of file Detector.cxx.
|
final |
Definition at line 162 of file Detector.cxx.
|
inlinestatic |
Definition at line 97 of file Detector.h.
|
inlinestatic |
Definition at line 221 of file Detector.h.
|
pure virtual |
Implemented in o2::tpc::Detector, o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
Definition at line 3233 of file Detector.cxx.
Definition at line 127 of file Detector.h.
Definition at line 135 of file Detector.h.
Definition at line 143 of file Detector.h.
Definition at line 143 of file Detector.cxx.
|
inlinefinal |
Definition at line 190 of file Detector.h.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
|
pure virtual |
Implemented in o2::cpv::Detector, o2::phos::Detector, o2::tof::Detector, o2::zdc::Detector, o2::emcal::Detector, o2::fdd::Detector, o2::ft0::Detector, o2::fv0::Detector, o2::focal::Detector, o2::hmpid::Detector, o2::its::Detector, o2::mft::Detector, o2::mch::Detector, o2::mid::Detector, o2::tpc::Detector, o2::trd::Detector, o2::ecal::Detector, o2::fct::Detector, o2::ft3::Detector, o2::iotof::Detector, o2::mi3::Detector, o2::rich::Detector, and o2::trk::Detector.
Definition at line 98 of file Detector.cxx.
void Detector::Material | ( | Int_t | imat, |
const char * | name, | ||
Float_t | a, | ||
Float_t | z, | ||
Float_t | dens, | ||
Float_t | radl, | ||
Float_t | absl, | ||
Float_t * | buf = nullptr , |
||
Int_t | nwbuf = 0 |
||
) |
Definition at line 59 of file Detector.cxx.
void Detector::Matrix | ( | Int_t & | nmat, |
Float_t | theta1, | ||
Float_t | phi1, | ||
Float_t | theta2, | ||
Float_t | phi2, | ||
Float_t | theta3, | ||
Float_t | phi3 | ||
) | const |
Define a rotation matrix. angles are in degrees.
nmat | on output contains the number assigned to the rotation matrix |
theta1 | polar angle for axis I |
theta2 | polar angle for axis II |
theta3 | polar angle for axis III |
phi1 | azimuthal angle for axis I |
phi2 | azimuthal angle for axis II |
phi3 | azimuthal angle for axis III |
Definition at line 104 of file Detector.cxx.
void Detector::Medium | ( | Int_t | numed, |
const char * | name, | ||
Int_t | nmat, | ||
Int_t | isvol, | ||
Int_t | ifield, | ||
Float_t | fieldm, | ||
Float_t | tmaxfd, | ||
Float_t | stemax, | ||
Float_t | deemax, | ||
Float_t | epsil, | ||
Float_t | stmin, | ||
Float_t * | ubuf = nullptr , |
||
Int_t | nbuf = 0 |
||
) |
Definition at line 72 of file Detector.cxx.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.
void Detector::Mixture | ( | Int_t | imat, |
const char * | name, | ||
Float_t * | a, | ||
Float_t * | z, | ||
Float_t | dens, | ||
Int_t | nlmat, | ||
Float_t * | wmat | ||
) |
Definition at line 66 of file Detector.cxx.
Definition at line 46 of file Detector.cxx.
int Detector::registerSensitiveVolumeAndGetVolID | ( | std::string const & | name | ) |
helper wrapper function to register a geometry volume given by name with FairRoot
Definition at line 190 of file Detector.cxx.
int Detector::registerSensitiveVolumeAndGetVolID | ( | TGeoVolume const * | vol | ) |
helper wrapper function to register a geometry volume given by TGeoVolume vol
Definition at line 178 of file Detector.cxx.
Definition at line 92 of file Detector.h.
set the DetID to HitBitIndex mapping. Succeeds if not already set.
Definition at line 220 of file Detector.h.
|
virtual |
Books arrays for wrapper volumes.
Definition at line 111 of file Detector.cxx.
|
override |
implements interface of FairModule; generic implementation for O2 detectors
Definition at line 122 of file Detector.cxx.
Set cut by name and value.
Definition at line 86 of file Detector.cxx.
void Detector::SpecialCuts | ( | Int_t | numed, |
const std::initializer_list< std::pair< ECut, Float_t > > & | parIDValMap | ||
) |
Custom processes and transport cuts.
Definition at line 80 of file Detector.cxx.
Set process by name and value.
Definition at line 98 of file Detector.cxx.
void Detector::SpecialProcesses | ( | Int_t | numed, |
const std::initializer_list< std::pair< EProc, int > > & | parIDValMap | ||
) |
Definition at line 92 of file Detector.cxx.
|
pure virtual |
Implemented in o2::base::DetImpl< Det >, and o2::base::DetImpl< Detector >.