|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #ifndef TRKIPATFITTERUTILS_IMATERIALALLOCATOR_H
13 #define TRKIPATFITTERUTILS_IMATERIALALLOCATOR_H
17 #include "GaudiKernel/IAlgTool.h"
24 static const InterfaceID IID_IMaterialAllocator(
"IMaterialAllocator", 1, 0);
36 class TrackStateOnSurface;
40 typedef std::vector<std::unique_ptr<const TrackStateOnSurface> >
Garbage_t;
46 static const InterfaceID&
interfaceID() {
return IID_IMaterialAllocator; }
65 std::vector<FitMeasurement*>& measurements)
const = 0;
87 #endif // TRKIPATFITTERUTILS_IMATERIALALLOCATOR_H
virtual bool reallocateMaterial(std::vector< FitMeasurement * > &measurements, FitParameters &fitParameters, Garbage_t &garbage) const =0
IMaterialAllocator interface: has material been reallocated?
virtual void allocateMaterial(std::vector< FitMeasurement * > &measurements, ParticleHypothesis particleHypothesis, FitParameters &fitParameters, const TrackParameters &startParameters, Garbage_t &garbage) const =0
IMaterialAllocator interface: allocate material.
virtual ~IMaterialAllocator()
Virtual destructor.
virtual void orderMeasurements(std::vector< FitMeasurement * > &measurements, Amg::Vector3D startDirection, Amg::Vector3D startPosition) const =0
IMaterialAllocator interface: clear temporary TSOS.
std::vector< std::unique_ptr< const TrackStateOnSurface > > Garbage_t
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Eigen::Matrix< double, 3, 1 > Vector3D
virtual std::vector< const TrackStateOnSurface * > * leadingSpectrometerTSOS(const TrackParameters &spectrometerParameters, Garbage_t &garbage) const =0
IMaterialAllocator interface: material TSOS between spectrometer entrance surface and parameters give...
virtual void initializeScattering(std::vector< FitMeasurement * > &measurements) const =0
IMaterialAllocator interface: initialize scattering (needs to know X0 integral)
virtual void addLeadingMaterial(std::vector< FitMeasurement * > &measurements, ParticleHypothesis particleHypothesis, FitParameters &fitParameters, Garbage_t &garbage) const =0
IMaterialAllocator interface: add leading material effects to fit measurements and parameters.