8 #ifndef LAR_CLUSTER_ASSOCIATION_H
9 #define LAR_CLUSTER_ASSOCIATION_H 1
34 ClusterAssociation(
const pandora::CartesianVector &upstreamMergePoint,
const pandora::CartesianVector &upstreamMergeDirection,
35 const pandora::CartesianVector &downstreamMergePoint,
const pandora::CartesianVector &downstreamMergeDirection);
126 ClusterPairAssociation(
const pandora::CartesianVector &upstreamMergePoint,
const pandora::CartesianVector &upstreamMergeDirection,
127 const pandora::CartesianVector &downstreamMergePoint,
const pandora::CartesianVector &downstreamMergeDirection,
128 const pandora::Cluster *pUpstreamCluster,
const pandora::Cluster *pDownstreamCluster);
152 m_upstreamMergePoint(
pandora::CartesianVector(0.f, 0.f, 0.f)),
153 m_upstreamMergeDirection(
pandora::CartesianVector(0.f, 0.f, 0.f)),
154 m_downstreamMergePoint(
pandora::CartesianVector(0.f, 0.f, 0.f)),
155 m_downstreamMergeDirection(
pandora::CartesianVector(0.f, 0.f, 0.f)),
156 m_connectingLineDirection(
pandora::CartesianVector(0.f, 0.f, 0.f))
163 const pandora::CartesianVector &downstreamMergePoint,
const pandora::CartesianVector &downstreamMergeDirection) :
164 m_upstreamMergePoint(upstreamMergePoint),
165 m_upstreamMergeDirection(upstreamMergeDirection),
166 m_downstreamMergePoint(downstreamMergePoint),
167 m_downstreamMergeDirection(downstreamMergeDirection),
168 m_connectingLineDirection(0.f, 0.f, 0.f)
170 const pandora::CartesianVector connectingLineDirection(
247 const pandora::CartesianVector connectingLineDirection(
256 const pandora::CartesianVector &upstreamMergeDirection,
const pandora::CartesianVector &downstreamMergePoint,
257 const pandora::CartesianVector &downstreamMergeDirection,
const pandora::Cluster *pUpstreamCluster,
const pandora::Cluster *pDownstreamCluster) :
258 ClusterAssociation(upstreamMergePoint, upstreamMergeDirection, downstreamMergePoint, downstreamMergeDirection),
259 m_pUpstreamCluster(pUpstreamCluster),
260 m_pDownstreamCluster(pDownstreamCluster)
286 #endif // #ifndef LAR_CLUSTER_ASSOCIATION_H
ClusterAssociation class.
pandora::CartesianVector m_downstreamMergeDirection
The downstream cluster direction at the downstream merge point (points in the direction of the upstre...
ClusterPairAssociation()
Default constructor.
pandora::CartesianVector m_downstreamMergePoint
The downstream cluster point to be used in the merging process.
const pandora::CartesianVector GetDownstreamMergeDirection() const
Returns the cluster direction at the downstream merge point.
void UpdateConnectingLine()
Update the connecting line.
pandora::CartesianVector m_connectingLineDirection
The unit vector of the line connecting the upstream and downstream merge points (upstream -> downstre...
const pandora::CartesianVector GetUpstreamMergePoint() const
Returns the upstream cluster merge point.
static bool SortCoordinatesByPosition(const pandora::CartesianVector &lhs, const pandora::CartesianVector &rhs)
Sort cartesian vectors by their position (use Z, followed by X, followed by Y)
const pandora::Cluster * GetUpstreamCluster() const
Returns the address of the upstream cluster.
ClusterAssociation()
Default constructor.
Header file for the cluster helper class.
pandora::CartesianVector m_upstreamMergeDirection
The upstream cluster direction at the upstream merge point (points in the direction of the downstream...
pandora::CartesianVector m_upstreamMergePoint
The upstream cluster point to be used in the merging process.
ClusterPairAssociation class.
void SetUpstreamMergePoint(const pandora::CartesianVector &upstreamMergePoint)
Set the upstream merge point.
const pandora::CartesianVector GetDownstreamMergePoint() const
Returns the downstream cluster merge point.
void SetDownstreamMergePoint(const pandora::CartesianVector &downstreamMergePoint)
Set the downstream merge point.
bool operator==(const ClusterAssociation &clusterAssociation) const
required by fuzzyCluster table::sbnd_g4_services gaushitTruthMatch pandora
bool operator<(const ClusterAssociation &clusterAssociation) const
const pandora::Cluster * GetDownstreamCluster() const
Returns the address of the downstream cluster.
const pandora::Cluster * m_pUpstreamCluster
The address of the upstream cluster.
const pandora::Cluster * m_pDownstreamCluster
The address of the downstream cluster.
const pandora::CartesianVector GetConnectingLineDirection() const
Returns the unit vector of the line connecting the upstream and downstream merge points (upstream -> ...
const pandora::CartesianVector GetUpstreamMergeDirection() const
Returns the cluster direction at the upstream merge point.