9 #ifndef CLUSTERPARAMSALG_H 10 #define CLUSTERPARAMSALG_H 19 #include <TPrincipal.h> 35 #include "TPrincipal.h" 36 #include "TStopwatch.h" 67 int SetHits(
const std::vector<util::PxHit> &);
75 template <
typename Stream>
76 void Report(Stream& stream)
const;
78 template <
typename Stream>
111 void FillParams(
bool override_DoGetAverages =
false,
112 bool override_DoGetRoughAxis =
false,
113 bool override_DoGetProfileInfo =
false,
114 bool override_DoRefineStartPointsAndDirection=
false,
116 bool override_DoGetFinalSlope =
false,
117 bool override_DoTrackShowerSep =
false,
118 bool override_DoEndCharge =
false);
232 double StartCharge(
float length = 1.,
unsigned int nbins = 10);
245 double EndCharge(
float length = 1.,
unsigned int nbins = 10);
367 double from_length,
double to_length,
368 unsigned int fit_first_bin,
unsigned int fit_end_bin
396 template <
typename Stream>
399 stream <<
" <<ClusterParamsAlg::TimeReport>> starts..."<<std::endl;
402 stream <<
" Function: " 410 stream<<
" <<ClusterParamsAlg::TimeReport>> ends..."<<std::endl;
util::GeometryUtilities * fGSer
const util::PxPoint & RoughStartPoint()
void GetRoughAxis(bool override=false)
std::vector< double > fChargeProfileNew
bool fFinishedGetRoughAxis
void GetProfileInfo(bool override=false)
void SetRefineDirectionQMin(double qmin)
std::vector< std::string > fTimeRecord_ProcName
void RefineStartPoints(bool override=false)
double EndCharge(float length=1., unsigned int nbins=10)
Returns the expected charge at the end of the cluster.
util::PxPoint fRoughBeginPoint
Float_t x1[n_points_granero]
void GetFinalSlope(bool override=false)
double StartCharge(float length=1., unsigned int nbins=10)
Returns the expected charge at the beginning of the cluster.
ClusterParamsAlg()
Default constructor.
void setNeuralNetPath(std::string s)
std::vector< util::PxHit > fHitVector
Cluster finding and building.
void FillParams(bool override_DoGetAverages=false, bool override_DoGetRoughAxis=false, bool override_DoGetProfileInfo=false, bool override_DoRefineStartPointsAndDirection=false, bool override_DoGetFinalSlope=false, bool override_DoTrackShowerSep=false, bool override_DoEndCharge=false)
bool fFinishedGetFinalSlope
double fProfileIntegralBackward
float MultipleHitDensity()
Returns the number of multiple hits per wire.
Class def header for exception classes in ClusterRecoUtil package.
bool fFinishedRefineStartPointAndDirection
const cluster_params & GetParams() const
double fProfileIntegralForward
cluster::cluster_params fParams
bool fFinishedGetEndCharges
const std::vector< util::PxHit > & GetHitVector() const
void TimeReport(Stream &stream) const
void TrackShowerSeparation(bool override=false)
std::vector< double > fTimeRecord_ProcTime
bool fFinishedGetProfileInfo
void GetAverages(bool override=false)
void RefineStartPointAndDirection(bool override=false)
void SetMinNHits(size_t nhit)
void RefineDirection(bool override=false)
bool fFinishedRefineDirection
util::PxPoint fRoughEndPoint
std::vector< double > fCoarseChargeProfile
size_t fMinNHits
Cut value for # hits: below this value clusters are not evaluated.
int SetHits(const std::vector< util::PxHit > &)
bool fFinishedRefineStartPoints
const util::PxPoint & RoughEndPoint()
bool fFinishedTrackShowerSep
void GetEndCharges(bool override_=false)
bool fFinishedGetAverages
Float_t x2[n_points_geant4]
void Report(Stream &stream) const
double IntegrateFitCharge(double from_length, double to_length, unsigned int fit_first_bin, unsigned int fit_end_bin)
Integrates the charge between two positions in the cluster axis.
void SetVerbose(bool yes=true)
static double LinearIntegral(double m, double q, double x1, double x2)
Returns the integral of f(x) = mx + q defined in [x1, x2].
std::string fNeuralNetPath
std::vector< double > fChargeProfile
std::vector< double > fChargeCutoffThreshold
float MultipleHitWires()
Returns the number of multiple hits per wire.
void GetFANNVector(std::vector< float > &data)