9 #ifndef CCHITFINDERALG_H 10 #define CCHITFINDERALG_H 86 std::vector<recob::Hit>&&
YieldHits() {
return std::move(allhits); }
89 template <
typename Stream>
118 void FitNG(
unsigned short nGaus,
unsigned short npt,
float*
ticks,
float* signl);
136 void MakeCrudeHit(
unsigned short npt,
float* ticks,
float* signl);
146 unsigned short npt = 0,
147 float* signl =
nullptr,
148 unsigned short tstart = 0);
170 void Reset(
unsigned int nGaus);
171 void AddMultiGaus(
unsigned int nGaus);
198 std::array<double, 3>& params,
199 std::array<double, 3>& paramerrors,
211 template <
typename Stream>
214 out <<
"CCHitFinderAlg fit statistics:";
220 out <<
"\n fast 1-Gaussian fits: disabled";
222 for (
unsigned int nGaus = 1; nGaus <
MaxGaussians; ++nGaus) {
237 #endif // ifndef CCHITFINDERALG_H
void RunCCHitFinder(std::vector< recob::Wire > const &Wires)
std::vector< short > fWTickRange
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)
GausFitCache FitCache
a set of functions ready to be used
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)
Declaration of signal hit object.
std::vector< float > hiWire
std::vector< unsigned short > bumps
std::vector< float > fChiNorms
std::vector< float > bumpRMS
bool fUseFastFit
whether to attempt using a fast fit on single gauss.
CCHitFinderAlg(fhicl::ParameterSet const &pset)
std::vector< float > fChgNorms
cout<< "Opened file "<< fin<< " ixs= "<< ixs<< endl;if(ixs==0) hhh=(TH1F *) fff-> Get("h1")
FitStats_t TriedFitStats
counts of the tried fits
unsigned int FastFits
count of single-Gaussian fast fits
tick ticks
Alias for common language habits.
Hit finder algorithm designed to work with Cluster Crawler.
std::vector< float > fTimeOffsets
A set of TF1 linear sum of base functions (Gaussians)
std::vector< short > fUTickRange
std::vector< recob::Hit > allhits
ntupleExperimental Reset()
enum geo::_plane_sigtype SigType_t
Enumerate the possible plane projections.
Interface for a class providing readout channel mapping to geometry.
geo::WireReadoutGeom const * wireReadoutGeom
std::vector< float > hiTime
std::vector< short > fUWireRange
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.
void StudyHits(unsigned short flag, unsigned short npt=0, float *signl=nullptr, unsigned short tstart=0)
std::vector< short > fWWireRange
unsigned short theWireNum
std::vector< unsigned int > MultiGausFits
multi-Gaussian stats
std::vector< float > fMinPeak
Class holding the regions of interest of signal 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.
std::vector< short > fVWireRange
std::vector< short > fVTickRange
unsigned short fMaxXtraHits
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
std::vector< float > fMinRMS
std::vector< float > bumpChi
exchange data about the originating wire
std::vector< double > par