Skip to content

Commit d16fc8d

Browse files
committed
Optional ordered completion policy for output-proxy
1 parent 09e50c8 commit d16fc8d

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

Framework/Utils/src/dpl-output-proxy.cxx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
#include "Framework/Logger.h"
1515
#include "Framework/ConfigParamSpec.h"
1616
#include "Framework/ExternalFairMQDeviceProxy.h"
17+
#include "Framework/CompletionPolicy.h"
18+
#include "Framework/CompletionPolicyHelpers.h"
1719
#include <vector>
1820

1921
using namespace o2::framework;
@@ -48,6 +50,18 @@ void customize(std::vector<ConfigParamSpec>& workflowOptions)
4850
workflowOptions.push_back(
4951
ConfigParamSpec{
5052
"default-port", VariantType::Int, 4200, {"default port number"}});
53+
54+
/* workflowOptions.push_back( // Cannot read option in customize function, so using an env variable for now
55+
ConfigParamSpec{
56+
"ordered-completion-policy", VariantType::Bool, false, {"Use the ordered completion policy for the input"}});*/
57+
}
58+
59+
void customize(std::vector<o2::framework::CompletionPolicy>& policies)
60+
{
61+
static bool doOrdered = getenv("DPL_OUTPUT_PROXY_ORDERED") && atoi(getenv("DPL_OUTPUT_PROXY_ORDERED"));
62+
if (doOrdered) {
63+
policies.push_back(CompletionPolicyHelpers::consumeWhenAllOrdered(".*"));
64+
}
5165
}
5266

5367
#include "Framework/runDataProcessing.h"

0 commit comments

Comments
 (0)