ATLAS Offline Software
Loading...
Searching...
No Matches
TriggerInfo.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4
5#ifndef EVENTINFO_TRIGGERINFO_H
6# define EVENTINFO_TRIGGERINFO_H 1
16
17#include <vector>
18#include <set>
19#include <string>
20#include <iostream>
21
22
78public:
80
81 typedef unsigned int number_type;
83
85
87 {
88 public:
89 StreamTag();
90 StreamTag(const std::string& name,
91 const std::string& type,
92 bool obeysLumiblock,
93 const std::set<number_type>& robs = std::set<number_type>(),
94 const std::set<number_type>& dets = std::set<number_type>());
95 StreamTag(std::string&& name,
96 std::string&& type,
97 bool obeysLumiblock);
98
99 const std::string& name() const;
100 const std::string& type() const;
101 bool obeysLumiblock() const;
102 const std::set<number_type>& robs() const;
103 const std::set<number_type>& dets() const;
104 private:
105 std::string m_name;
106 std::string m_type;
108 std::set<number_type> m_robs;
109 std::set<number_type> m_dets;
110 };
111
113
114
115 TriggerInfo();
116
121 const std::vector<number_type>& level1TriggerInfo);
122
127 const std::vector<number_type>& level2TriggerInfo,
128 const std::vector<number_type>& eventFilterInfo,
129 const std::vector<StreamTag>& streamTags);
130
135 const std::vector<number_type>& level1TriggerInfo,
136 const std::vector<number_type>& level2TriggerInfo,
137 const std::vector<number_type>& eventFilterInfo,
138 const std::vector<StreamTag>& streamTags);
139
140 virtual ~TriggerInfo();
141
142 TriggerInfo(const TriggerInfo&) = default;
147
148
150
151
158 const std::vector<number_type>& level1TriggerInfo() const;
160 const std::vector<number_type>& level2TriggerInfo() const;
162 const std::vector<number_type>& eventFilterInfo() const;
164 const std::vector<StreamTag>& streamTags() const;
166
167
169
177 void setLevel1TriggerInfo(const std::vector<number_type>& level1TriggerInfo);
178 void setLevel1TriggerInfo(std::vector<number_type>&& level1TriggerInfo);
180 void setLevel2TriggerInfo(const std::vector<number_type>& level2TriggerInfo);
181 void setLevel2TriggerInfo(std::vector<number_type>&& level2TriggerInfo);
183 void setEventFilterInfo(const std::vector<number_type>& eventFilterInfo);
184 void setEventFilterInfo(std::vector<number_type>&& eventFilterInfo);
185
187
188 void setStreamTags(const std::vector<StreamTag>& streamTags);
189 void setStreamTags(std::vector<StreamTag>&& streamTags);
191
193 friend std::ostream& operator << (std::ostream& os, const TriggerInfo& rhs);
194private:
198 std::vector<number_type> m_level1TriggerInfo;
199 std::vector<number_type> m_level2TriggerInfo;
200 std::vector<number_type> m_eventFilterInfo;
201 std::vector<StreamTag> m_streamTags;
202};
203
204
205#endif // EVENTINFO_TRIGGERINFO_H
bool obeysLumiblock() const
const std::set< number_type > & robs() const
Optional list of ROBIDs for PEB.
const std::set< number_type > & dets() const
Optional list of DETIDs for PEB.
const std::string & name() const
std::set< number_type > m_robs
std::set< number_type > m_dets
const std::string & type() const
TriggerInfo & operator=(TriggerInfo &&)=default
void setExtendedLevel1ID(const number_type extendedLevel1ID)
set extended level1 ID
std::vector< StreamTag > m_streamTags
std::vector< number_type > m_level1TriggerInfo
number_type level1TriggerType() const
get level1 trigger type
void setStatusElement(const number_type statusElement)
set status element
unsigned int number_type
Definition TriggerInfo.h:81
virtual ~TriggerInfo()
void setLevel1TriggerType(const number_type level1TriggerType)
set level1 trigger type
const std::vector< number_type > & eventFilterInfo() const
get event filter trigger info
TriggerInfo(const TriggerInfo &)=default
number_type extendedLevel1ID() const
get extended level1 ID
number_type statusElement() const
get status element
void setStreamTags(const std::vector< StreamTag > &streamTags)
number_type m_statusElement
friend std::ostream & operator<<(std::ostream &os, const TriggerInfo &rhs)
extraction operators
number_type m_level1TriggerType
void setLevel2TriggerInfo(const std::vector< number_type > &level2TriggerInfo)
set level2 trigger info
void setLevel1TriggerInfo(const std::vector< number_type > &level1TriggerInfo)
set level1 trigger info
number_type m_extendedLevel1ID
TriggerInfo(TriggerInfo &&)=default
TriggerInfo()
empty default constructor (all zero)
const std::vector< number_type > & level1TriggerInfo() const
get level1 trigger info
const std::vector< StreamTag > & streamTags() const
get stream tags
std::vector< number_type > m_level2TriggerInfo
const std::vector< number_type > & level2TriggerInfo() const
get level2 trigger info
TriggerInfo & operator=(const TriggerInfo &)=default
void setEventFilterInfo(const std::vector< number_type > &eventFilterInfo)
set event filter trigger info
std::vector< number_type > m_eventFilterInfo