ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
CCalHit.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file CCalHit.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
27
// File: CCalHit.h
28
// Description: Hit class for Calorimeters (Ecal, Hcal, ...)
29
//
30
// One Hit object should be created
31
// -for each new particle entering the calorimeter
32
// -for each detector unit (= cristal or fiber or scintillator layer)
33
// -for each nanosecond of the shower development
34
//
35
// This implies that all hit objects created for a given shower
36
// have the same value for
37
// - Entry (= local coordinates of the entrance point of the particle
38
// in the unit where the shower starts)
39
// - the TrackID (= Identification number of the incident particle)
40
// - the IncidentEnergy (= energy of that particle)
41
//
43
44
#ifndef CCalHit_h
45
#define CCalHit_h 1
46
47
#include <iostream>
48
#include <
CLHEP/Vector/ThreeVector.h
>
49
#include "
globals.hh
"
50
51
52
class
CCalHit
{
53
54
friend
std::ostream&
operator<<
(std::ostream&,
const
CCalHit
&);
55
56
public
:
57
58
CCalHit
();
59
~CCalHit
();
60
CCalHit
(
const
CCalHit
&
right
);
61
const
CCalHit
&
operator=
(
const
CCalHit
&right);
62
G4bool
operator==
(
const
CCalHit
&){
return
false
;}
63
64
void
print
();
65
66
public
:
67
68
CLHEP::Hep3Vector
getEntry
()
const
;
69
void
setEntry
(
CLHEP::Hep3Vector
xyz);
70
71
G4double
getIncidentEnergy
()
const
;
72
void
setIncidentEnergy
(
G4double
e
);
73
74
G4int
getTrackID
()
const
;
75
void
setTrackID
(
G4int
i);
76
77
unsigned
int
getUnitID
()
const
;
78
void
setUnitID
(
unsigned
int
i);
79
80
G4double
getTimeSlice
()
const
;
81
void
setTimeSlice
(
G4double
d
);
82
G4int
getTimeSliceID
()
const
;
83
84
G4double
getEnergyDeposit
()
const
;
85
void
setEnergyDeposit
(
const
G4double
e
);
86
void
addEnergyDeposit
(
const
CCalHit
& aHit);
87
void
addEnergyDeposit
(
const
G4double
e
);
88
89
private
:
90
91
CLHEP::Hep3Vector
entry
;
// Entry point
92
G4double
theIncidentEnergy
;
// Energy of the primary particle
93
G4int
theTrackID
;
// Identification number of the primary particle
94
unsigned
int
theUnitID
;
// Calorimeter Unit Number
95
G4double
theTimeSlice
;
// Time Slice Identification
96
G4double
theEnergyDeposit
;
// Cumulated Energy deposit
97
98
};
99
100
#endif
geant4
tree
geant4-10.6-release
examples
advanced
composite_calorimeter
include
CCalHit.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:56
using
1.8.2 with
ECCE GitHub integration