ATLAS Offline Software
CMAidentity.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CMAIDENTITY_H
6 #define CMAIDENTITY_H
7 
8 #include <iostream>
9 #include <string>
10 #include <utility>
11 
13 
15 
16 class CMAidentity {
17 public:
18  typedef std::pair<int, int> Offline_indexes;
19  typedef std::string PhiCoverage;
20 
21  static const char CoverageTAG[3][5]; // Description of coverage type
22 
23  static bool coverage(const std::string&, CMAcoverage&);
24  static const char* covtag(const CMAcoverage co) { return CoverageTAG[co]; }
25  static const std::string name(const ViewType, const CMAcoverage);
26 
27  struct defineParams {
28  defineParams() = default;
29  defineParams(const defineParams&) = default;
30  defineParams& operator=(const defineParams&) = default;
31  defineParams(defineParams&&) = default;
35  int etaIndex{-1};
36  int phiIndex{-1};
37  int padIndex{-1};
38  int IxxIndex{-1};
39  int seqNumber{-1};
40  };
41 
42 private:
45 
46 public:
48 
49  CMAidentity(ViewType, CMAcoverage, int, int, int, int, int);
52  CMAidentity(ViewType, CMAcoverage, int, int);
53 
54  ~CMAidentity() = default;
55 
56  CMAidentity(const CMAidentity&) = default;
57  CMAidentity& operator=(const CMAidentity&) = default;
58 
59  bool operator==(const CMAidentity&) const;
60  bool operator!=(const CMAidentity&) const;
61  bool operator<(const CMAidentity&) const;
62 
63  ViewType type() const;
64  CMAcoverage coverage() const;
65  int number() const;
66  int eta_index() const;
67  int phi_index() const;
68  int PAD_index() const;
69  int Ixx_index() const;
70  void inversion();
71 
73 
74  friend std::ostream& operator<<(std::ostream&, const CMAidentity&);
75 };
76 
77 #endif
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
CMAidentity::defineParams::defineParams
defineParams()=default
OddSectors
@ OddSectors
Definition: CMAidentity.h:14
CMAidentity::operator!=
bool operator!=(const CMAidentity &) const
Definition: CMAidentity.cxx:75
CMAidentity::CoverageTAG
static const char CoverageTAG[3][5]
Definition: CMAidentity.h:21
CMAidentity::type
ViewType type() const
Definition: CMAidentity.cxx:117
CMAcoverage
CMAcoverage
Definition: CMAidentity.h:14
CMAidentity::operator<
bool operator<(const CMAidentity &) const
Definition: CMAidentity.cxx:77
CMAidentity::operator=
CMAidentity & operator=(const CMAidentity &)=default
CMAidentity::~CMAidentity
~CMAidentity()=default
CMAidentity::inversion
void inversion()
Definition: CMAidentity.cxx:96
CMAidentity::defineParams::defineParams
defineParams(const defineParams &)=default
CMAidentity::CMAidentity
CMAidentity(const defineParams &pars)
Definition: CMAidentity.cxx:29
CMAidentity::operator+=
CMAidentity & operator+=(const CMAidentity &)
Definition: CMAidentity.cxx:86
CMAidentity::PhiCoverage
std::string PhiCoverage
Definition: CMAidentity.h:19
CMAidentity::defineParams::IxxIndex
int IxxIndex
PAD index into the sector logic (start from 0)
Definition: CMAidentity.h:38
CMAidentity::name
static const std::string name(const ViewType, const CMAcoverage)
Definition: CMAidentity.cxx:23
CMAidentity::defineParams
Definition: CMAidentity.h:27
ViewType
ViewType
Definition: RPCdef.h:8
CMAidentity::operator<<
friend std::ostream & operator<<(std::ostream &, const CMAidentity &)
Definition: CMAidentity.cxx:98
CMAidentity::defineParams::operator=
defineParams & operator=(const defineParams &)=default
EvenSectors
@ EvenSectors
Definition: CMAidentity.h:14
AllSectors
@ AllSectors
Definition: CMAidentity.h:14
CMAidentity::m_params
defineParams m_params
Definition: CMAidentity.h:43
CMAidentity::CMAidentity
CMAidentity(const CMAidentity &)=default
RPCdef.h
CMAidentity::which_sector
CMAcoverage which_sector(PhiCoverage)
NoView
@ NoView
Definition: RPCdef.h:8
CMAidentity::covtag
static const char * covtag(const CMAcoverage co)
Definition: CMAidentity.h:24
CMAidentity::Ixx_index
int Ixx_index() const
Definition: CMAidentity.cxx:123
CMAidentity::eta_index
int eta_index() const
Definition: CMAidentity.cxx:120
CMAidentity::PAD_index
int PAD_index() const
Definition: CMAidentity.cxx:122
CMAidentity::defineParams::view
ViewType view
Definition: CMAidentity.h:34
CMAidentity::defineParams::coverage
CMAcoverage coverage
CMA identity params.
Definition: CMAidentity.h:33
CMAidentity
Definition: CMAidentity.h:16
CMAidentity::defineParams::etaIndex
int etaIndex
Matrix type (0 = eta matrix, 1 = phi matrix)
Definition: CMAidentity.h:35
CMAidentity::defineParams::phiIndex
int phiIndex
Matrix eta address (start from 0)
Definition: CMAidentity.h:36
CMAidentity::operator==
bool operator==(const CMAidentity &) const
Definition: CMAidentity.cxx:61
CMAidentity::phi_index
int phi_index() const
Definition: CMAidentity.cxx:121
CMAidentity::coverage
CMAcoverage coverage() const
Definition: CMAidentity.cxx:118
CMAidentity::defineParams::seqNumber
int seqNumber
Matrix index into the PAD (start from 0)
Definition: CMAidentity.h:39
CMAidentity::number
int number() const
Definition: CMAidentity.cxx:119
CMAidentity::Offline_indexes
std::pair< int, int > Offline_indexes
Definition: CMAidentity.h:18
CMAidentity::defineParams::defineParams
defineParams(defineParams &&)=default
CMAidentity::defineParams::padIndex
int padIndex
Matrix chi address (start from 0)
Definition: CMAidentity.h:37