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

PsdHits reader class. More...

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

Classes

struct  PsdIDVolInfo
 

Public Member Functions

 GGSPsdHitsReader (std::shared_ptr< GGSTRootReader > ggsReader)
 Constructor. More...
 
bool IsPsdHitsCollAvailable ()
 Checks if PSD hits are available. More...
 
EA::RetrievalResult GetPsdHitsColl (EA::ObjectWrapper &wrapper)
 Checks if PSD particle hits are available in the simulation file. More...
 
bool IsPsdParticleHitsCollAvailable ()
 Checks if PSD particle hits are available in the simulation file. More...
 
EA::RetrievalResult GetPsdParticleHitsColl (EA::ObjectWrapper &wrapper)
 Get the PSD Particle Hits. More...
 
std::vector< std::string > FreeObjects (const std::vector< std::string > &objs, EA::Memory::Status memStatus)
 
void SetPsdGeoParamsColl (EA::observer_ptr< PsdGeoParamsColl > psdGeoParamsColl)
 Set the reference for the PSD geometric parameters. More...
 
void SetFileName (const std::string &fileName)
 Set the name of the input file. More...
 

Private Member Functions

std::pair< unsigned, unsigned > getLayerAndLayerID (RefFrame::Side side, int GGSPsdID)
 
bool SetupPsdReadout (bool getParticleHits)
 
PsdIDVolInfo SidePsdHitIDLayerSideFromGGSID (int iGGSPsdID, int evenOddIndex)
 

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()
 
bool m_readPsdParticleHits = false
 
bool m_pre04 = false
 
std::vector< int > m_nElemPerLayer
 
std::vector< int > m_nElemPerSide
 
EA::observer_ptr< PsdGeoParamsCollm_psdGeoParamsColl = nullptr
 
std::vector< int > m_topPsdDetIndexes
 
std::vector< int > m_sidePsdDetIndexes
 
bool m_setupToBeDone = true
 
PsdHitsColl m_psdHitsColl
 
PsdParticleHitsColl m_psdParticleHitsColl
 
std::string m_fileName
 

Detailed Description

PsdHits reader class.

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

Constructor & Destructor Documentation

◆ GGSPsdHitsReader()

Herd::Readers::GGSPsdHitsReader::GGSPsdHitsReader ( std::shared_ptr< GGSTRootReader >  ggsReader)
explicit

Constructor.

Parameters
ggsReaderShared pointer to the GGS reader instance.

Member Function Documentation

◆ FreeObjects()

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

◆ getLayerAndLayerID()

std::pair<unsigned, unsigned> Herd::Readers::GGSPsdHitsReader::getLayerAndLayerID ( RefFrame::Side  side,
int  GGSPsdID 
)
private

◆ GetPsdHitsColl()

EA::RetrievalResult Herd::Readers::GGSPsdHitsReader::GetPsdHitsColl ( EA::ObjectWrapper &  wrapper)

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

Check the GGS reader for the presence of PSD particle hits

Returns
true
false

◆ GetPsdParticleHitsColl()

EA::RetrievalResult Herd::Readers::GGSPsdHitsReader::GetPsdParticleHitsColl ( EA::ObjectWrapper &  wrapper)

Get the PSD Particle Hits.

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

◆ IsPsdHitsCollAvailable()

bool Herd::Readers::GGSPsdHitsReader::IsPsdHitsCollAvailable ( )

Checks if PSD hits are available.

Returns
true if PSD hits are available, false otherwise.

◆ IsPsdParticleHitsCollAvailable()

bool Herd::Readers::GGSPsdHitsReader::IsPsdParticleHitsCollAvailable ( )

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

Check the GGS reader for the presence of PSD particle hits

Returns
true
false

◆ SetFileName()

void Herd::Readers::GGSPsdHitsReader::SetFileName ( const std::string &  fileName)
inline

Set the name of the input file.

Parameters
fileName

◆ SetPsdGeoParamsColl()

void Herd::Readers::GGSPsdHitsReader::SetPsdGeoParamsColl ( EA::observer_ptr< PsdGeoParamsColl psdGeoParamsColl)

Set the reference for the PSD geometric parameters.

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

Parameters
psdGeoParamsCollan observer_ptr to the geoparams collection.

◆ SetupPsdReadout()

bool Herd::Readers::GGSPsdHitsReader::SetupPsdReadout ( bool  getParticleHits)
private

◆ SidePsdHitIDLayerSideFromGGSID()

GGSPsdHitsReader::PsdIDVolInfo Herd::Readers::GGSPsdHitsReader::SidePsdHitIDLayerSideFromGGSID ( int  iGGSPsdID,
int  evenOddIndex 
)
private

Member Data Documentation

◆ m_fileName

std::string Herd::Readers::GGSPsdHitsReader::m_fileName
private

◆ m_ggsReader

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

◆ m_hitReader

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

◆ m_lastHitsReadEvent

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

◆ m_lastPartHitsReadEvent

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

◆ m_nElemPerLayer

std::vector<int> Herd::Readers::GGSPsdHitsReader::m_nElemPerLayer
private

◆ m_nElemPerSide

std::vector<int> Herd::Readers::GGSPsdHitsReader::m_nElemPerSide
private

◆ m_pre04

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

◆ m_psdGeoParamsColl

EA::observer_ptr<PsdGeoParamsColl> Herd::Readers::GGSPsdHitsReader::m_psdGeoParamsColl = nullptr
private

◆ m_psdHitsColl

PsdHitsColl Herd::Readers::GGSPsdHitsReader::m_psdHitsColl
private

◆ m_psdParticleHitsColl

PsdParticleHitsColl Herd::Readers::GGSPsdHitsReader::m_psdParticleHitsColl
private

◆ m_readPsdParticleHits

bool Herd::Readers::GGSPsdHitsReader::m_readPsdParticleHits = false
private

◆ m_setupToBeDone

bool Herd::Readers::GGSPsdHitsReader::m_setupToBeDone = true
private

◆ m_sidePsdDetIndexes

std::vector<int> Herd::Readers::GGSPsdHitsReader::m_sidePsdDetIndexes
private

◆ m_topPsdDetIndexes

std::vector<int> Herd::Readers::GGSPsdHitsReader::m_topPsdDetIndexes
private

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