Skip to content
Snippets Groups Projects

Adding a new cond alg for MMG

Merged Matous Vozak requested to merge mvozak/athena:newMuMMGCondAlg into 24.0
All threads resolved!
Files
5
/*
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
*/
#ifndef MUONCONDALG_MmCTPCondDbAlg_H
#define MUONCONDALG_MmCTPCondDbAlg_H
// Athena includes
#include "AthenaBaseComps/AthReentrantAlgorithm.h"
#include "AthenaPoolUtilities/CondAttrListCollection.h"
#include "MuonIdHelpers/IMuonIdHelperSvc.h"
#include "StoreGate/CondHandleKeyArray.h"
#include "StoreGate/WriteCondHandleKey.h"
#include <nlohmann/json.hpp>
#include "MuonCondData/mmCTPClusterCalibData.h"
class MmCTPCondDbAlg : public AthReentrantAlgorithm {
public:
//No need for individual constructor
using AthReentrantAlgorithm::AthReentrantAlgorithm ;
//MmCTPCondDbAlg(const std::string& name, ISvcLocator* svc);
virtual ~MmCTPCondDbAlg() = default;
virtual StatusCode initialize() override final;
virtual StatusCode execute(const EventContext& ctx) const override final;
virtual bool isReEntrant() const override final{ return false; }
private:
/// Parse data from COOL
Gaudi::Property<std::string> m_readFromJSON{this, "readFromJSON", "" };
StatusCode parseDataFromJSON(const nlohmann::json& lines,
Muon::mmCTPClusterCalibData& ctpClusterCondData) const;
ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
SG::WriteCondHandleKey<Muon::mmCTPClusterCalibData> m_writeKey{this, "WriteKey", "mmCTPClusterCalibData", "Key of the efficiency data in the CondStore"};
SG::ReadCondHandleKeyArray<CondAttrListCollection> m_readKeysDb{this, "ReadKeys", {},
"Folder of the MM CTP corrections as they are stored in COOL"};
};
#endif
Loading