evio
5.2
|
Creates bank index for serialized event. More...
#include <evioBankIndex.hxx>
Public Member Functions | |
evioBankIndex (int maxDepth=0) | |
Constructor. More... | |
evioBankIndex (const uint32_t *buffer, int maxDepth=0) | |
Constructor from buffer. More... | |
virtual | ~evioBankIndex () |
Destructor. More... | |
bool | parseBuffer (const uint32_t *buffer, int maxDepth) |
Indexes buffer and fills map. More... | |
bool | tagNumExists (const evioDictEntry &tn) const |
True if evioDictEntry is in map at least once. More... | |
int | tagNumCount (const evioDictEntry &tn) const |
Returns count of evioDictEntry in map. More... | |
bankIndexRange | getRange (const evioDictEntry &tn) const |
Returns pair of iterators defining range of equal keys in tagNumMap. More... | |
bankIndex | getBankIndex (const evioDictEntry &tn) const throw (evioException) |
Returns bankIndex given evioDictEntry, throws exception if no entry found. More... | |
int | getMaxDepth () |
template<typename T > | |
const T * | getData (const evioDictEntry &tn, int *pLen) throw (evioException) |
Returns length and pointer to data, NULL if container bank, bad evioDictEntry or wrong data type. More... | |
template<typename T > | |
const T * | getData (const bankIndex &bi, int *pLen) throw (evioException) |
Returns length and pointer to data, assumes valid bankIndex. More... | |
Public Attributes | |
bankIndexMap | tagNumMap |
Holds index to one or more banks having tag/num. More... | |
Creates bank index for serialized event.
Note that a given tag/num may appear more than once in event and map.
evioBankIndex::evioBankIndex | ( | int | maxDepth = 0 | ) |
Constructor.
evioBankIndex::evioBankIndex | ( | const uint32_t * | buffer, |
int | maxDepth = 0 |
||
) |
|
virtual |
Destructor.
bankIndex evioBankIndex::getBankIndex | ( | const evioDictEntry & | tn | ) | const |
throw | ( | evioException | |||
) |
Returns bankIndex given evioDictEntry, throws exception if no entry found.
tn | evioDictEntry |
|
inline |
Returns length and pointer to data, NULL if container bank, bad evioDictEntry or wrong data type.
tn | evioDictEntry |
pLen | Pointer to int to receive data length, set to 0 upon error |
|
inline |
int evio::evioBankIndex::getMaxDepth | ( | ) |
bankIndexRange evioBankIndex::getRange | ( | const evioDictEntry & | tn | ) | const |
Returns pair of iterators defining range of equal keys in tagNumMap.
tn | evioDictEntry |
References tagNumMap.
bool evioBankIndex::parseBuffer | ( | const uint32_t * | buffer, |
int | maxDepth | ||
) |
Indexes buffer and fills map.
buffer | Buffer containing serialized event |
References evio::evioStreamParser::parse().
Referenced by evioBankIndex().
int evioBankIndex::tagNumCount | ( | const evioDictEntry & | tn | ) | const |
Returns count of evioDictEntry in map.
tn | evioDictEntry |
References tagNumMap.
bool evioBankIndex::tagNumExists | ( | const evioDictEntry & | tn | ) | const |
True if evioDictEntry is in map at least once.
tn | evioDictEntry |
References tagNumMap.
bankIndexMap evio::evioBankIndex::tagNumMap |
Holds index to one or more banks having tag/num.
Referenced by getRange(), tagNumCount(), and tagNumExists().