ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
MuonIdentification
ICaloTrkMuIdTools
ICaloTrkMuIdTools
ITrackDepositInCaloTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef CALOTRKMUIDTOOLS_ITRACKDEPOSITINCALOTOOL_H
6
#define CALOTRKMUIDTOOLS_ITRACKDEPOSITINCALOTOOL_H
7
8
#include "
CaloDetDescr/CaloDetDescriptor.h
"
9
#include "
CaloEvent/CaloCell.h
"
10
#include "
CaloEvent/CaloCellContainer.h
"
11
#include "GaudiKernel/IAlgTool.h"
12
#include "GaudiKernel/StatusCode.h"
13
#include "
TrkCaloExtension/CaloExtensionCollection.h
"
14
#include "
TrkParameters/TrackParameters.h
"
15
#include "
TrkTrack/Track.h
"
16
#include "
muonEvent/DepositInCalo.h
"
17
#include "
xAODTracking/TrackParticle.h
"
18
19
class
ITrackDepositInCaloTool :
virtual
public
IAlgTool {
24
public
:
25
enum
CaloSurfaceType { Entrance = 0,
Middle
= 1, Exit = 2, Inside = 3,
Outside
= 4 };
26
virtual
~ITrackDepositInCaloTool() =
default
;
27
28
static
const
InterfaceID& interfaceID() {
29
static
const
InterfaceID IID_ITrackDepositInCaloTool(
"ITrackDepositInCaloTool"
, 1, 0);
30
return
IID_ITrackDepositInCaloTool;
31
}
32
36
virtual
std::vector<DepositInCalo> deposits(
const
Trk::TrackParameters
* par,
37
const
CaloCellContainer* cellContainer =
nullptr
)
const
= 0;
42
virtual
std::vector<DepositInCalo> getDeposits(
const
Trk::TrackParameters
* par,
43
const
CaloCellContainer* caloCellCont =
nullptr
)
const
= 0;
44
45
virtual
std::vector<DepositInCalo> getDeposits(
const
xAOD::TrackParticle
* tp,
const
CaloCellContainer* caloCellCont =
nullptr
,
46
const
CaloExtensionCollection
* extensionCache =
nullptr
)
const
= 0;
47
53
virtual
Trk::Surface* createSurface(
const
CaloDetDescriptor* descr, CaloSurfaceType type)
const
= 0;
57
virtual
double
calcEnergy(
const
Trk::TrackParameters
* par,
const
Trk::ParticleHypothesis
& particleHypo)
const
= 0;
58
62
typedef
std::map<double, std::vector<const CaloDetDescriptor*> > CaloLayerMap;
63
typedef
std::map<double, std::vector<const CaloDetDescriptor*> >::const_iterator CaloLayerMapIt;
64
};
65
66
#endif
CaloCellContainer.h
CaloCell.h
CaloDetDescriptor.h
Definition of CaloDetDescriptor.
CaloExtensionCollection.h
CaloExtensionCollection
DataVector< Trk::CaloExtension > CaloExtensionCollection
Definition
CaloExtensionCollection.h:12
DepositInCalo.h
TrackParticle.h
TrackParameters.h
Track.h
Muon::MuonStationIndex::LayerIndex::Middle
@ Middle
Definition
MuonStationIndex.h:41
Trk::BoundaryCheckResult::Outside
@ Outside
with the insensitive area of an active element
Definition
IBoundaryCheckTool.h:18
Trk::ParticleHypothesis
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
Definition
ParticleHypothesis.h:28
Trk::TrackParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:27
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
Generated on
for ATLAS Offline Software by
1.17.0