LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
tss::TrackShowerHits Class Reference
Inheritance diagram for tss::TrackShowerHits:
art::EDProducer art::detail::Producer art::detail::LegacyModule art::Modifier art::ModuleBase art::ProductRegistryHelper

Public Types

using ModuleType = EDProducer
 
template<typename UserConfig , typename KeysToIgnore = void>
using Table = Modifier::Table< UserConfig, KeysToIgnore >
 

Public Member Functions

 TrackShowerHits (fhicl::ParameterSet const &p)
 
 TrackShowerHits (TrackShowerHits const &)=delete
 
 TrackShowerHits (TrackShowerHits &&)=delete
 
TrackShowerHitsoperator= (TrackShowerHits const &)=delete
 
TrackShowerHitsoperator= (TrackShowerHits &&)=delete
 
void doBeginJob (SharedResources const &resources)
 
void doEndJob ()
 
void doRespondToOpenInputFile (FileBlock const &fb)
 
void doRespondToCloseInputFile (FileBlock const &fb)
 
void doRespondToOpenOutputFiles (FileBlock const &fb)
 
void doRespondToCloseOutputFiles (FileBlock const &fb)
 
bool doBeginRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doEndRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doBeginSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEndSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEvent (EventPrincipal &ep, ModuleContext const &mc, std::atomic< std::size_t > &counts_run, std::atomic< std::size_t > &counts_passed, std::atomic< std::size_t > &counts_failed)
 
void fillProductDescriptions ()
 
void registerProducts (ProductDescriptions &productsToRegister)
 
ModuleDescription const & moduleDescription () const
 
void setModuleDescription (ModuleDescription const &)
 
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables () const
 
void sortConsumables (std::string const &current_process_name)
 
std::unique_ptr< Worker > makeWorker (WorkerParams const &wp)
 
template<typename T , BranchType BT>
ViewToken< T > consumesView (InputTag const &tag)
 
template<typename T , BranchType BT>
ViewToken< T > mayConsumeView (InputTag const &tag)
 

Protected Member Functions

ConsumesCollector & consumesCollector ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > consumes (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > consumesView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void consumesMany ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > mayConsume (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > mayConsumeView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void mayConsumeMany ()
 

Private Member Functions

void produce (art::Event &e) override
 
bool sortHits (const art::Event &evt)
 

Private Attributes

cryo_tpc_view_hitmap fHitMap
 
art::ServiceHandle< geo::Geometry const > fGeom
 
bool fHugeShowers
 
bool fShowersBySeg2D
 
tss::SimpleClustering fSimpleClustering
 
tss::Segmentation2D fSegmentation2D
 
std::string fHitModuleLabel
 

Detailed Description

Definition at line 32 of file TrackShowerHits_module.cc.

Member Typedef Documentation

Definition at line 17 of file EDProducer.h.

template<typename UserConfig , typename KeysToIgnore = void>
using art::detail::Producer::Table = Modifier::Table<UserConfig, KeysToIgnore>
inherited

Definition at line 26 of file Producer.h.

Constructor & Destructor Documentation

tss::TrackShowerHits::TrackShowerHits ( fhicl::ParameterSet const &  p)
explicit

Definition at line 58 of file TrackShowerHits_module.cc.

References fHitModuleLabel, fHugeShowers, fSegmentation2D, and fShowersBySeg2D.

59  : EDProducer{p}, fSegmentation2D(p.get<fhicl::ParameterSet>("Segmentation2DAlg"))
60  {
61  fHitModuleLabel = p.get<std::string>("HitModuleLabel");
62  fHugeShowers = p.get<bool>("FindHugeShowers");
63  fShowersBySeg2D = p.get<bool>("FindMoreShowers");
64 
65  produces<std::vector<recob::Cluster>>();
66  produces<art::Assns<recob::Cluster, recob::Hit>>();
67  }
EDProducer(fhicl::ParameterSet const &pset)
Definition: EDProducer.cc:6
tss::Segmentation2D fSegmentation2D
tss::TrackShowerHits::TrackShowerHits ( TrackShowerHits const &  )
delete
tss::TrackShowerHits::TrackShowerHits ( TrackShowerHits &&  )
delete

Member Function Documentation

template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::consumes ( InputTag const &  tag)
protectedinherited

Definition at line 61 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().

62  {
63  return collector_.consumes<T, BT>(tag);
64  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ProductToken< T > consumes(InputTag const &)
ConsumesCollector & art::ModuleBase::consumesCollector ( )
protectedinherited

Definition at line 57 of file ModuleBase.cc.

References art::ModuleBase::collector_.

58  {
59  return collector_;
60  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::consumesMany ( )
protectedinherited

Definition at line 75 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().

76  {
77  collector_.consumesMany<T, BT>();
78  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::consumesView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::consumesView ( InputTag const &  tag)
inherited

Definition at line 68 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().

69  {
70  return collector_.consumesView<T, BT>(tag);
71  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > consumesView(InputTag const &)
void art::detail::Producer::doBeginJob ( SharedResources const &  resources)
inherited

Definition at line 22 of file Producer.cc.

References art::detail::Producer::beginJobWithFrame(), and art::detail::Producer::setupQueues().

23  {
24  setupQueues(resources);
25  ProcessingFrame const frame{ScheduleID{}};
26  beginJobWithFrame(frame);
27  }
virtual void setupQueues(SharedResources const &)=0
virtual void beginJobWithFrame(ProcessingFrame const &)=0
bool art::detail::Producer::doBeginRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 65 of file Producer.cc.

References art::detail::Producer::beginRunWithFrame(), art::RangeSet::forRun(), art::RunPrincipal::makeRun(), r, art::RunPrincipal::runID(), and art::ModuleContext::scheduleID().

66  {
67  auto r = rp.makeRun(mc, RangeSet::forRun(rp.runID()));
68  ProcessingFrame const frame{mc.scheduleID()};
69  beginRunWithFrame(r, frame);
70  r.commitProducts();
71  return true;
72  }
TRandom r
Definition: spectrum.C:23
virtual void beginRunWithFrame(Run &, ProcessingFrame const &)=0
static RangeSet forRun(RunID)
Definition: RangeSet.cc:51
bool art::detail::Producer::doBeginSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 85 of file Producer.cc.

References art::detail::Producer::beginSubRunWithFrame(), art::RangeSet::forSubRun(), art::SubRunPrincipal::makeSubRun(), art::ModuleContext::scheduleID(), and art::SubRunPrincipal::subRunID().

86  {
87  auto sr = srp.makeSubRun(mc, RangeSet::forSubRun(srp.subRunID()));
88  ProcessingFrame const frame{mc.scheduleID()};
89  beginSubRunWithFrame(sr, frame);
90  sr.commitProducts();
91  return true;
92  }
virtual void beginSubRunWithFrame(SubRun &, ProcessingFrame const &)=0
static RangeSet forSubRun(SubRunID)
Definition: RangeSet.cc:57
void art::detail::Producer::doEndJob ( )
inherited

Definition at line 30 of file Producer.cc.

References art::detail::Producer::endJobWithFrame().

31  {
32  ProcessingFrame const frame{ScheduleID{}};
33  endJobWithFrame(frame);
34  }
virtual void endJobWithFrame(ProcessingFrame const &)=0
bool art::detail::Producer::doEndRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 75 of file Producer.cc.

References art::detail::Producer::endRunWithFrame(), art::RunPrincipal::makeRun(), r, art::ModuleContext::scheduleID(), and art::Principal::seenRanges().

76  {
77  auto r = rp.makeRun(mc, rp.seenRanges());
78  ProcessingFrame const frame{mc.scheduleID()};
79  endRunWithFrame(r, frame);
80  r.commitProducts();
81  return true;
82  }
TRandom r
Definition: spectrum.C:23
virtual void endRunWithFrame(Run &, ProcessingFrame const &)=0
bool art::detail::Producer::doEndSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 95 of file Producer.cc.

References art::detail::Producer::endSubRunWithFrame(), art::SubRunPrincipal::makeSubRun(), art::ModuleContext::scheduleID(), and art::Principal::seenRanges().

96  {
97  auto sr = srp.makeSubRun(mc, srp.seenRanges());
98  ProcessingFrame const frame{mc.scheduleID()};
99  endSubRunWithFrame(sr, frame);
100  sr.commitProducts();
101  return true;
102  }
virtual void endSubRunWithFrame(SubRun &, ProcessingFrame const &)=0
bool art::detail::Producer::doEvent ( EventPrincipal ep,
ModuleContext const &  mc,
std::atomic< std::size_t > &  counts_run,
std::atomic< std::size_t > &  counts_passed,
std::atomic< std::size_t > &  counts_failed 
)
inherited

Definition at line 105 of file Producer.cc.

References art::detail::Producer::checkPutProducts_, e, art::EventPrincipal::makeEvent(), art::detail::Producer::produceWithFrame(), and art::ModuleContext::scheduleID().

110  {
111  auto e = ep.makeEvent(mc);
112  ++counts_run;
113  ProcessingFrame const frame{mc.scheduleID()};
114  produceWithFrame(e, frame);
115  e.commitProducts(checkPutProducts_, &expectedProducts<InEvent>());
116  ++counts_passed;
117  return true;
118  }
bool const checkPutProducts_
Definition: Producer.h:70
Float_t e
Definition: plot.C:35
virtual void produceWithFrame(Event &, ProcessingFrame const &)=0
void art::detail::Producer::doRespondToCloseInputFile ( FileBlock const &  fb)
inherited

Definition at line 44 of file Producer.cc.

References art::detail::Producer::respondToCloseInputFileWithFrame().

45  {
46  ProcessingFrame const frame{ScheduleID{}};
48  }
virtual void respondToCloseInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::detail::Producer::doRespondToCloseOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 58 of file Producer.cc.

References art::detail::Producer::respondToCloseOutputFilesWithFrame().

59  {
60  ProcessingFrame const frame{ScheduleID{}};
62  }
virtual void respondToCloseOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::detail::Producer::doRespondToOpenInputFile ( FileBlock const &  fb)
inherited

Definition at line 37 of file Producer.cc.

References art::detail::Producer::respondToOpenInputFileWithFrame().

38  {
39  ProcessingFrame const frame{ScheduleID{}};
41  }
virtual void respondToOpenInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::detail::Producer::doRespondToOpenOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 51 of file Producer.cc.

References art::detail::Producer::respondToOpenOutputFilesWithFrame().

52  {
53  ProcessingFrame const frame{ScheduleID{}};
55  }
virtual void respondToOpenOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::Modifier::fillProductDescriptions ( )
inherited

Definition at line 10 of file Modifier.cc.

References art::ProductRegistryHelper::fillDescriptions(), and art::ModuleBase::moduleDescription().

11  {
13  }
void fillDescriptions(ModuleDescription const &md)
ModuleDescription const & moduleDescription() const
Definition: ModuleBase.cc:13
std::array< std::vector< ProductInfo >, NumBranchTypes > const & art::ModuleBase::getConsumables ( ) const
inherited

Definition at line 43 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().

44  {
45  return collector_.getConsumables();
46  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables() const
std::unique_ptr< Worker > art::ModuleBase::makeWorker ( WorkerParams const &  wp)
inherited

Definition at line 37 of file ModuleBase.cc.

References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.

38  {
39  return doMakeWorker(wp);
40  }
virtual std::unique_ptr< Worker > doMakeWorker(WorkerParams const &wp)=0
template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::mayConsume ( InputTag const &  tag)
protectedinherited

Definition at line 82 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().

83  {
84  return collector_.mayConsume<T, BT>(tag);
85  }
ProductToken< T > mayConsume(InputTag const &)
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::mayConsumeMany ( )
protectedinherited

Definition at line 96 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().

97  {
98  collector_.mayConsumeMany<T, BT>();
99  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::mayConsumeView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::mayConsumeView ( InputTag const &  tag)
inherited

Definition at line 89 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().

90  {
91  return collector_.mayConsumeView<T, BT>(tag);
92  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > mayConsumeView(InputTag const &)
ModuleDescription const & art::ModuleBase::moduleDescription ( ) const
inherited

Definition at line 13 of file ModuleBase.cc.

References art::errors::LogicError.

Referenced by art::OutputModule::doRespondToOpenInputFile(), art::OutputModule::doWriteEvent(), art::Modifier::fillProductDescriptions(), art::OutputModule::makePlugins_(), art::OutputWorker::OutputWorker(), reco::shower::LArPandoraModularShowerCreation::produce(), art::Modifier::registerProducts(), and art::OutputModule::registerProducts().

14  {
15  if (md_.has_value()) {
16  return *md_;
17  }
18 
20  "There was an error while calling moduleDescription().\n"}
21  << "The moduleDescription() base-class member function cannot be called\n"
22  "during module construction. To determine which module is "
23  "responsible\n"
24  "for calling it, find the '<module type>:<module "
25  "label>@Construction'\n"
26  "tag in the message prefix above. Please contact artists@fnal.gov\n"
27  "for guidance.\n";
28  }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
TrackShowerHits& tss::TrackShowerHits::operator= ( TrackShowerHits const &  )
delete
TrackShowerHits& tss::TrackShowerHits::operator= ( TrackShowerHits &&  )
delete
void tss::TrackShowerHits::produce ( art::Event e)
overrideprivatevirtual

Implements art::EDProducer.

Definition at line 95 of file TrackShowerHits_module.cc.

References util::CreateAssn(), DEFINE_ART_MODULE, fGeom, fHitMap, fHugeShowers, fSegmentation2D, fShowersBySeg2D, fSimpleClustering, hits(), geo::GeometryCore::Iterate(), art::Event::put(), tss::Segmentation2D::run(), tss::SimpleClustering::run(), util::size(), sortHits(), and tss::Segmentation2D::splitHitsNaive().

96  {
97  std::unique_ptr<std::vector<recob::Cluster>> clusters(new std::vector<recob::Cluster>);
98  std::unique_ptr<art::Assns<recob::Cluster, recob::Hit>> clu2hit(
100 
101  if (sortHits(evt)) {
102  unsigned int cidx = 0;
103  const unsigned int emTag = 0x10000;
104 
105  for (auto const& tpcid : fGeom->Iterate<geo::TPCID>()) {
106  for (const auto& v : fHitMap[tpcid.Cryostat][tpcid.TPC]) {
107  auto cls = fSimpleClustering.run(v.second);
108 
109  if (fHugeShowers) {
110  mf::LogVerbatim("TrackShowerHits") << "Find huge EM showers (cores).";
111 
112  int c = 0, clsSize = cls.size();
113  while (c < clsSize) {
114  if (cls[c].hits().size() < 2) {
115  c++;
116  continue;
117  }
118 
119  std::vector<const tss::Hit2D*> trks, ems;
120  fSegmentation2D.splitHitsNaive(cls[c], trks, ems);
121  cls.erase(cls.begin() + c);
122  clsSize--;
123 
124  cls.emplace_back(Cluster2D(trks));
125  cls.emplace_back(Cluster2D(ems));
126  cls.back().tagEM(true);
127  }
128  }
129 
130  if (fShowersBySeg2D) {
131  mf::LogVerbatim("TrackShowerHits") << "Find EM showers by density of vtxs.";
132 
133  int c = 0, clsSize = cls.size();
134  while (c < clsSize) {
135  if (cls[c].isEM() || (cls[c].hits().size() < 2)) {
136  c++;
137  continue;
138  }
139 
140  auto segs = fSegmentation2D.run(cls[c]);
141 
142  for (const auto& s : segs)
143  cls.emplace_back(Cluster2D(s));
144 
145  cls.erase(cls.begin() + c);
146  clsSize--;
147  }
148  }
149 
150  for (auto& c : cls) {
151  if (!c.hits().size()) continue; // skip 0-size clusters
152 
153  if (!c.isEM()) continue; // create clusters only for em parts now
154 
155  clusters->emplace_back(
156  recob::Cluster(0.0F,
157  0.0F,
158  0.0F,
159  0.0F,
160  0.0F,
161  0.0F,
162  0.0F,
163  0.0F,
164  0.0F,
165  0.0F,
166  0.0F,
167  0.0F,
168  0.0F,
169  0.0F,
170  0.0F,
171  0.0F,
172  0.0F,
173  0.0F,
174  c.hits().size(),
175  0.0F,
176  0.0F,
177  cidx + emTag,
178  (geo::View_t)c.hits().front()->View(),
179  c.hits().front()->Hit2DPtr()->WireID().planeID()));
180 
181  std::vector<art::Ptr<recob::Hit>> hits2d;
182  hits2d.reserve(c.hits().size());
183 
184  for (auto h2d : c.hits())
185  hits2d.push_back(h2d->Hit2DPtr());
186 
187  if (hits2d.size()) util::CreateAssn(evt, *clusters, hits2d, *clu2hit);
188 
189  ++cidx;
190  }
191  }
192  }
193  }
194  else
195  mf::LogWarning("TrackShowerHits") << "Hits not found in the event.";
196 
197  evt.put(std::move(clusters));
198  evt.put(std::move(clu2hit));
199  }
details::range_type< T > Iterate() const
Initializes the specified ID with the ID of the first cryostat.
Definition: GeometryCore.h:541
cryo_tpc_view_hitmap fHitMap
MaybeLogger_< ELseverityLevel::ELsev_info, true > LogVerbatim
tss::SimpleClustering fSimpleClustering
art::ServiceHandle< geo::Geometry const > fGeom
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
tss::Segmentation2D fSegmentation2D
void splitHitsNaive(const tss::Cluster2D &inp, std::vector< const tss::Hit2D * > &trackHits, std::vector< const tss::Hit2D * > &emHits) const
Set of hits with a 2D structure.
Definition: Cluster.h:69
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:101
void hits()
Definition: readHits.C:15
std::vector< tss::Cluster2D > run(const std::vector< tss::Hit2D > &inp) const
std::vector< tss::Cluster2D > run(tss::Cluster2D &inp) const
The data type to uniquely identify a TPC.
Definition: geo_types.h:381
Definition: DirOfGamma.h:22
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.
MaybeLogger_< ELseverityLevel::ELsev_warning, false > LogWarning
bool sortHits(const art::Event &evt)
TCEvent evt
Definition: DataStructs.cxx:8
void art::Modifier::registerProducts ( ProductDescriptions productsToRegister)
inherited

Definition at line 16 of file Modifier.cc.

References art::ModuleBase::moduleDescription(), and art::ProductRegistryHelper::registerProducts().

17  {
18  ProductRegistryHelper::registerProducts(productsToRegister,
20  }
void registerProducts(ProductDescriptions &productsToRegister, ModuleDescription const &md)
ModuleDescription const & moduleDescription() const
Definition: ModuleBase.cc:13
void art::ModuleBase::setModuleDescription ( ModuleDescription const &  md)
inherited

Definition at line 31 of file ModuleBase.cc.

References art::ModuleBase::md_.

32  {
33  md_ = md;
34  }
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
void art::ModuleBase::sortConsumables ( std::string const &  current_process_name)
inherited

Definition at line 49 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().

50  {
51  // Now that we know we have seen all the consumes declarations,
52  // sort the results for fast lookup later.
53  collector_.sortConsumables(current_process_name);
54  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
void sortConsumables(std::string const &current_process_name)
bool tss::TrackShowerHits::sortHits ( const art::Event evt)
private

Definition at line 70 of file TrackShowerHits_module.cc.

References fHitMap, fHitModuleLabel, art::fill_ptr_vector(), and art::ProductRetriever::getByLabel().

Referenced by produce().

71  {
72  auto const detProp =
74  fHitMap.clear();
75 
77  std::vector<art::Ptr<recob::Hit>> hitlist;
78  if (evt.getByLabel(fHitModuleLabel, hitListHandle)) {
79  art::fill_ptr_vector(hitlist, hitListHandle);
80 
81  unsigned int cryo, tpc, view;
82  for (auto const& h : hitlist) {
83  cryo = h->WireID().Cryostat;
84  tpc = h->WireID().TPC;
85  view = h->WireID().Plane;
86 
87  fHitMap[cryo][tpc][view].emplace_back(detProp, h);
88  }
89  return true;
90  }
91  return false;
92  }
cryo_tpc_view_hitmap fHitMap
bool getByLabel(std::string const &label, std::string const &instance, Handle< PROD > &result) const
void fill_ptr_vector(std::vector< Ptr< T >> &ptrs, H const &h)
Definition: Ptr.h:306

Member Data Documentation

art::ServiceHandle<geo::Geometry const> tss::TrackShowerHits::fGeom
private

Definition at line 47 of file TrackShowerHits_module.cc.

Referenced by produce().

cryo_tpc_view_hitmap tss::TrackShowerHits::fHitMap
private

Definition at line 44 of file TrackShowerHits_module.cc.

Referenced by produce(), and sortHits().

std::string tss::TrackShowerHits::fHitModuleLabel
private

Definition at line 54 of file TrackShowerHits_module.cc.

Referenced by sortHits(), and TrackShowerHits().

bool tss::TrackShowerHits::fHugeShowers
private

Definition at line 49 of file TrackShowerHits_module.cc.

Referenced by produce(), and TrackShowerHits().

tss::Segmentation2D tss::TrackShowerHits::fSegmentation2D
private

Definition at line 52 of file TrackShowerHits_module.cc.

Referenced by produce(), and TrackShowerHits().

bool tss::TrackShowerHits::fShowersBySeg2D
private

Definition at line 49 of file TrackShowerHits_module.cc.

Referenced by produce(), and TrackShowerHits().

tss::SimpleClustering tss::TrackShowerHits::fSimpleClustering
private

Definition at line 51 of file TrackShowerHits_module.cc.

Referenced by produce().


The documentation for this class was generated from the following file: