17 std::vector<Trajectory::RecHitContainer> swapper;
24 typedef Trajectory::RecHitContainer::const_iterator TI;
30 for (TI
t = hits.begin(), te = hits.end();
t != te; ++
t) {
31 if ((*t)->isValid()) {
32 detid = (*t)->geographicalId().rawId();
33 if (detid)
theCache.insert(std::pair<uint32_t, unsigned int>(detid, idx));
41 typedef Trajectory::RecHitContainer::const_iterator TI;
44 SI
first = range.first,
last = range.second, curr;
45 uint32_t detid = first->geographicalId().rawId();
47 std::multimap<uint32_t, unsigned int>::const_iterator it,
end =
theCache.end();
50 for (it =
theCache.find(detid); (it !=
end) && (it->first == detid); ++it) {
53 for (curr = first; curr !=
last; ++curr) {
55 for (TI
t = ts;
t != te; ++
t) {
57 if (comp.
equals(&(*curr), &(**
t))) { found =
true;
break; }
61 if (curr ==
last)
return false;
bool equals(const TrackingRecHit *a, const TrackingRecHit *b) const
std::multimap< uint32_t, unsigned int > theCache
ConstRecHitContainer recHits() const
bool good(const TrajectorySeed *seed) override
Returns true if the seed is not overlapping with another trajectory.
void done() override
Tells the cleaner that the seeds are finished, and so it can clear any cache it has.
recHitContainer::const_iterator const_iterator
void init(const std::vector< Trajectory > *vect) override
Provides the cleaner a pointer to the vector where trajectories are stored, in case it does not want ...
std::pair< const_iterator, const_iterator > range
void add(const Trajectory *traj) override
ConstRecHitContainer RecHitContainer
std::vector< Trajectory::RecHitContainer > theVault