ATLAS Offline Software
Loading...
Searching...
No Matches
CalibrationDbIOTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CalibrationDbIOTool_H
6#define CalibrationDbIOTool_H
7
8class MdtIdHelper;
9namespace MuonGM {
11}
12
13// MuonCalibStandAloneBase
14#include <array>
15#include <memory>
16
23
24namespace MuonCalib {
25
26 // class CalibDbConnection;
27 class IRtRelation;
28
29 class CalibrationDbIOTool : public AthAlgTool, virtual public ICalibrationIOTool {
30 public:
32 CalibrationDbIOTool(const std::string &t, const std::string &n, const IInterface *p);
35 StatusCode initialize() override;
37 StatusCode WriteT0(const MdtTubeFitContainer *t0_output, const NtupleStationId &station_id, int iov_start, int iov_end) override;
39 StatusCode LoadT0(std::map<NtupleStationId, MdtStationT0Container *> &t0s, int /*iov_id*/) override;
41 StatusCode WriteRt(const RtCalibrationOutput *rt_relation, std::shared_ptr<const IRtResolution> resolution,
42 const NtupleStationId &station_id, int iov_start, int iov_end, bool /*real_rt*/,
43 bool /*real resolution*/) override;
45 StatusCode LoadRt(std::map<NtupleStationId, IRtRelation *> &rts, std::map<NtupleStationId, IRtResolution *> &res,
46 int /*iov_id*/) override;
47
48 private:
50 std::string m_calib_dir;
53 // url of oracle data-base
56 std::string m_db_WorkingSchema;
60 // username and password - job options
63 std::string m_sitename;
64 std::vector<MuonCalib::NtupleStationId> m_region_ids;
66 std::unique_ptr<CalibDbConnection> m_connection;
67 std::array<std::unique_ptr<CalibDbConnection>, 2> m_data_connections;
68 std::unique_ptr<CalibHeadOperations> m_head_ops;
70 void fillRtPoints(const std::shared_ptr<const IRtRelation>& rt_relation, std::vector<SamplePoint> &points);
71 void fillResPoints(const std::shared_ptr<const IRtResolution>& rt_resolution, std::vector<SamplePoint> &points);
73 };
74
75} // namespace MuonCalib
76#endif
std::pair< std::vector< unsigned int >, bool > res
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
std::string m_calib_dir
path to calibration directory - job option
StatusCode WriteRt(const RtCalibrationOutput *rt_relation, std::shared_ptr< const IRtResolution > resolution, const NtupleStationId &station_id, int iov_start, int iov_end, bool, bool) override
write rt
std::array< std::unique_ptr< CalibDbConnection >, 2 > m_data_connections
bool m_use_validated_t0
if true use validated - jo
void fillResPoints(const std::shared_ptr< const IRtResolution > &rt_resolution, std::vector< SamplePoint > &points)
StatusCode initialize() override
initialisation
StatusCode WriteT0(const MdtTubeFitContainer *t0_output, const NtupleStationId &station_id, int iov_start, int iov_end) override
write out t0
CalibrationDbIOTool(const std::string &t, const std::string &n, const IInterface *p)
constructor
std::unique_ptr< CalibHeadOperations > m_head_ops
std::vector< MuonCalib::NtupleStationId > m_region_ids
std::string m_reader_account
account data
StatusCode LoadRt(std::map< NtupleStationId, IRtRelation * > &rts, std::map< NtupleStationId, IRtResolution * > &res, int) override
load rts
void fillRtPoints(const std::shared_ptr< const IRtRelation > &rt_relation, std::vector< SamplePoint > &points)
convert rt and resolution to points
StatusCode LoadT0(std::map< NtupleStationId, MdtStationT0Container * > &t0s, int) override
load t0s
CalibDbConnection * get_connection(int write)
std::unique_ptr< CalibDbConnection > m_connection
pointer to db connection
generic interface for a rt-relation
Definition IRtRelation.h:19
Holds single-tube full calibration information of one chamber.
Station Identifier for sorting calibration data.
Class for communication between event loop and rt calibration algorithm contains only a rt relation f...
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27