1 #ifndef RecHitsSortedInPhi_H 2 #define RecHitsSortedInPhi_H 38 typedef std::vector<HitWithPhi>::const_iterator
HitIter;
39 typedef std::pair<HitIter,HitIter>
Range;
66 void hits(
float phiMin,
float phiMax, std::vector<Hit>&
result)
const;
75 Range
unsafeRange(
float phiMin,
float phiMax)
const;
77 std::vector<Hit>
hits()
const {
103 std::vector<float>
x;
104 std::vector<float>
y;
105 std::vector<float>
z;
109 std::vector<float>
u;
110 std::vector<float>
v;
111 std::vector<float>
du;
112 std::vector<float>
dv;
115 static void copyResult(
const Range& range, std::vector<Hit>& result) {
116 result.reserve(result.size()+(range.second-range.first));
117 for (HitIter
i = range.first;
i != range.second;
i++) result.push_back(
i->hit());
144 std::size_t
size()
const {
return indeces.size();}
145 bool empty()
const {
return indeces.empty();}
148 indeces.shrink_to_fit();
151 void add (
int il,
int ol) {
152 indeces.emplace_back(il,ol);
172 std::array<RecHitsSortedInPhi const *,2>
layers;
std::vector< HitWithPhi > theHits
std::vector< float > drphi
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
Range unsafeRange(float phiMin, float phiMax) const
bool operator()(const HitWithPhi &a, const HitWithPhi &b)
HitLayer const & innerLayer() const
std::array< int, 4 > DoubleRange
HitWithPhi(const Hit &hit)
float x(int i, layer l) const
Global3DPoint GlobalPoint
std::array< RecHitsSortedInPhi const *, 2 > layers
std::vector< Hit > hits() const
std::pair< int, int > ADoublet
int index(int i, layer l) const
DoubleRange doubleRange(float phiMin, float phiMax) const
void reserve(std::size_t s)
std::vector< float > lphi
float z(int i, layer l) const
HitLayer const & outerLayer() const
std::pair< HitIter, HitIter > Range
HitDoublets(RecHitsSortedInPhi const &in, RecHitsSortedInPhi const &out)
std::vector< HitWithPhi >::const_iterator HitIter
int outerHitId(int i) const
GlobalPoint gp(int i, layer l) const
GlobalPoint gp(int i) const
float y(int i, layer l) const
float r(int i, layer l) const
BaseTrackerRecHit const * Hit
HitDoublets(HitDoublets &&rh)
float phi(int i, layer l) const
Hit const & hit(int i, layer l) const
static void copyResult(const Range &range, std::vector< Hit > &result)
int innerHitId(int i) const
RecHitsSortedInPhi(const std::vector< Hit > &hits, GlobalPoint const &origin, DetLayer const *il)
HitWithPhi(const Hit &hit, float phi)
DetLayer const * detLayer(layer l) const
float rv(int i, layer l) const
std::vector< ADoublet > indeces