Belle II Software development
IRSimHit.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <Math/Vector3D.h>
12#include <string>
13#include <simulation/dataobjects/SimHitBase.h>
14
15namespace Belle2 {
22 class IRSimHit : public SimHitBase {
23 public:
24
27 m_posIn(0, 0, 0),
28 m_momIn(0, 0, 0),
29 m_posOut(0, 0, 0),
30 m_momOut(0, 0, 0),
31 m_PDGcode(0),
32 m_depEnergy(0),
33 m_Volname("noname") {}
34
37 ROOT::Math::XYZVector posIn,
38 ROOT::Math::XYZVector momIn,
39 ROOT::Math::XYZVector posOut,
40 ROOT::Math::XYZVector momOut,
41 int PDGcode,
42 float depEnergy,
43 const std::string& Volname
44 ) :
45 m_posIn(posIn),
46 m_momIn(momIn),
47 m_posOut(posOut),
48 m_momOut(momOut),
49 m_PDGcode(PDGcode),
50 m_depEnergy(depEnergy),
51 m_Volname(Volname) {}
52
53 ~IRSimHit();
54
56 void setposIn(ROOT::Math::XYZVector posIn);
57 void setmomIn(ROOT::Math::XYZVector momIn);
58 void setposOut(ROOT::Math::XYZVector posOut);
59 void setmomOut(ROOT::Math::XYZVector momOut);
60 void setPDGcode(int PDGcode);
61 void setdepEnergy(float depEnergy);
62 void setVolname(const std::string& Volname);
65 ROOT::Math::XYZVector getposIn();
66 ROOT::Math::XYZVector getmomIn();
67 ROOT::Math::XYZVector getposOut();
68 ROOT::Math::XYZVector getmomOut();
69 int getPDGcode();
70 float getdepEnergy();
71 std::string getVolname();
73 protected:
74
75 private:
76
77 ROOT::Math::XYZVector m_posIn;
78 ROOT::Math::XYZVector m_momIn;
79 ROOT::Math::XYZVector m_posOut;
80 ROOT::Math::XYZVector m_momOut;
83 std::string m_Volname;
87
88 };
89
91} // end namespace Belle2
Class for saving raw hit data of the IR.
Definition: IRSimHit.h:22
void setdepEnergy(float depEnergy)
Set PDF code.
Definition: IRSimHit.cc:39
ROOT::Math::XYZVector m_posIn
return volume name
Definition: IRSimHit.h:77
ROOT::Math::XYZVector m_posOut
End point of energy deposition in local coordinates.
Definition: IRSimHit.h:79
ROOT::Math::XYZVector m_momIn
Momentum of particle at start of energy deposition.
Definition: IRSimHit.h:78
float getdepEnergy()
return PDG code
Definition: IRSimHit.cc:54
ClassDef(IRSimHit, 2)
ROOT Macro.
ROOT::Math::XYZVector getmomOut()
return position at end point
Definition: IRSimHit.cc:52
ROOT::Math::XYZVector getmomIn()
return position at start point
Definition: IRSimHit.cc:50
std::string getVolname()
return deposited energy
Definition: IRSimHit.cc:55
std::string m_Volname
Volume name.
Definition: IRSimHit.h:83
int getPDGcode()
return momentum at end point
Definition: IRSimHit.cc:53
ROOT::Math::XYZVector getposIn()
Set volume name.
Definition: IRSimHit.cc:49
void setPDGcode(int PDGcode)
Set momentum at end point.
Definition: IRSimHit.cc:35
void setmomIn(ROOT::Math::XYZVector momIn)
Set position at start point.
Definition: IRSimHit.cc:23
void setVolname(const std::string &Volname)
Set deposited energy.
Definition: IRSimHit.cc:43
void setmomOut(ROOT::Math::XYZVector momOut)
Set position at end point.
Definition: IRSimHit.cc:31
int m_PDGcode
PDG code of the particle producing hit.
Definition: IRSimHit.h:81
float m_depEnergy
Deposited energy.
Definition: IRSimHit.h:82
IRSimHit(ROOT::Math::XYZVector posIn, ROOT::Math::XYZVector momIn, ROOT::Math::XYZVector posOut, ROOT::Math::XYZVector momOut, int PDGcode, float depEnergy, const std::string &Volname)
Full Constructor.
Definition: IRSimHit.h:36
void setposIn(ROOT::Math::XYZVector posIn)
The method to set.
Definition: IRSimHit.cc:19
ROOT::Math::XYZVector getposOut()
return momentum at start point
Definition: IRSimHit.cc:51
void setposOut(ROOT::Math::XYZVector posOut)
Set momentum at start point.
Definition: IRSimHit.cc:27
IRSimHit()
Empty constructor for ROOT IO.
Definition: IRSimHit.h:26
ROOT::Math::XYZVector m_momOut
Momentum of particle at end of energy deposition.
Definition: IRSimHit.h:80
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:28
Abstract base class for different kinds of events.