ATLAS Offline Software
Loading...
Searching...
No Matches
MuonAlignmentErrorData.h
Go to the documentation of this file.
1// Dear emacs, this is -*-c++-*-
2
3/*
4 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5*/
6
10
11#ifndef MUONALIGNMENTERRORDATA_H
12#define MUONALIGNMENTERRORDATA_H
13
14#include <boost/regex.hpp>
15#include <vector>
16#include <unordered_map>
17#include <Identifier/Identifier.h>
18
19// Struct for per-Station Deviations Information
20
23
24public:
26 boost::regex stationName {""};
27 boost::regex multilayer {""};
28 double translation {0.0};
29 double rotation {0.0};
30 };
36 std::unordered_multimap<Identifier, MuonAlignmentErrorRuleIndex> id_rule_map{};
37 };
38
40 virtual ~MuonAlignmentErrorData() = default;
41
42 void setAlignmentErrorRules(std::vector<MuonAlignmentErrorRule>&& vec);
43 [[nodiscard]] const std::vector<MuonAlignmentErrorRule>& getAlignmentErrorRules() const;
44
45 void setMuonAlignmentErrorRuleCache(std::vector<MuonAlignmentErrorRuleCache>&& vec_new);
46 [[nodiscard]] const std::vector<MuonAlignmentErrorRuleCache>& getMuonAlignmentErrorRuleCache() const;
47
48 void setClobVersion(std::string clobVersion);
49 [[nodiscard]] const std::string& getClobVersion() const;
50
51 void setHasNswHits(bool val);
52 [[nodiscard]] bool hasNswHits() const;
53
54private:
55 std::vector<MuonAlignmentErrorRule> m_deviations {};
56 std::string m_clobVersion {"0.1"};
57 bool m_hasNswHits {false};
58 std::vector<MuonAlignmentErrorRuleCache> m_deviations_new {};
59};
60
63#include "AthenaKernel/CondCont.h"
65
66#endif
std::vector< size_t > vec
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Hold mapping of ranges to condition objects.
Definition CondCont.h:889
MuonAlignmentErrorData is condition data which is derived and recorded by MuonAlignmentErrorDbAlg.
const std::vector< MuonAlignmentErrorRuleCache > & getMuonAlignmentErrorRuleCache() const
MuonAlignmentErrorData()=default
std::vector< MuonAlignmentErrorRuleCache > m_deviations_new
const std::vector< MuonAlignmentErrorRule > & getAlignmentErrorRules() const
const std::string & getClobVersion() const
void setMuonAlignmentErrorRuleCache(std::vector< MuonAlignmentErrorRuleCache > &&vec_new)
virtual ~MuonAlignmentErrorData()=default
void setClobVersion(std::string clobVersion)
std::vector< MuonAlignmentErrorRule > m_deviations
void setAlignmentErrorRules(std::vector< MuonAlignmentErrorRule > &&vec)
std::unordered_multimap< Identifier, MuonAlignmentErrorRuleIndex > id_rule_map
For each multilayer identifier, cache the indices of the affecting rules.