ATLAS Offline Software
Loading...
Searching...
No Matches
NSWTrigOut.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef NSW_TRIGOUT_H
6#define NSW_TRIGOUT_H
7
8#include <vector>
9
10namespace LVL1TGCTrigger {
11 class TGCArguments;
12}
13
14namespace LVL1TGC {
15
17protected:
18 int m_sideID{-1}; // 0:A-side 1:C-side
19 std::vector<int> m_NSWTriggerProcessor; // 0 ~ 15
20 std::vector<uint8_t> m_NSWeta_8bit; // 0.005
21 std::vector<uint8_t> m_NSWphi_6bit; // 10mrad
22 std::vector<uint8_t> m_NSWDtheta_5bit; // 1mrad
23 std::vector<bool> m_NSWlowRes;
24 std::vector<bool> m_NSWphiRes;
25 std::vector<bool> m_NSWmonitor;
26
27public:
28 NSWTrigOut() = default;
29 NSWTrigOut(int side,
30 const std::vector<int>& NSWTrigger,
31 const std::vector<uint8_t>& NSWeta,
32 const std::vector<uint8_t>& NSWphi,
33 const std::vector<uint8_t>& NSWDtheta,
34 const std::vector<bool>& NSWlowRes,
35 const std::vector<bool>& NSWphiRes,
36 const std::vector<bool>& NSWmonitor,
37 LVL1TGCTrigger::TGCArguments* tgcargs=nullptr);
38 NSWTrigOut(int side, const std::vector<int>& NSWTrigger, LVL1TGCTrigger::TGCArguments* tgcargs=nullptr);
39
40 NSWTrigOut& operator+=(const NSWTrigOut& right);
41 bool operator==(const NSWTrigOut& right) const
42 {
43 return (this==&right);
44 }
45
46 bool operator!=(const NSWTrigOut& right) const
47 {
48 return (this!=&right);
49 }
50
51
52 // set functons
53 void setSide(int side){ m_sideID = side; }
54 void setNSWTriggerProcessor(int NSWTP){ m_NSWTriggerProcessor.push_back(NSWTP); }
55 void setEta(uint8_t NSWeta){ m_NSWeta_8bit.push_back(NSWeta); }
56 void setPhi(uint8_t NSWphi){ m_NSWphi_6bit.push_back(NSWphi); }
57 void setDtheta(uint8_t NSWDtheta){ m_NSWDtheta_5bit.push_back(NSWDtheta); }
58 void setLowRes(bool NSWlowRes){ m_NSWlowRes.push_back(NSWlowRes); }
59 void setPhiRes(bool NSWphiRes){ m_NSWphiRes.push_back(NSWphiRes); }
60 void setMonitor(bool NSWmonitor){ m_NSWmonitor.push_back(NSWmonitor); }
61 void clear() { m_sideID=-1;m_NSWTriggerProcessor.clear(); m_NSWeta_8bit.clear(); m_NSWphi_6bit.clear(); m_NSWDtheta_5bit.clear(); m_NSWlowRes.clear(); m_NSWphiRes.clear(); m_NSWmonitor.clear();}
62
63 // get functions
64 int getSide() const { return m_sideID; }
65 const std::vector<int>& getNSWTriggerProcessor() const {return m_NSWTriggerProcessor; }
66 const std::vector<uint8_t>& getNSWeta() const {return m_NSWeta_8bit; }
67 const std::vector<uint8_t>& getNSWphi() const {return m_NSWphi_6bit; }
68 const std::vector<uint8_t>& getNSWDtheta() const {return m_NSWDtheta_5bit; }
69 const std::vector<bool>& getNSWlowRes() const {return m_NSWlowRes; }
70 const std::vector<bool>& getNSWphiRes() const {return m_NSWphiRes; }
71 const std::vector<bool>& getNSWmonitor() const {return m_NSWmonitor; }
72
73 // print methods
74 void print() const;
75
76 private:
78};
79
80} // end of namespace
81
82#endif
std::vector< uint8_t > m_NSWDtheta_5bit
Definition NSWTrigOut.h:22
int getSide() const
Definition NSWTrigOut.h:64
std::vector< int > m_NSWTriggerProcessor
Definition NSWTrigOut.h:19
const std::vector< bool > & getNSWmonitor() const
Definition NSWTrigOut.h:71
void print() const
void setEta(uint8_t NSWeta)
Definition NSWTrigOut.h:55
bool operator==(const NSWTrigOut &right) const
Definition NSWTrigOut.h:41
void setDtheta(uint8_t NSWDtheta)
Definition NSWTrigOut.h:57
void setLowRes(bool NSWlowRes)
Definition NSWTrigOut.h:58
std::vector< bool > m_NSWphiRes
Definition NSWTrigOut.h:24
void setSide(int side)
Definition NSWTrigOut.h:53
std::vector< bool > m_NSWlowRes
Definition NSWTrigOut.h:23
const std::vector< bool > & getNSWlowRes() const
Definition NSWTrigOut.h:69
NSWTrigOut & operator+=(const NSWTrigOut &right)
std::vector< uint8_t > m_NSWeta_8bit
Definition NSWTrigOut.h:20
void setPhi(uint8_t NSWphi)
Definition NSWTrigOut.h:56
const std::vector< uint8_t > & getNSWphi() const
Definition NSWTrigOut.h:67
std::vector< uint8_t > m_NSWphi_6bit
Definition NSWTrigOut.h:21
const std::vector< uint8_t > & getNSWDtheta() const
Definition NSWTrigOut.h:68
const std::vector< uint8_t > & getNSWeta() const
Definition NSWTrigOut.h:66
std::vector< bool > m_NSWmonitor
Definition NSWTrigOut.h:25
void setPhiRes(bool NSWphiRes)
Definition NSWTrigOut.h:59
void setNSWTriggerProcessor(int NSWTP)
Definition NSWTrigOut.h:54
const std::vector< bool > & getNSWphiRes() const
Definition NSWTrigOut.h:70
LVL1TGCTrigger::TGCArguments * m_tgcArgs
Definition NSWTrigOut.h:77
const std::vector< int > & getNSWTriggerProcessor() const
Definition NSWTrigOut.h:65
bool operator!=(const NSWTrigOut &right) const
Definition NSWTrigOut.h:46
void setMonitor(bool NSWmonitor)
Definition NSWTrigOut.h:60