ATLAS Offline Software
Loading...
Searching...
No Matches
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}
std::vector< OutputListElement > m_outputListElements

◆ 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}
std::unordered_set< unsigned int > m_triggercounters
std::unordered_set< std::string > m_triggernames
std::vector< TriggerLine > m_triggerlines
unsigned int counter() const
const std::string & name() const

◆ 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}
void sort(typename DataModel_detail::iterator< DVL > beg, typename DataModel_detail::iterator< DVL > end)
Specialization of sort for DataVector/List.

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.

123{"UNDEF","",0,0,0,0,0};

The documentation for this class was generated from the following files: