HerdSoftware  0.4.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Herd::Readers::GGSFitHitsReader Class Reference

CaloHits reader class. More...

#include <dataproviders/readers/event/GGSFitHitsReader.h>

Public Member Functions

 GGSFitHitsReader (std::shared_ptr< GGSTRootReader > ggsReader)
 
bool IsFitHitsCollAvailable ()
 Checks if FIT hits are available in the simulation file. More...
 
EA::RetrievalResult GetFitHitsColl (EA::ObjectWrapper &wrapper)
 Get the FIT Hits. More...
 
bool IsFitParticleHitsCollAvailable ()
 Checks if FIT particle hits are available in the simulation file. More...
 
EA::RetrievalResult GetFitParticleHitsColl (EA::ObjectWrapper &wrapper)
 Get the FIT Particle Hits. More...
 
std::vector< std::string > FreeObjects (const std::vector< std::string > &objs, EA::Memory::Status memStatus)
 Free the memory of unneeded objects. More...
 
void SetFitGeoParamsColl (EA::observer_ptr< FitGeoParamsColl > fitGeoParamsColl)
 Set the reference for the FIT geometric parameters. More...
 
void SetSideDetectorFirstVolumeID (std::array< int, 4 > sideFitFirstVolumeID)
 Set the GGS volID of the first wafer for each side FIT detector. More...
 

Private Member Functions

bool SetupFitReadout ()
 
EA::RetrievalResult GetHitsHelper (EA::ObjectWrapper &wrapper, bool intHits)
 

Private Attributes

std::shared_ptr< GGSTRootReader > m_ggsReader
 
GGSTHitsReader * m_hitReader = nullptr
 
long long int m_lastHitsReadEvent = std::numeric_limits<long long int>::max()
 
long long int m_lastPartHitsReadEvent = std::numeric_limits<long long int>::max()
 
EA::observer_ptr< FitGeoParamsCollm_fitGeoParamsColl = nullptr
 
std::array< int, 2 > m_topFitDetIndex = {std::numeric_limits<int>::lowest(), std::numeric_limits<int>::lowest()}
 
std::array< int, 2 > m_sideFitDetIndex = {std::numeric_limits<int>::lowest(), std::numeric_limits<int>::lowest()}
 
std::array< int, 4 > m_sideFitFirstVolumeID {}
 
FitHitsColl m_fitHitsColl
 
FitParticleHitsColl m_fitParticleHitsColl
 
bool m_pre04 = false
 

Detailed Description

CaloHits reader class.

Class for reading the CaloHits object from a GGS simulation file.

Constructor & Destructor Documentation

◆ GGSFitHitsReader()

Herd::Readers::GGSFitHitsReader::GGSFitHitsReader ( std::shared_ptr< GGSTRootReader >  ggsReader)
inlineexplicit

Member Function Documentation

◆ FreeObjects()

std::vector< std::string > Herd::Readers::GGSFitHitsReader::FreeObjects ( const std::vector< std::string > &  objs,
EA::Memory::Status  memStatus 
)

Free the memory of unneeded objects.

Currently this method frees the memory of the provided objects if memStatus is EXHAUSTED. This reader frees the following objects:

  • fitLayerHitsCollGGS
  • fitParticleHitsCollGGS
Parameters
objsThe list of objects to be freed.
memStatusThe current memory occupation status.
Returns
a list of freed objects.

◆ GetFitHitsColl()

EA::RetrievalResult Herd::Readers::GGSFitHitsReader::GetFitHitsColl ( EA::ObjectWrapper &  wrapper)
inline

Get the FIT Hits.

Parameters
wrapperA wrapper to the FitHitsColl object
Returns
RetrievalResult The result of the operation (SUCCESS or ERROR)

◆ GetFitParticleHitsColl()

EA::RetrievalResult Herd::Readers::GGSFitHitsReader::GetFitParticleHitsColl ( EA::ObjectWrapper &  wrapper)
inline

Get the FIT Particle Hits.

Parameters
wrapperA wrapper to the FitParticleHitsColl object
Returns
EA::RetrievalResult The result of the operation (SUCCESS or ERROR)

◆ GetHitsHelper()

EA::RetrievalResult Herd::Readers::GGSFitHitsReader::GetHitsHelper ( EA::ObjectWrapper &  wrapper,
bool  intHits 
)
private

◆ IsFitHitsCollAvailable()

bool Herd::Readers::GGSFitHitsReader::IsFitHitsCollAvailable ( )

Checks if FIT hits are available in the simulation file.

Check the GGS reader for the presence of FIT hits

Returns
true
false

◆ IsFitParticleHitsCollAvailable()

bool Herd::Readers::GGSFitHitsReader::IsFitParticleHitsCollAvailable ( )

Checks if FIT particle hits are available in the simulation file.

Check the GGS reader for the presence of FIT particle hits

Returns
true
false

◆ SetFitGeoParamsColl()

void Herd::Readers::GGSFitHitsReader::SetFitGeoParamsColl ( EA::observer_ptr< FitGeoParamsColl fitGeoParamsColl)

Set the reference for the FIT geometric parameters.

Sets the FIT geometric parameters to be used for GGSID -> VolumeID conversion.

Parameters
fitGeoParamsCollan observer_ptr to the geoparams collection.

◆ SetSideDetectorFirstVolumeID()

void Herd::Readers::GGSFitHitsReader::SetSideDetectorFirstVolumeID ( std::array< int, 4 >  sideFitFirstVolumeID)
inline

Set the GGS volID of the first wafer for each side FIT detector.

Parameters
sideFitFirstVolumeIDan array containing the first GGS volumeID for side FIT layers.

◆ SetupFitReadout()

bool Herd::Readers::GGSFitHitsReader::SetupFitReadout ( )
private

Member Data Documentation

◆ m_fitGeoParamsColl

EA::observer_ptr<FitGeoParamsColl> Herd::Readers::GGSFitHitsReader::m_fitGeoParamsColl = nullptr
private

◆ m_fitHitsColl

FitHitsColl Herd::Readers::GGSFitHitsReader::m_fitHitsColl
private

◆ m_fitParticleHitsColl

FitParticleHitsColl Herd::Readers::GGSFitHitsReader::m_fitParticleHitsColl
private

◆ m_ggsReader

std::shared_ptr<GGSTRootReader> Herd::Readers::GGSFitHitsReader::m_ggsReader
private

◆ m_hitReader

GGSTHitsReader* Herd::Readers::GGSFitHitsReader::m_hitReader = nullptr
private

◆ m_lastHitsReadEvent

long long int Herd::Readers::GGSFitHitsReader::m_lastHitsReadEvent = std::numeric_limits<long long int>::max()
private

◆ m_lastPartHitsReadEvent

long long int Herd::Readers::GGSFitHitsReader::m_lastPartHitsReadEvent = std::numeric_limits<long long int>::max()
private

◆ m_pre04

bool Herd::Readers::GGSFitHitsReader::m_pre04 = false
private

◆ m_sideFitDetIndex

std::array<int, 2> Herd::Readers::GGSFitHitsReader::m_sideFitDetIndex = {std::numeric_limits<int>::lowest(), std::numeric_limits<int>::lowest()}
private

◆ m_sideFitFirstVolumeID

std::array<int, 4> Herd::Readers::GGSFitHitsReader::m_sideFitFirstVolumeID {}
private

◆ m_topFitDetIndex

std::array<int, 2> Herd::Readers::GGSFitHitsReader::m_topFitDetIndex = {std::numeric_limits<int>::lowest(), std::numeric_limits<int>::lowest()}
private

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