ATLAS Offline Software
LArCalorimeter
LArG4
LArG4Code
LArG4Code
ILArCalculatorSvc.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
// ILArCalculatorSvc.h
6
// Prepared in 2016 based on LArVCalculator from Bill Seligman
7
8
#ifndef __ILARCALCULATORSVC_H__
9
#define __ILARCALCULATORSVC_H__
10
11
#include "GaudiKernel/IService.h"
12
13
#include "globals.hh"
14
15
#include "
LArG4Code/LArG4Identifier.h
"
16
17
18
// Forward declaractions:
19
class
G4Step;
20
class
StatusCode
;
21
22
// struct to pass the hit info
23
struct
LArHitData
{
LArG4Identifier
id
; G4double
time
; G4double
energy
; };
24
25
class
ILArCalculatorSvc
:
virtual
public
IService {
26
public
:
27
28
ILArCalculatorSvc
() {};
29
30
DeclareInterfaceID
(
ILArCalculatorSvc
,1,0);
31
32
virtual
~ILArCalculatorSvc
() {};
33
34
// A deferred initialisation method to be called once geometry available
35
virtual
void
initializeForSDCreation
() = 0;
36
37
// "OOTcut" the time cut (ns) after which an energy deposit is
38
// considered to be out-of-time w.r.t. the event.
39
virtual
G4float
OOTcut
()
const
= 0;
40
41
// Check if the current hitTime is in-time
42
virtual
G4bool
isInTime
(G4double
hitTime
)
const
= 0;
// units = ns
43
44
//New interface, to pass the hit info directly
45
virtual
G4bool
Process
(
const
G4Step*, std::vector<LArHitData>&)
const
= 0;
46
47
};
48
49
#endif
LArG4Identifier
Definition:
LArG4Identifier.h:121
ILArCalculatorSvc::OOTcut
virtual G4float OOTcut() const =0
ILArCalculatorSvc::Process
virtual G4bool Process(const G4Step *, std::vector< LArHitData > &) const =0
ILArCalculatorSvc::initializeForSDCreation
virtual void initializeForSDCreation()=0
LArHitData
Definition:
ILArCalculatorSvc.h:23
LArHitData::energy
G4double energy
Definition:
ILArCalculatorSvc.h:23
ILArCalculatorSvc::isInTime
virtual G4bool isInTime(G4double hitTime) const =0
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ILArCalculatorSvc::ILArCalculatorSvc
ILArCalculatorSvc()
Definition:
ILArCalculatorSvc.h:28
ILArCalculatorSvc
Definition:
ILArCalculatorSvc.h:25
LArG4Identifier.h
ILArCalculatorSvc::~ILArCalculatorSvc
virtual ~ILArCalculatorSvc()
Definition:
ILArCalculatorSvc.h:32
ILArCalculatorSvc::DeclareInterfaceID
DeclareInterfaceID(ILArCalculatorSvc, 1, 0)
hitTime
float hitTime(const AFP_SIDSimHit &hit)
Definition:
AFP_SIDSimHit.h:39
LArHitData::id
LArG4Identifier id
Definition:
ILArCalculatorSvc.h:23
LArHitData::time
G4double time
Definition:
ILArCalculatorSvc.h:23
Generated on Sun Dec 22 2024 21:11:29 for ATLAS Offline Software by
1.8.18