|
36 | 36 | #include "TRDBase/TrackletTransformer.h" |
37 | 37 | #include "CommonUtils/TreeStreamRedirector.h" |
38 | 38 | #include "TPCCalibration/VDriftHelper.h" |
39 | | -#include "TPCCalibration/CorrectionMapsLoader.h" |
| 39 | +#include "TPCFastTransformPOD.h" |
40 | 40 | #include "GPUO2ExternalUser.h" |
41 | 41 | #include "GPUO2InterfaceUtils.h" |
42 | 42 | #include "GPUParam.h" |
@@ -117,7 +117,9 @@ class BarrelAlignmentSpec : public Task |
117 | 117 | std::unique_ptr<o2::gpu::GPUParam> mTPCParam; |
118 | 118 |
|
119 | 119 | o2::tpc::VDriftHelper mTPCVDriftHelper{}; |
120 | | - o2::tpc::CorrectionMapsLoader mTPCCorrMapsLoader{}; |
| 120 | + |
| 121 | + std::vector<char> mCorrMapBuffer; // buffer to hold the raw map data from CCDB, needed to keep the pointer valid in the CorrectionMapsHelper |
| 122 | + const o2::gpu::TPCFastTransformPOD* mTPCCorrMaps{}; |
121 | 123 |
|
122 | 124 | // |
123 | 125 | TStopwatch mTimer; |
@@ -264,21 +266,17 @@ void BarrelAlignmentSpec::updateTimeDependentParams(ProcessingContext& pc) |
264 | 266 | } |
265 | 267 |
|
266 | 268 | mTPCVDriftHelper.extractCCDBInputs(pc); |
267 | | - mTPCCorrMapsLoader.extractCCDBInputs(pc); |
268 | | - bool updateMaps = false; |
269 | | - if (mTPCCorrMapsLoader.isUpdated()) { |
270 | | - mTPCCorrMapsLoader.acknowledgeUpdate(); |
271 | | - updateMaps = true; |
272 | | - } |
273 | | - // mController->setTPCCorrMaps(&mTPCCorrMapsLoader); |
| 269 | + |
| 270 | + auto const& raw = pc.inputs().get<const char*>("corrMap"); |
| 271 | + mTPCCorrMaps = &o2::gpu::TPCFastTransformPOD::get(raw); |
| 272 | + mController->setTPCCorrMaps(mTPCCorrMaps); |
274 | 273 | if (mTPCVDriftHelper.isUpdated()) { |
275 | 274 | LOGP(info, "Updating TPC fast transform map with new VDrift factor of {} wrt reference {} and DriftTimeOffset correction {} wrt {} from source {}", |
276 | 275 | mTPCVDriftHelper.getVDriftObject().corrFact, mTPCVDriftHelper.getVDriftObject().refVDrift, |
277 | 276 | mTPCVDriftHelper.getVDriftObject().timeOffsetCorr, mTPCVDriftHelper.getVDriftObject().refTimeOffset, |
278 | 277 | mTPCVDriftHelper.getSourceName()); |
279 | 278 | mController->setTPCVDrift(mTPCVDriftHelper.getVDriftObject()); |
280 | 279 | mTPCVDriftHelper.acknowledgeUpdate(); |
281 | | - updateMaps = true; |
282 | 280 | } |
283 | 281 | } |
284 | 282 | } |
@@ -385,7 +383,7 @@ DataProcessorSpec getBarrelAlignmentSpec(GTrackID::mask_t srcMP, GTrackID::mask_ |
385 | 383 | } |
386 | 384 | if (src[DetID::TPC] && !skipDetClusters[DetID::TPC]) { |
387 | 385 | o2::tpc::VDriftHelper::requestCCDBInputs(dataRequest->inputs); |
388 | | - o2::tpc::CorrectionMapsLoader::requestInputs(dataRequest->inputs, opts); |
| 386 | + dataRequest->inputs.emplace_back("corrMap", o2::header::gDataOriginTPC, "TPCCORRMAP", 0, Lifetime::Timeframe); |
389 | 387 | loadTPCCalib = true; |
390 | 388 | } |
391 | 389 | } |
|
0 commit comments