77 void GetStartEndHits(
unsigned int plane);
81 std::vector<util::PxLine> GetSeedLines();
100 produces<std::vector<recob::Cluster>>();
101 produces<art::Assns<recob::Cluster, recob::Hit>>();
102 produces<std::vector<art::PtrVector<recob::Cluster>>>();
105 fNPlanes = wireReadoutGeom.Nplanes();
119 std::unique_ptr<std::vector<recob::Cluster>> Graphcol(
new std::vector<recob::Cluster>);
120 std::unique_ptr<art::Assns<recob::Cluster, recob::Hit>> hassn(
122 std::unique_ptr<std::vector<art::PtrVector<recob::Cluster>>> classn(
130 for (
unsigned int ip = 0; ip <
fNPlanes; ip++) {
134 std::vector<art::PtrVector<recob::Hit>> hitlist;
135 hitlist.resize(fNPlanes);
137 for (
unsigned int ip = 0; ip <
fNPlanes; ip++) {
141 if (hitlist[ip].
size() == 0)
continue;
145 double swterror = 0., ewterror = 0.;
151 std::cout <<
" clustering @ " <<
startendpoints[ip].w0 <<
" +/- " << swterror <<
" " 153 <<
" +/- " << ewterror <<
" " <<
startendpoints[ip].t1 <<
" +/- " << ewterror
160 integral.
add(
hit->Integral());
161 summedADC.
add(
hit->ROISummedADC());
165 geo::PlaneID planeID = hitlist[ip].front()->WireID().planeID();
188 wireReadoutGeom.Plane({planeID.
asTPCID(), ip}).View(),
201 for (
unsigned int ip = 0; ip <
fNPlanes; ip++) {
207 classn->push_back(cvec);
209 evt.
put(std::move(Graphcol));
210 evt.
put(std::move(hassn));
211 evt.
put(std::move(classn));
code to link reconstructed objects back to the MC truth information
void reserve(size_type n)
Namespace for general, non-LArSoft-specific utilities.
Reconstruction base classes.
ProductID getProductID(std::string const &instance_name="") const
Declaration of signal hit object.
std::vector< recob::Hit * > starthit
The data type to uniquely identify a Plane.
cout<< "Opened file "<< fin<< " ixs= "<< ixs<< endl;if(ixs==0) hhh=(TH1F *) fff-> Get("h1")
Classes gathering simple statistics.
Weight_t RMS() const
Returns the root mean square.
static const SentryArgument_t Sentry
An instance of the sentry object.
PutHandle< PROD > put(std::unique_ptr< PROD > &&edp, std::string const &instance={})
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
Ptr(H, T) -> Ptr< detail::not_map_vector_t< typename H::element_type >>
EDProductGetter const * productGetter(ProductID const pid) const
std::vector< recob::Hit * > endhit
#define DEFINE_ART_MODULE(klass)
void push_back(Ptr< U > const &p)
Weight_t Sum() const
Returns the weighted sum of the values.
int CheckValidity(art::Event &evt)
std::vector< util::PxLine > startendpoints
Declaration of cluster object.
Definition of data types for geometry description.
Detector simulation of raw signals on wires.
void GetHitListAndEndPoints(unsigned int plane, art::PtrVector< recob::Hit > &ptrhitlist, util::PxLine &startendpoints)
bool CreateAssn(art::Event &evt, std::vector< T > const &a, art::Ptr< U > const &b, art::Assns< U, T > &assn, std::string a_instance, size_t index=UINT_MAX)
Creates a single one-to-one association.
void produce(art::Event &evt)
Utility object to perform functions of association.
Encapsulate the construction of a single detector plane .
2D representation of charge deposited in the TDC/wire plane
Collects statistics on a single quantity (weighted)
constexpr TPCID const & asTPCID() const
Conversion to PlaneID (for convenience of notation).
void add(Data_t value, Weight_t weight=Weight_t(1.0))
Adds one entry with specified value and weight.