Loading...
Searching...
No Matches
Par03SensitiveDetector.hh
Go to the documentation of this file.
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//
26#ifndef PAR03SENSITIVEDETECTOR_HH
27#define PAR03SENSITIVEDETECTOR_HH
28
29#include "Par03Hit.hh"
30
31#include "G4VFastSimSensitiveDetector.hh"
32#include "G4VSensitiveDetector.hh"
33
34class G4HCofThisEvent;
36
37/**
38 * @brief Sensitive detector.
39 *
40 * Describes how to store the energy deposited within the detector.
41 * It derives from two classes: G4VSensitiveDetector and
42 * G4VFastSimSensitiveDetector. Addition of G4VFastSimSensitiveDetector is
43 * necessary in order to handle the energy deposits from the fast simulation.
44 *
45 * Two ProcessHits() methods are introduced to handle energy deposited from full
46 * (detailed) simulation, and from fast simulation. The common part is handled
47 * by RetrieveAdnSetupHit() method.
48 *
49 */
50
54{
55 public:
57 Par03SensitiveDetector(G4String aName, G4int aNumLayers, G4int aNumPhi,
58 G4int aNumRho);
60 /// Create hit collection
61 virtual void Initialize(G4HCofThisEvent* HCE) final;
62 /// Process energy deposit from the full simulation.
63 virtual G4bool ProcessHits(G4Step* aStep, G4TouchableHistory* aROhist) final;
64 /// Process energy deposit from the fast simulation.
65 virtual G4bool ProcessHits(const G4FastHit* aHit, const G4FastTrack* aTrack,
66 G4TouchableHistory* aROhist) final;
67 /// Process energy deposit - common part for full and fast simulation
68 /// It is invoked from ProcessHits() methods, and sets basic hit properties
69 /// (position, etc.), common for hit from fast and full simulation.
71
72 private:
73 /// Collection of hits
75 /// ID of collection of hits
76 G4int fHitCollectionID = -1;
77 /// Number of readout cells along z axis
78 G4int fCellNoZ = 10;
79 /// Number of readout cells along radius of cylinder
80 G4int fCellNoRho = 10;
81 /// Number of readout cells along azimuthal angle
82 G4int fCellNoPhi = 10;
83};
84
85#endif /* PAR03SENSITIVEDETECTOR_HH */
G4THitsCollection< Par03Hit > Par03HitsCollection
Definition Par03Hit.hh:132
Hit class to store energy deposited in the sensitive detector.
G4int fCellNoPhi
Number of readout cells along azimuthal angle.
G4int fHitCollectionID
ID of collection of hits.
virtual ~Par03SensitiveDetector()
Par03Hit * RetrieveAndSetupHit(G4TouchableHistory *aTouchable)
Process energy deposit - common part for full and fast simulation It is invoked from ProcessHits() me...
G4int fCellNoZ
Number of readout cells along z axis.
Par03HitsCollection * fHitsCollection
Collection of hits.
G4int fCellNoRho
Number of readout cells along radius of cylinder.
virtual G4bool ProcessHits(G4Step *aStep, G4TouchableHistory *aROhist) final
Process energy deposit from the full simulation.
void Initialize()
Definition errProp.cc:100

Applications | User Support | Publications | Collaboration