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

#include <L1TopoMenu.h>

Collaboration diagram for TXC::L1TopoMenu:

Public Member Functions

 L1TopoMenu ()
 
 L1TopoMenu (const std::string &name, const std::string &version)
 
 L1TopoMenu (L1TopoMenu &&o) noexcept=default
 
 L1TopoMenu (const L1TopoMenu &)=delete
 
 ~L1TopoMenu ()
 
const std::string & getName () const
 
const std::string & getVersion () const
 
const unsigned int & getSMK () const
 
const L1TopoConfigAlgalgorithm (const std::string &name) const
 
const std::vector< TXC::L1TopoConfigAlg > & getL1TopoConfigAlgs () const
 
const L1TopoConfigGlobalgetL1TopoConfigGlobal () const
 
const L1TopoConfigOutputListgetL1TopoConfigOutputList () const
 
void print () const
 print menu More...
 
L1TopoMenuoperator= (L1TopoMenu &&o) noexcept=default
 
void setName (const std::string &name)
 setter methods More...
 
void setVersion (const std::string &version)
 
void setSMK (const unsigned int &smk)
 
void addAlgorithm (TXC::L1TopoConfigAlg &&alg)
 add algorithm More...
 
void addL1TopoXMLOutput (const TXC::OutputListElement &output)
 add output More...
 
void addL1TopoConfigGlobal (const TXC::TopoConfigElement &topoconfig)
 add config More...
 

Private Member Functions

L1TopoMenuoperator= (const L1TopoMenu &)=delete
 
TCS::StatusCode setTriggerList ()
 

Private Attributes

std::string m_name {""}
 
std::string m_version {""}
 
unsigned int m_smk {0}
 
std::vector< TXC::L1TopoConfigAlgm_algos
 
TXC::L1TopoConfigGlobal m_topoconfig
 
TXC::L1TopoConfigOutputList m_outputlist
 

Friends

class TrigConf::L1TopoConfig
 
class TrigConf::L1TopoMenuLoader
 

Detailed Description

Definition at line 25 of file L1TopoMenu.h.

Constructor & Destructor Documentation

◆ L1TopoMenu() [1/4]

L1TopoMenu::L1TopoMenu ( )

Definition at line 14 of file L1TopoMenu.cxx.

14 {}

◆ L1TopoMenu() [2/4]

L1TopoMenu::L1TopoMenu ( const std::string &  name,
const std::string &  version 
)

Definition at line 16 of file L1TopoMenu.cxx.

16  :
17  m_name(name),
19  m_smk(0)
20 {}

◆ L1TopoMenu() [3/4]

TXC::L1TopoMenu::L1TopoMenu ( L1TopoMenu &&  o)
defaultnoexcept

◆ L1TopoMenu() [4/4]

TXC::L1TopoMenu::L1TopoMenu ( const L1TopoMenu )
delete

◆ ~L1TopoMenu()

L1TopoMenu::~L1TopoMenu ( )

Definition at line 24 of file L1TopoMenu.cxx.

24 {}

Member Function Documentation

◆ addAlgorithm()

void L1TopoMenu::addAlgorithm ( TXC::L1TopoConfigAlg &&  alg)

add algorithm

Definition at line 27 of file L1TopoMenu.cxx.

27  {
28  m_algos.emplace_back(std::move(alg));
29 }

◆ addL1TopoConfigGlobal()

void TXC::L1TopoMenu::addL1TopoConfigGlobal ( const TXC::TopoConfigElement topoconfig)
inline

add config

Definition at line 72 of file L1TopoMenu.h.

72 { m_topoconfig.addTopoConfigElement(topoconfig); }

◆ addL1TopoXMLOutput()

void TXC::L1TopoMenu::addL1TopoXMLOutput ( const TXC::OutputListElement output)
inline

add output

Definition at line 69 of file L1TopoMenu.h.

◆ algorithm()

const L1TopoConfigAlg & L1TopoMenu::algorithm ( const std::string &  name) const

Definition at line 32 of file L1TopoMenu.cxx.

32  {
33  for(const L1TopoConfigAlg & alg: m_algos)
34  if(alg.name() == name) return alg;
35  TCS_EXCEPTION("L1TopoMenu: algorithm of name " << name << " doesn't exist");
36 }

◆ getL1TopoConfigAlgs()

const std::vector<TXC::L1TopoConfigAlg>& TXC::L1TopoMenu::getL1TopoConfigAlgs ( ) const
inline

Definition at line 53 of file L1TopoMenu.h.

53 { return m_algos; }

◆ getL1TopoConfigGlobal()

const L1TopoConfigGlobal& TXC::L1TopoMenu::getL1TopoConfigGlobal ( ) const
inline

Definition at line 54 of file L1TopoMenu.h.

54 { return m_topoconfig; }

◆ getL1TopoConfigOutputList()

const L1TopoConfigOutputList& TXC::L1TopoMenu::getL1TopoConfigOutputList ( ) const
inline

Definition at line 55 of file L1TopoMenu.h.

55 { return m_outputlist; }

◆ getName()

const std::string& TXC::L1TopoMenu::getName ( ) const
inline

Definition at line 46 of file L1TopoMenu.h.

46 {return m_name; }

◆ getSMK()

const unsigned int& TXC::L1TopoMenu::getSMK ( ) const
inline

Definition at line 48 of file L1TopoMenu.h.

48 {return m_smk; }

◆ getVersion()

const std::string& TXC::L1TopoMenu::getVersion ( ) const
inline

Definition at line 47 of file L1TopoMenu.h.

47 {return m_version; }

◆ operator=() [1/2]

L1TopoMenu& TXC::L1TopoMenu::operator= ( const L1TopoMenu )
privatedelete

◆ operator=() [2/2]

L1TopoMenu& TXC::L1TopoMenu::operator= ( L1TopoMenu &&  o)
defaultnoexcept

◆ print()

void TXC::L1TopoMenu::print ( ) const

print menu

Definition at line 64 of file L1TopoMenu.cxx.

64  {
65 
66  cout << "==========================================" << endl
67  << "Menu Name : " << getName() << endl
68  << "Menu Version: " << getVersion() << endl
69  << m_topoconfig << endl;
70 
72  cout << alg << endl;
73 
74  cout << m_outputlist << endl;
75 
76 }

◆ setName()

void TXC::L1TopoMenu::setName ( const std::string &  name)
inline

setter methods

set menu attributes

Definition at line 61 of file L1TopoMenu.h.

61 { m_name = name; }

◆ setSMK()

void TXC::L1TopoMenu::setSMK ( const unsigned int &  smk)
inline

Definition at line 63 of file L1TopoMenu.h.

63 {m_smk = smk; }

◆ setTriggerList()

TCS::StatusCode L1TopoMenu::setTriggerList ( )
private

Definition at line 40 of file L1TopoMenu.cxx.

40  {
41 
43 
44  const L1TopoConfigAlg & alg = algorithm( out.algoname() );
45 
46  if(! alg.isDecAlg()) {
47  TCS_EXCEPTION("L1TopoMenu: output list contains an algorithm " << out.algoname() << " that is not an decision algorithm");
48  }
49 
50  unsigned int bit = out.firstbit();
51  for (const string& outputname : alg.getOutputNames() ) {
52  m_outputlist.addTriggerLine( TriggerLine(outputname, out.algoname(),
53  out.algoid(), out.module(), out.fpga(), out.clock(),
54  bit++) );
55  }
56  }
57 
59 
61 }

◆ setVersion()

void TXC::L1TopoMenu::setVersion ( const std::string &  version)
inline

Definition at line 62 of file L1TopoMenu.h.

62 {m_version = version; }

Friends And Related Function Documentation

◆ TrigConf::L1TopoConfig

friend class TrigConf::L1TopoConfig
friend

Definition at line 84 of file L1TopoMenu.h.

◆ TrigConf::L1TopoMenuLoader

friend class TrigConf::L1TopoMenuLoader
friend

Definition at line 85 of file L1TopoMenu.h.

Member Data Documentation

◆ m_algos

std::vector<TXC::L1TopoConfigAlg> TXC::L1TopoMenu::m_algos
private

Definition at line 94 of file L1TopoMenu.h.

◆ m_name

std::string TXC::L1TopoMenu::m_name {""}
private

Definition at line 89 of file L1TopoMenu.h.

◆ m_outputlist

TXC::L1TopoConfigOutputList TXC::L1TopoMenu::m_outputlist
private

Definition at line 96 of file L1TopoMenu.h.

◆ m_smk

unsigned int TXC::L1TopoMenu::m_smk {0}
private

Definition at line 91 of file L1TopoMenu.h.

◆ m_topoconfig

TXC::L1TopoConfigGlobal TXC::L1TopoMenu::m_topoconfig
private

Definition at line 95 of file L1TopoMenu.h.

◆ m_version

std::string TXC::L1TopoMenu::m_version {""}
private

Definition at line 90 of file L1TopoMenu.h.


The documentation for this class was generated from the following files:
TCS::StatusCode::SUCCESS
@ SUCCESS
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:17
SGout2dot.alg
alg
Definition: SGout2dot.py:243
TXC::L1TopoMenu::m_version
std::string m_version
Definition: L1TopoMenu.h:90
TXC::L1TopoConfigOutputList::addTriggerLine
void addTriggerLine(const TriggerLine &trigger)
Definition: L1TopoConfigOutputList.cxx:34
RunEBWeightsComputation.smk
smk
Definition: RunEBWeightsComputation.py:87
TXC::L1TopoMenu::m_smk
unsigned int m_smk
Definition: L1TopoMenu.h:91
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
TXC::L1TopoMenu::m_algos
std::vector< TXC::L1TopoConfigAlg > m_algos
Definition: L1TopoMenu.h:94
TXC::L1TopoConfigOutputList::sort
void sort()
Definition: L1TopoConfigOutputList.cxx:73
TXC::L1TopoConfigOutputList::getOutputList
const std::vector< OutputListElement > & getOutputList() const
Definition: L1TopoConfigOutputList.h:103
TXC::L1TopoMenu::getVersion
const std::string & getVersion() const
Definition: L1TopoMenu.h:47
TXC::L1TopoMenu::m_name
std::string m_name
Definition: L1TopoMenu.h:89
TXC::L1TopoMenu::getName
const std::string & getName() const
Definition: L1TopoMenu.h:46
TXC::L1TopoMenu::m_outputlist
TXC::L1TopoConfigOutputList m_outputlist
Definition: L1TopoMenu.h:96
TXC::OutputListElement
Definition: L1TopoConfigOutputList.h:57
TXC::L1TopoConfigOutputList::addOutputListElement
void addOutputListElement(const OutputListElement &output)
Definition: L1TopoConfigOutputList.cxx:28
TCS_EXCEPTION
#define TCS_EXCEPTION(MSG)
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Exception.h:14
merge.output
output
Definition: merge.py:17
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TXC::TriggerLine
Definition: L1TopoConfigOutputList.h:15
TXC::L1TopoMenu::algorithm
const L1TopoConfigAlg & algorithm(const std::string &name) const
Definition: L1TopoMenu.cxx:32
TXC::L1TopoConfigAlg
Definition: L1TopoConfigAlg.h:56
get_generator_info.version
version
Definition: get_generator_info.py:33
TXC::L1TopoMenu::getL1TopoConfigAlgs
const std::vector< TXC::L1TopoConfigAlg > & getL1TopoConfigAlgs() const
Definition: L1TopoMenu.h:53
TXC::L1TopoConfigGlobal::addTopoConfigElement
void addTopoConfigElement(const std::string &name, const std::string &value)
Definition: L1TopoConfigGlobal.cxx:15
TXC::L1TopoMenu::m_topoconfig
TXC::L1TopoConfigGlobal m_topoconfig
Definition: L1TopoMenu.h:95