File SIOFrameReader.h
-
namespace podio
-
class SIOFrameReader
- #include <podio/SIOFrameReader.h>
Public Functions
-
SIOFrameReader()
-
~SIOFrameReader() = default
-
SIOFrameReader(const SIOFrameReader&) = delete
-
SIOFrameReader &operator=(const SIOFrameReader&) = delete
-
std::unique_ptr<podio::SIOFrameData> readNextEntry(const std::string &name)
Read the next data entry from which a Frame can be constructed for the given name.
In case there are no more entries left for this name or in case there is no data for this name, this returns a nullptr.
-
std::unique_ptr<podio::SIOFrameData> readEntry(const std::string &name, const unsigned entry)
Read the specified data entry from which a Frame can be constructed for the given name.
In case the entry does not exist for this name or in case there is no data for this name, this returns a nullptr.
-
unsigned getEntries(const std::string &name) const
Returns number of entries for the given name.
-
void openFile(const std::string &filename)
-
inline podio::version::Version currentFileVersion() const
Get the build version of podio that has been used to write the current file.
-
std::vector<std::string_view> getAvailableCategories() const
Get the names of all the available Frame categories in the current file(s)
-
inline const std::string_view getDatamodelDefinition(const std::string &name) const
Get the datamodel definition for the given name.
-
inline std::vector<std::string> getAvailableDatamodels() const
Get all names of the datamodels that ara available from this reader.
Private Functions
-
void readPodioHeader()
-
bool readFileTOCRecord()
read the TOC record
-
void readEDMDefinitions()
Private Members
-
std::unordered_map<std::string, unsigned> m_nameCtr = {}
Count how many times each an entry of this name has been read already.
-
SIOFileTOCRecord m_tocRecord = {}
Table of content record where starting points of named entries can be read from.
-
podio::version::Version m_fileVersion = {0}
The podio version that has been used to write the file.
-
DatamodelDefinitionHolder m_datamodelHolder = {}
-
SIOFrameReader()
-
class SIOFrameReader