ATLAS Offline Software
TriggerThreshold.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef TrigConf_TriggerThreshold
8 #define TrigConf_TriggerThreshold
9 
13 
14 #include <string>
15 #include <vector>
16 #include <iostream>
17 
18 namespace TrigConf {
19 
21 
22  public:
25  virtual ~TriggerThreshold() override;
26 
27  static TriggerThresholdValue* createThresholdValue(const std::string& type);
28 
29  // accessors
30  L1DataDef::TriggerType ttype() const { return m_type; }
31  const std::string& type() const { return m_SType; }
32  bool active() const { return m_Active; }
33  int mapping() const { return m_Mapping; }
34  const std::string& cableName() const { return m_CableName; }
35  const std::string& cableCtpin() const { return m_CableCtpin; }
36  const std::string& cableConnector() const { return m_CableConnector; }
37  int cableStart() const { return m_CableStart; }
38  int cableEnd() const { return m_CableEnd; }
39  unsigned int clock() const { return m_Clock; }
40  int thresholdNumber() const { return m_ThresholdNumber; }
41  int numberofValues() const { return m_TriggerThresholdValueVector.size(); }
42  const std::string& zbSeedingThresholdName() const { return m_ZBSeedingThresholdName; }
44  int bcDelay() const { return m_BCDelay; }
45  unsigned int bitnum() const { return m_Bitnum; }
46  const std::string& input() const { return m_Input; }
47 
48  // setters
50  void setType (const std::string& type);
51  void setActive (bool x) { m_Active = x; }
52  void setMapping (int m) { m_Mapping = m; }
53  void setCableName (const std::string& cablename ) { m_CableName = cablename; }
54  void setCableCtpin (const std::string& cablectpin) { m_CableCtpin = cablectpin; }
55  void setCableConnector (const std::string& connector) { m_CableConnector = connector; }
56  void setCableStart (int cable) { m_CableStart = cable; }
57  void setCableEnd (int cable) { m_CableEnd = cable; }
58  void setClock (unsigned int clock) { m_Clock = clock; }
60  void setZBSeedingThresholdName (const std::string& seed) { m_ZBSeedingThresholdName = seed; }
61  void setZBSeedingThresholdMulti (int seedmulti) { m_ZBSeedingThresholdMulti = seedmulti; }
62  void setBCDelay (int bcdelay) { m_BCDelay = bcdelay; }
63  void setBitnum (unsigned int bitnum) { m_Bitnum = bitnum; }
64  void setInput (const std::string& input);
65 
66  // is internal threshold
67  bool isInternal() const;
68 
69  // @brief return value for given eta and phi
70  TriggerThresholdValue* triggerThresholdValue(int eta,int phi) const;
71  const std::vector<TriggerThresholdValue*>& thresholdValueVector() const;
72  void clearThresholdValues();
73 
75  TriggerThresholdValue* addThresholdValue(const std::string& type);
76 
77  virtual void print(const std::string& indent="", unsigned int detail=1) const override;
78  virtual void writeXML(std::ostream & xmlfile, int indentLevel=0, int indentWidth=2) const;
79 
80  protected:
82  std::string m_SType {"dummy"};
83  bool m_Active {true};
84  int m_Mapping {-1};
85  std::vector<TriggerThresholdValue*> m_TriggerThresholdValueVector{};
86  std::string m_CableName{""};
87  std::string m_CableCtpin{""};
88  std::string m_CableConnector{""};
89  int m_CableStart{0};
90  int m_CableEnd{0};
91  unsigned int m_Clock{0};
92  int m_ThresholdNumber{-1}; // specifies the number within a certain set of thresholds
93  // e.g. the 5th cluster threshold
94  std::string m_ZBSeedingThresholdName{""};
96  int m_BCDelay{3564};
97  unsigned int m_Bitnum{1};
98  std::string m_Input{"ctpin"};
99  };
100 
101 }
102 
103 #endif
104 
TrigConf::TriggerThresholdValue
Definition: TriggerThresholdValue.h:22
TrigConf::TriggerThreshold::ttype
L1DataDef::TriggerType ttype() const
Definition: TriggerThreshold.h:30
TrigConf::TriggerThreshold::m_Active
bool m_Active
Definition: TriggerThreshold.h:83
TrigConf::TriggerThreshold::m_CableCtpin
std::string m_CableCtpin
Definition: TriggerThreshold.h:87
TrigConf::TriggerThreshold::setThresholdNumber
void setThresholdNumber(int number)
Definition: TriggerThreshold.h:59
TrigConf::TriggerThreshold::m_ThresholdNumber
int m_ThresholdNumber
Definition: TriggerThreshold.h:92
TrigConf::TriggerThreshold::mapping
int mapping() const
Definition: TriggerThreshold.h:33
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
TrigConf::TriggerThreshold::cableName
const std::string & cableName() const
Definition: TriggerThreshold.h:34
TrigConf::TriggerThreshold::setInput
void setInput(const std::string &input)
Definition: TriggerThreshold.cxx:69
TrigConf::TriggerThreshold::zbSeedingThresholdName
const std::string & zbSeedingThresholdName() const
Definition: TriggerThreshold.h:42
TrigConf::TriggerThreshold::cableEnd
int cableEnd() const
Definition: TriggerThreshold.h:38
TrigConf::TriggerThreshold::m_TriggerThresholdValueVector
std::vector< TriggerThresholdValue * > m_TriggerThresholdValueVector
Definition: TriggerThreshold.h:85
TrigConf::TriggerThreshold::isInternal
bool isInternal() const
Definition: TriggerThreshold.cxx:77
TrigConf::TriggerThreshold::setActive
void setActive(bool x)
Definition: TriggerThreshold.h:51
TrigConf::TriggerThreshold::print
virtual void print(const std::string &indent="", unsigned int detail=1) const override
Definition: TriggerThreshold.cxx:169
TrigConf::TriggerThreshold::cableStart
int cableStart() const
Definition: TriggerThreshold.h:37
TrigConf::TriggerThreshold::TriggerThreshold
TriggerThreshold()
Definition: TriggerThreshold.cxx:22
TrigConf::TriggerThreshold::thresholdValueVector
const std::vector< TriggerThresholdValue * > & thresholdValueVector() const
Definition: TriggerThreshold.cxx:114
athena.value
value
Definition: athena.py:124
detail
Definition: extract_histogram_tag.cxx:14
x
#define x
TrigConf::TriggerThreshold::m_ZBSeedingThresholdName
std::string m_ZBSeedingThresholdName
Definition: TriggerThreshold.h:94
TrigConf::TriggerThreshold::active
bool active() const
Definition: TriggerThreshold.h:32
TrigConf::TriggerThreshold::zbSeedingThresholdMulti
int zbSeedingThresholdMulti() const
Definition: TriggerThreshold.h:43
TrigConf::TriggerThreshold::setType
void setType(L1DataDef::TriggerType type)
Definition: TriggerThreshold.cxx:56
TrigConf
Forward iterator to traverse the main components of the trigger configuration.
Definition: Config.h:22
TrigConf::TriggerThreshold::setBCDelay
void setBCDelay(int bcdelay)
Definition: TriggerThreshold.h:62
TrigConf::TriggerThreshold::type
const std::string & type() const
Definition: TriggerThreshold.h:31
TrigConf::TriggerThreshold::setCableName
void setCableName(const std::string &cablename)
Definition: TriggerThreshold.h:53
TrigConf::TriggerThreshold::setZBSeedingThresholdMulti
void setZBSeedingThresholdMulti(int seedmulti)
Definition: TriggerThreshold.h:61
TrigConf::TriggerThreshold::m_CableName
std::string m_CableName
Definition: TriggerThreshold.h:86
TrigConf::TriggerThreshold::addThresholdValue
void addThresholdValue(TriggerThresholdValue *value)
Definition: TriggerThreshold.cxx:119
TrigConf::TriggerThreshold::cableConnector
const std::string & cableConnector() const
Definition: TriggerThreshold.h:36
TrigConf::TriggerThreshold::m_CableConnector
std::string m_CableConnector
Definition: TriggerThreshold.h:88
TrigConf::TriggerThreshold::input
const std::string & input() const
Definition: TriggerThreshold.h:46
TrigConf::TriggerThreshold::m_CableStart
int m_CableStart
Definition: TriggerThreshold.h:89
TrigConf::TriggerThreshold::m_Mapping
int m_Mapping
Definition: TriggerThreshold.h:84
TrigConf::TriggerThreshold::setZBSeedingThresholdName
void setZBSeedingThresholdName(const std::string &seed)
Definition: TriggerThreshold.h:60
TrigConf::TriggerThreshold::writeXML
virtual void writeXML(std::ostream &xmlfile, int indentLevel=0, int indentWidth=2) const
Definition: TriggerThreshold.cxx:214
TrigConf::TriggerThreshold::m_type
L1DataDef::TriggerType m_type
Definition: TriggerThreshold.h:81
TriggerThresholdValue.h
TrigConf::TriggerThreshold::bcDelay
int bcDelay() const
Definition: TriggerThreshold.h:44
TrigConf::TriggerThreshold::m_Input
std::string m_Input
Definition: TriggerThreshold.h:98
TrigConf::TriggerThreshold::setMapping
void setMapping(int m)
Definition: TriggerThreshold.h:52
TrigConf::TriggerThreshold::setCableEnd
void setCableEnd(int cable)
Definition: TriggerThreshold.h:57
TrigConf::TriggerThreshold::numberofValues
int numberofValues() const
Definition: TriggerThreshold.h:41
python.selection.number
number
Definition: selection.py:20
TrigConf::TriggerThreshold::m_Bitnum
unsigned int m_Bitnum
Definition: TriggerThreshold.h:97
TrigConf::TriggerThreshold::setCableCtpin
void setCableCtpin(const std::string &cablectpin)
Definition: TriggerThreshold.h:54
TrigConf::TriggerThreshold::triggerThresholdValue
TriggerThresholdValue * triggerThresholdValue(int eta, int phi) const
Definition: TriggerThreshold.cxx:82
TrigConf::TriggerThreshold::clearThresholdValues
void clearThresholdValues()
Definition: TriggerThreshold.cxx:163
TrigConf::TriggerThreshold::m_Clock
unsigned int m_Clock
Definition: TriggerThreshold.h:91
TrigConf::TriggerThreshold::m_BCDelay
int m_BCDelay
Definition: TriggerThreshold.h:96
TrigConf::TriggerThreshold::~TriggerThreshold
virtual ~TriggerThreshold() override
Definition: TriggerThreshold.cxx:50
TrigConf::L1DataDef::UNDEF
@ UNDEF
Definition: L1DataDef.h:39
TrigConf::TriggerThreshold::m_SType
std::string m_SType
Definition: TriggerThreshold.h:82
L1DataDef.h
TrigConf::TriggerThreshold::cableCtpin
const std::string & cableCtpin() const
Definition: TriggerThreshold.h:35
TrigConf::L1DataDef::TriggerType
TriggerType
Definition: L1DataDef.h:30
TrigConf::TriggerThreshold::bitnum
unsigned int bitnum() const
Definition: TriggerThreshold.h:45
TrigConf::TriggerThreshold::m_ZBSeedingThresholdMulti
int m_ZBSeedingThresholdMulti
Definition: TriggerThreshold.h:95
TrigConf::TrigConfData::indent
std::ostream & indent(std::ostream &o, int lvl, int size) const
Definition: TrigConfData.cxx:23
TrigConf::L1DataBaseclass
Definition: L1DataBaseclass.h:22
TrigConf::TriggerThreshold::clock
unsigned int clock() const
Definition: TriggerThreshold.h:39
L1DataBaseclass.h
TrigConf::TriggerThreshold::setCableStart
void setCableStart(int cable)
Definition: TriggerThreshold.h:56
TrigConf::TriggerThreshold::thresholdNumber
int thresholdNumber() const
Definition: TriggerThreshold.h:40
TrigConf::TriggerThreshold::setBitnum
void setBitnum(unsigned int bitnum)
Definition: TriggerThreshold.h:63
TrigConf::TriggerThreshold
Definition: TriggerThreshold.h:20
TrigConf::TriggerThreshold::setCableConnector
void setCableConnector(const std::string &connector)
Definition: TriggerThreshold.h:55
TrigConf::TriggerThreshold::createThresholdValue
static TriggerThresholdValue * createThresholdValue(const std::string &type)
Definition: TriggerThreshold.cxx:133
TrigConf::TriggerThreshold::m_CableEnd
int m_CableEnd
Definition: TriggerThreshold.h:90
TrigConf::TriggerThreshold::setClock
void setClock(unsigned int clock)
Definition: TriggerThreshold.h:58