![]() |
Project
|
#include <boost/program_options.hpp>
#include <boost/lexical_cast.hpp>
#include "Framework/RootSerializationSupport.h"
#include "DetectorsBase/Propagator.h"
#include "Framework/WorkflowSpec.h"
#include "Framework/ConfigParamSpec.h"
#include "Framework/CompletionPolicy.h"
#include "Framework/CompletionPolicyHelpers.h"
#include "Framework/DeviceSpec.h"
#include "Framework/InputSpec.h"
#include "Algorithm/RangeTokenizer.h"
#include "SimReaderSpec.h"
#include "DetectorsCommonDataFormats/DetID.h"
#include "CommonUtils/NameConf.h"
#include "CommonUtils/ConfigurableParam.h"
#include "DetectorsRaw/HBFUtils.h"
#include "CCDB/BasicCCDBManager.h"
#include "TPCDigitizerSpec.h"
#include "TPCDigitRootWriterSpec.h"
#include "TPCBase/Sector.h"
#include "TPCBase/CDBInterface.h"
#include "TPCSimulation/GEMAmplification.h"
#include "ITSMFTDigitizerSpec.h"
#include "ITSMFTWorkflow/DigitWriterSpec.h"
#include "TOFDigitizerSpec.h"
#include "TOFWorkflowIO/TOFDigitWriterSpec.h"
#include "FT0DigitizerSpec.h"
#include "FT0DigitWriterSpec.h"
#include "CTPDigitizerSpec.h"
#include "CTPWorkflowIO/DigitWriterSpec.h"
#include "FV0DigitizerSpec.h"
#include "FV0DigitWriterSpec.h"
#include "FDDDigitizerSpec.h"
#include "FDDWorkflow/DigitWriterSpec.h"
#include "EMCALWorkflow/EMCALDigitizerSpec.h"
#include "EMCALWorkflow/EMCALDigitWriterSpec.h"
#include "HMPIDDigitizerSpec.h"
#include "HMPIDDigitWriterSpec.h"
#include "TRDWorkflow/TRDDigitizerSpec.h"
#include "TRDWorkflowIO/TRDDigitWriterSpec.h"
#include "TRDWorkflow/TRDTrapSimulatorSpec.h"
#include "TRDWorkflowIO/TRDTrackletWriterSpec.h"
#include "MCHDigitizerSpec.h"
#include "MCHIO/DigitWriterSpec.h"
#include "MIDDigitizerSpec.h"
#include "MIDDigitWriterSpec.h"
#include "PHOSDigitizerSpec.h"
#include "PHOSDigitWriterSpec.h"
#include "CPVDigitizerSpec.h"
#include "CPVDigitWriterSpec.h"
#include "ZDCDigitizerSpec.h"
#include "ZDCWorkflow/ZDCDigitWriterDPLSpec.h"
#include "DataFormatsParameters/GRPObject.h"
#include "GRPUpdaterSpec.h"
#include <cstdlib>
#include <thread>
#include <string>
#include <sstream>
#include <cmath>
#include <unistd.h>
#include <type_traits>
#include "DetectorsBase/DPLWorkflowUtils.h"
#include "Framework/CCDBParamSpec.h"
#include "Framework/runDataProcessing.h"
Go to the source code of this file.
Classes | |
struct | DetFilterer |
Variables | |
bool | gIsMaster = false |
DetFilterer blacklister | ( | std::string | optionVal, |
std::string | unsetValue, | ||
char | separator | ||
) |
Definition at line 414 of file SimpleDigitizerWorkflow.cxx.
void customize | ( | std::vector< o2::framework::CallbacksPolicy > & | policies | ) |
Definition at line 243 of file SimpleDigitizerWorkflow.cxx.
void customize | ( | std::vector< o2::framework::CompletionPolicy > & | policies | ) |
Definition at line 127 of file SimpleDigitizerWorkflow.cxx.
void customize | ( | std::vector< o2::framework::ConfigParamSpec > & | workflowOptions | ) |
Definition at line 140 of file SimpleDigitizerWorkflow.cxx.
void customize | ( | std::vector< o2::framework::DispatchPolicy > & | policies | ) |
Definition at line 221 of file SimpleDigitizerWorkflow.cxx.
WorkflowSpec defineDataProcessing | ( | ConfigContext const & | configcontext | ) |
This function hooks up the the workflow specifications into the DPL driver.
This function is required to be implemented to define the workflow specifications
We define at run time the number of devices to be attached to the workflow and the input matching string of the device. This is is done with a configuration string like the following one, where the input matching for each device is provide in comma-separated strings. For instance
A:TOF/RAWDATA/768;B:TOF/RAWDATA/1024,C:TOF/RAWDATA/1280;D:TOF/RAWDATA/1536
will lead to a workflow with 2 devices which will input match
tof-compressor-0 --> A:TOF/RAWDATA/768;B:TOF/RAWDATA/1024 tof-compressor-1 --> C:TOF/RAWDATA/1280;D:TOF/RAWDATA/1536
This gets a table handle from the message.
From the handle, we construct the actual arrow table which is then used as a source for the RDataFrame. This is probably easy to change to a:
auto rdf = ctx.inputs().get<RDataSource>("xz");
Get the input from the converter.
Get a table builder to build the results
Definition at line 423 of file SimpleDigitizerWorkflow.cxx.
Definition at line 322 of file SimpleDigitizerWorkflow.cxx.
int getNumTPCLanes | ( | std::vector< int > const & | sectors, |
ConfigContext const & | configcontext | ||
) |
Definition at line 270 of file SimpleDigitizerWorkflow.cxx.
void initTPC | ( | ) |
Definition at line 285 of file SimpleDigitizerWorkflow.cxx.
Definition at line 313 of file SimpleDigitizerWorkflow.cxx.
std::shared_ptr< o2::parameters::GRPObject > readGRP | ( | std::string const & | inputGRP | ) |
Definition at line 331 of file SimpleDigitizerWorkflow.cxx.
void setTimingInfoInHeaders | ( | o2::header::DataHeader & | dh, |
o2::framework::DataProcessingHeader & | dph | ||
) |
Definition at line 231 of file SimpleDigitizerWorkflow.cxx.
std::vector< std::string > splitString | ( | std::string const & | src, |
char | sep | ||
) |
Definition at line 347 of file SimpleDigitizerWorkflow.cxx.
DetFilterer whitelister | ( | std::string | optionVal, |
std::string | unsetValue, | ||
char | separator | ||
) |
Definition at line 408 of file SimpleDigitizerWorkflow.cxx.
bool gIsMaster = false |
Definition at line 120 of file SimpleDigitizerWorkflow.cxx.