ATLAS Offline Software
CompactBinnedArray.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 // CompactBinnedArray.h, (c) ATLAS Detector software
8 
9 #ifndef TRKDETDESCRUTILS_COMPACTBINNEDARRAY_H
10 #define TRKDETDESCRUTILS_COMPACTBINNEDARRAY_H
11 
14 
15 // STL
16 #include <vector>
17 
18 class MsgStream;
19 
20 namespace Trk {
21 
29 template<class T>
31 {
32 
33 public:
34  //Rule of 0 for default ctors
36  virtual CompactBinnedArray* clone() const = 0;
37  virtual CompactBinnedArray* clone(const std::vector<T*>& ptrs) const = 0;
38 
40  virtual const Trk::BinUtility* layerBinUtility(const Amg::Vector3D& gp) const = 0;
41 
43  virtual size_t layerBin(const Amg::Vector3D& gp) const = 0;
44 };
45 
46 } // end of namespace Trk
47 #endif // TRKDETDESCRUTILS_COMPACTBINNEDARRAY_H
Trk::CompactBinnedArray::layerBinUtility
virtual const Trk::BinUtility * layerBinUtility(const Amg::Vector3D &gp) const =0
layer bin utility
BinnedArray.h
BinUtility.h
Trk::CompactBinnedArray
Definition: CompactBinnedArray.h:31
Trk::CompactBinnedArray::clone
virtual CompactBinnedArray * clone(const std::vector< T * > &ptrs) const =0
Trk::CompactBinnedArray::clone
virtual CompactBinnedArray * clone() const =0
Implicit constructor.
Trk::BinUtility
Definition: BinUtility.h:39
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
Trk::CompactBinnedArray::layerBin
virtual size_t layerBin(const Amg::Vector3D &gp) const =0
layer bin
Trk::BinnedArray
Definition: BinnedArray.h:36