ATLAS Offline Software
MM_Electron.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MM_DIGITIZATION_MM_ELECTRON_H
6 #define MM_DIGITIZATION_MM_ELECTRON_H
7 //
8 // MM_Electron.cxx
9 // Primary electron objects that are diffused, propagated and avalanched
10 //
11 
13 
14 #include <cfloat>
15 #include <memory>
16 
17 
18 class MM_Electron {
19 public:
20  MM_Electron() = default;
21  MM_Electron(float x, float y);
22 
23  void setOffsetPosition(float x, float y);
24  void propagateElectron(float lorentzAngle, float driftVel);
25  void setTime(float Time);
26  void setCharge(float Charge);
27 
28  const Amg::Vector2D& getOffsetPosition() const;
29  float getCharge() const;
30  float getTime() const;
31  float getX() const;
32  float getY() const;
33  float getInitialX() const;
34  float getInitialY() const;
35 
36 private:
39 
40  float m_time{-FLT_MAX};
41  float m_charge{-FLT_MAX};
42 };
43 
44 #endif
MM_Electron::getOffsetPosition
const Amg::Vector2D & getOffsetPosition() const
Definition: MM_Electron.cxx:26
MM_Electron::getCharge
float getCharge() const
Definition: MM_Electron.cxx:27
MM_Electron::setCharge
void setCharge(float Charge)
Definition: MM_Electron.cxx:24
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
MM_Electron::m_time
float m_time
Definition: MM_Electron.h:40
MM_Electron::getInitialY
float getInitialY() const
Definition: MM_Electron.cxx:32
x
#define x
AthExHiveOpts.Time
Time
Definition: AthExHiveOpts.py:63
MM_Electron::m_charge
float m_charge
Definition: MM_Electron.h:41
GeoPrimitives.h
MM_Electron::m_initialPosition
Amg::Vector2D m_initialPosition
Definition: MM_Electron.h:37
MM_Electron::getY
float getY() const
Definition: MM_Electron.cxx:30
MM_Electron
Definition: MM_Electron.h:18
MM_Electron::MM_Electron
MM_Electron()=default
MM_Electron::setOffsetPosition
void setOffsetPosition(float x, float y)
Definition: MM_Electron.cxx:9
MM_Electron::setTime
void setTime(float Time)
Definition: MM_Electron.cxx:23
MM_Electron::getX
float getX() const
Definition: MM_Electron.cxx:29
y
#define y
MM_Electron::getInitialX
float getInitialX() const
Definition: MM_Electron.cxx:31
MM_Electron::propagateElectron
void propagateElectron(float lorentzAngle, float driftVel)
Definition: MM_Electron.cxx:11
MM_Electron::getTime
float getTime() const
Definition: MM_Electron.cxx:28
MM_Electron::m_offsetPosition
Amg::Vector2D m_offsetPosition
Definition: MM_Electron.h:38
generate::Zero
void Zero(TH1D *hin)
Definition: generate.cxx:32