VMC Examples Version 6.6
Loading...
Searching...
No Matches
Hit.h
Go to the documentation of this file.
1#ifndef GARFIELD_HIT_H
2#define GARFIELD_HIT_H
3
4//------------------------------------------------
5// The Virtual Monte Carlo examples
6// Copyright (C) 2007 - 2016 Ivana Hrivnacova
7// All rights reserved.
8//
9// For the licensing terms see geant4_vmc/LICENSE.
10// Contact: root-vmc@cern.ch
11//-------------------------------------------------
12
13/// \file ExGarfield/include/Hit.h
14/// \brief Definition of the ExGarfield::Hit class
15///
16/// Garfield garfieldpp example adapted to Virtual Monte Carlo.
17///
18/// \date 28/10/2015
19/// \author I. Hrivnacova; IPN, Orsay
20
21#include <TObject.h>
22#include <TVector3.h>
23
24namespace VMC
25{
26namespace ExGarfield
27{
28
29/// \ingroup ExGarfield
30/// \brief The calorimeter hit
31///
32/// Garfield garfieldpp example adapted to Virtual Monte Carlo.
33///
34/// \author I. Hrivnacova; IPN, Orsay
35
36class Hit : public TObject
37{
38 public:
39 Hit();
40 virtual ~Hit();
41
42 // methods
43 virtual void Print(Option_t* option = "") const;
44 void Reset();
45
46 /// Add energy deposit in the absorber
47 /// \param de Enery deposit
48 void AddEdepAbs(Double_t de) { fEdepAbs += de; }
49
50 /// Add energy deposit in the gas
51 /// \param de Enery deposit
52 void AddEdepGas(Double_t de) { fEdepGas += de; }
53
54 /// Add track length in the absorber
55 /// \param dl Track length
56 void AddTrackLengthAbs(Double_t dl) { fTrackLengthAbs += dl; }
57
58 /// Add avalanche size in the gas
59 /// \param das Avalanche size
60 void AddAvalancheSize(Double_t das) { fAvalancheSize += das; }
61
62 /// Add gain in the gas
63 /// \param dg Gain
64 void AddGain(Double_t dg) { fGain += dg; }
65
66 // get methods
67 /// \return The energy deposit in the absorber
68 Double_t GetEdepAbs() const { return fEdepAbs; };
69 /// \return The track length in the absorber
70 Double_t GetTrackLengthAbs() const { return fTrackLengthAbs; };
71 /// \return The energy deposit in the gas
72 Double_t GetEdepGas() const { return fEdepGas; };
73 /// \return The avalanche size in the gas
74 Double_t GetAvalancheSize() const { return fAvalancheSize; };
75 /// \return The gain in the gas
76 Double_t GetGain() const { return fGain; };
77
78 private:
79 Double_t fEdepAbs; ///< Energy deposit in the absorber
80 Double_t fEdepGas; ///< Energy deposit in the gas
81 Double_t fTrackLengthAbs; ///< Track length in the absorber
82 Double_t fAvalancheSize; ///< Avalanche size in the gas
83 Double_t fGain; ///< Gain
84
85 ClassDef(Hit, 1) // Hit
86};
87
88} // namespace ExGarfield
89} // namespace VMC
90
91#endif // GARFIELD_HIT_H
The calorimeter hit.
Definition Hit.h:37
Double_t fGain
Gain.
Definition Hit.h:83
void AddAvalancheSize(Double_t das)
Definition Hit.h:60
Double_t fTrackLengthAbs
Track length in the absorber.
Definition Hit.h:81
Double_t GetAvalancheSize() const
Definition Hit.h:74
Double_t fEdepAbs
Energy deposit in the absorber.
Definition Hit.h:79
virtual void Print(Option_t *option="") const
Definition Hit.cxx:52
void AddTrackLengthAbs(Double_t dl)
Definition Hit.h:56
Double_t fEdepGas
Energy deposit in the gas.
Definition Hit.h:80
void AddGain(Double_t dg)
Definition Hit.h:64
virtual ~Hit()
Definition Hit.cxx:46
Double_t GetEdepGas() const
Definition Hit.h:72
Double_t fAvalancheSize
Avalanche size in the gas.
Definition Hit.h:82
Double_t GetEdepAbs() const
Definition Hit.h:68
void AddEdepGas(Double_t de)
Definition Hit.h:52
Double_t GetGain() const
Definition Hit.h:76
Double_t GetTrackLengthAbs() const
Definition Hit.h:70
void AddEdepAbs(Double_t de)
Definition Hit.h:48