ATLAS Offline Software
SCT_RandomDisabledCellGenerator.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
8 // SCT_RandomDisabledCellGenerator.h
9 // Header file for class SCT_RandomDisabledCellGenerator
11 // Class to randomly disable cells for SCT
13 // Version 1.0 25/07/2007 Kondo Gnanvo
14 // - Randomly select a cell and modify its flag by using the pointer to
15 // a SiHelper function.
16 // - Inherits from ISiChargedDiodeProcessor, as SiPreDiodeProcessor
17 // has been discontinued
18 // This can be used for disabling, disconnecting, and flagging bad_tot
20 
21 #ifndef SCT_DIGITIZATION_SCT_RANDOMDISABLEDCELLGENERATOR_H
22 #define SCT_DIGITIZATION_SCT_RANDOMDISABLEDCELLGENERATOR_H
23 
24 //Inheritance
27 
28 class SiChargedDiode;
30 
31 namespace CLHEP {
32  class HepRandomEngine;
33 }
34 
35 class SCT_RandomDisabledCellGenerator : public extends<AthAlgTool, IRandomDisabledCellGenerator> {
36 
38  // Public methods:
40 
41  public:
42 
44  SCT_RandomDisabledCellGenerator(const std::string& type, const std::string& name, const IInterface* parent) ;
45 
47  virtual ~SCT_RandomDisabledCellGenerator() = default;
48 
50  virtual StatusCode initialize() override;
52  virtual StatusCode finalize() override;
53 
54  virtual void process(SiChargedDiodeCollection& collection, CLHEP::HepRandomEngine * rndmEngine) const override;
55 
56  private:
57 
59  // Private data:
61  private:
62 
63  FloatProperty m_disableProbability{this, "TotalBadChannels", 0.01, "probability that a cell is disabled"};
64 
65 };
66 
67 #endif //SCT_DIGITIZATION_SCT_RANDOMDISABLEDCELLGENERATOR_H
SCT_RandomDisabledCellGenerator::SCT_RandomDisabledCellGenerator
SCT_RandomDisabledCellGenerator(const std::string &type, const std::string &name, const IInterface *parent)
constructor
Definition: SCT_RandomDisabledCellGenerator.cxx:15
SiChargedDiode
Definition: SiChargedDiode.h:30
SCT_RandomDisabledCellGenerator::m_disableProbability
FloatProperty m_disableProbability
Definition: SCT_RandomDisabledCellGenerator.h:63
SiChargedDiodeCollection
Definition: SiChargedDiodeCollection.h:109
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CLHEP
STD'S.
Definition: IAtRndmGenSvc.h:19
SCT_RandomDisabledCellGenerator::process
virtual void process(SiChargedDiodeCollection &collection, CLHEP::HepRandomEngine *rndmEngine) const override
Definition: SCT_RandomDisabledCellGenerator.cxx:32
AthAlgTool.h
IRandomDisabledCellGenerator.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
SCT_RandomDisabledCellGenerator::initialize
virtual StatusCode initialize() override
AlgTool initialize.
Definition: SCT_RandomDisabledCellGenerator.cxx:20
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
SCT_RandomDisabledCellGenerator::finalize
virtual StatusCode finalize() override
AlgTool finalize.
Definition: SCT_RandomDisabledCellGenerator.cxx:26
SCT_RandomDisabledCellGenerator
Definition: SCT_RandomDisabledCellGenerator.h:35
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
SCT_RandomDisabledCellGenerator::~SCT_RandomDisabledCellGenerator
virtual ~SCT_RandomDisabledCellGenerator()=default
Destructor.