LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "PmaVtxCandidate.h"
Public Member Functions | |
VtxCandidate (double segMinLength=0.5) | |
bool | Has (pma::Track3D *trk) const |
bool | Has (const VtxCandidate &other) const |
bool | IsAttached (pma::Track3D *trk) const |
bool | IsAttached (const VtxCandidate &other) const |
bool | HasLoops () const |
bool | Add (const pma::TrkCandidate &trk) |
double | ComputeMse2D () |
double | Test (const VtxCandidate &other) const |
double | MaxAngle (double minLength=0.0) const |
size_t | Size () const |
size_t | Size (double minLength) const |
bool | MergeWith (const VtxCandidate &other) |
double | Compute () |
bool | JoinTracks (detinfo::DetectorPropertiesData const &detProp, pma::TrkCandidateColl &tracks, pma::TrkCandidateColl &src) |
const TVector3 & | Center () const |
double | Mse () const |
double | Mse2D () const |
std::pair< pma::Track3D *, size_t > | Track (size_t i) const |
Static Public Attributes | |
static constexpr double | kMaxDistToTrack {4.0} |
static constexpr double | kMinDistToNode {2.0} |
Private Member Functions | |
bool | has (const std::vector< int > &v, int id) const |
Private Attributes | |
bool | tracksJoined |
double | fSegMinLength |
double | fMse |
double | fMse2D |
std::vector< std::pair< pma::TrkCandidate, size_t > > | fAssigned |
TVector3 | fCenter |
TVector3 | fErr |
Definition at line 24 of file PmaVtxCandidate.h.
|
inline |
Definition at line 29 of file PmaVtxCandidate.h.
References Add(), ComputeMse2D(), Has(), HasLoops(), IsAttached(), MaxAngle(), fhicl::other, and Test().
bool pma::VtxCandidate::Add | ( | const pma::TrkCandidate & | trk | ) |
Definition at line 86 of file PmaVtxCandidate.cxx.
References Compute(), ComputeMse2D(), d, fAssigned, fCenter, fMse, fMse2D, fSegMinLength, pma::Segment3D::GetDistance2To(), IsAttached(), kMaxDistToTrack, pma::Element3D::Length(), n, pma::Track3D::NextSegment(), pma::Track3D::Nodes(), and pma::TrkCandidate::Track().
Referenced by pma::PMAlgVertexing::firstPassCandidates(), pma::PMAlgVertexing::secondPassCandidates(), and VtxCandidate().
|
inline |
double pma::VtxCandidate::Compute | ( | ) |
Definition at line 330 of file PmaVtxCandidate.cxx.
References fAssigned, fCenter, fErr, fSegMinLength, pma::GetProjectionToSegment(), pma::Element3D::Length(), pma::SortedObjectBase::Next(), pma::Track3D::NextSegment(), pma::Track3D::Nodes(), pma::Node3D::Point3D(), pma::SolveLeastSquares3D(), and w.
Referenced by Add(), MergeWith(), and Size().
double pma::VtxCandidate::ComputeMse2D | ( | ) |
Definition at line 196 of file PmaVtxCandidate.cxx.
References fAssigned, fCenter, pma::Segment3D::GetDistance2To(), pma::GetProjectionToPlane(), geo::kU, geo::kV, geo::kZ, pma::Track3D::NextSegment(), pma::Track3D::Nodes(), and geo::GeometryCore::TPC().
Referenced by Add(), MergeWith(), and VtxCandidate().
bool pma::VtxCandidate::Has | ( | pma::Track3D * | trk | ) | const |
Definition at line 26 of file PmaVtxCandidate.cxx.
References fAssigned.
Referenced by Has(), MergeWith(), and VtxCandidate().
bool pma::VtxCandidate::Has | ( | const VtxCandidate & | other | ) | const |
Definition at line 33 of file PmaVtxCandidate.cxx.
References fAssigned, and Has().
|
inlineprivate |
Definition at line 77 of file PmaVtxCandidate.h.
Referenced by JoinTracks().
bool pma::VtxCandidate::HasLoops | ( | ) | const |
Definition at line 61 of file PmaVtxCandidate.cxx.
References fAssigned, and pma::Track3D::IsAttachedTo().
Referenced by VtxCandidate().
bool pma::VtxCandidate::IsAttached | ( | pma::Track3D * | trk | ) | const |
Definition at line 40 of file PmaVtxCandidate.cxx.
References fAssigned, pma::Track3D::GetRoot(), and pma::Track3D::IsAttachedTo().
Referenced by Add(), IsAttached(), MergeWith(), and VtxCandidate().
bool pma::VtxCandidate::IsAttached | ( | const VtxCandidate & | other | ) | const |
Definition at line 54 of file PmaVtxCandidate.cxx.
References fAssigned, and IsAttached().
bool pma::VtxCandidate::JoinTracks | ( | detinfo::DetectorPropertiesData const & | detProp, |
pma::TrkCandidateColl & | tracks, | ||
pma::TrkCandidateColl & | src | ||
) |
Definition at line 401 of file PmaVtxCandidate.cxx.
References pma::Track3D::AttachBackTo(), pma::Track3D::AttachTo(), pma::Track3D::CanFlip(), pma::Dist2(), pma::TrkCandidateColl::erase_at(), f, fAssigned, fCenter, pma::Track3D::Flip(), fMse, fMse2D, pma::Node3D::GetBranches(), pma::Track3D::GetBranches(), pma::TrkCandidateColl::getCandidateIndex(), pma::GetProjectionToSegment(), pma::Track3D::GetRoot(), pma::GetSegmentProjVector(), pma::TrkCandidateColl::getTreeCopy(), has(), pma::Track3D::InsertNode(), kMinDistToNode, pma::Track3D::MakeProjection(), pma::SortedBranchBase::Next(), pma::SortedBranchBase::NextCount(), pma::Track3D::NextSegment(), pma::Track3D::Nodes(), pma::Segment3D::Parent(), pma::Node3D::Point3D(), pma::SortedObjectBase::Prev(), proj, pma::TrkCandidateColl::push_back(), pma::Node3D::SetPoint3D(), pma::TrkCandidateColl::setTreeIds(), pma::TrkCandidateColl::size(), pma::Track3D::size(), pma::Track3D::Split(), pma::TrkCandidateColl::tracks(), tracksJoined, and pma::Track3D::TuneFullTree().
Referenced by Size().
double pma::VtxCandidate::MaxAngle | ( | double | minLength = 0.0 | ) | const |
Definition at line 243 of file PmaVtxCandidate.cxx.
References fAssigned, pma::Track3D::Nodes(), and pma::Node3D::Point3D().
Referenced by VtxCandidate().
bool pma::VtxCandidate::MergeWith | ( | const VtxCandidate & | other | ) |
Definition at line 276 of file PmaVtxCandidate.cxx.
References Compute(), ComputeMse2D(), d, pma::Dist2(), fAssigned, fCenter, fMse, fMse2D, Has(), IsAttached(), Size(), and Test().
Referenced by Size().
|
inline |
Definition at line 68 of file PmaVtxCandidate.h.
References fMse.
Referenced by pma::PMAlgVertexing::firstPassCandidates(), and pma::PMAlgVertexing::secondPassCandidates().
|
inline |
|
inline |
Definition at line 56 of file PmaVtxCandidate.h.
References Compute(), fAssigned, JoinTracks(), and MergeWith().
Referenced by MergeWith().
size_t pma::VtxCandidate::Size | ( | double | minLength | ) | const |
Definition at line 78 of file PmaVtxCandidate.cxx.
double pma::VtxCandidate::Test | ( | const VtxCandidate & | other | ) | const |
Definition at line 233 of file PmaVtxCandidate.cxx.
Referenced by MergeWith(), and VtxCandidate().
|
inline |
Definition at line 71 of file PmaVtxCandidate.h.
References fAssigned.
|
private |
Definition at line 86 of file PmaVtxCandidate.h.
Referenced by Add(), Compute(), ComputeMse2D(), Has(), HasLoops(), IsAttached(), JoinTracks(), MaxAngle(), MergeWith(), Size(), and Track().
|
private |
Definition at line 87 of file PmaVtxCandidate.h.
Referenced by Add(), Center(), Compute(), ComputeMse2D(), JoinTracks(), MergeWith(), and Test().
|
private |
Definition at line 87 of file PmaVtxCandidate.h.
|
private |
Definition at line 85 of file PmaVtxCandidate.h.
Referenced by Add(), JoinTracks(), MergeWith(), and Mse().
|
private |
Definition at line 85 of file PmaVtxCandidate.h.
Referenced by Add(), JoinTracks(), MergeWith(), and Mse2D().
|
private |
Definition at line 85 of file PmaVtxCandidate.h.
|
static |
Definition at line 26 of file PmaVtxCandidate.h.
Referenced by Add().
|
static |
Definition at line 27 of file PmaVtxCandidate.h.
Referenced by JoinTracks().
|
private |
Definition at line 84 of file PmaVtxCandidate.h.
Referenced by JoinTracks().