ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
TrigT1NSWSimTools
src
MMT_Diamond.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002-2026 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
int
iRoad
{-1};
18
int
iRoadu
{-1};
19
int
iRoadv
{-1};
20
unsigned
int
xCount
{999};
21
unsigned
int
uCount
{999};
22
int
age
{-1};
23
double
mxl
{999};
24
double
my
{999};
25
double
uavg
{999};
26
double
vavg
{999};
27
double
mx
{999};
28
double
theta
{999};
29
double
eta
{999};
30
double
dtheta
{999};
31
double
phi
{999};
32
double
phiShf
{999};
33
char
side
{
'-'
};
34
bool
lowRes
{
false
};
35
};
36
37
class
MMT_Diamond
:
public
AthMessaging
{
38
public
:
39
MMT_Diamond
(
const
int
diamXthreshold,
const
bool
uv,
const
int
diamUVthreshold,
const
int
roadSize,
40
const
int
olapEtaUp,
const
int
olapEtaDown,
const
int
olapStereoUp,
const
int
olapStereoDown);
41
~MMT_Diamond
() =
default
;
42
43
void
createRoads
(std::vector<MMT_Road>& roads,
const
bool
isLarge,
const
bool
isEta1)
const
;
44
void
findDiamonds
(std::vector<std::shared_ptr<MMT_Hit> >& hits, std::vector<MMT_Road>& roads, std::vector<slope_t>& diamondSlopes,
const
int
sectorPhi)
const
;
45
double
phiShift
(
const
int
n,
const
double
phi
,
const
char
side)
const
;
46
47
int
getRoadSize
()
const
{
return
m_roadSize
; }
48
unsigned
int
getXthreshold
()
const
{
return
m_xthr
; }
49
unsigned
int
getUVthreshold
()
const
{
return
m_uvthr
; }
50
51
private
:
52
bool
m_uvflag
{};
53
int
m_roadSize
{},
m_roadSizeUpX
{},
m_roadSizeDownX
{},
m_roadSizeUpUV
{},
m_roadSizeDownUV
{};
54
int
m_xthr
{},
m_uvthr
{};
55
};
56
#endif
phi
Scalar phi() const
phi method
Definition
AmgMatrixBasePlugin.h:67
AthMessaging.h
MMT_Road.h
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
MMT_Diamond::getXthreshold
unsigned int getXthreshold() const
Definition
MMT_Diamond.h:48
MMT_Diamond::~MMT_Diamond
~MMT_Diamond()=default
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
MMT_Diamond::getRoadSize
int getRoadSize() const
Definition
MMT_Diamond.h:47
MMT_Diamond::getUVthreshold
unsigned int getUVthreshold() const
Definition
MMT_Diamond.h:49
MMT_Diamond::phiShift
double phiShift(const int n, const double phi, const char side) const
Definition
MMT_Diamond.cxx:206
MMT_Diamond::m_roadSizeDownUV
int m_roadSizeDownUV
Definition
MMT_Diamond.h:53
MMT_Diamond::m_roadSize
int m_roadSize
Definition
MMT_Diamond.h:53
MMT_Diamond::m_xthr
int m_xthr
Definition
MMT_Diamond.h:54
MMT_Diamond::m_uvflag
bool m_uvflag
Definition
MMT_Diamond.h:52
MMT_Diamond::createRoads
void createRoads(std::vector< MMT_Road > &roads, const bool isLarge, const bool isEta1) const
Definition
MMT_Diamond.cxx:30
MMT_Diamond::m_roadSizeUpUV
int m_roadSizeUpUV
Definition
MMT_Diamond.h:53
MMT_Diamond::m_roadSizeDownX
int m_roadSizeDownX
Definition
MMT_Diamond.h:53
MMT_Diamond::m_roadSizeUpX
int m_roadSizeUpX
Definition
MMT_Diamond.h:53
MMT_Diamond::m_uvthr
int m_uvthr
Definition
MMT_Diamond.h:54
MMT_Diamond::findDiamonds
void findDiamonds(std::vector< std::shared_ptr< MMT_Hit > > &hits, std::vector< MMT_Road > &roads, std::vector< slope_t > &diamondSlopes, const int sectorPhi) const
Definition
MMT_Diamond.cxx:66
slope_t
Definition
MMT_Diamond.h:13
slope_t::BC
int BC
Definition
MMT_Diamond.h:15
slope_t::uCount
unsigned int uCount
Definition
MMT_Diamond.h:21
slope_t::my
double my
Definition
MMT_Diamond.h:24
slope_t::phi
double phi
Definition
MMT_Diamond.h:31
slope_t::phiShf
double phiShf
Definition
MMT_Diamond.h:32
slope_t::eta
double eta
Definition
MMT_Diamond.h:29
slope_t::iRoadu
int iRoadu
Definition
MMT_Diamond.h:18
slope_t::mx
double mx
Definition
MMT_Diamond.h:27
slope_t::iRoadv
int iRoadv
Definition
MMT_Diamond.h:19
slope_t::mxl
double mxl
Definition
MMT_Diamond.h:23
slope_t::totalCount
unsigned int totalCount
Definition
MMT_Diamond.h:16
slope_t::xCount
unsigned int xCount
Definition
MMT_Diamond.h:20
slope_t::age
int age
Definition
MMT_Diamond.h:22
slope_t::theta
double theta
Definition
MMT_Diamond.h:28
slope_t::vavg
double vavg
Definition
MMT_Diamond.h:26
slope_t::dtheta
double dtheta
Definition
MMT_Diamond.h:30
slope_t::side
char side
Definition
MMT_Diamond.h:33
slope_t::lowRes
bool lowRes
Definition
MMT_Diamond.h:34
slope_t::uavg
double uavg
Definition
MMT_Diamond.h:25
slope_t::iRoad
int iRoad
Definition
MMT_Diamond.h:17
Generated on
for ATLAS Offline Software by
1.17.0