ATLAS Offline Software
Loading...
Searching...
No Matches
MMT_Road.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_ROAD_H
6#define MMT_ROAD_H
7
8#include "MMT_Hit.h"
9#include <cmath>
10#include <numeric>
11
12class MMT_Road {
13 public:
14 MMT_Road(const char sector, const int roadSize, const int UpX, const int DownX, const int UpUV, const int DownUV, const int xthr, const int uvthr,
15 const int iroadx, const int iroadu = -1, const int iroadv = -1);
16 ~MMT_Road()=default;
17
18 void addHits(const std::vector<std::shared_ptr<MMT_Hit> > &hits);
19 double avgSofXUV(const char type) const;
20 bool checkCoincidences(const int bcwind) const {
21 return horizontalCheck() && stereoCheck() && matureCheck(bcwind);
22 }
23 unsigned int countHits() const { return m_road_hits.size(); }
24 unsigned int countUHits() const;
25 unsigned int countXHits() const;
26 bool evaluateLowRes() const;
27 bool horizontalCheck() const;
28 void incrementAge(const int bcwind);
29 const std::vector<MMT_Hit>& getHitVector() const { return m_road_hits; }
30 char getSector() const { return m_sector; }
31 int getXthreshold() const { return m_xthr; }
32 int getUVthreshold() const { return m_uvthr; }
33 int iRoadx() const { return m_iroadx; }
34 int iRoadu() const { return m_iroadu; }
35 int iRoadv() const { return m_iroadv; }
36 bool matureCheck(const int bcwind) const;
37 double mxl() const;
38 bool stereoCheck() const;
39
40 private:
41 std::vector<MMT_Hit> m_road_hits;
46};
47#endif
int getUVthreshold() const
Definition MMT_Road.h:32
int iRoadv() const
Definition MMT_Road.h:35
double avgSofXUV(const char type) const
Definition MMT_Road.cxx:57
int getXthreshold() const
Definition MMT_Road.h:31
double m_slopeUlow
Definition MMT_Road.h:42
double mxl() const
Definition MMT_Road.cxx:124
unsigned int countHits() const
Definition MMT_Road.h:23
double m_slopeXhigh
Definition MMT_Road.h:42
const std::vector< MMT_Hit > & getHitVector() const
Definition MMT_Road.h:29
int m_xthr
Definition MMT_Road.h:44
void incrementAge(const int bcwind)
Definition MMT_Road.cxx:108
double m_slopeXlow
Definition MMT_Road.h:42
int iRoadu() const
Definition MMT_Road.h:34
std::vector< MMT_Hit > m_road_hits
Definition MMT_Road.h:41
bool stereoCheck() const
Definition MMT_Road.cxx:140
int iRoadx() const
Definition MMT_Road.h:33
bool checkCoincidences(const int bcwind) const
Definition MMT_Road.h:20
~MMT_Road()=default
char getSector() const
Definition MMT_Road.h:30
int m_iroadu
Definition MMT_Road.h:43
int m_iroadv
Definition MMT_Road.h:43
double m_slopeVlow
Definition MMT_Road.h:42
double m_slopeUhigh
Definition MMT_Road.h:42
void addHits(const std::vector< std::shared_ptr< MMT_Hit > > &hits)
Definition MMT_Road.cxx:29
double m_slopeVhigh
Definition MMT_Road.h:42
char m_sector
Definition MMT_Road.h:45
bool evaluateLowRes() const
Definition MMT_Road.cxx:88
int m_uvthr
Definition MMT_Road.h:44
bool matureCheck(const int bcwind) const
Definition MMT_Road.cxx:117
bool horizontalCheck() const
Definition MMT_Road.cxx:97
int m_iroadx
Definition MMT_Road.h:43
unsigned int countXHits() const
Definition MMT_Road.cxx:83
unsigned int countUHits() const
Definition MMT_Road.cxx:78
MMT_Road(const char sector, const int roadSize, const int UpX, const int DownX, const int UpUV, const int DownUV, const int xthr, const int uvthr, const int iroadx, const int iroadu=-1, const int iroadv=-1)
Definition MMT_Road.cxx:7