Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
pandora::FileReader Class Referenceabstract

FileReader class. More...

#include "FileReader.h"

Inheritance diagram for pandora::FileReader:
Collaboration diagram for pandora::FileReader:

Public Member Functions

 FileReader (const pandora::Pandora &pandora, const std::string &fileName)
 Constructor.
 
virtual ~FileReader ()
 Destructor.
 
StatusCode ReadGeometry ()
 Read the current geometry information from the file.
 
StatusCode ReadEvent ()
 Read an entire pandora event from the file, recreating the stored objects.
 
StatusCode GoToNextGeometry ()
 Skip to next geometry container in the file.
 
StatusCode GoToNextEvent ()
 Skip to next event container in the file.
 
virtual StatusCode GoToGeometry (const unsigned int geometryNumber)=0
 Skip to a specified geometry number in the file.
 
virtual StatusCode GoToEvent (const unsigned int eventNumber)=0
 Skip to a specified event number in the file.
 
const std::string & GetFileName () const
 Get the file name.
 
FileType GetFileType () const
 Get the file type.
 
template<typename PARAMETERS , typename OBJECT >
StatusCode SetFactory (ObjectFactory< PARAMETERS, OBJECT > *const pFactory)
 Set the factory to use for all instantiations and parameter persistence.
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::CaloHit::Parameters, object_creation::CaloHit::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Track::Parameters, object_creation::Track::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::MCParticle::Parameters, object_creation::MCParticle::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Geometry::SubDetector::Parameters, object_creation::Geometry::SubDetector::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Geometry::LineGap::Parameters, object_creation::Geometry::LineGap::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Geometry::BoxGap::Parameters, object_creation::Geometry::BoxGap::Object > *const pFactory)
 
template<>
void ReplaceCurrentFactory (ObjectFactory< object_creation::Geometry::ConcentricGap::Parameters, object_creation::Geometry::ConcentricGap::Object > *const pFactory)
 

Protected Member Functions

virtual StatusCode ReadHeader ()=0
 Read the container header from the current position in the file, checking for properly written container.
 
virtual StatusCode GoToNextContainer ()=0
 Skip to next container in the file.
 
virtual ContainerId GetNextContainerId ()=0
 Get the id of the next container in the file without changing the current position in the file.
 
virtual StatusCode ReadNextGeometryComponent ()=0
 Read the next pandora geometry component from the current position in the file, recreating the stored component.
 
virtual StatusCode ReadNextEventComponent ()=0
 Read the next pandora event component from the current position in the file, recreating the stored component.
 
template<typename PARAMETERS , typename OBJECT >
void ReplaceCurrentFactory (ObjectFactory< PARAMETERS, OBJECT > *const pFactory)
 Replace the current factory with the provided instance.
 

Protected Attributes

const Pandora *const m_pPandora
 Address of pandora instance to be used alongside the file writer.
 
std::string m_fileName
 The file name.
 
FileType m_fileType
 The file type.
 
ContainerId m_containerId
 The type of container currently being written to file.
 
ObjectFactory< object_creation::CaloHit::Parameters, object_creation::CaloHit::Object > * m_pCaloHitFactory
 Address of the calo hit factory.
 
ObjectFactory< object_creation::Track::Parameters, object_creation::Track::Object > * m_pTrackFactory
 Address of the track factory.
 
ObjectFactory< object_creation::MCParticle::Parameters, object_creation::MCParticle::Object > * m_pMCParticleFactory
 Address of the mc particle factory.
 
ObjectFactory< object_creation::Geometry::SubDetector::Parameters, object_creation::Geometry::SubDetector::Object > * m_pSubDetectorFactory
 Address of the sub detector factory.
 
ObjectFactory< object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object > * m_pLArTPCFactory
 Address of the lar tpc factory.
 
ObjectFactory< object_creation::Geometry::LineGap::Parameters, object_creation::Geometry::LineGap::Object > * m_pLineGapFactory
 Address of the line gap factory.
 
ObjectFactory< object_creation::Geometry::BoxGap::Parameters, object_creation::Geometry::BoxGap::Object > * m_pBoxGapFactory
 Address of the box gap factory.
 
ObjectFactory< object_creation::Geometry::ConcentricGap::Parameters, object_creation::Geometry::ConcentricGap::Object > * m_pConcentricGapFactory
 Address of the concentric gap factory.
 

Detailed Description

FileReader class.

Definition at line 28 of file FileReader.h.

Constructor & Destructor Documentation

◆ FileReader()

pandora::FileReader::FileReader ( const pandora::Pandora pandora,
const std::string &  fileName 
)

Constructor.

Parameters
pandorathe pandora instance to be used alongside the file reader
fileNamethe name of the file containing the pandora objects

Definition at line 16 of file FileReader.cc.

◆ ~FileReader()

pandora::FileReader::~FileReader ( )
virtual

Destructor.

Definition at line 23 of file FileReader.cc.

Member Function Documentation

◆ GetFileName()

const std::string & pandora::Persistency::GetFileName ( ) const
inlineinherited

Get the file name.

Returns
the file name

Definition at line 90 of file Persistency.h.

◆ GetFileType()

FileType pandora::Persistency::GetFileType ( ) const
inlineinherited

Get the file type.

Returns
the file type

Definition at line 97 of file Persistency.h.

Here is the caller graph for this function:

◆ GetNextContainerId()

virtual ContainerId pandora::FileReader::GetNextContainerId ( )
protectedpure virtual

Get the id of the next container in the file without changing the current position in the file.

Returns
The id of the next container in the file

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ GoToEvent()

virtual StatusCode pandora::FileReader::GoToEvent ( const unsigned int  eventNumber)
pure virtual

Skip to a specified event number in the file.

Parameters
eventNumberthe event number

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ GoToGeometry()

virtual StatusCode pandora::FileReader::GoToGeometry ( const unsigned int  geometryNumber)
pure virtual

Skip to a specified geometry number in the file.

Parameters
geometryNumberthe geometry number

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

◆ GoToNextContainer()

virtual StatusCode pandora::FileReader::GoToNextContainer ( )
protectedpure virtual

Skip to next container in the file.

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ GoToNextEvent()

StatusCode pandora::FileReader::GoToNextEvent ( )

Skip to next event container in the file.

Definition at line 97 of file FileReader.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GoToNextGeometry()

StatusCode pandora::FileReader::GoToNextGeometry ( )

Skip to next geometry container in the file.

Definition at line 84 of file FileReader.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadEvent()

StatusCode pandora::FileReader::ReadEvent ( )

Read an entire pandora event from the file, recreating the stored objects.

Definition at line 58 of file FileReader.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadGeometry()

StatusCode pandora::FileReader::ReadGeometry ( )

Read the current geometry information from the file.

Definition at line 29 of file FileReader.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadHeader()

virtual StatusCode pandora::FileReader::ReadHeader ( )
protectedpure virtual

Read the container header from the current position in the file, checking for properly written container.

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ ReadNextEventComponent()

virtual StatusCode pandora::FileReader::ReadNextEventComponent ( )
protectedpure virtual

Read the next pandora event component from the current position in the file, recreating the stored component.

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ ReadNextGeometryComponent()

virtual StatusCode pandora::FileReader::ReadNextGeometryComponent ( )
protectedpure virtual

Read the next pandora geometry component from the current position in the file, recreating the stored component.

Implemented in pandora::BinaryFileReader, and pandora::XmlFileReader.

Here is the caller graph for this function:

◆ ReplaceCurrentFactory() [1/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::CaloHit::Parameters, object_creation::CaloHit::Object > *const  pFactory)
inherited

Definition at line 61 of file Persistency.cc.

◆ ReplaceCurrentFactory() [2/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Geometry::BoxGap::Parameters, object_creation::Geometry::BoxGap::Object > *const  pFactory)
inherited

Definition at line 103 of file Persistency.cc.

◆ ReplaceCurrentFactory() [3/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Geometry::ConcentricGap::Parameters, object_creation::Geometry::ConcentricGap::Object > *const  pFactory)
inherited

Definition at line 110 of file Persistency.cc.

◆ ReplaceCurrentFactory() [4/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object > *const  pFactory)
inherited

Definition at line 89 of file Persistency.cc.

◆ ReplaceCurrentFactory() [5/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Geometry::LineGap::Parameters, object_creation::Geometry::LineGap::Object > *const  pFactory)
inherited

Definition at line 96 of file Persistency.cc.

◆ ReplaceCurrentFactory() [6/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Geometry::SubDetector::Parameters, object_creation::Geometry::SubDetector::Object > *const  pFactory)
inherited

Definition at line 82 of file Persistency.cc.

◆ ReplaceCurrentFactory() [7/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::MCParticle::Parameters, object_creation::MCParticle::Object > *const  pFactory)
inherited

Definition at line 75 of file Persistency.cc.

◆ ReplaceCurrentFactory() [8/9]

template<>
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< object_creation::Track::Parameters, object_creation::Track::Object > *const  pFactory)
inherited

Definition at line 68 of file Persistency.cc.

◆ ReplaceCurrentFactory() [9/9]

template<typename PARAMETERS , typename OBJECT >
void pandora::Persistency::ReplaceCurrentFactory ( ObjectFactory< PARAMETERS, OBJECT > *const  pFactory)
protectedinherited

Replace the current factory with the provided instance.

Parameters
pFactoryaddress of the factory
Here is the caller graph for this function:

◆ SetFactory()

template<typename PARAMETERS , typename OBJECT >
template StatusCode pandora::Persistency::SetFactory ( ObjectFactory< PARAMETERS, OBJECT > *const  pFactory)
inherited

Set the factory to use for all instantiations and parameter persistence.

Parameters
pFactoryaddress of the factory

Definition at line 49 of file Persistency.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_containerId

ContainerId pandora::Persistency::m_containerId
protectedinherited

The type of container currently being written to file.

Definition at line 76 of file Persistency.h.

◆ m_fileName

std::string pandora::Persistency::m_fileName
protectedinherited

The file name.

Definition at line 74 of file Persistency.h.

◆ m_fileType

FileType pandora::Persistency::m_fileType
protectedinherited

The file type.

Definition at line 75 of file Persistency.h.

◆ m_pBoxGapFactory

Address of the box gap factory.

Definition at line 84 of file Persistency.h.

◆ m_pCaloHitFactory

ObjectFactory<object_creation::CaloHit::Parameters, object_creation::CaloHit::Object>* pandora::Persistency::m_pCaloHitFactory
protectedinherited

Address of the calo hit factory.

Definition at line 78 of file Persistency.h.

◆ m_pConcentricGapFactory

Address of the concentric gap factory.

Definition at line 85 of file Persistency.h.

◆ m_pLArTPCFactory

Address of the lar tpc factory.

Definition at line 82 of file Persistency.h.

◆ m_pLineGapFactory

Address of the line gap factory.

Definition at line 83 of file Persistency.h.

◆ m_pMCParticleFactory

ObjectFactory<object_creation::MCParticle::Parameters, object_creation::MCParticle::Object>* pandora::Persistency::m_pMCParticleFactory
protectedinherited

Address of the mc particle factory.

Definition at line 80 of file Persistency.h.

◆ m_pPandora

const Pandora* const pandora::Persistency::m_pPandora
protectedinherited

Address of pandora instance to be used alongside the file writer.

Definition at line 73 of file Persistency.h.

◆ m_pSubDetectorFactory

Address of the sub detector factory.

Definition at line 81 of file Persistency.h.

◆ m_pTrackFactory

ObjectFactory<object_creation::Track::Parameters, object_creation::Track::Object>* pandora::Persistency::m_pTrackFactory
protectedinherited

Address of the track factory.

Definition at line 79 of file Persistency.h.


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