ATLAS Offline Software
IMaterialMapper.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IMaterialMapper.h, (c) ATLAS Detector software
8 
9 #ifndef TRKDETDESCRINTERFACES_IMATERIALMAPPER_H
10 #define TRKDETDESCRINTERFACES_IMATERIALMAPPER_H
11 
12 // Gaudi
13 #include "GaudiKernel/IAlgTool.h"
14 
16 
17 namespace Trk {
18  class TrackingVolume;
19  class Layer;
20  class AssociatedMaterial;
21 }
22 
23 namespace Trk {
24 
25 
37  class IMaterialMapper : virtual public IAlgTool {
38 
39  public:
42 
44  virtual ~IMaterialMapper(){}
45 
47  virtual void recordMaterialHit(const AssociatedMaterial& amhit, const Amg::Vector3D& projectedPosition) const = 0;
48 
50  virtual void recordLayerHit(const AssociatedMaterial& amhit, bool full = false) const = 0;
51 
53  virtual void recordSurfaceHit(const Amg::Vector2D& locpos, const AssociatedMaterial& amhit) const = 0;
54 
55  };
56 
57 } // end of namespace
58 
59 #endif // TRKDETDESCRINTERFACES_IMATERIALMAPPER_H
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
python.RingerConstants.Layer
Layer
Definition: RingerConstants.py:42
Trk::IMaterialMapper::recordSurfaceHit
virtual void recordSurfaceHit(const Amg::Vector2D &locpos, const AssociatedMaterial &amhit) const =0
Record material hit.
GeoPrimitives.h
Trk::IMaterialMapper::~IMaterialMapper
virtual ~IMaterialMapper()
Virtual destructor.
Definition: IMaterialMapper.h:44
Trk::AssociatedMaterial
Definition: AssociatedMaterial.h:33
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
find_data.full
full
Definition: find_data.py:27
Trk::IMaterialMapper::recordLayerHit
virtual void recordLayerHit(const AssociatedMaterial &amhit, bool full=false) const =0
Record material hit - if various hits per layer are recorded, full associates to the
Trk::IMaterialMapper::recordMaterialHit
virtual void recordMaterialHit(const AssociatedMaterial &amhit, const Amg::Vector3D &projectedPosition) const =0
Record material hit - while stepping outwards.
Trk::IMaterialMapper::DeclareInterfaceID
DeclareInterfaceID(IMaterialMapper, 1, 0)
Creates the InterfaceID and interfaceID() method.
Trk::IMaterialMapper
Definition: IMaterialMapper.h:37