Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -235,11 +235,11 @@ void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx)
o2::framework::DataProcessorSpec o2::cpv::reco_workflow::getRawToDigitConverterSpec(bool askDISTSTF, bool isPedestal, bool useBadChannelMap, bool useGainCalibration)
{
std::vector<o2::framework::InputSpec> inputs;
inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"CPV", "RAWDATA"}, o2::framework::Lifetime::Optional);
//receive at least 1 guaranteed input (which will allow to acknowledge the TF)
if (askDISTSTF) {
inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"CPV", "RAWDATA"}, o2::framework::Lifetime::Optional);
//receive at least 1 guaranteed input (which will allow to acknowledge the TF)
if (!isPedestal) {
inputs.emplace_back("peds", "CPV", "CPV_Pedestals", 0, o2::framework::Lifetime::Condition, o2::framework::ccdbParamSpec("CPV/Calib/Pedestals"));
if (useBadChannelMap) {
Expand Down
4 changes: 2 additions & 2 deletions Detectors/CTP/workflow/src/RawToDigitConverterSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -205,10 +205,10 @@ void RawToDigitConverterSpec::makeGBTWordInverse(std::vector<gbtword80_t>& digle
o2::framework::DataProcessorSpec o2::ctp::reco_workflow::getRawToDigitConverterSpec(bool askDISTSTF)
{
std::vector<o2::framework::InputSpec> inputs;
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"CTP", "RAWDATA"}, o2::framework::Lifetime::Optional);
if (askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"CTP", "RAWDATA"}, o2::framework::Lifetime::Optional);

std::vector<o2::framework::OutputSpec> outputs;
outputs.emplace_back("CTP", "DIGITS", 0, o2::framework::Lifetime::Timeframe);
Expand Down
5 changes: 3 additions & 2 deletions Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -571,10 +571,11 @@ o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverter
outputs.emplace_back(originEMC, "DECODERERR", subspecification, o2::framework::Lifetime::Timeframe);
}

std::vector<o2::framework::InputSpec> inputs{{"stf", o2::framework::ConcreteDataTypeMatcher{originEMC, o2::header::gDataDescriptionRawData}, o2::framework::Lifetime::Optional}};
std::vector<o2::framework::InputSpec> inputs;
if (askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("stf", o2::framework::ConcreteDataTypeMatcher{originEMC, o2::header::gDataDescriptionRawData}, o2::framework::Lifetime::Optional);

return o2::framework::DataProcessorSpec{"EMCALRawToCellConverterSpec",
inputs,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,10 +92,11 @@ framework::DataProcessorSpec getFT0DataReaderDPLSpec(const RawReader& rawReader,
LOG(info) << "DataProcessorSpec initDataProcSpec() for RawReaderFT0";
std::vector<OutputSpec> outputSpec;
RawReader::prepareOutputSpec(outputSpec);
std::vector<InputSpec> inputSpec{{"STF", ConcreteDataTypeMatcher{o2::header::gDataOriginFT0, "RAWDATA"}, Lifetime::Optional}};
std::vector<InputSpec> inputSpec;
if (askSTFDist) {
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("STF", ConcreteDataTypeMatcher{o2::header::gDataOriginFT0, "RAWDATA"}, Lifetime::Optional);
return DataProcessorSpec{
"ft0-datareader-dpl",
inputSpec,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,10 +110,11 @@ framework::DataProcessorSpec getFITDataReaderDPLSpec(const RawReaderType& rawRea
{
std::vector<OutputSpec> outputSpec;
rawReader.configureOutputSpec(outputSpec);
std::vector<InputSpec> inputSpec{{"STF", ConcreteDataTypeMatcher{rawReader.mDataOrigin, "RAWDATA"}, Lifetime::Optional}};
std::vector<InputSpec> inputSpec;
if (askSTFDist) {
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputSpec.emplace_back("STF", ConcreteDataTypeMatcher{rawReader.mDataOrigin, "RAWDATA"}, Lifetime::Optional);
std::string dataProcName = rawReader.mDataOrigin.template as<std::string>();
std::for_each(dataProcName.begin(), dataProcName.end(), [](char& c) { c = ::tolower(c); });
dataProcName += "-datareader-dpl";
Expand Down
4 changes: 2 additions & 2 deletions Detectors/HMPID/workflow/src/DataDecoderSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -280,10 +280,10 @@ void DataDecoderTask::decodeRawFile(framework::ProcessingContext& pc)
o2::framework::DataProcessorSpec getDecodingSpec(bool askDISTSTF)
{
std::vector<o2::framework::InputSpec> inputs;
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"HMP", "RAWDATA"}, o2::framework::Lifetime::Optional);
if (askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"HMP", "RAWDATA"}, o2::framework::Lifetime::Optional);

std::vector<o2::framework::OutputSpec> outputs;
outputs.emplace_back("HMP", "DIGITS", 0, o2::framework::Lifetime::Timeframe);
Expand Down
4 changes: 2 additions & 2 deletions Detectors/HMPID/workflow/src/DataDecoderSpec2.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -336,10 +336,10 @@ void DataDecoderTask2::orderTriggers()
o2::framework::DataProcessorSpec getDecodingSpec2(bool askDISTSTF)
{
std::vector<o2::framework::InputSpec> inputs;
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"HMP", "RAWDATA"}, o2::framework::Lifetime::Optional);
if (askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"HMP", "RAWDATA"}, o2::framework::Lifetime::Optional);

std::vector<o2::framework::OutputSpec> outputs;
outputs.emplace_back("HMP", "DIGITS", 0, o2::framework::Lifetime::Timeframe);
Expand Down
2 changes: 1 addition & 1 deletion Detectors/ITSMFT/common/workflow/src/STFDecoderSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ DataProcessorSpec getSTFDecoderSpec(const STFDecoderInp& inp)
ins.lifetime = Lifetime::Optional;
}
// request the input FLP/DISTSUBTIMEFRAME/0 that is _guaranteed_ to be present, even if none of our raw data is present.
inputs.emplace_back("stfDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.insert(inputs.begin(), InputSpec{"stfDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe}); // Must be inserted before RAWDATA spec
}
inputs.emplace_back("noise", inp.origin, "NOISEMAP", 0, Lifetime::Condition,
o2::framework::ccdbParamSpec(fmt::format("{}/Calib/NoiseMap", inp.origin.as<std::string>())));
Expand Down
2 changes: 1 addition & 1 deletion Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,7 @@ o2::framework::DataProcessorSpec getDecodingSpec(const char* specName, std::stri
if (askSTFDist) {
// request the input FLP/DISTSUBTIMEFRAME/0 that is _guaranteed_
// to be present, even if none of our raw data is present.
inputs.emplace_back("stfDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.insert(inputs.begin(), InputSpec{"stfDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe}); // Must be inserted before RAWDATA spec
}
o2::mch::raw::DataDecoderTask task(inputSpec);
return DataProcessorSpec{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ namespace o2
{
namespace mid
{
inline o2::framework::InputSpec getDiSTSTFSpec()
inline o2::framework::InputSpec getDISTSTFSpec()
{
return {"stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe};
return {"stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe}; // Must be inserted before RAWDATA spec
}

bool isDroppedTF(o2::framework::ProcessingContext& pc, o2::header::DataOrigin origin = o2::header::gDataOriginMID);
Expand Down
2 changes: 1 addition & 1 deletion Detectors/MUON/MID/Workflow/src/RawDecoderSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ class RawDecoderDeviceDPL
of::DataProcessorSpec getRawDecoderSpec(bool isDebugMode, const FEEIdConfig& feeIdConfig, const CrateMasks& crateMasks, const ElectronicsDelay& electronicsDelay, std::vector<of::InputSpec> inputSpecs, bool askDISTSTF, o2::header::DataHeader::SubSpecificationType subSpecType)
{
if (askDISTSTF) {
inputSpecs.emplace_back(getDiSTSTFSpec());
inputSpecs.insert(inputSpecs.begin(), getDISTSTFSpec()); // Must be inserted before RAWDATA spec
}
std::vector<of::OutputSpec> outputSpecs{of::OutputSpec{header::gDataOriginMID, "DECODED", subSpecType, of::Lifetime::Timeframe}, of::OutputSpec{header::gDataOriginMID, "DECODEDROF", subSpecType, of::Lifetime::Timeframe}};
return of::DataProcessorSpec{
Expand Down
4 changes: 2 additions & 2 deletions Detectors/PHOS/workflow/src/EventBuilderSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -185,10 +185,10 @@ void EventBuilderSpec::run(framework::ProcessingContext& ctx)
o2::framework::DataProcessorSpec o2::phos::getEventBuilderSpec()
{
std::vector<o2::framework::InputSpec> inputs;
// output should be anyway generated by raw converter. Or not?
// inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); // Must be before RAWDATA spec
inputs.emplace_back("inputcells", "PHS", "CELLS", 1, o2::framework::Lifetime::Optional); // Input subspec 1, output subspec 0
inputs.emplace_back("inputtriggers", "PHS", "CELLTRIGREC", 1, o2::framework::Lifetime::Optional); // Input subspec 1, output subspec 0
// output should be anyway generated by raw converter. Or not?
// inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);

o2::framework::Outputs outputs{
{o2::header::gDataOriginPHS, "CELLS", 0, o2::framework::Lifetime::Timeframe}, // output is zero subspec
Expand Down
4 changes: 2 additions & 2 deletions Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -268,9 +268,9 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx)
o2::framework::DataProcessorSpec o2::phos::reco_workflow::getRawToCellConverterSpec(unsigned int flpId)
{
std::vector<o2::framework::InputSpec> inputs;
inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"PHS", "RAWDATA"}, o2::framework::Lifetime::Optional);
// receive at least 1 guaranteed input (which will allow to acknowledge the TF)
inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe);
inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); // Must be before RAWDATA spec
inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"PHS", "RAWDATA"}, o2::framework::Lifetime::Optional);

std::vector<o2::framework::OutputSpec> outputs;
outputs.emplace_back("PHS", "CELLS", flpId, o2::framework::Lifetime::Timeframe);
Expand Down
2 changes: 1 addition & 1 deletion Detectors/TOF/compression/src/tof-compressor.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
for (auto& val : inputs) {
val.lifetime = Lifetime::Optional;
}
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.insert(inputs.begin(), InputSpec{"stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe}); // Must be inserted before RAWDATA spec
}
workflow.emplace_back(DataProcessorSpec{
std::string("tof-compressor-") + std::to_string(idevice),
Expand Down
2 changes: 1 addition & 1 deletion Detectors/TOF/workflow/src/CompressedDecodingTask.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ DataProcessorSpec getCompressedDecodingSpec(const std::string& inputDesc, bool c
{
std::vector<InputSpec> inputs;
if (askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be inserted before RAWDATA / CRAWDATA spec
}

// inputs.emplace_back(std::string("x:TOF/" + inputDesc).c_str(), 0, Lifetime::Optional);
Expand Down
2 changes: 1 addition & 1 deletion Detectors/TRD/reconstruction/src/DataReader.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
inp.lifetime = Lifetime::Optional;
}
if (askSTFDist) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.insert(inputs.begin(), InputSpec{"stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe}); // Must be inserted before RAWDATA spec
}
workflow.emplace_back(DataProcessorSpec{
std::string("trd-datareader"), // left as a string cast incase we append stuff to the string
Expand Down
5 changes: 3 additions & 2 deletions Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,11 @@ framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawRead
LOG(info) << "DataProcessorSpec initDataProcSpec() for RawReaderZDC";
std::vector<OutputSpec> outputSpec;
RawReaderZDC::prepareOutputSpec(outputSpec);
std::vector<InputSpec> inputSpec{{"STF", ConcreteDataTypeMatcher{o2::header::gDataOriginZDC, "RAWDATA"}, Lifetime::Optional}};
std::vector<InputSpec> inputSpec;
if (askSTFDist) {
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputSpec.emplace_back("STF", ConcreteDataTypeMatcher{o2::header::gDataOriginZDC, "RAWDATA"}, Lifetime::Optional);
return DataProcessorSpec{
"zdc-datareader-dpl",
inputSpec,
Expand Down
4 changes: 2 additions & 2 deletions GPU/Workflow/src/GPUWorkflowSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -993,10 +993,10 @@ DataProcessorSpec getGPURecoWorkflowSpec(gpuworkflow::CompletionPolicyData* poli
if (specconfig.zsDecoder) {
// All ZS raw data is published with subspec 0 by the o2-raw-file-reader-workflow and DataDistribution
// creates subspec fom CRU and endpoint id, we create one single input route subscribing to all TPC/RAWDATA
inputs.emplace_back(InputSpec{"zsraw", ConcreteDataTypeMatcher{"TPC", "RAWDATA"}, Lifetime::Optional});
if (specconfig.askDISTSTF) {
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe);
inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); // Must be before RAWDATA spec
}
inputs.emplace_back(InputSpec{"zsraw", ConcreteDataTypeMatcher{"TPC", "RAWDATA"}, Lifetime::Optional});
}
if (specconfig.zsOnTheFly) {
inputs.emplace_back(InputSpec{"zsinput", ConcreteDataTypeMatcher{"TPC", "TPCZS"}, Lifetime::Timeframe});
Expand Down