2929#include " ITSBase/GeometryTGeo.h"
3030#include " TPCFastTransform.h"
3131#include " TPCReconstruction/TPCFastTransformHelperO2.h"
32+ #include " DataFormatsTPC/VDriftCorrFact.h"
3233#include " Framework/AnalysisDataModel.h"
3334#include " DetectorsVertexing/PVertexerParams.h"
3435
@@ -124,27 +125,17 @@ class EveWorkflowHelper
124125
125126 using AODMFTTracks = aod::MFTTracks;
126127 using AODMFTTrack = AODMFTTracks::iterator;
127-
128- enum Filter : uint8_t {
129- ITSROF,
130- TimeBracket,
131- EtaBracket,
132- TotalNTracks,
133- NFilters
134- };
135-
136- using FilterSet = std::bitset<Filter::NFilters>;
137-
138128 using Bracket = o2::math_utils::Bracketf_t;
139129
140- EveWorkflowHelper (const FilterSet& enabledFilters = {}, std:: size_t maxNTracks = - 1 , const Bracket& timeBracket = {}, const Bracket& etaBracket = {}, bool primaryVertexMode = false );
130+ EveWorkflowHelper ();
141131 static std::vector<PNT> getTrackPoints (const o2::track::TrackPar& trc, float minR, float maxR, float maxStep, float minZ = -25000 , float maxZ = 25000 );
132+ void setTPCVDrift (const o2::tpc::VDriftCorrFact* v);
142133 void selectTracks (const CalibObjectsConst* calib, GID::mask_t maskCl, GID::mask_t maskTrk, GID::mask_t maskMatch);
143134 void selectTowers ();
144135 void setITSROFs ();
145136 void addTrackToEvent (const o2::track::TrackPar& tr, GID gid, float trackTime, float dz, GID::Source source = GID::NSources, float maxStep = 4 .f);
146137 void draw (std::size_t primaryVertexIdx, bool sortTracks);
147- void drawTPC (GID gid, float trackTime);
138+ void drawTPC (GID gid, float trackTime, float dz = 0 .f );
148139 void drawITS (GID gid, float trackTime);
149140 void drawMFT (GID gid, float trackTime);
150141 void drawMCH (GID gid, float trackTime);
@@ -170,7 +161,7 @@ class EveWorkflowHelper
170161 void drawMFTTrack (GID gid, o2::track::TrackParFwd track, float trackTime);
171162 void drawForwardTrack (GID gid, mch::TrackParam track, float startZ, float endZ, float trackTime);
172163 void drawITSClusters (GID gid);
173- void drawTPCClusters (GID gid);
164+ void drawTPCClusters (GID gid, float trackTimeTB = - 2 . e9 ); // if trackTimeTB<-1.e9, then use tpcTrack.getTime0()
174165 void drawMFTClusters (GID gid);
175166 void drawMCHClusters (GID gid);
176167 void drawMIDClusters (GID gid);
@@ -194,17 +185,14 @@ class EveWorkflowHelper
194185
195186 void save (const std::string& jsonPath, const std::string& ext, int numberOfFiles);
196187
197- FilterSet mEnabledFilters ;
198- std::size_t mMaxNTracks ;
199- Bracket mTimeBracket ;
200- Bracket mEtaBracket ;
201- bool mPrimaryVertexMode ;
188+ bool mUseTimeBracket = false ;
189+ bool mUseEtaBracketTPC = false ;
190+ Bracket mTimeBracket {};
191+ Bracket mEtaBracketTPC ;
202192 const o2::globaltracking::RecoContainer* mRecoCont = nullptr ;
203193 const o2::globaltracking::RecoContainer* getRecoContainer () const { return mRecoCont ; }
204194 void setRecoContainer (const o2::globaltracking::RecoContainer* rc) { mRecoCont = rc; }
205195 void setEMCALCellRecalibrator (o2::emcal::CellRecalibrator* calibrator) { mEMCALCalib = calibrator; }
206- void setMaxEMCALCellTime (float maxtime) { mEMCALMaxCellTime = maxtime; }
207- void setMinEMCALCellEnergy (float minenergy) { mEMCALMinCellEnergy = minenergy; }
208196 TracksSet mTrackSet ;
209197 o2::event_visualisation::VisualisationEvent mEvent ;
210198 std::unordered_map<GID, std::size_t > mTotalDataTypes ;
@@ -220,13 +208,12 @@ class EveWorkflowHelper
220208 o2::phos::Geometry* mPHOSGeom ;
221209 o2::emcal::Geometry* mEMCALGeom ;
222210 o2::emcal::CellRecalibrator* mEMCALCalib = nullptr ;
223-
224- float mMUS2TPCTimeBins = 5.0098627 ;
211+ const o2::tpc::VDriftCorrFact* mTPCVDrift = nullptr ;
212+ float mMUS2TPCTimeBins = 5 .0098627f ;
213+ float mTPCTimeBins2MUS = 0 .199606f ;
225214 float mITSROFrameLengthMUS = 0 ; // /< ITS RO frame in mus
226215 float mMFTROFrameLengthMUS = 0 ; // /< MFT RO frame in mus
227216 float mTPCBin2MUS = 0 ;
228- float mEMCALMaxCellTime = 100 .; // /< EMCAL cell time cut (in ns)
229- float mEMCALMinCellEnergy = 0.3 ; // /< EMCAL cell energy cut (in GeV)
230217 static int BCDiffErrCount;
231218 const o2::vertexing::PVertexerParams* mPVParams = nullptr ;
232219};
0 commit comments