33 const bool overrBeamEst,
35 mRecChain{
o2::gpu::GPUReconstruction::CreateInstance(dType, true)},
36 mITSTrackingInterface{isMC, doStag, trgType, overrBeamEst}
89 LOGF(info,
"ITS CA-Tracker total timing: Cpu: %.3e Real: %.3e s in %d slots", mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1);
95 std::vector<InputSpec> inputs;
96 for (
int iLayer = 0; iLayer < mLayers; ++iLayer) {
97 inputs.emplace_back(
"compClusters",
"ITS",
"COMPCLUSTERS", iLayer, Lifetime::Timeframe);
98 inputs.emplace_back(
"patterns",
"ITS",
"PATTERNS", iLayer, Lifetime::Timeframe);
99 inputs.emplace_back(
"ROframes",
"ITS",
"CLUSTERSROF", iLayer, Lifetime::Timeframe);
101 inputs.emplace_back(
"itsmclabels",
"ITS",
"CLUSTERSMCTR", iLayer, Lifetime::Timeframe);
105 inputs.emplace_back(
"phystrig",
"ITS",
"PHYSTRIG", 0, Lifetime::Timeframe);
106 }
else if (trgType == 2) {
107 inputs.emplace_back(
"phystrig",
"TRD",
"TRKTRGRD", 0, Lifetime::Timeframe);
109 inputs.emplace_back(
"itscldict",
"ITS",
"CLUSDICT", 0, Lifetime::Condition,
ccdbParamSpec(
"ITS/Calib/ClusterDictionary"));
110 inputs.emplace_back(
"itsalppar",
"ITS",
"ALPIDEPARAM", 0, Lifetime::Condition,
ccdbParamSpec(
"ITS/Config/AlpideParam"));
111 auto ggRequest = std::make_shared<o2::base::GRPGeomRequest>(
false,
120 ggRequest->addInput({
"itsTGeo",
"ITS",
"GEOMTGEO", 0, Lifetime::Condition,
framework::ccdbParamSpec(
"ITS/Config/Geometry")}, inputs);
123 inputs.emplace_back(
"meanvtx",
"GLO",
"MEANVERTEX", 0, Lifetime::Condition,
ccdbParamSpec(
"GLO/Calib/MeanVertex", {}, 1));
126 std::vector<OutputSpec> outputs;
127 outputs.emplace_back(
"ITS",
"TRACKS", 0, Lifetime::Timeframe);
128 outputs.emplace_back(
"ITS",
"TRACKCLSID", 0, Lifetime::Timeframe);
129 outputs.emplace_back(
"ITS",
"ITSTrackROF", 0, Lifetime::Timeframe);
130 outputs.emplace_back(
"ITS",
"VERTICES", 0, Lifetime::Timeframe);
131 outputs.emplace_back(
"ITS",
"VERTICESROF", 0, Lifetime::Timeframe);
132 outputs.emplace_back(
"ITS",
"IRFRAMES", 0, Lifetime::Timeframe);
134 outputs.emplace_back(
"ITS",
"VERTICESMCTR", 0, Lifetime::Timeframe);
135 outputs.emplace_back(
"ITS",
"VERTICESMCPUR", 0, Lifetime::Timeframe);
136 outputs.emplace_back(
"ITS",
"TRACKSMCTR", 0, Lifetime::Timeframe);
140 .
name =
"its-tracker",
143 .algorithm =
AlgorithmSpec{adaptFromTask<TrackerDPL>(ggRequest,
ServiceRegistryRef services()
The services registry associated with this processing context.
TrackerDPL(std::shared_ptr< o2::base::GRPGeomRequest > gr, bool isMC, bool doStag, int trgType, const TrackingMode::Type trMode=TrackingMode::Unset, const bool overrBeamEst=false, o2::gpu::gpudatatypes::DeviceType dType=o2::gpu::gpudatatypes::DeviceType::CPU)
framework::DataProcessorSpec getTrackerSpec(bool useMC, bool doStag, bool useGeom, int useTrig, TrackingMode::Type trMode, const bool overrBeamEst=false, o2::gpu::gpudatatypes::DeviceType dType=o2::gpu::gpudatatypes::DeviceType::CPU)