File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -82,7 +82,7 @@ class TaskRunner : public framework::Task
8282 void run (framework::ProcessingContext& pCtx) override ;
8383
8484 // / \brief TaskRunner's completion policy callback
85- static framework::CompletionPolicy::CompletionOp completionPolicyCallback (gsl::span< framework::PartRef const > const & inputs);
85+ static framework::CompletionPolicy::CompletionOp completionPolicyCallback (o2:: framework::CompletionPolicy::InputSet inputs);
8686
8787 std::string getDeviceName () { return mDeviceName ; };
8888 const framework::Inputs& getInputsSpecs () { return mInputSpecs ; };
Original file line number Diff line number Diff line change 2424#include < Monitoring/MonitoringFactory.h>
2525#include < Framework/DataSampling.h>
2626#include < Framework/CallbackService.h>
27+ #include < Framework/CompletionPolicyHelpers.h>
2728#include < Framework/TimesliceIndex.h>
2829#include < Framework/DataSpecUtils.h>
2930#include < Framework/DataDescriptorQueryBuilder.h>
@@ -110,7 +111,7 @@ void TaskRunner::run(ProcessingContext& pCtx)
110111 }
111112}
112113
113- CompletionPolicy::CompletionOp TaskRunner::completionPolicyCallback (gsl::span<PartRef const > const & inputs)
114+ CompletionPolicy::CompletionOp TaskRunner::completionPolicyCallback (o2::framework::CompletionPolicy::InputSet inputs)
114115{
115116 // fixme: we assume that there is one timer input and the rest are data inputs. If some other implicit inputs are
116117 // added, this will break.
@@ -125,7 +126,7 @@ CompletionPolicy::CompletionOp TaskRunner::completionPolicyCallback(gsl::span<Pa
125126 continue ;
126127 }
127128
128- const auto * dataHeader = get <DataHeader* >(input. header . get ()-> GetData () );
129+ const auto * dataHeader = CompletionPolicyHelpers::getHeader <DataHeader>(input);
129130 assert (dataHeader);
130131
131132 if (!strncmp (dataHeader->dataDescription .str , " TIMER" , 5 )) {
Original file line number Diff line number Diff line change 3434#include < Framework/CompletionPolicyHelpers.h>
3535#include < Framework/DataSampling.h>
3636#include < Framework/DataSpecUtils.h>
37+ #include < Framework/CompletionPolicyHelpers.h>
3738#include " QualityControl/InfrastructureGenerator.h"
3839
3940using namespace o2 ;
@@ -48,16 +49,7 @@ void customize(std::vector<CompletionPolicy>& policies)
4849{
4950 DataSampling::CustomizeInfrastructure (policies);
5051 quality_control::customizeInfrastructure (policies);
51- CompletionPolicy mergerConsumesASAP{
52- " mergers-always-consume" ,
53- [](DeviceSpec const & device) {
54- return device.name .find (" merger" ) != std::string::npos;
55- },
56- [](gsl::span<PartRef const > const & /* inputs*/ ) {
57- return CompletionPolicy::CompletionOp::Consume;
58- }
59- };
60- policies.push_back (mergerConsumesASAP);
52+ policies.push_back (CompletionPolicyHelpers::defineByName (" .*merger.*" , CompletionPolicy::CompletionOp::Consume));
6153}
6254
6355void customize (std::vector<ChannelConfigurationPolicy>& policies)
@@ -169,4 +161,4 @@ WorkflowSpec defineDataProcessing(ConfigContext const&)
169161 quality_control::generateRemoteInfrastructure (specs, qcConfigurationSource);
170162
171163 return specs;
172- }
164+ }
You can’t perform that action at this time.
0 commit comments