|
CbmRoot
|
A reader of time slice for CA tracker. More...
#include <CbmCaTimeSliceReader.h>
Public Member Functions | |
| TimeSliceReader ()=default | |
| Constructor from parameters. | |
| TimeSliceReader (const TimeSliceReader &)=delete | |
| Copy constructor. | |
| TimeSliceReader (TimeSliceReader &&)=delete | |
| Move constructor. | |
| ~TimeSliceReader ()=default | |
| Destructor. | |
| TimeSliceReader & | operator= (const TimeSliceReader &)=delete |
| Copy assignment operator. | |
| TimeSliceReader & | operator= (TimeSliceReader &&)=delete |
| Move assignment operator. | |
| void | Clear () |
| Clears class content. | |
| const auto & | GetHitFirstIndexDet () const |
| Gets reference to container of first hit indexes in a detector subsystem. | |
| int | GetNofHits (ca::EDetectorID iDet) const |
| Gets number of hits stored for a given detector. | |
| ECbmCaTrackingMode | GetTrackingMode () const |
| Gets CBM tracking mode. | |
| bool | InitRun () |
| Run initializer function. | |
| void | ReadEvent (CbmEvent *pEvent=nullptr) |
| Reads time slice. | |
| void | RegisterQaHitContainer (ca::Vector< cbm::algo::ca::McHitInfo > &vQaHits) |
| Registers hit debug info container. | |
| void | RegisterHitIndexContainer (ca::Vector< CbmL1HitId > &vHitIds) |
| Registers hit index container. | |
| void | RegisterParameters (std::shared_ptr< const ca::Parameters< double > > &pParameters) |
| Registers CA parameters object. | |
| void | RegisterIODataManager (std::shared_ptr< ca::DataManager > &ioDataManager) |
| Registers the CA IO data manager instance. | |
| void | RegisterTracksContainer (ca::Vector< CbmL1Track > &vTracks) |
| Register the reconstructed tracks container. | |
| void | SetDetector (ca::EDetectorID detID, bool flag=true) |
| Sets used detector subsystems. | |
| void | SetTrackingMode (ECbmCaTrackingMode mode) |
| Sets the tracking mode. | |
| void | SetSortQaHits (bool doSortQaHits) |
| Sets flag to additionally sort QA hits by stations. | |
Private Member Functions | |
| void | CheckInit () const |
| Check class initialization. | |
| void | ReadHits () |
| Reads hits. | |
| void | ReadRecoTracks () |
| Reads reconstructed tracks. | |
| template<ca::EDetectorID DetID> | |
| int | ReadHitsForDetector () |
| Reads hits for a given detector subsystem. | |
| void | SortQaHits () |
| Sorts QA hit objects by stations. | |
| void | StoreHitRecord (const tools::HitRecord &hitRecord) |
| Saves hit to data structures. | |
Private Attributes | |
| CbmEvent * | fpEvent = nullptr |
| Pointer to the event object. | |
| DetIdArr_t< TClonesArray * > | fvpBrHits = {{nullptr}} |
| Input branch for hits. | |
| TClonesArray * | fpBrRecoTracks = nullptr |
| Input branch for reconstructed tracks ("GlobalTrack", "StsTrack") | |
| TClonesArray * | fpBrStsTracks = nullptr |
| Input branch for reconstructed STS tracks ("StsTrack") | |
| TClonesArray * | fpBrMuchTracks = nullptr |
| Input branch for reconstructed MuCh tracks ("MuchTrack") | |
| TClonesArray * | fpBrTrdTracks = nullptr |
| Input branch for reconstructed TRD tracks ("TrdTrack") | |
| TClonesArray * | fpBrTofTracks = nullptr |
| Input branch for reconstructed TOF tracks ("TofTrack") | |
| ca::Vector< CbmL1HitId > * | fpvHitIds = nullptr |
| Pointer to array of hit index objects. | |
| ca::Vector< cbm::algo::ca::McHitInfo > * | fpvQaHits = nullptr |
| Pointer to array of debug hits. | |
| ca::Vector< CbmL1Track > * | fpvTracks = nullptr |
| Pointer to array of reconstructed tracks. | |
| std::shared_ptr< ca::DataManager > | fpIODataManager = nullptr |
| Pointer to input data manager. | |
| std::shared_ptr< const ca::Parameters< double > > | fpParameters = nullptr |
| Pointer to tracking parameters object. | |
| DetIdArr_t< std::unordered_map< int, int > > | fvmHitExtToIntIndexMap |
| Hit index map ext -> int. | |
| DetIdArr_t< int > | fvNofHitsTotal = {{0}} |
| Total hit number in detector. | |
| DetIdArr_t< int > | fvNofHitsUsed = {{0}} |
| Number of used hits in detector. | |
| DetIdArr_t< bool > | fvbUseDet = {{false}} |
| Flag: is detector subsystem used. | |
| ECbmCaTrackingMode | fTrackingMode = ECbmCaTrackingMode::kSTS |
| Tracking mode. | |
| bool | fbSortQaHits = false |
| Flag, if the QA hits must be sorted after reading. | |
| int | fNofHits = 0 |
| Stored number of hits. | |
| int | fNofHitKeys = 0 |
| Recorded number of hit keys. | |
| int | fFirstHitKey = 0 |
| First index of hit key for the detector subsystem. | |
| std::array< int, constants::size::MaxNdetectors+1 > | fvHitFirstIndexDet = {{0}} |
| First hit index in detector. | |
A reader of time slice for CA tracker.
The class reads reconstructed hits and reconstructed tracks (optionally) and fills the CA tracking internal data structures.
Definition at line 44 of file CbmCaTimeSliceReader.h.
|
default |
Constructor from parameters.
| mode | Tracking mode |
|
delete |
Copy constructor.
|
delete |
Move constructor.
|
default |
Destructor.
|
private |
Check class initialization.
Definition at line 73 of file CbmCaTimeSliceReader.cxx.
| void TimeSliceReader::Clear | ( | ) |
Clears class content.
Definition at line 41 of file CbmCaTimeSliceReader.cxx.
|
inline |
Gets reference to container of first hit indexes in a detector subsystem.
Definition at line 70 of file CbmCaTimeSliceReader.h.
|
inline |
Gets number of hits stored for a given detector.
| iDet | Detector ID |
Definition at line 75 of file CbmCaTimeSliceReader.h.
|
inline |
Gets CBM tracking mode.
Definition at line 81 of file CbmCaTimeSliceReader.h.
| bool TimeSliceReader::InitRun | ( | ) |
Run initializer function.
Initializes data branches and provides necessary checks in the beginning of the run
Definition at line 121 of file CbmCaTimeSliceReader.cxx.
|
delete |
Copy assignment operator.
|
delete |
Move assignment operator.
| void TimeSliceReader::ReadEvent | ( | CbmEvent * | pEvent = nullptr | ) |
Reads time slice.
Reads hits and tracks (optionally) from time slice
Definition at line 210 of file CbmCaTimeSliceReader.cxx.
|
private |
Reads hits.
Definition at line 491 of file CbmCaTimeSliceReader.cxx.
|
private |
Reads hits for a given detector subsystem.
| Detector | ID |
Definition at line 375 of file CbmCaTimeSliceReader.cxx.
|
private |
Reads reconstructed tracks.
Definition at line 222 of file CbmCaTimeSliceReader.cxx.
|
inline |
Registers hit index container.
| vHitIds | Reference to hits indexes container |
Definition at line 103 of file CbmCaTimeSliceReader.h.
| void TimeSliceReader::RegisterIODataManager | ( | std::shared_ptr< ca::DataManager > & | ioDataManager | ) |
Registers the CA IO data manager instance.
| pIODataManager | Shared pointer to the IO data manager instance |
Definition at line 340 of file CbmCaTimeSliceReader.cxx.
|
inline |
Registers CA parameters object.
| pParameters | A shared pointer to the parameters object |
Definition at line 107 of file CbmCaTimeSliceReader.h.
|
inline |
Registers hit debug info container.
| vQaHits | Reference to Qa hit container |
Definition at line 98 of file CbmCaTimeSliceReader.h.
|
inline |
Register the reconstructed tracks container.
| vTracks | Reference to reconstructed tracks container |
Definition at line 117 of file CbmCaTimeSliceReader.h.
|
inline |
Sets used detector subsystems.
| detID | Id of detector |
| flag | Flag: true - detector is used |
Definition at line 123 of file CbmCaTimeSliceReader.h.
|
inline |
Sets flag to additionally sort QA hits by stations.
| doSortQaHits | true: hits are sorted |
Definition at line 131 of file CbmCaTimeSliceReader.h.
|
inline |
Sets the tracking mode.
| mode | Tracking mode (from ECbmTrackingMode) |
Definition at line 127 of file CbmCaTimeSliceReader.h.
|
private |
Sorts QA hit objects by stations.
Definition at line 348 of file CbmCaTimeSliceReader.cxx.
|
private |
Saves hit to data structures.
| hitRecord | Filled hit record |
Stores recorded hit information into registered hit containers
Definition at line 561 of file CbmCaTimeSliceReader.cxx.
|
private |
Flag, if the QA hits must be sorted after reading.
Definition at line 191 of file CbmCaTimeSliceReader.h.
|
private |
First index of hit key for the detector subsystem.
Definition at line 196 of file CbmCaTimeSliceReader.h.
|
private |
Recorded number of hit keys.
Definition at line 195 of file CbmCaTimeSliceReader.h.
|
private |
Stored number of hits.
Definition at line 194 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for reconstructed MuCh tracks ("MuchTrack")
Definition at line 171 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for reconstructed tracks ("GlobalTrack", "StsTrack")
Definition at line 169 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for reconstructed STS tracks ("StsTrack")
Definition at line 170 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for reconstructed TOF tracks ("TofTrack")
Definition at line 173 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for reconstructed TRD tracks ("TrdTrack")
Definition at line 172 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to the event object.
Definition at line 162 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to input data manager.
Definition at line 179 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to tracking parameters object.
Definition at line 180 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to array of hit index objects.
Definition at line 176 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to array of debug hits.
Definition at line 177 of file CbmCaTimeSliceReader.h.
|
private |
Pointer to array of reconstructed tracks.
Definition at line 178 of file CbmCaTimeSliceReader.h.
|
private |
Tracking mode.
Definition at line 189 of file CbmCaTimeSliceReader.h.
|
private |
Flag: is detector subsystem used.
Definition at line 187 of file CbmCaTimeSliceReader.h.
|
private |
First hit index in detector.
Definition at line 198 of file CbmCaTimeSliceReader.h.
|
private |
Hit index map ext -> int.
Definition at line 183 of file CbmCaTimeSliceReader.h.
|
private |
Total hit number in detector.
Definition at line 185 of file CbmCaTimeSliceReader.h.
|
private |
Number of used hits in detector.
Definition at line 186 of file CbmCaTimeSliceReader.h.
|
private |
Input branch for hits.
Definition at line 163 of file CbmCaTimeSliceReader.h.