ATLAS Offline Software
Loading...
Searching...
No Matches
CalibRtDbOperations.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CalibRtDbOperations_h
6#define CalibRtDbOperations_h
7
8// c - c++
9#include "string"
10#include "vector"
11
12namespace coral {
13 class IQuery;
14 class AttributeList;
15} // namespace coral
16
17namespace MuonCalib {
18
20 class NtupleStationId;
21 class RtFullInfo;
22 class SamplePoint;
24
26 public:
27 //=====================constructor - destructor=================================
29 virtual ~CalibRtDbOperations() = default;
30 //=====================publlic member functions=================================
31 // load rt do not read full info, if full_info=NULL
32 bool LoadRt(const NtupleStationId &id, int head_id, bool validated, const std::string & /*site_name*/,
33 std::vector<SamplePoint> &points, RtFullInfo *full_info);
34 // write/update rt
35 bool WriteUpdateRt(const NtupleStationId &id, int head_id, const std::string & /*site_name*/,
36 const std::vector<SamplePoint> &points, int validflag, const RtFullInfo *full_info);
37 // set validation flag - last requested rt-id is used as key
38 bool SetValidflag(int validflag, bool commit = true);
39 // read for cconditions db insert
40 bool ReadForConditions(const std::string& /*site_name*/, int head_id, IConditionsStorage &storage);
41
42 private:
43 //=====================private data members====================================
44 // db connection
46 coral::IQuery *m_query;
47 // current mdt-rt-id
49 std::string m_prev_algs;
51 // red mdt-rt table
52 bool getRtId(bool validated, RtFullInfo *full_info);
53 // read r/t/s-table
54 inline bool readRTS(std::vector<SamplePoint> &points);
55 // update MDT_RT-Table
56 inline bool updateFullInfo(const RtFullInfo *full_info, const int &validflag, const int &n_points);
57 // update r-t-s-table
58 inline bool updateRTSable(const std::vector<SamplePoint> &points);
59 // insert into MDT_RT table
60 inline bool insertFullInfo(const RtFullInfo *full_info, const int &validflag, const int &n_points);
61 // insert line into r/t/s table
62 inline bool insertRTSable(const std::vector<SamplePoint> &points);
63 // initialize data buffer for MDT_RT table
64 inline void fullInfoInitData(const RtFullInfo *full_info, const int &validflag, coral::AttributeList &updateData, const int &n_bins,
65 const bool &for_insert);
66 // initialize data buffer for MDT_RT_MAP_. Table
67 inline void rtTableInitData(coral::AttributeList &rowBuffer);
68 // get rt map t id
69 inline bool getRTMapTId();
70 // prevent double inserts
71 inline bool checkRtPresent(const int &head_id, const std::string & /*site_name*/, const NtupleStationId &id, const int &validflag);
72 };
73
74} // namespace MuonCalib
75
76#endif
bool WriteUpdateRt(const NtupleStationId &id, int head_id, const std::string &, const std::vector< SamplePoint > &points, int validflag, const RtFullInfo *full_info)
virtual ~CalibRtDbOperations()=default
bool updateRTSable(const std::vector< SamplePoint > &points)
CalibRtDbOperations(CalibDbConnection &db_conn)
void rtTableInitData(coral::AttributeList &rowBuffer)
bool checkRtPresent(const int &head_id, const std::string &, const NtupleStationId &id, const int &validflag)
bool LoadRt(const NtupleStationId &id, int head_id, bool validated, const std::string &, std::vector< SamplePoint > &points, RtFullInfo *full_info)
bool readRTS(std::vector< SamplePoint > &points)
bool getRtId(bool validated, RtFullInfo *full_info)
bool insertFullInfo(const RtFullInfo *full_info, const int &validflag, const int &n_points)
bool insertRTSable(const std::vector< SamplePoint > &points)
void fullInfoInitData(const RtFullInfo *full_info, const int &validflag, coral::AttributeList &updateData, const int &n_bins, const bool &for_insert)
bool ReadForConditions(const std::string &, int head_id, IConditionsStorage &storage)
bool SetValidflag(int validflag, bool commit=true)
bool updateFullInfo(const RtFullInfo *full_info, const int &validflag, const int &n_points)
Station Identifier for sorting calibration data.
addiitonal information used in validation of a rt-relation
Definition RtFullInfo.h:15
This class provides a sample point for the BaseFunctionFitter.
Definition SamplePoint.h:15
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.