HerdSoftware  0.3.2
Public Member Functions | Private Attributes | List of all members
Herd::CaloShower Struct Reference

Container of information about the Calorimeter Shower . More...

#include <dataobjects/CaloShower.h>

Public Member Functions

 CaloShower ()
 Default constructor. More...
 
 CaloShower (Herd::CaloHits caloHits, Line showerAxis, Point showerStart, float energyThreshold, const CaloGeoParams &geoParams)
 Constructor from a collection of hits, a Line, starting point and threshold. More...
 
virtual ~CaloShower ()=default
 Virtual destructor. More...
 
float ShowerStartLongitudinalDepth (const CaloGeoParams &geoParams) const
 Return depth in CALO of the shower starting point. More...
 
Point StartingPoint () const
 position (Point) of the reconstructed interaction point. More...
 
Line ShowerAxis () const
 Return the Line used as ShowerAxis in the Shower Analysis. More...
 
const Herd::CaloHitsCaloHits () const
 Return the collection of Hits used in the Shower Analysis. More...
 
float Edep () const
 Return the total energy deposited in the shower. More...
 
float MaxHitEdep () const
 Return the energy deposit in the hit which contain the maximum energy deposit. More...
 
float MaxHitOnAxisLongitudinalDepth (const CaloGeoParams &geoParams) const
 Return depth in CALO of the hit with the maximum energy deposition along the shower axis. More...
 
Point MaxHitOnAxisPosition () const
 Return the position of the projection on the axis of the hit containing the maximum signal. Only hits above threshold are considered. If no hit above threshold exists then defaultValue<Point> is returned. More...
 
size_t CaloClusterIndex () const
 Returns the index of the hits cluster used to build the axis. More...
 
const std::string & CaloDataObjName () const
 Returns the name of the CALO data object used to build the shower. More...
 
size_t TrackIndex () const
 Returns the index of the track object used to build the shower. More...
 
const std::string & TrackDataObjName () const
 Returns the name of the track data object used to build the shower. More...
 
void SetCaloClusterIndex (size_t index)
 Sets the index of the CALO hits cluster used to build the shower. More...
 
void SetCaloDataObjName (std::string name)
 Sets the name of the CALO data object from which the cluster used to build the shower was taken. More...
 
void SetTrackIndex (size_t index)
 Sets the index of the Track used to build the shower. More...
 
void SetTrackDataObjName (std::string name)
 Sets the name of the track data object from which the Track used to build the shower was taken. More...
 

Private Attributes

float m_edep
 
Point m_startingPoint
 
float m_maxHitEdep
 
Point m_maxHitOnAxis
 
Herd::CaloHits m_caloHits
 
Line m_showerAxis
 
size_t m_caloClustersIndex
 
std::string m_caloDataObjName {}
 
size_t m_trackIndex
 
std::string m_trackDataObjName {}
 
float m_energyThreshold
 

Detailed Description

Container of information about the Calorimeter Shower .

This container contains the information produced by the Calorimeter Shower reconstruction relative to a given Axis. Calculates several momenta of the shower energy distribution and evaluate the position of the interaction Point if any.

Constructor & Destructor Documentation

◆ CaloShower() [1/2]

Herd::CaloShower::CaloShower ( )

Default constructor.

Creates a default-initialized CaloShower

◆ CaloShower() [2/2]

Herd::CaloShower::CaloShower ( Herd::CaloHits  caloHits,
Line  showerAxis,
Point  showerStart,
float  energyThreshold,
const CaloGeoParams geoParams 
)

Constructor from a collection of hits, a Line, starting point and threshold.

Creates a CaloShower starting from a collection of hits and a given Line showerAxis. The threshold used by the reconstruction algorithm, if any, is stored in the CaloShower object for reference.

Parameters
caloHitsThe hits cluster.
showerAxisThe given Line of the showerAxis
energyThresholdThe cut value for the hits.

◆ ~CaloShower()

virtual Herd::CaloShower::~CaloShower ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ CaloClusterIndex()

size_t Herd::CaloShower::CaloClusterIndex ( ) const
inline

Returns the index of the hits cluster used to build the axis.

This method returns the index of the cluster in the cluster collection. If this value was not set then defaltValue<size_t> will be returned, so before using it the check:

size_t clusterID = shower->CaloClusterIndex(); if (clusterID != defaltValue<size_t>) { . . .

must be performed. Usually clusterID == defaltValue<size_t> means that the shower was not reconstructed using a CaloCluster object and that the full CALO was used.

Returns
The index of the cluster in the clusters collection.

◆ CaloDataObjName()

const std::string& Herd::CaloShower::CaloDataObjName ( ) const
inline

Returns the name of the CALO data object used to build the shower.

This method returns the name of the CALO data object used to reconstruct this shower; this can be the name of the CALO hits object if the full CALO has been used or the name of the CALO clusters collection. If this value was not set then an empty string will be returned, so before using it the check:

std::string caloObjName = shower->CaloDataObjName(); if (caloObjName != "") { . . .

must be performed. Usually caloObjName == "" is an error, meaning that the algorithm that produced the shower object didn't set the CALO object name.

Returns
The name of the clusters collection.

◆ CaloHits()

const Herd::CaloHits& Herd::CaloShower::CaloHits ( ) const
inline

Return the collection of Hits used in the Shower Analysis.

◆ Edep()

float Herd::CaloShower::Edep ( ) const
inline

Return the total energy deposited in the shower.

Only hits above threshold are considered. If no hit above threshold exists then defaultValue<float> is returned.

Returns
The total energy deposit in the shower (GeV).

◆ MaxHitEdep()

float Herd::CaloShower::MaxHitEdep ( ) const
inline

Return the energy deposit in the hit which contain the maximum energy deposit.

Only hits above threshold are considered. If no hit above threshold exists then defaultValue<float> is returned.

Returns
The maximum energy deposit in a single cube (GeV).

◆ MaxHitOnAxisLongitudinalDepth()

float Herd::CaloShower::MaxHitOnAxisLongitudinalDepth ( const CaloGeoParams geoParams) const

Return depth in CALO of the hit with the maximum energy deposition along the shower axis.

Only hits above threshold are considered. If no hit above threshold exists then defaultValue<Point> is returned.

Parameters
geoParamsthe CALO geo params, used to compute the entrance point
Returns
The depth (in cm) of the shower most energetic hit, along the shower axis

◆ MaxHitOnAxisPosition()

Point Herd::CaloShower::MaxHitOnAxisPosition ( ) const
inline

Return the position of the projection on the axis of the hit containing the maximum signal. Only hits above threshold are considered. If no hit above threshold exists then defaultValue<Point> is returned.

Returns
The projection of the position of the maximum hit on the axis (cm).

◆ SetCaloClusterIndex()

void Herd::CaloShower::SetCaloClusterIndex ( size_t  index)
inline

Sets the index of the CALO hits cluster used to build the shower.

Parameters
indexThe index of the cluster in the CALO clusters collection.

◆ SetCaloDataObjName()

void Herd::CaloShower::SetCaloDataObjName ( std::string  name)
inline

Sets the name of the CALO data object from which the cluster used to build the shower was taken.

The name can be either that of the CALO hits object (if the full CALO has been used) or of the CALO clusters object; in the latter case it is appropriate to call also #SetClusterIndex.

Parameters
nameThe name of the clusters collection.

◆ SetTrackDataObjName()

void Herd::CaloShower::SetTrackDataObjName ( std::string  name)
inline

Sets the name of the track data object from which the Track used to build the shower was taken.

The name can be either that of the MCTruth collection or of the Track collection; in both cases it is appropriate to call also #SetClusterIndex.

Parameters
nameThe name of the clusters collection.

◆ SetTrackIndex()

void Herd::CaloShower::SetTrackIndex ( size_t  index)
inline

Sets the index of the Track used to build the shower.

Parameters
indexThe index of the track in the Track or MCTruth collection.

◆ ShowerAxis()

Line Herd::CaloShower::ShowerAxis ( ) const
inline

Return the Line used as ShowerAxis in the Shower Analysis.

◆ ShowerStartLongitudinalDepth()

float Herd::CaloShower::ShowerStartLongitudinalDepth ( const CaloGeoParams geoParams) const

Return depth in CALO of the shower starting point.

Parameters
geoParamsthe CALO geo params, used to compute the entrance point
Returns
The depth (in cm) of the shower starting point

◆ StartingPoint()

Point Herd::CaloShower::StartingPoint ( ) const
inline

position (Point) of the reconstructed interaction point.

◆ TrackDataObjName()

const std::string& Herd::CaloShower::TrackDataObjName ( ) const
inline

Returns the name of the track data object used to build the shower.

This method returns the name of the track data object used to reconstruct this shower; this can be the name of the Track collection or the name of the MCTruth collection.

Returns
The name of the tracks collection.

◆ TrackIndex()

size_t Herd::CaloShower::TrackIndex ( ) const
inline

Returns the index of the track object used to build the shower.

This method returns the index of the track in the track collection defined by TrackDataObjName.

Returns
The index of the track in the tracks collection.

Member Data Documentation

◆ m_caloClustersIndex

size_t Herd::CaloShower::m_caloClustersIndex
private

◆ m_caloDataObjName

std::string Herd::CaloShower::m_caloDataObjName {}
private

◆ m_caloHits

Herd::CaloHits Herd::CaloShower::m_caloHits
private

◆ m_edep

float Herd::CaloShower::m_edep
private

◆ m_energyThreshold

float Herd::CaloShower::m_energyThreshold
private

◆ m_maxHitEdep

float Herd::CaloShower::m_maxHitEdep
private

◆ m_maxHitOnAxis

Point Herd::CaloShower::m_maxHitOnAxis
private

◆ m_showerAxis

Line Herd::CaloShower::m_showerAxis
private

◆ m_startingPoint

Point Herd::CaloShower::m_startingPoint
private

◆ m_trackDataObjName

std::string Herd::CaloShower::m_trackDataObjName {}
private

◆ m_trackIndex

size_t Herd::CaloShower::m_trackIndex
private

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