ATLAS Offline Software
Loading...
Searching...
No Matches
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
18namespace TrigConf {
19
21
22 public:
25 virtual ~TriggerThreshold() override;
26
27 static TriggerThresholdValue* createThresholdValue(const std::string& type);
28
29 // accessors
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
71 const std::vector<TriggerThresholdValue*>& thresholdValueVector() const;
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{""};
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
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define x
std::ostream & indent(std::ostream &o, int lvl, int size) const
void setZBSeedingThresholdMulti(int seedmulti)
void setType(L1DataDef::TriggerType type)
void setThresholdNumber(int number)
void addThresholdValue(TriggerThresholdValue *value)
const std::string & zbSeedingThresholdName() const
static TriggerThresholdValue * createThresholdValue(const std::string &type)
void setClock(unsigned int clock)
virtual ~TriggerThreshold() override
const std::string & cableName() const
void setZBSeedingThresholdName(const std::string &seed)
const std::string & type() const
unsigned int clock() const
void setCableName(const std::string &cablename)
void setInput(const std::string &input)
virtual void print(const std::string &indent="", unsigned int detail=1) const override
void setCableConnector(const std::string &connector)
TriggerThresholdValue * triggerThresholdValue(int eta, int phi) const
unsigned int bitnum() const
std::vector< TriggerThresholdValue * > m_TriggerThresholdValueVector
const std::string & cableConnector() const
const std::string & cableCtpin() const
void setCableCtpin(const std::string &cablectpin)
const std::vector< TriggerThresholdValue * > & thresholdValueVector() const
virtual void writeXML(std::ostream &xmlfile, int indentLevel=0, int indentWidth=2) const
void setBitnum(unsigned int bitnum)
L1DataDef::TriggerType m_type
L1DataDef::TriggerType ttype() const
const std::string & input() const
static std::vector< std::string > xmlfile
Definition iLumiCalc.h:29
Forward iterator to traverse the main components of the trigger configuration.
Definition Config.h:22
std::string number(const double &d, const std::string &s)
Definition utils.cxx:186