13#include <unordered_map>
16#include <fairlogger/Logger.h>
47namespace reco_workflow
50const std::unordered_map<std::string, InputType>
InputMap{
55const std::unordered_map<std::string, OutputType>
OutputMap{
64 bool useBadChannelMap,
65 bool useGainCalibration,
66 std::string
const& cfgInput,
67 std::string
const& cfgOutput)
73 }
catch (std::out_of_range&) {
74 throw std::invalid_argument(std::string(
"invalid input type: ") + cfgInput);
76 std::vector<OutputType> outputTypes;
78 outputTypes = RangeTokenizer::tokenize<OutputType>(cfgOutput, [](std::string
const& token) {
return OutputMap.at(token); });
79 }
catch (std::out_of_range&) {
80 throw std::invalid_argument(std::string(
"invalid output type: ") + cfgOutput);
83 return std::find(outputTypes.begin(), outputTypes.end(),
type) != outputTypes.end();
94 if (!disableRootOut) {
102 if (!disableRootOut) {
110 if (!disableRootInp) {
118 if (!disableRootOut) {
Definition of a container to keep Monte Carlo truth external to simulation objects.
Configurable generator for RootTreeWriter processor spec.
Helper function to tokenize sequences and ranges of integral numbers.
GLint GLint GLsizei GLint GLenum GLenum type
framework::DataProcessorSpec getClusterizerSpec(bool propagateMC)
Creating DataProcessorSpec for the CPV Clusterizer Spec.
const std::unordered_map< std::string, OutputType > OutputMap
framework::WorkflowSpec getWorkflow(bool disableRootInp, bool disableRootOut, bool propagateMC=true, bool askSTFDist=true, bool isPedestal=false, bool useBadChannelMap=true, bool useGainCalibration=true, std::string const &cfgInput="digits", std::string const &cfgOutput="clusters")
create the workflow for CPV reconstruction
InputType
define input and output types of the workflow
const std::unordered_map< std::string, InputType > InputMap
o2::framework::DataProcessorSpec getRawToDigitConverterSpec(bool askDISTSTF=true, bool isPedestal=false, bool useBadChannelMap=true, bool useGainCalibration=true)
Creating DataProcessorSpec for the CPV Digit Converter Spec.
framework::DataProcessorSpec getClusterWriterSpec(bool useMC)
framework::DataProcessorSpec getDigitWriterSpec(bool useMC)
framework::DataProcessorSpec getCPVDigitReaderSpec(bool useMC=true)
std::vector< DataProcessorSpec > WorkflowSpec
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...