Project
Loading...
Searching...
No Matches
CorrectionMapsLoader.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
15
16#ifndef TPC_CORRECTION_MAPS_LOADER_H_
17#define TPC_CORRECTION_MAPS_LOADER_H_
18
19#include <vector>
21#include "CorrectionMapsTypes.h"
22
23namespace o2
24{
25namespace framework
26{
27class ProcessingContext;
29class InputSpec;
30class ConfigParamSpec;
31class InitContext;
32} // namespace framework
33
34namespace tpc
35{
36
38{
39 public:
43
44 bool accountCCDBInputs(const o2::framework::ConcreteDataMatcher& matcher, void* obj);
45 void extractCCDBInputs(o2::framework::ProcessingContext& pc, float tpcScaler = -1.f);
46 void init(o2::framework::InitContext& ic, bool idcsAvailable);
47 void checkMeanScaleConsistency(float meanLumi, float threshold) const;
48
49 static void requestCCDBInputs(std::vector<o2::framework::InputSpec>& inputs, const o2::tpc::CorrectionMapsGloOpts& gloOpts);
50
51 protected:
52 static void addOption(std::vector<o2::framework::ConfigParamSpec>& options, o2::framework::ConfigParamSpec&& osp);
53 static void addInput(std::vector<o2::framework::InputSpec>& inputs, o2::framework::InputSpec&& isp);
54
55 float mInstLumiCTPFactor = 1.0; // multiplicative factor for inst. lumi
56 int mLumiCTPSource = 0; // 0: main, 1: alternative CTP lumi source
57 bool mIDC2CTPFallbackActive = false; // flag indicating that fallback from IDC to CTP scaling is active
58};
59
60} // namespace tpc
61
62} // namespace o2
63
64#endif
Helper class to access correction maps.
Helper class for enums and structs related to the correction maps.
bool accountCCDBInputs(const o2::framework::ConcreteDataMatcher &matcher, void *obj)
void extractCCDBInputs(o2::framework::ProcessingContext &pc, float tpcScaler=-1.f)
void init(o2::framework::InitContext &ic, bool idcsAvailable)
CorrectionMapsLoader(const CorrectionMapsLoader &)=delete
static void addOption(std::vector< o2::framework::ConfigParamSpec > &options, o2::framework::ConfigParamSpec &&osp)
static void requestCCDBInputs(std::vector< o2::framework::InputSpec > &inputs, const o2::tpc::CorrectionMapsGloOpts &gloOpts)
void checkMeanScaleConsistency(float meanLumi, float threshold) const
static void addInput(std::vector< o2::framework::InputSpec > &inputs, o2::framework::InputSpec &&isp)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...