ATLAS Offline Software
IAmplifier.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
10 #ifndef SIDIGITIZATION_IAMPLIFIER_H
11 #define SIDIGITIZATION_IAMPLIFIER_H
12 
13 #include "GaudiKernel/IAlgTool.h"
15 
16 #include <vector>
17 
18 static const InterfaceID IID_IAmplifier("IAmplifier", 1, 0);
19 
20 class IAmplifier : virtual public IAlgTool {
21 
23  // Public methods:
25  public:
27 
28  //Retrieve interface ID
29  static const InterfaceID& interfaceID() { return IID_IAmplifier; }
30 
31  // Destructor:
32  virtual ~IAmplifier() {}
33 
35  // Pure virtual methods:
37 
38  // process the collection of charged diodes
40  virtual float response(const list_t& Charges, const float timeOverThreshold) const =0;
41  virtual void response(const list_t& Charges, const float timeOverThreshold, std::vector<float>& resp) const =0;
42 
44  virtual float crosstalk(const list_t& Charges, const float timeOverThreshold) const =0;
45  virtual void crosstalk(const list_t& Charges, const float timeOverThreshold, std::vector<float> &resp) const =0;
46 };
47 
48 #endif // SIDIGITIZATION_IAMPLIFIER_H
SiTotalCharge.h
IAmplifier::response
virtual void response(const list_t &Charges, const float timeOverThreshold, std::vector< float > &resp) const =0
SiTotalCharge::list_t
std::vector< SiCharge > list_t
Definition: SiTotalCharge.h:31
IAmplifier::~IAmplifier
virtual ~IAmplifier()
Definition: IAmplifier.h:32
IAmplifier
Definition: IAmplifier.h:20
IAmplifier::response
virtual float response(const list_t &Charges, const float timeOverThreshold) const =0
main purpose: CR-RC^3 response to a list of charges with times
IAmplifier::crosstalk
virtual float crosstalk(const list_t &Charges, const float timeOverThreshold) const =0
Neighbour strip cross talk response strip to a list of charges with times.
IAmplifier::list_t
SiTotalCharge::list_t list_t
Definition: IAmplifier.h:26
IAmplifier::interfaceID
static const InterfaceID & interfaceID()
Definition: IAmplifier.h:29
IAmplifier::crosstalk
virtual void crosstalk(const list_t &Charges, const float timeOverThreshold, std::vector< float > &resp) const =0
timeOverThreshold
double timeOverThreshold(unsigned int m_word)
Definition: driftCircle.h:116