93 std::unique_ptr<std::vector<recob::Cluster>> ccol(
new std::vector<recob::Cluster>);
94 std::unique_ptr<art::Assns<recob::Cluster, recob::Hit>> assn(
100 ClusterParamsImportWrapper<StandardClusterParamsAlg> ClusterParamAlgo;
108 std::vector<art::Ptr<recob::Hit>> allhits;
117 std::map<geo::PlaneID, std::vector<art::Ptr<recob::Hit>>> planeIDToHits;
118 for (
size_t i = 0; i < hitcol->size(); ++i)
121 auto const clock_data =
123 auto const det_prop =
126 for (
auto& itr : planeIDToHits) {
129 allhits.resize(itr.second.size());
130 allhits.swap(itr.second);
135 for (
unsigned int j = 0; j <
fDBScan.
fps.size(); ++j) {
137 if (allhits.size() !=
fDBScan.
fps.size())
break;
155 totalQ += clusterHits.
back()->Integral();
159 if (clusterHits.
empty())
continue;
163 unsigned int sw = wireID.
Wire;
164 unsigned int ew = clusterHits.
back()->WireID().Wire;
167 ClusterParamAlgo.ImportHits(gser, clusterHits);
174 clusterHits.
front()->PeakTime(),
175 clusterHits.
front()->SigmaPeakTime(),
178 clusterHits.
back()->PeakTime(),
179 clusterHits.
back()->SigmaPeakTime(),
181 clusterHits.
front()->View(),
186 ccol->emplace_back(
cluster.move());
198 for (
unsigned int i = 0; i < ccol->size(); ++i)
MaybeLogger_< ELseverityLevel::ELsev_info, true > LogVerbatim
virtual ChannelSet_t BadChannels() const =0
Returns a copy of set of bad channel IDs for the current run.
std::set< raw::ChannelID_t > ChannelSet_t
Type of set of channel IDs.
WireID_t Wire
Index of the wire within its plane.
std::vector< std::vector< double > > fps
the collection of points we are working on
SigType_t SignalType(geo::PlaneID const &pid) const
Returns the type of signal on the channels of specified TPC plane.
Cluster finding and building.
static const SentryArgument_t Sentry
An instance of the sentry object.
DBScanAlg fDBScan
object that implements the DB scan algorithm
std::vector< unsigned int > fpointId_to_clusterId
mapping point_id -> clusterId
bool getByLabel(std::string const &label, std::string const &instance, Handle< PROD > &result) const
void push_back(Ptr< U > const &p)
Signal from induction planes.
enum geo::_plane_sigtype SigType_t
ProductID put(std::unique_ptr< PROD > &&edp, std::string const &instance={})
bool CreateAssn(PRODUCER const &prod, art::Event &evt, std::vector< T > const &a, art::Ptr< U > const &b, art::Assns< U, T > &assn, std::string a_instance, size_t indx=UINT_MAX)
Creates a single one-to-one association.
Class providing information about the quality of channels.
TH1F * fhitwidth_ind_test
TH1F * fhitwidth_coll_test
Q_EXPORT QTSManip setw(int w)
std::string fhitsModuleLabel
void InitScan(const detinfo::DetectorClocksData &clockData, const detinfo::DetectorPropertiesData &detProp, const std::vector< art::Ptr< recob::Hit >> &allhits, std::set< uint32_t > badChannels, const std::vector< geo::WireID > &wireids=std::vector< geo::WireID >())
std::vector< std::vector< unsigned int > > fclusters
collection of something
constexpr PlaneID const & planeID() const
Q_EXPORT QTSManip setfill(int f)
Signal from collection planes.