Project
Loading...
Searching...
No Matches
PHOSRunbyrunCalibDevice.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef O2_CALIBRATION_PHOSRUNBYRUN_CALIBDEV_H
13#define O2_CALIBRATION_PHOSRUNBYRUN_CALIBDEV_H
14
17
18#include "Framework/Task.h"
26
27using namespace o2::framework;
28
29namespace o2
30{
31namespace phos
32{
33
35{
36 public:
37 PHOSRunbyrunCalibDevice(std::shared_ptr<o2::base::GRPGeomRequest> req, const std::string& outputDir, const std::string& metaFileDir, bool writeRootOutput) : mWriteRootOutput(writeRootOutput), mOutputDir(outputDir), mMetaFileDir(metaFileDir), mCCDBRequest(req) {}
38
40
42
44
49
50 protected:
51 bool checkFitResult();
52
53 private:
54 bool mUseCCDB = false;
55 bool mWriteRootOutput = true;
56 std::string mOutputDir;
57 std::string mMetaFileDir;
58 unsigned long mRunStartTime = 0;
59 std::array<float, 8> mRunByRun;
60 std::unique_ptr<PHOSRunbyrunCalibrator> mCalibrator;
61 std::shared_ptr<o2::base::GRPGeomRequest> mCCDBRequest;
62 std::unique_ptr<o2::dataformats::FileMetaData> mHistoFileMetaData;
63};
64
65o2::framework::DataProcessorSpec getPHOSRunbyrunCalibDeviceSpec(bool useCCDB, const std::string& outputDir, const std::string& metaFileDir, bool writeRootOutput);
66} // namespace phos
67} // namespace o2
68
69#endif
Helper for geometry and GRP related CCDB requests.
bool finaliseCCDB(o2::framework::ConcreteDataMatcher &matcher, void *obj)
static GRPGeomHelper & instance()
void run(o2::framework::ProcessingContext &pc)
PHOSRunbyrunCalibDevice(std::shared_ptr< o2::base::GRPGeomRequest > req, const std::string &outputDir, const std::string &metaFileDir, bool writeRootOutput)
void finaliseCCDB(o2::framework::ConcreteDataMatcher &matcher, void *obj)
void endOfStream(o2::framework::EndOfStreamContext &ec)
void init(o2::framework::InitContext &ic)
Defining PrimaryVertex explicitly as messageable.
Definition TFIDInfo.h:20
o2::framework::DataProcessorSpec getPHOSRunbyrunCalibDeviceSpec(bool useCCDB, const std::string &outputDir, const std::string &metaFileDir, bool writeRootOutput)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...