21void customize(std::vector<o2::framework::CallbacksPolicy>& policies)
26void customize(std::vector<o2::framework::CompletionPolicy>& policies)
33void customize(std::vector<o2::framework::ConfigParamSpec>& workflowOptions)
36 std::vector<o2::framework::ConfigParamSpec> options{
44 {
"configKeyValues", VariantType::String,
"", {
"Semicolon separated key=value strings"}},
45 {
"nThreads", VariantType::Int, 1, {
"Number of threads"}},
50 std::swap(workflowOptions, options);
62 auto useMC = !configcontext.
options().
get<
bool>(
"disable-mc");
63 auto extDigits = configcontext.
options().
get<
bool>(
"digits-from-upstream");
64 auto extClusters = configcontext.
options().
get<
bool>(
"clusters-from-upstream");
65 auto disableRootOutput = configcontext.
options().
get<
bool>(
"disable-root-output");
66 auto runAssessment = configcontext.
options().
get<
bool>(
"run-assessment");
67 auto processGen = !configcontext.
options().
get<
bool>(
"disable-process-gen");
68 auto runTracking = !configcontext.
options().
get<
bool>(
"disable-tracking");
69 auto nThreads = configcontext.
options().
get<
int>(
"nThreads");
70 auto runTracks2Records = configcontext.
options().
get<
bool>(
"run-tracks2records");
71 auto useGeom = configcontext.
options().
get<
bool>(
"use-full-geometry");
static void writeINI(std::string const &filename, std::string const &keyOnly="")
static void updateFromString(std::string const &)
ConfigParamRegistry & options() const
T get(const char *key) const
WorkflowSpec defineDataProcessing(ConfigContext const &configcontext)
void customize(std::vector< o2::framework::CallbacksPolicy > &policies)
Defining ITS Vertex explicitly as messageable.
std::vector< DataProcessorSpec > WorkflowSpec
framework::WorkflowSpec getWorkflow(bool useMC, bool doStag, bool useGeom, bool upstreamDigits, bool upstreamClusters, bool disableRootOutput, bool runAssessment, bool processGen, bool runTracking, int nThreads, bool runTracks2Records)
static CompletionPolicy consumeWhenAllOrdered(const char *name, CompletionPolicy::Matcher matcher)
as consumeWhenAll, but ensures that records are processed with incremental timeSlice (DataHeader::sta...
static void addMFTConfigOption(std::vector< o2::framework::ConfigParamSpec > &opts)
static bool isMFTStaggeringEnabled(o2::framework::ConfigContext const &cfgc)
static void addNewTimeSliceCallback(std::vector< o2::framework::CallbacksPolicy > &policies)
static void addConfigOption(std::vector< o2::framework::ConfigParamSpec > &opts, const std::string &defOpt=std::string(o2::base::NameConf::DIGITIZATIONCONFIGFILE))