5 #ifndef TRKVERTEXSEEDFINDERUTILS_MODE3DTOFSMW1DFINDER_H
6 #define TRKVERTEXSEEDFINDERUTILS_MODE3DTOFSMW1DFINDER_H
9 #include "GaudiKernel/ToolHandle.h"
14 typedef std::pair< std::pair<double, std::pair<int,int> >,
double>
IndexedWeighted ;
50 const std::vector<Trk::PositionAndWeight>&
points)
const override final;
66 const std::vector<Trk::PositionAndWeight>&
points,
67 std::unique_ptr<IMode3dInfo>&
info)
const override final;
80 const std::vector<Amg::Vector3D>&
points)
const override final;
96 const std::vector<Amg::Vector3D>&
points,
97 std::unique_ptr<IMode3dInfo>&
info)
const override final;
109 const std::vector<Trk::PositionAndWeight> & VectorOfPoints)
const;
114 const std::vector< IndexedWeighted > & position,
115 int expectMax )
const ;
120 const std::vector<Trk::PositionAndWeight>& vectorOfPoints,
123 int zin = 0 )
const ;
129 return aa.x() < bb.x() ;
136 std::vector< std::pair< int,int> > &bb )
const
138 return aa[0].second < bb[0].second ;
146 return aa.second > bb.second ;
151 std::vector< std::pair< int, int> >
152 getFsmw1dMode(
const std::vector<IndexedWeighted> &,
int )
const ;
157 const std::vector<Trk::PositionAndWeight>& vectorOfPoints,
158 const double vx,
const double vy)
const;
163 const std::vector<Trk::PositionAndWeight>& vectorOfPoints,
169 const std::vector<Trk::PositionAndWeight>& vectorOfPoints,
175 const std::vector<Trk::PositionAndWeight>& vectorOfPoints,
193 Modes1d(std::vector<float> &, std::vector<float> &,
194 std::vector<float> &, std::vector<float> &)
const override final;
197 virtual const std::vector<int>&
206 perigeesAtSeed (std::vector<const Trk::TrackParameters*>& perigees ,
207 const std::vector<const Trk::TrackParameters*> & perigeeList)
const override final;
211 setTrkidx (std::vector< std::pair <int, int> >&& trkidx)
override final;
215 void pushIndices (
const std::vector< std::pair<int,int>>& modes);
217 void setCorre (
int zin,
double corre);