LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "Segmentation2D.h"
Public Member Functions | |
Segmentation2D (const fhicl::ParameterSet &p) | |
void | reconfigure (const fhicl::ParameterSet &p) |
std::vector< tss::Cluster2D > | run (tss::Cluster2D &inp) const |
void | splitHits (const std::vector< tss::Cluster2D > &inp, std::vector< const tss::Hit2D * > &trackHits, std::vector< const tss::Hit2D * > &emHits) const |
void | splitHitsNaive (const tss::Cluster2D &inp, std::vector< const tss::Hit2D * > &trackHits, std::vector< const tss::Hit2D * > &emHits) const |
void | splitHitsNaive (const std::vector< tss::Cluster2D > &inp, std::vector< const tss::Hit2D * > &trackHits, std::vector< const tss::Hit2D * > &emHits) const |
int | mergeClusters (std::vector< tss::Cluster2D > &group, const std::vector< size_t > &idxs) const |
Private Member Functions | |
void | run (tss::Cluster2D &inp, std::vector< tss::Cluster2D > &result, std::vector< TVector2 > ¢ers) const |
tss::Cluster2D | buildSegment (tss::Cluster2D &inp, TVector2 center, TVector2 end) const |
tss::Cluster2D | selectRing (const tss::Cluster2D &inp, TVector2 center) const |
void | tagDenseEnds (std::vector< tss::Cluster2D > &group) const |
void | mergeDenseParts (std::vector< tss::Cluster2D > &group) const |
bool | Cl2InsideCl1 (tss::Cluster2D &cl1, tss::Cluster2D &cl2) const |
Private Attributes | |
tss::SimpleClustering | fSimpleClustering |
double | fRadiusMin |
double | fRadiusMax |
double | fMaxLineDist |
double | fDenseVtxRadius |
double | fDenseHitRadius |
size_t | fDenseMinN |
size_t | fDenseMinH |
Definition at line 19 of file Segmentation2D.h.
|
inline |
Definition at line 23 of file Segmentation2D.h.
References buildSegment(), Cl2InsideCl1(), evd::details::end(), mergeClusters(), mergeDenseParts(), reconfigure(), run(), selectRing(), splitHits(), splitHitsNaive(), and tagDenseEnds().
|
private |
Definition at line 106 of file Segmentation2D.cxx.
References pma::Dist2(), tss::Cluster2D::end(), evd::details::end(), fMaxLineDist, fSimpleClustering, pma::GetProjectionToSegment(), tss::Cluster2D::hits(), tss::SimpleClustering::hitsTouching(), proj, tss::Cluster2D::push_back(), tss::Cluster2D::release(), tss::Cluster2D::size(), tss::Cluster2D::sort(), and tss::Cluster2D::start().
Referenced by run(), and Segmentation2D().
|
private |
Definition at line 461 of file Segmentation2D.cxx.
References tss::Cluster2D::isEM(), tss::Cluster2D::max(), tss::Cluster2D::min(), tss::Cluster2D::size(), X, and Y.
Referenced by Segmentation2D().
int tss::Segmentation2D::mergeClusters | ( | std::vector< tss::Cluster2D > & | group, |
const std::vector< size_t > & | idxs | ||
) | const |
Definition at line 329 of file Segmentation2D.cxx.
Referenced by mergeDenseParts(), and Segmentation2D().
|
private |
Definition at line 233 of file Segmentation2D.cxx.
References pma::Dist2(), evd::details::end(), fDenseMinN, fDenseVtxRadius, maxE, and mergeClusters().
Referenced by run(), and Segmentation2D().
void tss::Segmentation2D::reconfigure | ( | const fhicl::ParameterSet & | p | ) |
Definition at line 14 of file Segmentation2D.cxx.
References fDenseHitRadius, fDenseMinH, fDenseMinN, fDenseVtxRadius, fMaxLineDist, fRadiusMax, fRadiusMin, and fhicl::ParameterSet::get().
Referenced by tss::TrackShowerHits::reconfigure(), and Segmentation2D().
std::vector< tss::Cluster2D > tss::Segmentation2D::run | ( | tss::Cluster2D & | inp | ) | const |
Definition at line 27 of file Segmentation2D.cxx.
References mergeDenseParts(), tss::Cluster2D::outermost(), tss::Hit2D::Point2D(), tss::Cluster2D::size(), and tagDenseEnds().
Referenced by tss::TrackShowerHits::produce(), and Segmentation2D().
|
private |
Definition at line 52 of file Segmentation2D.cxx.
References buildSegment(), tss::Cluster2D::closest(), pma::Dist2(), tss::Cluster2D::end(), fSimpleClustering, tss::Hit2D::Point2D(), tss::Cluster2D::release(), tss::SimpleClustering::run(), tca::seeds, selectRing(), and tss::Cluster2D::size().
|
private |
Definition at line 165 of file Segmentation2D.cxx.
References pma::Dist2(), fRadiusMax, fRadiusMin, tss::Cluster2D::hits(), tss::Cluster2D::push_back(), and tss::Cluster2D::size().
Referenced by run(), and Segmentation2D().
void tss::Segmentation2D::splitHits | ( | const std::vector< tss::Cluster2D > & | inp, |
std::vector< const tss::Hit2D * > & | trackHits, | ||
std::vector< const tss::Hit2D * > & | emHits | ||
) | const |
Definition at line 359 of file Segmentation2D.cxx.
Referenced by Segmentation2D().
void tss::Segmentation2D::splitHitsNaive | ( | const tss::Cluster2D & | inp, |
std::vector< const tss::Hit2D * > & | trackHits, | ||
std::vector< const tss::Hit2D * > & | emHits | ||
) | const |
Definition at line 385 of file Segmentation2D.cxx.
References pma::Dist2(), fDenseHitRadius, fDenseMinH, tss::Cluster2D::hits(), and n.
Referenced by tss::TrackShowerHits::produce(), and Segmentation2D().
void tss::Segmentation2D::splitHitsNaive | ( | const std::vector< tss::Cluster2D > & | inp, |
std::vector< const tss::Hit2D * > & | trackHits, | ||
std::vector< const tss::Hit2D * > & | emHits | ||
) | const |
Definition at line 417 of file Segmentation2D.cxx.
References pma::Dist2(), fDenseHitRadius, fDenseMinH, and n.
|
private |
Definition at line 181 of file Segmentation2D.cxx.
References pma::Dist2(), evd::details::end(), and fDenseVtxRadius.
Referenced by run(), and Segmentation2D().
|
private |
Definition at line 73 of file Segmentation2D.h.
Referenced by reconfigure(), and splitHitsNaive().
|
private |
Definition at line 74 of file Segmentation2D.h.
Referenced by reconfigure(), and splitHitsNaive().
|
private |
Definition at line 74 of file Segmentation2D.h.
Referenced by mergeDenseParts(), and reconfigure().
|
private |
Definition at line 73 of file Segmentation2D.h.
Referenced by mergeDenseParts(), reconfigure(), and tagDenseEnds().
|
private |
Definition at line 71 of file Segmentation2D.h.
Referenced by buildSegment(), and reconfigure().
|
private |
Definition at line 70 of file Segmentation2D.h.
Referenced by reconfigure(), and selectRing().
|
private |
Definition at line 70 of file Segmentation2D.h.
Referenced by reconfigure(), and selectRing().
|
private |
Definition at line 68 of file Segmentation2D.h.
Referenced by buildSegment(), and run().