VMC Examples
Version 6.8
Toggle main menu visibility
Loading...
Searching...
No Matches
examples
E03
E03b
include
Ex03bCalorimeterSD.h
Go to the documentation of this file.
1
#ifndef EX03_CALORIMETER_SD_H
2
#define EX03_CALORIMETER_SD_H
3
4
//------------------------------------------------
5
// The Virtual Monte Carlo examples
6
// Copyright (C) 2014 - 2018 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 Ex03bCalorimeterSD.h
14
/// \brief Definition of the Ex03bCalorimeterSD class
15
///
16
/// Geant4 ExampleN03 adapted to Virtual Monte Carlo: \n
17
/// Id: ExN03CalorimeterSD.hh,v 1.4 2002/01/09 17:24:11 ranjard Exp
18
/// GEANT4 tag Name: geant4-05-00
19
///
20
/// \author I. Hrivnacova; IPN, Orsay
21
22
#include <TClonesArray.h>
23
#include <TVirtualMCSensitiveDetector.h>
24
25
class
Ex03DetectorConstruction
;
26
class
Ex03CalorHit
;
27
class
TVirtualMC;
28
29
/// \ingroup E03
30
/// \brief The calorimeter sensitive detector
31
///
32
/// A variant of the Ex03CalorimeterSD:
33
/// a sensitive detector class derived fron the new
34
/// TVirtualMCSensitiveDetector interface
35
///
36
/// \author I. Hrivnacova; IPN, Orsay
37
38
class
Ex03bCalorimeterSD
:
public
TVirtualMCSensitiveDetector
39
{
40
public
:
41
Ex03bCalorimeterSD
(
const
char
* name,
Ex03DetectorConstruction
* detector);
42
Ex03bCalorimeterSD
(
43
const
Ex03bCalorimeterSD
& origin,
Ex03DetectorConstruction
* detector);
44
Ex03bCalorimeterSD
();
45
virtual
~Ex03bCalorimeterSD
();
46
47
// methods
48
void
Initialize
();
49
virtual
void
ProcessHits
();
50
void
EndOfEvent
();
51
void
Register
();
52
virtual
void
Print
(Option_t* option =
""
)
const
;
53
void
PrintTotal
()
const
;
54
55
// set methods
56
void
SetVerboseLevel
(Int_t level);
57
void
SetPrintModulo
(Int_t value);
58
59
// get methods
60
Ex03CalorHit
*
GetHit
(Int_t i)
const
;
61
62
private
:
63
// methods
64
void
ResetHits
();
65
66
// data members
67
TVirtualMC*
fMC
;
///< The VMC implementation
68
Ex03DetectorConstruction
*
fDetector
;
///< Detector construction
69
TClonesArray*
fCalCollection
;
///< Hits collection
70
Int_t
fAbsorberVolId
;
///< The absorber volume Id
71
Int_t
fGapVolId
;
///< The gap volume Id
72
Int_t
fVerboseLevel
;
///< Verbosity level
73
Int_t
fPrintModulo
;
///< The event modulus number to be printed
74
75
ClassDef(
Ex03bCalorimeterSD
, 1)
// Ex03bCalorimeterSD
76
};
77
78
/// Set verbose level
79
/// \param level The new verbose level value
80
inline
void
Ex03bCalorimeterSD::SetVerboseLevel
(Int_t level)
81
{
82
fVerboseLevel
= level;
83
}
84
85
/// Set the event modulus number to be printed
86
/// \param value The new event modulus number value
87
inline
void
Ex03bCalorimeterSD::SetPrintModulo
(Int_t value)
88
{
89
fPrintModulo
= value;
90
}
91
92
#endif
// EX02_CALORIMETER_SD_H
Ex03CalorHit
The calorimeter hit.
Definition
Ex03CalorHit.h:32
Ex03DetectorConstruction
The detector construction (via TGeo ).
Definition
Ex03DetectorConstruction.h:35
Ex03bCalorimeterSD::Register
void Register()
Definition
Ex03bCalorimeterSD.cxx:194
Ex03bCalorimeterSD::fMC
TVirtualMC * fMC
The VMC implementation.
Definition
Ex03bCalorimeterSD.h:67
Ex03bCalorimeterSD::Ex03bCalorimeterSD
Ex03bCalorimeterSD(const char *name, Ex03DetectorConstruction *detector)
Definition
Ex03bCalorimeterSD.cxx:37
Ex03bCalorimeterSD::SetVerboseLevel
void SetVerboseLevel(Int_t level)
Definition
Ex03bCalorimeterSD.h:80
Ex03bCalorimeterSD::ResetHits
void ResetHits()
Definition
Ex03bCalorimeterSD.cxx:119
Ex03bCalorimeterSD::fPrintModulo
Int_t fPrintModulo
The event modulus number to be printed.
Definition
Ex03bCalorimeterSD.h:73
Ex03bCalorimeterSD::fDetector
Ex03DetectorConstruction * fDetector
Detector construction.
Definition
Ex03bCalorimeterSD.h:68
Ex03bCalorimeterSD::PrintTotal
void PrintTotal() const
Definition
Ex03bCalorimeterSD.cxx:214
Ex03bCalorimeterSD::Initialize
void Initialize()
Definition
Ex03bCalorimeterSD.cxx:132
Ex03bCalorimeterSD::Ex03bCalorimeterSD
Ex03bCalorimeterSD()
Definition
Ex03bCalorimeterSD.cxx:85
Ex03bCalorimeterSD::Print
virtual void Print(Option_t *option="") const
Definition
Ex03bCalorimeterSD.cxx:202
Ex03bCalorimeterSD::fCalCollection
TClonesArray * fCalCollection
Hits collection.
Definition
Ex03bCalorimeterSD.h:69
Ex03bCalorimeterSD::fAbsorberVolId
Int_t fAbsorberVolId
The absorber volume Id.
Definition
Ex03bCalorimeterSD.h:70
Ex03bCalorimeterSD::GetHit
Ex03CalorHit * GetHit(Int_t i) const
Definition
Ex03bCalorimeterSD.cxx:110
Ex03bCalorimeterSD::fGapVolId
Int_t fGapVolId
The gap volume Id.
Definition
Ex03bCalorimeterSD.h:71
Ex03bCalorimeterSD::~Ex03bCalorimeterSD
virtual ~Ex03bCalorimeterSD()
Definition
Ex03bCalorimeterSD.cxx:97
Ex03bCalorimeterSD::EndOfEvent
void EndOfEvent()
Definition
Ex03bCalorimeterSD.cxx:179
Ex03bCalorimeterSD::ProcessHits
virtual void ProcessHits()
Definition
Ex03bCalorimeterSD.cxx:149
Ex03bCalorimeterSD::SetPrintModulo
void SetPrintModulo(Int_t value)
Definition
Ex03bCalorimeterSD.h:87
Ex03bCalorimeterSD::fVerboseLevel
Int_t fVerboseLevel
Verbosity level.
Definition
Ex03bCalorimeterSD.h:72
TVirtualMCSensitiveDetector
Generated on
for VMC Examples by
1.17.0