ATLAS Offline Software
Loading...
Searching...
No Matches
DMCalibrationCalculator.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5// LArG4::DM::CalibrationCalculator
6// 11-april-2006 G.Unal
7//
8// this class provides calibration hits for steps into the Dead Matter between
9// barrel and End-Cap cryostats
10
11#ifndef LArG4_DM_CalibrationCalculator_H
12#define LArG4_DM_CalibrationCalculator_H
13
16
18
19#include "globals.hh"
20
21#include <vector>
22
23// Forward declaractions:
24class G4Step;
25
26// Note the use of nested namespaces (mainly to prevent long names
27// like LArG4HECCalibrationCalculator). This class is contained in
28// the namespace LArG4::DM
29
30namespace LArG4 {
31
32 namespace DM {
33
35 public:
36
37 CalibrationCalculator(const std::string& name, ISvcLocator *pSvcLocator);
38 virtual ~CalibrationCalculator();
39
40 // The Process method returns a boolean value. If it's true, the
41 // hit can be used by Geant4; if it's false, there's something wrong
42 // with the energy deposit and it should be ignored.
43
44 // For calibration work, most of the time we want the calculator
45 // to determine both the energy and the identifier. However,
46 // sometimes we want it calculate only the identifier (for
47 // escaped energy), or only the energy (no known application
48 // yet, but you can never tell). Use the enum (defined in
49 // VCalibrationCalculator.h) to control any special processing.
50 virtual G4bool Process (const G4Step* step, LArG4Identifier & identifier,
51 std::vector<G4double> & energies,
52 const eCalculatorProcessing process = kEnergyAndID) const override final;
53
54 private:
55 // Energy calculator
57
58 };
59
60 } // namespace DM
61
62} // namespace LArG4
63
64#endif // LArG4_DM_CalibrationCalculator_H
This class implements the calculations requires to categorize the energies deposited during the simul...
LArCalibCalculatorSvcImp(const std::string &name, ISvcLocator *pSvcLocator)
CaloG4::SimulationEnergies m_energyCalculator
CalibrationCalculator(const std::string &name, ISvcLocator *pSvcLocator)
virtual G4bool Process(const G4Step *step, LArG4Identifier &identifier, std::vector< G4double > &energies, const eCalculatorProcessing process=kEnergyAndID) const override final
const std::string process
eCalculatorProcessing
@ kEnergyAndID