2 #define TOPO_FINDER_H 1
8 #include <EVENT/TrackerHit.h>
9 #include <EVENT/TrackerPulse.h>
10 #include <gear/TPCParameters.h>
11 #include <gear/PadRowLayout2D.h>
12 #include <gearimpl/GlobalPadIndex.h>
42 std::multimap<gear::GlobalPadIndex, EVENT::TrackerPulse*>::iterator currentPulseIter);
50 gear::GlobalPadIndex currentPadIndex,
51 EVENT::TrackerPulse * currentPulse,
52 const gear::TPCModule &module);
63 EVENT::TrackerHitVec *
findHitsInRange(gear::GlobalPadIndex index1, gear::GlobalPadIndex index2,
64 float minADCIndex,
float maxADCIndex);
117 static void addTrackerHitVecs(EVENT::TrackerHitVec **vectorToAddTo, EVENT::TrackerHitVec **vectorToBeAdded);
131 #endif //TOPO_FINDER_H
int _maxEmptyPads
Maximum number of consecuitve empty pads in cluster.
Definition: TopoFinder.h:66
int _maxSkipRows
Maximum number of empty rows.
Definition: TopoFinder.h:70
static void addTrackerHitVecs(EVENT::TrackerHitVec **vectorToAddTo, EVENT::TrackerHitVec **vectorToBeAdded)
A helper function to add the contents of one TrackerHitVec to another.
Definition: TopoFinder.cc:575
float _maxTimeSpread
Maximum time between pulses in a cluster in ??
Definition: TopoFinder.h:68
std::list< EVENT::TrackerPulse * > findNeighbouringPulses(gear::GlobalPadIndex currentPadIndex, EVENT::TrackerPulse *currentPulse, const gear::TPCModule &module)
Iteratively searches for pulses that are on neighbouring pads.
Definition: TopoFinder.cc:208
float _vDrift
Optional: Set drift velocity in case there is no conditions data.
Definition: TopoFinder.h:72
unsigned int _recursionCounter
A nested helper class for sorting gear::GlobalPadIndex.
Definition: TopoFinder.h:110
int _negativeZDirection
Flag to determine if the second half TPC is reconstructed, which looks in the negative z direction...
Definition: TopoFinder.h:86
EVENT::TrackerHitVec * findHitsInRange(gear::GlobalPadIndex index1, gear::GlobalPadIndex index2, float minADCIndex, float maxADCIndex)
Find all the hits in the given pad range.
Definition: TopoFinder.cc:499
std::string getRevision()
Get the revision of the TopoFinder.
Definition: TopoFinder.cc:595
TopoFinder contains finding algorithms for clusters of TrackerPulses.
Definition: TopoFinder.h:28
TopoFinder()
The constructor.
Definition: TopoFinder.cc:29
float _zAnode
The position of the readout anode (positive value, TPC currently assumed to be symmetrical) ...
Definition: TopoFinder.h:79
int _minTrackHits
Minimum number of hits on track.
Definition: TopoFinder.h:69
int _minHitSize
Minimum number of pads per hit.
Definition: TopoFinder.h:67
std::multimap< gear::GlobalPadIndex, EVENT::TrackerPulse * > * _pulsesByIndex
A multimap containing the pad index and the corresponding pulse.
Definition: TopoFinder.h:91
EVENT::TrackerHit * findHit(std::multimap< gear::GlobalPadIndex, EVENT::TrackerPulse * >::iterator currentPulseIter)
Find the hit which contains the given pulse.
Definition: TopoFinder.cc:35
EVENT::TrackerHitVec * findHitsInNeighbouringRows(EVENT::TrackerHit *hit, int moduleID)
Find Hits in the neighbouring rows.
Definition: TopoFinder.cc:368