34 const bool overrideBeamPosition,
36 bool upstreamClusters,
37 bool disableRootOutput,
44 if (!(upstreamDigits || upstreamClusters)) {
47 if (!upstreamClusters) {
50 if (!disableRootOutput) {
61 .runITSTracking =
true,
62 .itsOverrBeamEst = overrideBeamPosition,
66 auto ggRequest = std::make_shared<o2::base::GRPGeomRequest>(
false,
true,
false,
true,
true,
70 ggRequest->addInput({
"itsTGeo",
"ITS",
"GEOMTGEO", 0, Lifetime::Condition,
framework::ccdbParamSpec(
"ITS/Config/Geometry")}, ggInputs);
73 static std::vector<InputSpec> policyData;
74 static std::shared_ptr<o2::gpu::GPURecoWorkflowSpec> task = std::make_shared<o2::gpu::GPURecoWorkflowSpec>(&policyData, cfg, std::vector<int>(), 0, ggRequest);
75 Inputs taskInputs = task->inputs();
76 Options taskOptions = task->options();
77 std::move(ggInputs.begin(), ggInputs.end(), std::back_inserter(taskInputs));
80 .
name =
"its-gpu-tracker",
82 .outputs = task->outputs(),
83 .algorithm =
AlgorithmSpec{adoptTask<o2::gpu::GPURecoWorkflowSpec>(task)},
84 .options = taskOptions});
89 if (!disableRootOutput) {
framework::WorkflowSpec getWorkflow(bool useMC, bool useCMtracker, TrackingMode::Type trmode, const bool overrideBeamPosition=false, bool upstreamDigits=false, bool upstreamClusters=false, bool disableRootOutput=false, bool useGeom=false, int useTrig=0, bool useGPUWF=false, o2::gpu::GPUDataTypes::DeviceType dType=o2::gpu::GPUDataTypes::DeviceType::CPU)
framework::DataProcessorSpec getTrackerSpec(bool useMC, bool useGeom, int useTrig, TrackingMode::Type trMode, const bool overrBeamEst=false, o2::gpu::GPUDataTypes::DeviceType dType=o2::gpu::GPUDataTypes::DeviceType::CPU)