ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
Event
MuonTrackEvent
MuonTrackEvent
ExpandedSector.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 MUONTRACKEVENT_EXPANDEDSECTOR_H
5
#define MUONTRACKEVENT_EXPANDEDSECTOR_H
6
7
#include <
GeoPrimitives/GeoPrimitives.h
>
8
//
9
#include "Acts/Utilities/OstreamFormatter.hpp"
10
11
#include <cstdint>
12
#include <tuple>
13
#include <ostream>
14
15
25
namespace
MuonR4
{
26
27
class
ExpandedSector
{
28
public
:
31
enum class
SectorProjector
: std::int8_t {
32
leftOverlap
= -1,
33
center
= 0,
34
rightOverlap
= 1
35
};
36
37
static
std::string
toString
(
const
SectorProjector
proj);
39
friend
std::ostream&
operator<<
(std::ostream& ostr,
const
SectorProjector
proj) {
40
return
ostr<<(
toString
(proj));
41
}
42
friend
std::ostream&
operator<<
(std::ostream& ostr,
const
ExpandedSector
& sec){
43
return
sec.
toString
(ostr);
44
}
45
50
explicit
ExpandedSector
(
const
unsigned
msSector
,
51
const
SectorProjector
proj);
56
explicit
ExpandedSector
(
const
double
phi
);
59
explicit
ExpandedSector
(
const
std::int8_t expSector);
61
bool
operator<
(
const
ExpandedSector
& other)
const
;
63
bool
operator==
(
const
ExpandedSector
& other)
const
;
65
bool
operator!=
(
const
ExpandedSector
& other)
const
;
71
unsigned
msSector
()
const
;
74
unsigned
adjacentMsSector
()
const
;
76
SectorProjector
projector
()
const
;
78
std::int8_t
sector
()
const
;
80
double
phi
()
const
;
82
Amg::Vector3D
radialDir
()
const
;
85
Amg::Vector3D
normalDir
()
const
;
87
bool
isNeighbour
(
const
ExpandedSector
& other)
const
;
88
private
:
90
std::ostream&
toString
(std::ostream& ostr)
const
;
92
std::int8_t
m_sector
{0};
93
};
94
95
}
96
ACTS_OSTREAM_FORMATTER
(
MuonR4::ExpandedSector::SectorProjector
);
97
98
#endif
phi
Scalar phi() const
phi method
Definition
AmgMatrixBasePlugin.h:67
ACTS_OSTREAM_FORMATTER
ACTS_OSTREAM_FORMATTER(MuonR4::ExpandedSector::SectorProjector)
GeoPrimitives.h
MuonR4::ExpandedSector
Definition
ExpandedSector.h:27
MuonR4::ExpandedSector::operator<<
friend std::ostream & operator<<(std::ostream &ostr, const SectorProjector proj)
Define the ostream operator.
Definition
ExpandedSector.h:39
MuonR4::ExpandedSector::phi
double phi() const
Returns the phi angle of the expanded sector.
Definition
ExpandedSector.cxx:95
MuonR4::ExpandedSector::normalDir
Amg::Vector3D normalDir() const
Returns the vector that is normal to the plane spanned by the expanded sector.
Definition
ExpandedSector.cxx:101
MuonR4::ExpandedSector::m_sector
std::int8_t m_sector
the sector number stored
Definition
ExpandedSector.h:92
MuonR4::ExpandedSector::operator<<
friend std::ostream & operator<<(std::ostream &ostr, const ExpandedSector &sec)
Definition
ExpandedSector.h:42
MuonR4::ExpandedSector::operator==
bool operator==(const ExpandedSector &other) const
Define the equal operator.
Definition
ExpandedSector.cxx:89
MuonR4::ExpandedSector::SectorProjector
SectorProjector
Enumeration to select the sector projection of the regular MS sector.
Definition
ExpandedSector.h:31
MuonR4::ExpandedSector::SectorProjector::rightOverlap
@ rightOverlap
Project the segment onto the sector centre.
Definition
ExpandedSector.h:34
MuonR4::ExpandedSector::SectorProjector::leftOverlap
@ leftOverlap
Definition
ExpandedSector.h:32
MuonR4::ExpandedSector::SectorProjector::center
@ center
Project the segment onto the overlap with the previous sector.
Definition
ExpandedSector.h:33
MuonR4::ExpandedSector::ExpandedSector
ExpandedSector(const unsigned msSector, const SectorProjector proj)
Constructor of the expanded sector taking the regular MS sector number and the projector.
Definition
ExpandedSector.cxx:48
MuonR4::ExpandedSector::msSector
unsigned msSector() const
Returns the ms sector corresponding to the expanded sector.
Definition
ExpandedSector.cxx:70
MuonR4::ExpandedSector::sector
std::int8_t sector() const
Returns the expanded sector number.
Definition
ExpandedSector.cxx:73
MuonR4::ExpandedSector::projector
SectorProjector projector() const
Returns the projector in the corresponding MS sector.
Definition
ExpandedSector.cxx:67
MuonR4::ExpandedSector::isNeighbour
bool isNeighbour(const ExpandedSector &other) const
Definition
ExpandedSector.cxx:104
MuonR4::ExpandedSector::operator!=
bool operator!=(const ExpandedSector &other) const
Define the unequal operator.
Definition
ExpandedSector.cxx:92
MuonR4::ExpandedSector::adjacentMsSector
unsigned adjacentMsSector() const
Returns the neighbouring msSector number constructed from the primary sector and the sector overlap p...
Definition
ExpandedSector.cxx:76
MuonR4::ExpandedSector::radialDir
Amg::Vector3D radialDir() const
Returns the vector pointing radially along the sector plane.
Definition
ExpandedSector.cxx:98
MuonR4::ExpandedSector::toString
static std::string toString(const SectorProjector proj)
Return the projector as a string.
Definition
ExpandedSector.cxx:109
MuonR4::ExpandedSector::operator<
bool operator<(const ExpandedSector &other) const
Define the ordering operator.
Definition
ExpandedSector.cxx:86
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
MuonR4
This header ties the generic definitions in this package.
Definition
GlobalPattern.h:14
Generated on
for ATLAS Offline Software by
1.17.0