JAPAn
Just Another Parity Analyzer
|
A helper class to manage a vector of branch entries for ROOT trees. More...
#include <QwRootFile.h>
Data Structures | |
struct | Entry |
Public Types | |
using | size_type = std::size_t |
Public Member Functions | |
QwRootTreeBranchVector ()=default | |
void | reserve (size_type count) |
void | shrink_to_fit () |
void | clear () |
size_type | size () const noexcept |
bool | empty () const noexcept |
template<typename T = uint8_t> | |
const T & | operator[] (size_type index) const |
template<typename T = uint8_t> | |
T & | operator[] (size_type index) |
template<typename T> | |
T & | value (size_type index) |
template<typename T> | |
const T & | value (size_type index) const |
void | SetValue (size_type index, Double_t val) |
void | SetValue (size_type index, Float_t val) |
void | SetValue (size_type index, Int_t val) |
void | SetValue (size_type index, Long64_t val) |
void | SetValue (size_type index, Short_t val) |
void | SetValue (size_type index, UShort_t val) |
void | SetValue (size_type index, UInt_t val) |
void | SetValue (size_type index, ULong64_t val) |
void * | data () noexcept |
const void * | data () const noexcept |
size_type | data_size () const noexcept |
template<typename T> | |
T & | back () |
template<typename T> | |
const T & | back () const |
void | push_back (const std::string &name, const char type='D') |
void | push_back (const TString &name, const char type='D') |
void | push_back (const char *name, const char type='D') |
std::string | LeafList (size_type start_index=0) const |
std::string | Dump (size_type start_index=0, size_type end_index=0) const |
Private Member Functions | |
std::string | FormatValue (const Entry &entry, size_type index) const |
Static Private Member Functions | |
static std::size_t | GetTypeSize (char type) |
static std::size_t | AlignOffset (std::size_t offset) |
template<typename T> | |
static std::string | FormatNumeric (T input) |
Private Attributes | |
std::vector< Entry > | m_entries |
std::vector< std::uint8_t > | m_buffer |
A helper class to manage a vector of branch entries for ROOT trees.
This class provides functionality to manage a collection of branch entries, including their names, types, offsets, and sizes. It supports adding new entries, accessing entries by index or name, and generating leaf lists for ROOT trees.
Definition at line 53 of file QwRootFile.h.
using QwRootTreeBranchVector::size_type = std::size_t |
Definition at line 62 of file QwRootFile.h.
|
default |
|
inlinestaticprivate |
Definition at line 318 of file QwRootFile.h.
Referenced by push_back().
|
inline |
Definition at line 178 of file QwRootFile.h.
References m_buffer, and m_entries.
Referenced by QwHelicity::ConstructBranchAndVector(), and QwSubsystemArrayParity::ConstructBranchAndVector().
|
inline |
Definition at line 187 of file QwRootFile.h.
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
Definition at line 243 of file QwRootFile.h.
References FormatValue(), GetTypeSize(), m_buffer, and m_entries.
|
inlinenoexcept |
|
inlinestaticprivate |
Definition at line 350 of file QwRootFile.h.
Referenced by FormatValue().
|
inlineprivate |
Definition at line 326 of file QwRootFile.h.
References FormatNumeric(), QwRootTreeBranchVector::Entry::type, and value().
Referenced by Dump().
|
inlinestaticprivate |
Definition at line 295 of file QwRootFile.h.
Referenced by Dump(), and push_back().
|
inline |
Definition at line 228 of file QwRootFile.h.
References m_entries.
Referenced by QwADC18_Channel::ConstructBranchAndVector(), QwBeamMod::ConstructBranchAndVector(), QwEPICSEvent::ConstructBranchAndVector(), QwMollerADC_Channel::ConstructBranchAndVector(), QwPMT_Channel::ConstructBranchAndVector(), and QwVQWK_Channel::ConstructBranchAndVector().
|
inline |
Definition at line 90 of file QwRootFile.h.
References value().
|
inline |
Definition at line 85 of file QwRootFile.h.
References value().
|
inline |
Definition at line 224 of file QwRootFile.h.
References push_back().
|
inline |
Definition at line 195 of file QwRootFile.h.
References AlignOffset(), GetTypeSize(), m_buffer, and m_entries.
Referenced by QwADC18_Channel::ConstructBranchAndVector(), QwBeamMod::ConstructBranchAndVector(), QwEPICSEvent::ConstructBranchAndVector(), QwHelicity::ConstructBranchAndVector(), QwMollerADC_Channel::ConstructBranchAndVector(), QwPMT_Channel::ConstructBranchAndVector(), QwScaler_Channel< data_mask, data_shift >::ConstructBranchAndVector(), QwSubsystemArray::ConstructBranchAndVector(), QwSubsystemArrayParity::ConstructBranchAndVector(), QwVQWK_Channel::ConstructBranchAndVector(), push_back(), and push_back().
|
inline |
Definition at line 219 of file QwRootFile.h.
References push_back().
|
inline |
|
inline |
Definition at line 108 of file QwRootFile.h.
References m_entries, and value().
Referenced by QwADC18_Channel::FillTreeVector(), QwBeamMod::FillTreeVector(), QwEPICSEvent::FillTreeVector(), QwHelicity::FillTreeVector(), QwMollerADC_Channel::FillTreeVector(), QwPMT_Channel::FillTreeVector(), QwScaler_Channel< data_mask, data_shift >::FillTreeVector(), QwSubsystemArray::FillTreeVector(), QwSubsystemArrayParity::FillTreeVector(), and QwVQWK_Channel::FillTreeVector().
|
inline |
Definition at line 116 of file QwRootFile.h.
References m_entries, and value().
|
inline |
Definition at line 124 of file QwRootFile.h.
References m_entries, and value().
|
inline |
Definition at line 132 of file QwRootFile.h.
References m_entries, and value().
|
inline |
Definition at line 140 of file QwRootFile.h.
References m_entries, and value().
|
inline |
Definition at line 157 of file QwRootFile.h.
References m_entries, and value().
Definition at line 165 of file QwRootFile.h.
References m_entries, and value().
|
inline |
Definition at line 149 of file QwRootFile.h.
References m_entries, and value().
|
inline |
|
inlinenoexcept |
Definition at line 81 of file QwRootFile.h.
References m_entries.
Referenced by QwADC18_Channel::ConstructBranchAndVector(), QwBeamMod::ConstructBranchAndVector(), QwEPICSEvent::ConstructBranchAndVector(), QwHelicity::ConstructBranchAndVector(), QwMollerADC_Channel::ConstructBranchAndVector(), QwPMT_Channel::ConstructBranchAndVector(), QwScaler_Channel< data_mask, data_shift >::ConstructBranchAndVector(), QwSubsystemArray::ConstructBranchAndVector(), QwSubsystemArrayParity::ConstructBranchAndVector(), QwVQWK_Channel::ConstructBranchAndVector(), QwADC18_Channel::FillTreeVector(), QwMollerADC_Channel::FillTreeVector(), QwPMT_Channel::FillTreeVector(), QwScaler_Channel< data_mask, data_shift >::FillTreeVector(), QwSubsystemArrayParity::FillTreeVector(), and QwVQWK_Channel::FillTreeVector().
|
inline |
Definition at line 95 of file QwRootFile.h.
References m_buffer, and m_entries.
Referenced by FormatValue(), operator[](), operator[](), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), and SetValue().
|
inline |
|
private |
Definition at line 324 of file QwRootFile.h.
Referenced by back(), back(), clear(), data(), data(), data_size(), Dump(), push_back(), reserve(), shrink_to_fit(), value(), and value().
|
private |
Definition at line 323 of file QwRootFile.h.
Referenced by back(), back(), clear(), Dump(), empty(), LeafList(), push_back(), reserve(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), SetValue(), shrink_to_fit(), size(), value(), and value().