Skip to content

Commit ca57180

Browse files
committed
AOD: Add TRD debug streamer
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
1 parent bcd0da5 commit ca57180

File tree

2 files changed

+58
-1
lines changed

2 files changed

+58
-1
lines changed

Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,9 @@ class BunchCrossings
210210
}; // end internal class
211211

212212
// Steering bits for additional output during AOD production
213-
enum struct AODProducerStreamerFlags : uint8_t {
213+
enum class AODProducerStreamerFlags : uint8_t {
214214
TrackQA,
215+
TRDExtra,
215216
};
216217

217218
class AODProducerWorkflowDPL : public Task

Detectors/AOD/src/AODProducerWorkflowSpec.cxx

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -396,6 +396,7 @@ void AODProducerWorkflowDPL::addToTRDsExtra(const o2::globaltracking::RecoContai
396396
int q0s[NLAYERS] = {-1}, q1s[NLAYERS] = {-1}, q2s[NLAYERS] = {-1};
397397
float q0sCor[NLAYERS] = {-1}, q1sCor[NLAYERS] = {-1}, q2sCor[NLAYERS] = {-1};
398398
float ttgls[NLAYERS] = {-999}, tphis[NLAYERS] = {-999};
399+
o2::trd::Tracklet64 trkletsa[NLAYERS];
399400

400401
auto contributorsGID = recoData.getSingleDetectorRefs(trkIdx);
401402
if (!contributorsGID[GIndex::Source::TRD].isIndexSet()) { // should be redunant
@@ -416,6 +417,7 @@ void AODProducerWorkflowDPL::addToTRDsExtra(const o2::globaltracking::RecoContai
416417
if (mTRDNoiseMap->isTrackletFromNoisyMCM(tracklet)) {
417418
continue;
418419
}
420+
trkletsa[iLay] = tracklet;
419421
// we need to propagate into TRD local system
420422
int trkltDet = tracklet.getDetector();
421423
int trkltSec = trkltDet / 30;
@@ -454,6 +456,60 @@ void AODProducerWorkflowDPL::addToTRDsExtra(const o2::globaltracking::RecoContai
454456
if (mEnableTRDextra) {
455457
trdExtraCursor(trkTableIdx, q0s, q1s, q2s, q0sCor, q1sCor, q2sCor, ttgls, tphis);
456458
}
459+
460+
if (mStreamerFlags[AODProducerStreamerFlags::TRDExtra]) {
461+
const auto& tpctrk = recoData.getTrack<o2::tpc::TrackTPC>(contributorsGID[GIndex::Source::TPC]);
462+
(*mStreamer) << "trdExtra"
463+
<< "dEdx=" << dEdx
464+
<< "eProb=" << trk.getSignal()
465+
<< "q00=" << q0s[0]
466+
<< "q01=" << q0s[1]
467+
<< "q02=" << q0s[2]
468+
<< "q03=" << q0s[3]
469+
<< "q04=" << q0s[4]
470+
<< "q05=" << q0s[5]
471+
<< "q10=" << q1s[0]
472+
<< "q11=" << q1s[1]
473+
<< "q12=" << q1s[2]
474+
<< "q13=" << q1s[3]
475+
<< "q14=" << q1s[4]
476+
<< "q15=" << q1s[5]
477+
<< "q20=" << q2s[0]
478+
<< "q21=" << q2s[1]
479+
<< "q22=" << q2s[2]
480+
<< "q23=" << q2s[3]
481+
<< "q24=" << q2s[4]
482+
<< "q25=" << q2s[5]
483+
<< "q00Cor=" << q0sCor[0]
484+
<< "q01Cor=" << q0sCor[1]
485+
<< "q02Cor=" << q0sCor[2]
486+
<< "q03Cor=" << q0sCor[3]
487+
<< "q04Cor=" << q0sCor[4]
488+
<< "q05Cor=" << q0sCor[5]
489+
<< "q10Cor=" << q1sCor[0]
490+
<< "q11Cor=" << q1sCor[1]
491+
<< "q12Cor=" << q1sCor[2]
492+
<< "q13Cor=" << q1sCor[3]
493+
<< "q14Cor=" << q1sCor[4]
494+
<< "q15Cor=" << q1sCor[5]
495+
<< "q20Cor=" << q2sCor[0]
496+
<< "q21Cor=" << q2sCor[1]
497+
<< "q22Cor=" << q2sCor[2]
498+
<< "q23Cor=" << q2sCor[3]
499+
<< "q24Cor=" << q2sCor[4]
500+
<< "q25Cor=" << q2sCor[5]
501+
<< "pattern=" << getTRDPattern(trk)
502+
<< "tracklet0=" << trkletsa[0]
503+
<< "tracklet1=" << trkletsa[1]
504+
<< "tracklet2=" << trkletsa[2]
505+
<< "tracklet3=" << trkletsa[3]
506+
<< "tracklet4=" << trkletsa[4]
507+
<< "tracklet5=" << trkletsa[5]
508+
<< "tpctrk=" << tpctrk
509+
<< "trdtrk=" << trk
510+
<< "globaltrk=" << recoData.getTrack<o2::track::TrackParCov>(trkIdx)
511+
<< "\n";
512+
}
457513
}
458514

459515
template <typename mftTracksCursorType, typename AmbigMFTTracksCursorType>

0 commit comments

Comments
 (0)