12 #ifndef BlurredClustering_h 13 #define BlurredClustering_h 23 #include "larevt/CalibrationDBI/Interface/ChannelStatusService.h" 25 class DetectorProperties;
31 class ChannelStatusProvider;
48 class BlurredClusteringAlg;
57 void CreateDebugPDF(
int run,
int subrun,
int event);
60 void ConvertBinsToClusters(
std::vector<std::vector<double>>
const& image,
61 std::vector<std::vector<int>>
const& allClusterBins,
65 std::vector<std::vector<double>> ConvertRecobHitsToVector(
67 int readoutWindowSize);
70 int FindClusters(
std::vector<std::vector<double>>
const& image,
77 std::vector<std::vector<double>> GaussianBlur(
78 std::vector<std::vector<double>>
const& image)
const;
81 unsigned int GetMinSize() const noexcept {
return fMinSize; }
84 TH2F* MakeHistogram(
std::vector<std::vector<double>>
const& image, TString name)
const;
88 void SaveImage(TH2F* image,
95 void SaveImage(TH2F* image,
int pad,
int tpc,
int plane);
99 void SaveImage(TH2F* image,
100 std::vector<std::vector<int>>
const& allClusterBins,
108 std::vector<int>
const& bins)
const;
115 int ConvertWireTickToBin(
std::vector<std::vector<double>>
const& image,
int xbin,
int ybin)
const;
118 double ConvertBinToCharge(
std::vector<std::vector<double>>
const& image,
int bin)
const;
122 std::pair<int, int>
DeadWireCount(
int wire_bin,
int width)
const;
125 std::array<int, 4> FindBlurringParameters()
const;
128 double GetTimeOfBin(
std::vector<std::vector<double>>
const& image,
int bin)
const;
131 std::vector<std::vector<std::vector<double>>> MakeKernels()
const;
134 unsigned int NumNeighbours(
int nx, std::vector<bool>
const& used,
int bin)
const;
137 bool PassesTimeCut(std::vector<double>
const& times,
double time)
const;
162 std::vector<std::vector<art::Ptr<recob::Hit>>>
fHitMap;
169 TCanvas* fDebugCanvas{
nullptr};
170 std::string fDebugPDFName{};
174 lariov::ChannelStatusProvider
const& fChanStatus{
unsigned int fNeighboursThreshold
std::vector< std::vector< art::Ptr< recob::Hit > > > fHitMap
Declaration of signal hit object.
Cluster finding and building.
std::vector< bool > fDeadWires
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
IDparameter< geo::WireID > WireID
Member type of validated geo::WireID parameter.
float DeadWireCount(const TCSlice &slc, const TrajPoint &tp1, const TrajPoint &tp2)
unsigned int fMinNeighbours
General LArSoft Utilities.
art::ServiceHandle< geo::Geometry const > fGeom
Filters for channels, events, etc.
std::vector< std::vector< std::vector< double > > > fAllKernels
Namespace collecting geometry-related classes utilities.
art framework interface to geometry description
unsigned int GetMinSize() const noexcept
Minimum size of cluster to save.
Event finding and building.