17#ifndef O2_FIT_DCSCONFIGPROCESSORSPEC_H
18#define O2_FIT_DCSCONFIGPROCESSORSPEC_H
44 : mDetectorName(detectorName),
45 mDataDescriptionDChM(dataDescriptionDChM) {}
50 mDCSConfigReader->setFileNameDChM(ic.options().get<
string>(
"filename-dchm"));
51 mDCSConfigReader->setValidDaysDChM(ic.options().get<uint>(
"valid-days-dchm"));
53 mVerbose = ic.options().get<
bool>(
"use-verbose-mode");
55 mValidateUpload = !ic.options().get<
bool>(
"no-validate");
58 LOG(info) <<
"Verbose mode: " << mVerbose;
59 LOG(info) <<
"Validate upload: " << mValidateUpload;
60 LOG(info) <<
"Expected dead channel map file name: " <<
mDCSConfigReader->getFileNameDChM();
61 LOG(info) <<
"Dead channel maps will be valid for " <<
mDCSConfigReader->getValidDaysDChM() <<
" days";
67 auto timeNow = std::chrono::high_resolution_clock::now();
69 if (dataTime == 0xffffffffffffffff) {
70 dataTime = std::chrono::duration_cast<std::chrono::milliseconds>(timeNow.time_since_epoch()).count();
74 gsl::span<const char> configBuf = pc.inputs().get<gsl::span<char>>(
"inputConfig");
75 std::string configFileName = pc.inputs().get<std::string>(
"inputConfigFileName");
76 LOG(info) <<
"Got input file " << configFileName <<
" of size " << configBuf.size();
80 processDChM(dataTime, configBuf);
81 sendDChMOutput(pc.outputs());
85 LOG(error) <<
"Unknown input file: " << configFileName;
105 void processDChM(
const long& dataTime, gsl::span<const char> configBuf)
109 LOG(info) <<
"Start validity for DCS data set to = " << dataTime;
123 LOG(info) <<
"Sending object " << info.getPath() <<
"/" << info.getFileName() <<
" of size " <<
image->size()
124 <<
" bytes, valid for " << info.getStartValidityTimestamp() <<
" : " << info.getEndValidityTimestamp();
129 std::string mDetectorName;
131 bool mVerbose =
false;
132 bool mValidateUpload =
true;
Utils and constants for calibration and related workflows.
DCS configuration reader for FIT.
static std::unique_ptr< std::vector< char > > createObjectImage(const T *obj, CcdbObjectInfo *info=nullptr)
std::unique_ptr< FITDCSConfigReader > mDCSConfigReader
Reader for the DCS configurations.
void endOfStream(o2::framework::EndOfStreamContext &ec) final
This is invoked whenever we have an EndOfStream event.
FITDCSConfigProcessor(const std::string &detectorName, const o2::header::DataDescription &dataDescriptionDChM)
virtual void initDCSConfigReader()
void init(o2::framework::InitContext &ic) final
void run(o2::framework::ProcessingContext &pc) final
Defining PrimaryVertex explicitly as messageable.
TFitResultPtr fit(const size_t nBins, const T *arr, const T xMin, const T xMax, TF1 &func, std::string_view option="")
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
static constexpr o2::header::DataOrigin gDataOriginCDBWrapper
static constexpr o2::header::DataOrigin gDataOriginCDBPayload
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"