|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    9 #ifndef TRKDETDESCRUTILS_COMPACTBINNEDARRAY2D_H 
   10 #define TRKDETDESCRUTILS_COMPACTBINNEDARRAY2D_H 
   40                       const std::vector<std::vector<size_t>>& indexarray,
 
   42                       const std::vector<Trk::BinUtility>& bVec)
 
   50                       std::vector<std::vector<size_t>>&& indexarray,
 
   51                       BinUtility&& bingen, std::vector<Trk::BinUtility>&& bVec)
 
  107                 bool associatedResult = 
true)
 const 
  112     if (associatedResult) {
 
  119     if (
dl.second < 
ds.second){
 
  168 #endif // TRKDETDESCRUTILS_COMPACTBINNEDARRAY2D_H 
  
T * object(const Amg::Vector2D &lp) const
Returns the pointer to the templated class object from the BinnedArray, it returns nullptr if not def...
const BinUtility * binUtility() const
Return the BinUtility.
size_t entry(const Amg::Vector3D &position, size_t ba=0) const
Bin from a 3D vector (already in binning frame)
BinUtility m_binUtility
binUtility
T * object(const Amg::Vector3D &gp) const
Returns the pointer to the templated class object from the BinnedArray it returns nullptr if not defi...
T * nextObject(const Amg::Vector3D &gp, const Amg::Vector3D &mom, bool associatedResult=true) const
Returns the pointer to the templated class object from the BinnedArray.
Eigen::Matrix< double, 2, 1 > Vector2D
std::pair< size_t, float > distanceToNext(const Amg::Vector3D &position, const Amg::Vector3D &direction, size_t ba=0) const
Distance estimate to next bin
std::span< T *const  > arrayObjects()
Return all objects of the Array.
CompactBinnedArray2D * clone(const std::vector< T * > &ptrs) const
CompactBinnedArray2D * clone() const
Implicit Constructor.
CompactBinnedArray2D(const std::vector< T * > &tclassvector, std::vector< std::vector< size_t >> &&indexarray, BinUtility &&bingen, std::vector< Trk::BinUtility > &&bVec)
T * entryObject(const Amg::Vector3D &gp) const
Returns the pointer to the templated class object from the BinnedArray - entry point.
std::vector< BinUtility > m_buVec
vector of bin utilities for 2nd dim
const BinUtility * layerBinUtility(const Amg::Vector3D &pos) const
Return the BinUtility.
std::vector< T * > m_arrayObjects
objects
unsigned int arrayObjectsNumber() const
Number of Entries in the Array.
Ensure that the ATLAS eigen extensions are properly loaded.
bool inside(const Amg::Vector3D &position) const
Check if bin is inside from Vector3D.
Eigen::Matrix< double, 3, 1 > Vector3D
CompactBinnedArray2D(const std::vector< T * > &tclassvector, const std::vector< std::vector< size_t >> &indexarray, const BinUtility &bingen, const std::vector< Trk::BinUtility > &bVec)
Constructor with arguments.
size_t layerBin(const Amg::Vector3D &pos) const
Return the layer bin.
std::span< T const *const  > arrayObjects() const
Return all objects of the Array const T.
std::vector< std::vector< size_t > > m_array
vector of indices to objects
size_t bin(const Amg::Vector3D &position, size_t ba=0) const
Bin from a 3D vector (already in binning frame)
size_t next(const Amg::Vector3D &position, const Amg::Vector3D &direction, size_t ba=0) const
Bin from a 3D vector (already in binning frame)