9 #ifndef CCHITFINDERALG_H 10 #define CCHITFINDERALG_H 96 std::vector<recob::Hit>&&
YieldHits() {
return std::move(allhits); }
99 template <
typename Stream>
131 void FitNG(
unsigned short nGaus,
unsigned short npt,
float *ticks,
154 void MakeCrudeHit(
unsigned short npt,
float *ticks,
float *signl);
156 void StoreHits(
unsigned short TStart,
unsigned short npt,
165 void StudyHits(
unsigned short flag,
unsigned short npt = 0,
166 float *ticks = 0,
float *signl = 0,
unsigned short tstart = 0);
189 void Reset(
unsigned int nGaus);
191 void AddMultiGaus(
unsigned int nGaus);
218 unsigned short npt,
float const*ticks,
float const*signl,
219 std::array<double, 3>& params,
220 std::array<double, 3>& paramerrors,
234 template <
typename Stream>
237 out <<
"CCHitFinderAlg fit statistics:";
243 out <<
"\n fast 1-Gaussian fits: disabled";
245 for (
unsigned int nGaus = 1; nGaus <
MaxGaussians; ++nGaus) {
247 out <<
"\n " << nGaus <<
"-Gaussian fits: " 264 #endif // ifndef CCHITFINDERALG_H
void RunCCHitFinder(std::vector< recob::Wire > const &Wires)
float fChiSplit
Estimated noise error on the Signal.
static constexpr float SqrtPi
void PrintStats(Stream &out) const
Print the fit statistics.
void FitNG(unsigned short nGaus, unsigned short npt, float *ticks, float *signl)
exchange data about the originating wire
std::vector< short > fWTickRange
std::vector< short > fWWireRange
virtual void reconfigure(fhicl::ParameterSet const &pset)
raw::ChannelID_t theChannel
std::vector< float > loWire
std::vector< double > parmax
void StoreHits(unsigned short TStart, unsigned short npt, HitChannelInfo_t info, float adcsum)
void StudyHits(unsigned short flag, unsigned short npt=0, float *ticks=0, float *signl=0, unsigned short tstart=0)
Declaration of signal hit object.
std::vector< float > hiWire
std::vector< unsigned short > bumps
std::vector< float > fChiNorms
std::vector< float > bumpRMS
std::vector< short > fUWireRange
bool fUseFastFit
whether to attempt using a fast fit on single gauss.
std::vector< short > fVWireRange
CCHitFinderAlg(fhicl::ParameterSet const &pset)
std::vector< float > fChgNorms
std::vector< short > fVTickRange
FitStats_t TriedFitStats
counts of the tried fits
unsigned int FastFits
count of single-Gaussian fast fits
Hit finder algorithm designed to work with Cluster Crawler.
std::vector< float > fTimeOffsets
std::vector< recob::Hit > allhits
art::ServiceHandle< geo::Geometry > geom
std::unique_ptr< GausFitCache > FitCache
a set of functions ready to be used
ntupleExperimental Reset()
enum geo::_plane_sigtype SigType_t
Enumerate the possible plane projections.
virtual ~CCHitFinderAlg()=default
std::vector< float > hiTime
The geometry of one entire detector, as served by art.
Definition of data types for geometry description.
std::vector< int > bumpCnt
Detector simulation of raw signals on wires.
std::vector< float > loTime
static bool FastGaussianFit(unsigned short npt, float const *ticks, float const *signl, std::array< double, 3 > ¶ms, std::array< double, 3 > ¶merrors, float &chidof)
Performs a "fast" fit.
unsigned short theWireNum
std::vector< unsigned int > MultiGausFits
multi-Gaussian stats
std::vector< float > fMinPeak
Class holding the deconvoluted signals from a channel.
static constexpr unsigned int MaxGaussians
std::vector< int > hitCnt
Provide caches for TF1 functions to be used with ROOT fitters.
static constexpr float Sqrt2Pi
Declaration of basic channel signal object.
unsigned short fMaxXtraHits
std::vector< short > fUTickRange
std::vector< recob::Hit > && YieldHits()
Returns (and loses) the collection of reconstructed hits.
void MakeCrudeHit(unsigned short npt, float *ticks, float *signl)
unsigned int ChannelID_t
Type representing the ID of a readout channel.
std::vector< float > hitRMS
std::vector< double > parmin
std::vector< int > RATCnt
FitStats_t FinalFitStats
counts of the good fits
std::vector< double > parerr
HitChannelInfo_t(recob::Wire const *w, geo::WireID wid, geo::Geometry const &geom)
std::vector< float > fMinRMS
std::vector< float > bumpChi
std::vector< double > par
art framework interface to geometry description