ATLAS Offline Software
Trigger
TrigT1
TrigT1NSWSimTools
TrigT1NSWSimTools
MMT_Diamond.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MMT_DIAMOND_H
6
#define MMT_DIAMOND_H
7
8
#include "
AthenaBaseComps/AthMessaging.h
"
9
#include "
MMT_Road.h
"
10
#include <cmath>
11
#include <vector>
12
13
struct
slope_t
{
14
uint64_t
event
{0};
15
int
BC
{-1};
16
unsigned
int
totalCount
{999};
17
unsigned
int
realCount
{999};
18
int
iRoad
{-1};
19
int
iRoadu
{-1};
20
int
iRoadv
{-1};
21
unsigned
int
uvbkg
{999};
22
unsigned
int
xbkg
{999};
23
unsigned
int
uvmuon
{999};
24
unsigned
int
xmuon
{999};
25
int
age
{-1};
26
double
mxl
{999};
27
double
my
{999};
28
double
uavg
{999};
29
double
vavg
{999};
30
double
mx
{999};
31
double
theta
{999};
32
double
eta
{999};
33
double
dtheta
{999};
34
double
phi
{999};
35
double
phiShf
{999};
36
char
side
{
'-'
};
37
bool
lowRes
{
false
};
38
};
39
40
class
MMT_Diamond
:
public
AthMessaging
{
41
public
:
42
MMT_Diamond
(
const
int
diamXthreshold,
const
bool
uv,
const
int
diamUVthreshold,
const
int
roadSize,
43
const
int
olapEtaUp,
const
int
olapEtaDown,
const
int
olapStereoUp,
const
int
olapStereoDown);
44
~MMT_Diamond
() =
default
;
45
46
void
createRoads
(std::vector<std::shared_ptr<MMT_Road> >& roads,
const
bool
isLarge)
const
;
47
void
findDiamonds
(std::vector<std::shared_ptr<MMT_Hit> >&
hits
,
const
std::vector<std::shared_ptr<MMT_Road> >& roads, std::vector<slope_t>& diamondSlopes,
const
int
sectorPhi)
const
;
48
double
phiShift
(
const
int
n
,
const
double
phi
,
const
char
side
)
const
;
49
50
int
getRoadSize
()
const
{
return
m_roadSize
; }
51
unsigned
int
getXthreshold
()
const
{
return
m_xthr
; }
52
unsigned
int
getUVthreshold
()
const
{
return
m_uvthr
; }
53
54
private
:
55
bool
m_uvflag
{};
56
int
m_roadSize
{},
m_roadSizeUpX
{},
m_roadSizeDownX
{},
m_roadSizeUpUV
{},
m_roadSizeDownUV
{};
57
int
m_xthr
{},
m_uvthr
{};
58
};
59
#endif
slope_t::eta
double eta
Definition:
MMT_Diamond.h:32
MMT_Diamond::findDiamonds
void findDiamonds(std::vector< std::shared_ptr< MMT_Hit > > &hits, const std::vector< std::shared_ptr< MMT_Road > > &roads, std::vector< slope_t > &diamondSlopes, const int sectorPhi) const
Definition:
MMT_Diamond.cxx:65
TRTCalib_Extractor.hits
hits
Definition:
TRTCalib_Extractor.py:35
slope_t::BC
int BC
Definition:
MMT_Diamond.h:15
MMT_Diamond::getRoadSize
int getRoadSize() const
Definition:
MMT_Diamond.h:50
phi
Scalar phi() const
phi method
Definition:
AmgMatrixBasePlugin.h:67
slope_t::uavg
double uavg
Definition:
MMT_Diamond.h:28
slope_t::my
double my
Definition:
MMT_Diamond.h:27
slope_t::xmuon
unsigned int xmuon
Definition:
MMT_Diamond.h:24
slope_t::iRoadu
int iRoadu
Definition:
MMT_Diamond.h:19
MMT_Diamond::m_uvthr
int m_uvthr
Definition:
MMT_Diamond.h:57
slope_t::totalCount
unsigned int totalCount
Definition:
MMT_Diamond.h:16
MMT_Diamond
Definition:
MMT_Diamond.h:40
slope_t::vavg
double vavg
Definition:
MMT_Diamond.h:29
MMT_Diamond::phiShift
double phiShift(const int n, const double phi, const char side) const
Definition:
MMT_Diamond.cxx:207
TRT::Hit::side
@ side
Definition:
HitInfo.h:83
MMT_Diamond::~MMT_Diamond
~MMT_Diamond()=default
slope_t::side
char side
Definition:
MMT_Diamond.h:36
MMT_Diamond::m_roadSizeDownX
int m_roadSizeDownX
Definition:
MMT_Diamond.h:56
slope_t::dtheta
double dtheta
Definition:
MMT_Diamond.h:33
MMT_Diamond::m_roadSizeUpUV
int m_roadSizeUpUV
Definition:
MMT_Diamond.h:56
beamspotman.n
n
Definition:
beamspotman.py:729
slope_t::phiShf
double phiShf
Definition:
MMT_Diamond.h:35
slope_t::theta
double theta
Definition:
MMT_Diamond.h:31
MMT_Road.h
MMT_Diamond::MMT_Diamond
MMT_Diamond(const int diamXthreshold, const bool uv, const int diamUVthreshold, const int roadSize, const int olapEtaUp, const int olapEtaDown, const int olapStereoUp, const int olapStereoDown)
Definition:
MMT_Diamond.cxx:18
slope_t::mx
double mx
Definition:
MMT_Diamond.h:30
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition:
AthMessaging.h:55
xAOD::uint64_t
uint64_t
Definition:
EventInfo_v1.cxx:123
MMT_Diamond::getXthreshold
unsigned int getXthreshold() const
Definition:
MMT_Diamond.h:51
MMT_Diamond::m_roadSize
int m_roadSize
Definition:
MMT_Diamond.h:56
slope_t::iRoad
int iRoad
Definition:
MMT_Diamond.h:18
slope_t::iRoadv
int iRoadv
Definition:
MMT_Diamond.h:20
MMT_Diamond::m_roadSizeUpX
int m_roadSizeUpX
Definition:
MMT_Diamond.h:56
MMT_Diamond::m_uvflag
bool m_uvflag
Definition:
MMT_Diamond.h:55
MMT_Diamond::m_xthr
int m_xthr
Definition:
MMT_Diamond.h:57
slope_t::age
int age
Definition:
MMT_Diamond.h:25
slope_t::realCount
unsigned int realCount
Definition:
MMT_Diamond.h:17
MMT_Diamond::getUVthreshold
unsigned int getUVthreshold() const
Definition:
MMT_Diamond.h:52
MMT_Diamond::m_roadSizeDownUV
int m_roadSizeDownUV
Definition:
MMT_Diamond.h:56
slope_t::lowRes
bool lowRes
Definition:
MMT_Diamond.h:37
AthMessaging.h
slope_t::phi
double phi
Definition:
MMT_Diamond.h:34
slope_t::mxl
double mxl
Definition:
MMT_Diamond.h:26
MMT_Diamond::createRoads
void createRoads(std::vector< std::shared_ptr< MMT_Road > > &roads, const bool isLarge) const
Definition:
MMT_Diamond.cxx:30
slope_t::xbkg
unsigned int xbkg
Definition:
MMT_Diamond.h:22
slope_t
Definition:
MMT_Diamond.h:13
slope_t::uvbkg
unsigned int uvbkg
Definition:
MMT_Diamond.h:21
slope_t::uvmuon
unsigned int uvmuon
Definition:
MMT_Diamond.h:23
Generated on Mon Sep 1 2025 21:15:11 for ATLAS Offline Software by
1.8.18