22#include <boost/property_tree/ptree.hpp>
43 void configure(
const boost::property_tree::ptree& config)
override
45 mSamplesNumber = config.get<
size_t>(
"samplesNumber");
46 mCycleSize = config.get<
size_t>(
"cycleSize");
47 if (mSamplesNumber > mCycleSize) {
48 LOG(warn) <<
"Consecutive number of samples is higher than cycle size.";
54 const auto* dpHeader = get<DataProcessingHeader*>(dataRef.
header);
58 return dpHeader->startTime % mCycleSize < mSamplesNumber;
62 size_t mSamplesNumber;
68 return std::make_unique<DataSamplingConditionNConsecutive>();
A definition of DataSamplingConditionFactory.
A standarised data sampling condition, to decide if given data sample should be passed forward.
static std::unique_ptr< DataSamplingCondition > createDataSamplingConditionNConsecutive()
Getter for DataSamplingConditionNConsecutive.
A DataSamplingCondition which approves n consecutive samples in defined cycle. It assumes that timesl...
~DataSamplingConditionNConsecutive() override=default
Default destructor.
bool decide(const o2::framework::DataRef &dataRef) override
Makes a positive decision if 'timeslice ID % cycleSize < samplesNumber' is true.
void configure(const boost::property_tree::ptree &config) override
Reads 'samplesNumber' and 'cycleSize'.
DataSamplingConditionNConsecutive()
Constructor.
A standardised data sampling condition, to decide if given data sample should be passed forward.
Defining PrimaryVertex explicitly as messageable.
A header which contains some meta-data generated by Data Sampling.
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"