ATLAS Offline Software
Loading...
Searching...
No Matches
CscILinesCondAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONCONDALG_ILINESCONDALG_H
5#define MUONCONDALG_ILINESCONDALG_H
6
9#include "CoralBase/Blob.h"
15#include "nlohmann/json.hpp"
16
17namespace Muon{
19
20 public:
21 using AthCondAlgorithm::AthCondAlgorithm;
22 virtual ~CscILinesCondAlg() = default;
23 virtual StatusCode initialize() override;
24 virtual StatusCode execute(const EventContext& ctx) const override;
25
26 private:
27 SG::ReadCondHandleKey<CondAttrListCollection> m_readKey{this, "ReadKey", "/MUONALIGN/CSC/ILINES",
28 "Key of input CSC/ILINES condition data"};
29
30 SG::WriteCondHandleKey<ALineContainer> m_writeKey{this, "WriteKey", "CscInternalAlignmentContainer",
31 "Key of output muon alignment CSC/ILine condition data"};
32
33 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
34 // new folder format 2020
35 Gaudi::Property<bool> m_newFormat2020 {this, "NewFormat2020", false,
36 "The database folders are given in the new JSON format"};
37
38 Gaudi::Property<std::string> m_readFromJSON{this,"readFromJSON", "",
39 "Reads the A & B lines parameters from a JSON file instead from COOL"};
40
41
46 StatusCode loadDataFromLegacy(const std::string& data, nlohmann::json& json) const;
50 StatusCode parseDataFromJSON(const nlohmann::json& lines,
51 ALineContainer& writeCdo) const;
52};
53}
54#endif
Base class for conditions algorithms.
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
std::set< ALinePar, std::less<> > ALineContainer
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
nlohmann::json json
Base class for conditions algorithms.
SG::ReadCondHandleKey< CondAttrListCollection > m_readKey
SG::WriteCondHandleKey< ALineContainer > m_writeKey
virtual StatusCode initialize() override
virtual StatusCode execute(const EventContext &ctx) const override
Gaudi::Property< std::string > m_readFromJSON
Load the alignment parameters from a JSON file.
virtual ~CscILinesCondAlg()=default
Gaudi::Property< bool > m_newFormat2020
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
StatusCode loadDataFromLegacy(const std::string &data, nlohmann::json &json) const
Load the Alignment data from the legacy format where the channels are parsed line wise The data is th...
StatusCode parseDataFromJSON(const nlohmann::json &lines, ALineContainer &writeCdo) const
Parse the JSON blob to fill the I Line container.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.