ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
TXC::L1TopoConfigOutputList Class Reference

#include <L1TopoConfigOutputList.h>

Collaboration diagram for TXC::L1TopoConfigOutputList:

Public Member Functions

 L1TopoConfigOutputList ()
 
virtual ~L1TopoConfigOutputList ()
 
 L1TopoConfigOutputList (L1TopoConfigOutputList &&) noexcept=default
 
L1TopoConfigOutputListoperator= (L1TopoConfigOutputList &&) noexcept=default
 
const std::vector< OutputListElement > & getOutputList () const
 
const std::vector< TriggerLine > & getTriggerLines () const
 
bool hasTrigger (const std::string &trigger) const
 
const TXC::TriggerLinegetTrigger (const std::string &trigger) const
 
void addOutputListElement (const OutputListElement &output)
 
void addTriggerLine (const TriggerLine &trigger)
 
void sort ()
 

Private Attributes

std::vector< OutputListElementm_outputListElements
 
std::vector< TriggerLinem_triggerlines
 
TXC::TriggerLine m_undef {"UNDEF","",0,0,0,0,0}
 
std::unordered_set< std::string > m_triggernames
 
std::unordered_set< unsigned int > m_triggercounters
 

Detailed Description

Definition at line 89 of file L1TopoConfigOutputList.h.

Constructor & Destructor Documentation

◆ L1TopoConfigOutputList() [1/2]

TXC::L1TopoConfigOutputList::L1TopoConfigOutputList ( )
inline

Definition at line 93 of file L1TopoConfigOutputList.h.

93 {};

◆ ~L1TopoConfigOutputList()

virtual TXC::L1TopoConfigOutputList::~L1TopoConfigOutputList ( )
inlinevirtual

Definition at line 96 of file L1TopoConfigOutputList.h.

96 {};

◆ L1TopoConfigOutputList() [2/2]

TXC::L1TopoConfigOutputList::L1TopoConfigOutputList ( L1TopoConfigOutputList &&  )
defaultnoexcept

Member Function Documentation

◆ addOutputListElement()

void L1TopoConfigOutputList::addOutputListElement ( const OutputListElement output)

Definition at line 28 of file L1TopoConfigOutputList.cxx.

28  {
29  m_outputListElements.push_back(output);
30 }

◆ addTriggerLine()

void L1TopoConfigOutputList::addTriggerLine ( const TriggerLine trigger)

Definition at line 34 of file L1TopoConfigOutputList.cxx.

34  {
35 
36  auto insname = m_triggernames.insert(trigger.name());
37  if(!insname.second)
38  TCS_EXCEPTION("Trigger line '" << trigger.name() << "' has been defined more than once");
39 
40  auto inscount = m_triggercounters.insert(trigger.counter());
41  if(!inscount.second) {
42  string triggerWithSameCounter("");
43  for(auto & tl : m_triggerlines)
44  if(tl.counter() == trigger.counter())
45  triggerWithSameCounter = tl.name();
46  TCS_EXCEPTION("Trigger line '" << trigger.name() << "' is on the same output line (" << trigger.counter() << ") as trigger line '" << triggerWithSameCounter << "'");
47  }
48 
49  m_triggerlines.push_back(trigger);
50 
51 }

◆ getOutputList()

const std::vector<OutputListElement>& TXC::L1TopoConfigOutputList::getOutputList ( ) const
inline

Definition at line 103 of file L1TopoConfigOutputList.h.

103 { return m_outputListElements; }

◆ getTrigger()

const TriggerLine & L1TopoConfigOutputList::getTrigger ( const std::string &  trigger) const

Definition at line 62 of file L1TopoConfigOutputList.cxx.

62  {
63  for(const TriggerLine & t : m_triggerlines)
64  if(t.name() == trigger) return t;
65  return m_undef;
66 }

◆ getTriggerLines()

const std::vector<TriggerLine>& TXC::L1TopoConfigOutputList::getTriggerLines ( ) const
inline

Definition at line 105 of file L1TopoConfigOutputList.h.

105 { return m_triggerlines; }

◆ hasTrigger()

bool L1TopoConfigOutputList::hasTrigger ( const std::string &  trigger) const

Definition at line 54 of file L1TopoConfigOutputList.cxx.

54  {
55  for(const TriggerLine & t : m_triggerlines)
56  if(t.name() == trigger) return true;
57  return false;
58 }

◆ operator=()

L1TopoConfigOutputList& TXC::L1TopoConfigOutputList::operator= ( L1TopoConfigOutputList &&  )
defaultnoexcept

◆ sort()

void L1TopoConfigOutputList::sort ( )

Definition at line 73 of file L1TopoConfigOutputList.cxx.

73  {
74  std::sort( m_triggerlines.begin(), m_triggerlines.end(), comp);
75 }

Member Data Documentation

◆ m_outputListElements

std::vector<OutputListElement> TXC::L1TopoConfigOutputList::m_outputListElements
private

Definition at line 119 of file L1TopoConfigOutputList.h.

◆ m_triggercounters

std::unordered_set<unsigned int> TXC::L1TopoConfigOutputList::m_triggercounters
private

Definition at line 126 of file L1TopoConfigOutputList.h.

◆ m_triggerlines

std::vector<TriggerLine> TXC::L1TopoConfigOutputList::m_triggerlines
private

Definition at line 121 of file L1TopoConfigOutputList.h.

◆ m_triggernames

std::unordered_set<std::string> TXC::L1TopoConfigOutputList::m_triggernames
private

Definition at line 125 of file L1TopoConfigOutputList.h.

◆ m_undef

TXC::TriggerLine TXC::L1TopoConfigOutputList::m_undef {"UNDEF","",0,0,0,0,0}
private

Definition at line 123 of file L1TopoConfigOutputList.h.


The documentation for this class was generated from the following files:
plotting.yearwise_luminosity_vs_mu.comp
comp
Definition: yearwise_luminosity_vs_mu.py:24
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
TXC::L1TopoConfigOutputList::m_undef
TXC::TriggerLine m_undef
Definition: L1TopoConfigOutputList.h:123
TXC::L1TopoConfigOutputList::m_outputListElements
std::vector< OutputListElement > m_outputListElements
Definition: L1TopoConfigOutputList.h:119
TCS_EXCEPTION
#define TCS_EXCEPTION(MSG)
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Exception.h:14
merge.output
output
Definition: merge.py:17
TXC::TriggerLine
Definition: L1TopoConfigOutputList.h:15
std::sort
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
Definition: DVL_algorithms.h:623
dqt_zlumi_alleff_HIST.tl
tl
Definition: dqt_zlumi_alleff_HIST.py:73
TXC::L1TopoConfigOutputList::m_triggercounters
std::unordered_set< unsigned int > m_triggercounters
Definition: L1TopoConfigOutputList.h:126
TXC::L1TopoConfigOutputList::m_triggernames
std::unordered_set< std::string > m_triggernames
Definition: L1TopoConfigOutputList.h:125
TXC::L1TopoConfigOutputList::m_triggerlines
std::vector< TriggerLine > m_triggerlines
Definition: L1TopoConfigOutputList.h:121
PhysDESDM_Quirks.trigger
trigger
Definition: PhysDESDM_Quirks.py:27