Public Member Functions | Public Attributes | List of all members
lar_content::MissingTrackSegmentTool::Particle Class Reference

Particle class. More...

Public Member Functions

 Particle (const TensorType::Element &element)
 Constructor. More...
 

Public Attributes

const pandora::Cluster * m_pShortCluster
 Address of the short cluster. More...
 
const pandora::Cluster * m_pCluster1
 Address of long cluster in view 1. More...
 
const pandora::Cluster * m_pCluster2
 Address of long cluster in view 2. More...
 
pandora::HitType m_shortHitType
 The hit type of the short cluster. More...
 
pandora::HitType m_hitType1
 The hit type of the long cluster in view 1. More...
 
pandora::HitType m_hitType2
 The hit type of the long cluster in view 2. More...
 
float m_shortMinX
 The min x coordinate of the short cluster. More...
 
float m_shortMaxX
 The max x coordinate of the short cluster. More...
 
float m_longMinX
 The min x coordinate of the long clusters. More...
 
float m_longMaxX
 The max x coordinate of the long clusters. More...
 

Detailed Description

Particle class.

Definition at line 35 of file MissingTrackSegmentTool.h.

Constructor & Destructor Documentation

lar_content::MissingTrackSegmentTool::Particle::Particle ( const TensorType::Element &  element)

Constructor.

Parameters
elementthe tensor element

Definition at line 386 of file MissingTrackSegmentTool.cc.

387 {
388  const XOverlap &xOverlap(element.GetOverlapResult().GetXOverlap());
389 
390  m_shortHitType = ((xOverlap.GetXSpanU() < xOverlap.GetXSpanV()) && (xOverlap.GetXSpanU() < xOverlap.GetXSpanW()))
391  ? TPC_VIEW_U
392  : ((xOverlap.GetXSpanV() < xOverlap.GetXSpanU()) && (xOverlap.GetXSpanV() < xOverlap.GetXSpanW()))
393  ? TPC_VIEW_V
394  : ((xOverlap.GetXSpanW() < xOverlap.GetXSpanU()) && (xOverlap.GetXSpanW() < xOverlap.GetXSpanV())) ? TPC_VIEW_W : HIT_CUSTOM;
395 
396  if (HIT_CUSTOM == m_shortHitType)
397  throw StatusCodeException(STATUS_CODE_FAILURE);
398 
399  m_pShortCluster = (TPC_VIEW_U == m_shortHitType) ? element.GetClusterU()
400  : (TPC_VIEW_V == m_shortHitType) ? element.GetClusterV() : element.GetClusterW();
401  m_pCluster1 = (TPC_VIEW_U == m_shortHitType) ? element.GetClusterV() : element.GetClusterU();
402  m_pCluster2 = (TPC_VIEW_W == m_shortHitType) ? element.GetClusterV() : element.GetClusterW();
403  m_shortMinX = (TPC_VIEW_U == m_shortHitType) ? xOverlap.GetUMinX() : (TPC_VIEW_V == m_shortHitType) ? xOverlap.GetVMinX() : xOverlap.GetWMinX();
404  m_shortMaxX = (TPC_VIEW_U == m_shortHitType) ? xOverlap.GetUMaxX() : (TPC_VIEW_V == m_shortHitType) ? xOverlap.GetVMaxX() : xOverlap.GetWMaxX();
405  m_longMinX = (TPC_VIEW_U == m_shortHitType) ? std::min(xOverlap.GetVMinX(), xOverlap.GetWMinX())
406  : (TPC_VIEW_V == m_shortHitType) ? std::min(xOverlap.GetUMinX(), xOverlap.GetWMinX())
407  : std::min(xOverlap.GetUMinX(), xOverlap.GetVMinX());
408  m_longMaxX = (TPC_VIEW_U == m_shortHitType) ? std::max(xOverlap.GetVMaxX(), xOverlap.GetWMaxX())
409  : (TPC_VIEW_V == m_shortHitType) ? std::max(xOverlap.GetUMaxX(), xOverlap.GetWMaxX())
410  : std::max(xOverlap.GetUMaxX(), xOverlap.GetVMaxX());
411 
414 }
float m_longMaxX
The max x coordinate of the long clusters.
const pandora::Cluster * m_pShortCluster
Address of the short cluster.
static pandora::HitType GetClusterHitType(const pandora::Cluster *const pCluster)
Get the hit type associated with a two dimensional cluster.
const pandora::Cluster * m_pCluster1
Address of long cluster in view 1.
const pandora::Cluster * m_pCluster2
Address of long cluster in view 2.
static int max(int a, int b)
pandora::HitType m_hitType1
The hit type of the long cluster in view 1.
float m_longMinX
The min x coordinate of the long clusters.
pandora::HitType m_shortHitType
The hit type of the short cluster.
T min(sqlite3 *const db, std::string const &table_name, std::string const &column_name)
Definition: statistics.h:55
float m_shortMaxX
The max x coordinate of the short cluster.
float m_shortMinX
The min x coordinate of the short cluster.
pandora::HitType m_hitType2
The hit type of the long cluster in view 2.

Member Data Documentation

pandora::HitType lar_content::MissingTrackSegmentTool::Particle::m_hitType1

The hit type of the long cluster in view 1.

Definition at line 49 of file MissingTrackSegmentTool.h.

pandora::HitType lar_content::MissingTrackSegmentTool::Particle::m_hitType2

The hit type of the long cluster in view 2.

Definition at line 50 of file MissingTrackSegmentTool.h.

float lar_content::MissingTrackSegmentTool::Particle::m_longMaxX

The max x coordinate of the long clusters.

Definition at line 54 of file MissingTrackSegmentTool.h.

float lar_content::MissingTrackSegmentTool::Particle::m_longMinX

The min x coordinate of the long clusters.

Definition at line 53 of file MissingTrackSegmentTool.h.

const pandora::Cluster* lar_content::MissingTrackSegmentTool::Particle::m_pCluster1

Address of long cluster in view 1.

Definition at line 46 of file MissingTrackSegmentTool.h.

const pandora::Cluster* lar_content::MissingTrackSegmentTool::Particle::m_pCluster2

Address of long cluster in view 2.

Definition at line 47 of file MissingTrackSegmentTool.h.

const pandora::Cluster* lar_content::MissingTrackSegmentTool::Particle::m_pShortCluster

Address of the short cluster.

Definition at line 45 of file MissingTrackSegmentTool.h.

pandora::HitType lar_content::MissingTrackSegmentTool::Particle::m_shortHitType

The hit type of the short cluster.

Definition at line 48 of file MissingTrackSegmentTool.h.

float lar_content::MissingTrackSegmentTool::Particle::m_shortMaxX

The max x coordinate of the short cluster.

Definition at line 52 of file MissingTrackSegmentTool.h.

float lar_content::MissingTrackSegmentTool::Particle::m_shortMinX

The min x coordinate of the short cluster.

Definition at line 51 of file MissingTrackSegmentTool.h.


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