9 #ifndef TRAJCLUSTERALGVERTEX_H 10 #define TRAJCLUSTERALGVERTEX_H 38 bool MergeWithVertex(TjStuff& tjs, VtxStore& vx2,
unsigned short existingVxID,
bool prt);
45 bool RefineVtxPosition(TjStuff& tjs,
const Trajectory& tj,
unsigned short& nearPt,
short nPtsToChk,
bool prt);
50 unsigned short TPNearVertex(TjStuff& tjs,
const TrajPoint& tp);
51 bool AttachPFPToVertex(TjStuff& tjs, PFPStruct& pfp,
unsigned short end,
unsigned short vx3ID,
bool prt);
55 float VertexVertexPull(TjStuff& tjs,
const Vtx3Store& vx1,
const Vtx3Store& vx2);
56 float VertexVertexPull(TjStuff& tjs,
const VtxStore& vx1,
const VtxStore& vx2);
57 bool FitVertex(TjStuff& tjs, VtxStore& vx,
bool prt);
58 bool FitVertex(TjStuff& tjs, VtxStore& vx, std::vector<TrajPoint> vxTp,
bool prt);
64 void SetVx2Score(TjStuff& tjs, VtxStore& vx2,
bool prt);
65 void SetVx3Score(TjStuff& tjs, Vtx3Store& vx3,
bool prt);
66 unsigned short Vx3Topo(TjStuff& tjs, Vtx3Store& vx3);
70 std::vector<int>
GetVtxTjIDs(
const TjStuff& tjs,
const VtxStore& vx2);
71 std::vector<int>
GetVtxTjIDs(
const TjStuff& tjs,
const Vtx3Store& vx3,
float& score);
72 std::vector<unsigned short>
GetPFPVertices(
const TjStuff& tjs,
const PFPStruct& pfp);
73 void PosInPlane(
const TjStuff& tjs,
const Vtx3Store& vx3,
unsigned short plane,
Point2_t& pos);
78 #endif // ifndef TRAJCLUSTERALGVERTEX_H void SetVx3Score(TjStuff &tjs, Vtx3Store &vx3, bool prt)
bool ChkVtxAssociations(TjStuff &tjs, const CTP_t &inCTP)
float TrajPointVertexPull(TjStuff &tjs, const TrajPoint &tp, const VtxStore &vx)
void Find3DVertices(TjStuff &tjs, const geo::TPCID &tpcid)
bool RefineVtxPosition(TjStuff &tjs, const Trajectory &tj, unsigned short &nearPt, short nPtsToChk, bool prt)
void CompleteIncomplete3DVertices(TjStuff &tjs, const geo::TPCID &tpcid)
void SplitTrajCrossingVertices(TjStuff &tjs, CTP_t inCTP)
bool FitVertex(TjStuff &tjs, VtxStore &vx, bool prt)
bool AttachAnyTrajToVertex(TjStuff &tjs, unsigned short ivx, bool prt)
void ChkVxTjs(TjStuff &tjs, const CTP_t &inCTP, bool prt)
unsigned short IsCloseToVertex(TjStuff &tjs, VtxStore &inVx2)
std::vector< unsigned short > GetPFPVertices(const TjStuff &tjs, const PFPStruct &pfp)
void SetHighScoreBits(TjStuff &tjs, Vtx3Store &vx3)
bool AttachTrajToVertex(TjStuff &tjs, Trajectory &tj, VtxStore &vx, bool prt)
void FindNeutralVertices(TjStuff &tjs, const geo::TPCID &tpcid)
bool AttachPFPToVertex(TjStuff &tjs, PFPStruct &pfp, unsigned short end, unsigned short vx3ID, bool prt)
bool MakeVertexObsolete(TjStuff &tjs, VtxStore &vx2, bool forceKill)
std::array< float, 2 > Point2_t
void MakeJunkVertices(TjStuff &tjs, const CTP_t &inCTP)
void Match3DVtxTjs(TjStuff &tjs, const geo::TPCID &tpcid, bool prt)
void VtxHitsSwap(TjStuff &tjs, const CTP_t inCTP)
void Find2DVertices(TjStuff &tjs, const CTP_t &inCTP)
void FindHammerVertices2(TjStuff &tjs, const CTP_t &inCTP)
void MakeJunkTjVertices(TjStuff &tjs, const CTP_t &inCTP)
The data type to uniquely identify a TPC.
Definition of data types for geometry description.
void ScoreVertices(TjStuff &tjs, const geo::TPCID &tpcid, bool prt)
std::vector< int > GetVtxTjIDs(const TjStuff &tjs, const VtxStore &vx2)
void CompleteIncomplete3DVerticesInGaps(TjStuff &tjs, const geo::TPCID &tpcid)
bool MergeWithVertex(TjStuff &tjs, VtxStore &vx, unsigned short oVxID, bool prt)
void FindHammerVertices(TjStuff &tjs, const CTP_t &inCTP)
void KillPoorVertices(TjStuff &tjs, const geo::TPCID &tpcid)
void SetVx2Score(TjStuff &tjs, bool prt)
unsigned short TPNearVertex(TjStuff &tjs, const TrajPoint &tp)
void PosInPlane(const TjStuff &tjs, const Vtx3Store &vx3, unsigned short plane, Point2_t &pos)
std::vector< evd::details::RawDigitInfo_t >::const_iterator end(RawDigitCacheDataClass const &cache)
bool StoreVertex(TjStuff &tjs, VtxStore &vx)
unsigned short Vx3Topo(TjStuff &tjs, Vtx3Store &vx3)
float VertexVertexPull(TjStuff &tjs, const Vtx3Store &vx1, const Vtx3Store &vx2)