ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
ITkStripFrontEnd Class Reference

simulation of the ITk Strips front-end electronics working as a SiPreDigitsProcessor models response of ABCstar chip amplifiers to collected charges, also does cross-talk, offset variation and gain variation, in a correlated way More...

#include <ITkStripFrontEnd.h>

Inheritance diagram for ITkStripFrontEnd:
Collaboration diagram for ITkStripFrontEnd:

Public Member Functions

 ITkStripFrontEnd (const std::string &type, const std::string &name, const IInterface *parent)
 constructor More...
 
virtual ~ITkStripFrontEnd ()=default
 Destructor. More...
 
virtual StatusCode initialize () override
 AlgTool initialize. More...
 
virtual void process (SiChargedDiodeCollection &collection, CLHEP::HepRandomEngine *rndmEngine) const override
 use the baseclass default finalize More...
 

Private Attributes

const InDetDD::SCT_DetectorManagerm_ITkStripMgr {nullptr}
 Handle to SCT detector manager, also valid for ITkStrips. More...
 
const SCT_IDm_ITkStripId {nullptr}
 Handle to SCT ID helper also valid for ITkStrips. More...
 
StringProperty m_detMgrName {this, "DetectorManager", "SCT", "Name of DetectorManager to retrieve"}
 

Detailed Description

simulation of the ITk Strips front-end electronics working as a SiPreDigitsProcessor models response of ABCstar chip amplifiers to collected charges, also does cross-talk, offset variation and gain variation, in a correlated way

Definition at line 34 of file ITkStripFrontEnd.h.

Constructor & Destructor Documentation

◆ ITkStripFrontEnd()

ITkStripFrontEnd::ITkStripFrontEnd ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

constructor

Definition at line 17 of file ITkStripFrontEnd.cxx.

18  : base_class(type, name, parent) {
19 }

◆ ~ITkStripFrontEnd()

virtual ITkStripFrontEnd::~ITkStripFrontEnd ( )
virtualdefault

Destructor.

Member Function Documentation

◆ initialize()

StatusCode ITkStripFrontEnd::initialize ( )
overridevirtual

AlgTool initialize.

Definition at line 24 of file ITkStripFrontEnd.cxx.

24  {
25  ATH_MSG_DEBUG("ITkStripFrontEnd::initialize()");
26  // Get SCT helper
27  ATH_CHECK(detStore()->retrieve(m_ITkStripId, "SCT_ID"));
28  // Get SCT detector manager
30  //(note : we need an amplifier here, can probably be hard coded but separate class, not an Athena component)
31  return StatusCode::SUCCESS;
32 }

◆ process()

void ITkStripFrontEnd::process ( SiChargedDiodeCollection collection,
CLHEP::HepRandomEngine *  rndmEngine 
) const
overridevirtual

use the baseclass default finalize

process the collection of pre digits: needed to go through all single-strip pre-digits to calculate the amplifier response add noise (this could be moved elsewhere later) apply threshold do clustering stripMax is for benefit of ITkStrips which can have different numbers of strips for each module

Definition at line 40 of file ITkStripFrontEnd.cxx.

40  {
41  // get ITk module side design
42  [[maybe_unused]] const SCT_ModuleSideDesign *p_design = static_cast<const SCT_ModuleSideDesign*>(&(collection.design()));
43 }

Member Data Documentation

◆ m_detMgrName

StringProperty ITkStripFrontEnd::m_detMgrName {this, "DetectorManager", "SCT", "Name of DetectorManager to retrieve"}
private

Definition at line 56 of file ITkStripFrontEnd.h.

◆ m_ITkStripId

const SCT_ID* ITkStripFrontEnd::m_ITkStripId {nullptr}
private

Handle to SCT ID helper also valid for ITkStrips.

Definition at line 55 of file ITkStripFrontEnd.h.

◆ m_ITkStripMgr

const InDetDD::SCT_DetectorManager* ITkStripFrontEnd::m_ITkStripMgr {nullptr}
private

Handle to SCT detector manager, also valid for ITkStrips.

Definition at line 54 of file ITkStripFrontEnd.h.


The documentation for this class was generated from the following files:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
ITkStripFrontEnd::m_detMgrName
StringProperty m_detMgrName
Definition: ITkStripFrontEnd.h:56
InDetDD::SCT_ModuleSideDesign
Definition: SCT_ModuleSideDesign.h:40
ITkStripFrontEnd::m_ITkStripMgr
const InDetDD::SCT_DetectorManager * m_ITkStripMgr
Handle to SCT detector manager, also valid for ITkStrips.
Definition: ITkStripFrontEnd.h:54
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
ITkStripFrontEnd::m_ITkStripId
const SCT_ID * m_ITkStripId
Handle to SCT ID helper also valid for ITkStrips.
Definition: ITkStripFrontEnd.h:55
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
SiChargedDiodeCollection::design
const InDetDD::DetectorDesign & design() const
Definition: SiChargedDiodeCollection.h:224