ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
ZDCTriggerSimAllLUTs Class Reference

#include <ZDCTriggerSim.h>

Inheritance diagram for ZDCTriggerSimAllLUTs:
Collaboration diagram for ZDCTriggerSimAllLUTs:

Public Member Functions

 ZDCTriggerSimAllLUTs (const std::array< unsigned int, 4096 > &sideALUT, const std::array< unsigned int, 4096 > &sideCLUT, const std::array< unsigned int, 256 > &inCombLUT)
 
virtual unsigned int simLevel1Trig (const ZDCTriggerSim::SimDataCPtr &inputData) override
 
 ZDCTriggerSimAllLUTs (const std::array< unsigned int, 4096 > &sideALUT, const std::array< unsigned int, 4096 > &sideCLUT, const std::array< unsigned int, 256 > &inCombLUT)
 
virtual unsigned int simLevel1Trig (const ZDCTriggerSim::SimDataCPtr &inputData) override
 
void dump (std::ostream &strm) const
 
void dump (std::ostream &strm) const
 

Protected Member Functions

virtual void doSimStage () override
 
virtual void doSimStage () override
 
void stackClear ()
 
void stackClear ()
 
void stackPush (const ZDCTriggerSim::SimDataCPtr &ptr)
 
void stackPush (const ZDCTriggerSim::SimDataCPtr &ptr)
 
const ZDCTriggerSim::SimDataCPtrstackTopData () const
 
const ZDCTriggerSim::SimDataCPtrstackTopData () const
 

Private Types

typedef std::list< ZDCTriggerSim::SimDataCPtrSimStack
 
typedef std::list< ZDCTriggerSim::SimDataCPtrSimStack
 

Private Attributes

std::array< unsigned int, 4096 > m_LUTA
 
std::array< unsigned int, 4096 > m_LUTC
 
SimStack m_stack
 
std::array< unsigned int, 256 > m_combLUT
 

Detailed Description

Definition at line 231 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

Member Typedef Documentation

◆ SimStack [1/2]

typedef std::list<ZDCTriggerSim::SimDataCPtr> ZDCTriggerSimBase::SimStack
privateinherited

◆ SimStack [2/2]

typedef std::list<ZDCTriggerSim::SimDataCPtr> ZDCTriggerSimBase::SimStack
privateinherited

Constructor & Destructor Documentation

◆ ZDCTriggerSimAllLUTs() [1/2]

ZDCTriggerSimAllLUTs::ZDCTriggerSimAllLUTs ( const std::array< unsigned int, 4096 > &  sideALUT,
const std::array< unsigned int, 4096 > &  sideCLUT,
const std::array< unsigned int, 256 > &  inCombLUT 
)
inline

Definition at line 246 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

249  : ZDCTriggerSimCombLUT(inCombLUT), m_LUTA(sideALUT), m_LUTC(sideCLUT) {}

◆ ZDCTriggerSimAllLUTs() [2/2]

ZDCTriggerSimAllLUTs::ZDCTriggerSimAllLUTs ( const std::array< unsigned int, 4096 > &  sideALUT,
const std::array< unsigned int, 4096 > &  sideCLUT,
const std::array< unsigned int, 256 > &  inCombLUT 
)
inline

Definition at line 243 of file Trigger/TrigT1/TrigT1ZDC/src/ZDCTriggerSim.h.

245  :
246  ZDCTriggerSimCombLUT(inCombLUT),
247  m_LUTA(sideALUT),
248  m_LUTC(sideCLUT)
249  {
250  }

Member Function Documentation

◆ doSimStage() [1/2]

virtual void ZDCTriggerSimAllLUTs::doSimStage ( )
overrideprotectedvirtual

◆ doSimStage() [2/2]

void ZDCTriggerSimAllLUTs::doSimStage ( )
overrideprotectedvirtual

Implements ZDCTriggerSimBase.

Reimplemented in ZDCTriggerSimModuleAmpls, and ZDCTriggerSimModuleAmpls.

Definition at line 42 of file ForwardDetectors/ZDC/ZdcUtils/Root/ZDCTriggerSim.cxx.

42  {
44  if (ptr->getNumData() != 2 || ptr->getNumBits() != 12)
45  throw std::logic_error("Invalid input data in ZDCTriggerSimAllLUTs");
46  ;
47 
48  unsigned int inputSideA = ptr->getValueTrunc(0);
49  unsigned int inputSideC = ptr->getValueTrunc(1);
50 
51  unsigned int valueA = m_LUTA.at(inputSideA);
52  unsigned int valueC = m_LUTC.at(inputSideC);
53 
54  // ZDCTriggerSim::SimDataPtr uses shared_ptr semantics so cleanup is
55  // guaranteed
56  //
58  static_cast<ZDCTriggerSim::CombLUTInputsInt*>(inputs_p.get())
59  ->setData({valueA, valueC});
60 
63 }

◆ dump() [1/2]

void ZDCTriggerSimBase::dump ( std::ostream &  strm) const
inherited

◆ dump() [2/2]

void ZDCTriggerSimBase::dump ( std::ostream &  strm) const
inherited

Definition at line 11 of file ForwardDetectors/ZDC/ZdcUtils/Root/ZDCTriggerSim.cxx.

11  {
12  for (auto entry : m_stack) {
13  strm << entry->getType() << ": ";
14  entry->dump(strm);
15  strm << std::endl;
16  }
17 }

◆ simLevel1Trig() [1/2]

virtual unsigned int ZDCTriggerSimAllLUTs::simLevel1Trig ( const ZDCTriggerSim::SimDataCPtr inputData)
inlineoverridevirtual

Implements ZDCTriggerSimBase.

Reimplemented in ZDCTriggerSimModuleAmpls, and ZDCTriggerSimModuleAmpls.

Definition at line 251 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

252  {
253  stackClear();
254  stackPush(inputData);
255 
256  doSimStage();
257  return stackTopData()->getValueTrunc();
258  }

◆ simLevel1Trig() [2/2]

virtual unsigned int ZDCTriggerSimAllLUTs::simLevel1Trig ( const ZDCTriggerSim::SimDataCPtr inputData)
inlineoverridevirtual

Implements ZDCTriggerSimBase.

Reimplemented in ZDCTriggerSimModuleAmpls, and ZDCTriggerSimModuleAmpls.

Definition at line 252 of file Trigger/TrigT1/TrigT1ZDC/src/ZDCTriggerSim.h.

253  {
254  stackClear();
255  stackPush(inputData);
256 
257  doSimStage();
258  return stackTopData()->getValueTrunc();
259  }

◆ stackClear() [1/2]

void ZDCTriggerSimBase::stackClear ( )
inlineprotectedinherited

Definition at line 176 of file Trigger/TrigT1/TrigT1ZDC/src/ZDCTriggerSim.h.

176 {m_stack.clear();}

◆ stackClear() [2/2]

void ZDCTriggerSimBase::stackClear ( )
inlineprotectedinherited

Definition at line 179 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

179 { m_stack.clear(); }

◆ stackPush() [1/2]

void ZDCTriggerSimBase::stackPush ( const ZDCTriggerSim::SimDataCPtr ptr)
inlineprotectedinherited

Definition at line 178 of file Trigger/TrigT1/TrigT1ZDC/src/ZDCTriggerSim.h.

179  {
180  m_stack.push_back(SimStack::value_type(ptr));
181  }

◆ stackPush() [2/2]

void ZDCTriggerSimBase::stackPush ( const ZDCTriggerSim::SimDataCPtr ptr)
inlineprotectedinherited

Definition at line 181 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

181  {
182  m_stack.push_back(SimStack::value_type(ptr));
183  }

◆ stackTopData() [1/2]

const ZDCTriggerSim::SimDataCPtr& ZDCTriggerSimBase::stackTopData ( ) const
inlineprotectedinherited

Definition at line 183 of file Trigger/TrigT1/TrigT1ZDC/src/ZDCTriggerSim.h.

183 {return m_stack.back();}

◆ stackTopData() [2/2]

const ZDCTriggerSim::SimDataCPtr& ZDCTriggerSimBase::stackTopData ( ) const
inlineprotectedinherited

Definition at line 185 of file ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h.

185  {
186  return m_stack.back();
187  }

Member Data Documentation

◆ m_combLUT

std::array< unsigned int, 256 > ZDCTriggerSimCombLUT::m_combLUT
privateinherited

◆ m_LUTA

std::array< unsigned int, 4096 > ZDCTriggerSimAllLUTs::m_LUTA
private

◆ m_LUTC

std::array< unsigned int, 4096 > ZDCTriggerSimAllLUTs::m_LUTC
private

◆ m_stack

SimStack ZDCTriggerSimBase::m_stack
privateinherited

The documentation for this class was generated from the following files:
ZDCTriggerSimBase::m_stack
SimStack m_stack
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:176
ZDCTriggerSimBase::stackClear
void stackClear()
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:179
ZDCTriggerSimAllLUTs::doSimStage
virtual void doSimStage() override
Definition: ForwardDetectors/ZDC/ZdcUtils/Root/ZDCTriggerSim.cxx:42
ZDCTriggerSimBase::stackTopData
const ZDCTriggerSim::SimDataCPtr & stackTopData() const
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:185
ZDCTriggerSimCombLUT::ZDCTriggerSimCombLUT
ZDCTriggerSimCombLUT(const std::array< unsigned int, 256 > &inLUT)
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:218
ZDCTriggerSim::SimDataCPtr
std::shared_ptr< const ZDCTriggerSimDataBase > SimDataCPtr
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:162
ZDCTriggerSim::SimDataPtr
std::shared_ptr< ZDCTriggerSimDataBase > SimDataPtr
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:163
ZDCTriggerSimCombLUT::doSimStage
virtual void doSimStage() override
Definition: ForwardDetectors/ZDC/ZdcUtils/Root/ZDCTriggerSim.cxx:20
ZDCTriggerSimBase::stackPush
void stackPush(const ZDCTriggerSim::SimDataCPtr &ptr)
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:181
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
ZDCTriggerSimAllLUTs::m_LUTC
std::array< unsigned int, 4096 > m_LUTC
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:234
ZDCTriggerSimData
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:58
ZDCTriggerSimAllLUTs::m_LUTA
std::array< unsigned int, 4096 > m_LUTA
Definition: ForwardDetectors/ZDC/ZdcUtils/ZdcUtils/ZDCTriggerSim.h:233