PODIO v00-16-03
An Event-Data-Model Toolkit for High Energy Physics Experiments
|
Namespaces | |
namespace | benchmark |
namespace | detail |
namespace | root_utils |
namespace | sio_helpers |
namespace | sio_utils |
namespace | version |
Typedefs | |
typedef std::map< std::string, ColWriterBase * > | FunMap |
template<typename T > | |
using | UVecPtr = std::unique_ptr< std::vector< T > > |
using | CollRefCollection = std::vector< UVecPtr< podio::ObjectID > > |
using | VectorMembersInfo = std::vector< std::pair< std::string, void * > > |
typedef std::map< int, GenericParameters > | RunMDMap |
typedef std::map< int, GenericParameters > | ColMDMap |
template<typename T > | |
using | EnableIfCollection = typename std::enable_if_t< isCollection< T > > |
Alias template for enabling overloads only for Collections. | |
template<typename T > | |
using | EnableIfCollectionRValue = typename std::enable_if_t< isCollection< T > &&!std::is_lvalue_reference_v< T > > |
Alias template for enabling overloads only for Collection r-values. | |
template<typename T > | |
using | EnableIfRValue = typename std::enable_if_t<!std ::is_lvalue_reference_v< T > > |
Alias template for enabling overloads for r-values. | |
using | SupportedGenericDataTypes = std::tuple< int, float, std::string, double > |
The types which are supported in the GenericParameters. | |
template<typename T > | |
using | EnableIfValidGenericDataType = typename std::enable_if_t< isSupportedGenericDataType< T > > |
template<typename T > | |
using | GenericDataReturnType = typename detail::GenericDataReturnTypeHelper< T >::type |
typedef std::vector< int > | IntVec |
typedef std::vector< float > | FloatVec |
typedef std::vector< std::string > | StringVec |
using | SupportedUserDataTypes = std::tuple< float, double, int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t > |
template<typename T > | |
using | EnableIfSupportedUserType = std::enable_if_t< detail::isInTuple< T, SupportedUserDataTypes > > |
Functions | |
template<typename FrameDataT > | |
std::optional< podio::CollectionReadBuffers > | unpack (FrameDataT *data, const std::string &name) |
template<typename devT , typename PODData > | |
void | handlePODDataSIO (devT &device, PODData *data, size_t size) |
template<typename MapLikeT > | |
void | writeMapLike (sio::write_device &device, const MapLikeT &map) |
Write anything that iterates like an std::map. | |
template<typename MapLikeT > | |
void | readMapLike (sio::read_device &device, MapLikeT &map) |
Read anything that iterates like an std::map. | |
template<typename BasicType , typename = EnableIfSupportedUserType<BasicType>> | |
constexpr const char * | userDataTypeName () |
template<typename BasicType , typename = EnableIfSupportedUserType<BasicType>> | |
std::ostream & | operator<< (std::ostream &o, const podio::UserDataCollection< BasicType > &coll) |
std::unique_ptr< podio::IReader > | createReader (const std::string &filename) |
template<typename T > | |
std::ostream & | operator<< (std::ostream &os, const std::vector< T > &values) |
template<typename MapType > | |
void | printMap (const MapType &map, std::ostream &os) |
std::tuple< std::vector< root_utils::CollectionBranches >, std::vector< std::pair< std::string, detail::CollectionInfo > > > | createCollectionBranches (TChain *chain, const podio::CollectionIDTable &idTable, const std::vector< root_utils::CollectionInfoT > &collInfo) |
std::vector< std::string > | getAvailableCategories (TChain *metaChain) |
void | writeGenericParameters (sio::write_device &device, const GenericParameters ¶ms) |
void | readGenericParameters (sio::read_device &device, GenericParameters ¶ms, sio::version_type version) |
This is an example event store
The event store holds the object collections.
It is used to create new collections, and to access existing ones. When accessing a collection that is not yet in the event store, the event store makes use of a Reader to read the collection.
using podio::CollRefCollection = typedef std::vector<UVecPtr<podio::ObjectID> > |
Definition at line 19 of file CollectionBuffers.h.
typedef std::map<int, GenericParameters> podio::ColMDMap |
Definition at line 35 of file EventStore.h.
using podio::EnableIfCollection = typedef typename std::enable_if_t<isCollection<T> > |
using podio::EnableIfCollectionRValue = typedef typename std::enable_if_t<isCollection<T> && !std::is_lvalue_reference_v<T> > |
using podio::EnableIfRValue = typedef typename std::enable_if_t<!std ::is_lvalue_reference_v<T> > |
using podio::EnableIfSupportedUserType = typedef std::enable_if_t<detail::isInTuple<T, SupportedUserDataTypes> > |
Alias template to be used to enable template specializations only for the types listed in the SupportedUserDataTypes list
Definition at line 33 of file UserDataCollection.h.
using podio::EnableIfValidGenericDataType = typedef typename std::enable_if_t<isSupportedGenericDataType<T> > |
Alias template to be used for enabling / disabling template overloads that should only be present for actually supported data types
Definition at line 29 of file GenericParameters.h.
typedef std::vector<float> podio::FloatVec |
Definition at line 61 of file GenericParameters.h.
typedef std::map<std::string, ColWriterBase*> podio::FunMap |
Definition at line 32 of file ASCIIWriter.h.
using podio::GenericDataReturnType = typedef typename detail::GenericDataReturnTypeHelper<T>::type |
Alias template for determining the appropriate return type for the passed in type
Definition at line 56 of file GenericParameters.h.
typedef std::vector<int> podio::IntVec |
Definition at line 60 of file GenericParameters.h.
typedef std::map<int, GenericParameters> podio::RunMDMap |
Definition at line 34 of file EventStore.h.
typedef std::vector<std::string> podio::StringVec |
Definition at line 62 of file GenericParameters.h.
using podio::SupportedGenericDataTypes = typedef std::tuple<int, float, std::string, double> |
The types which are supported in the GenericParameters.
Definition at line 20 of file GenericParameters.h.
using podio::SupportedUserDataTypes = typedef std::tuple<float, double, int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_t> |
tuple of basic types supported in user vector
Definition at line 25 of file UserDataCollection.h.
using podio::UVecPtr = typedef std::unique_ptr<std::vector<T> > |
Definition at line 17 of file CollectionBuffers.h.
using podio::VectorMembersInfo = typedef std::vector<std::pair<std::string, void*> > |
Definition at line 20 of file CollectionBuffers.h.
std::tuple< std::vector< root_utils::CollectionBranches >, std::vector< std::pair< std::string, detail::CollectionInfo > > > podio::createCollectionBranches | ( | TChain * | chain, |
const podio::CollectionIDTable & | idTable, | ||
const std::vector< root_utils::CollectionInfoT > & | collInfo | ||
) |
Definition at line 258 of file ROOTFrameReader.cc.
std::unique_ptr< podio::IReader > podio::createReader | ( | const std::string & | filename | ) |
Definition at line 10 of file IOHelpers.cc.
Referenced by podio::PythonEventStore::PythonEventStore().
std::vector< std::string > podio::getAvailableCategories | ( | TChain * | metaChain | ) |
Definition at line 178 of file ROOTFrameReader.cc.
Referenced by podio::ROOTFrameReader::openFiles().
void podio::handlePODDataSIO | ( | devT & | device, |
PODData * | data, | ||
size_t | size | ||
) |
Definition at line 25 of file SIOBlock.h.
Referenced by podio::SIOBlockUserData< BasicType, typename >::read(), and podio::SIOBlockUserData< BasicType, typename >::write().
std::ostream & podio::operator<< | ( | std::ostream & | o, |
const podio::UserDataCollection< BasicType > & | coll | ||
) |
Definition at line 224 of file UserDataCollection.h.
std::ostream & podio::operator<< | ( | std::ostream & | os, |
const std::vector< T > & | values | ||
) |
Definition at line 114 of file GenericParameters.cc.
void podio::printMap | ( | const MapType & | map, |
std::ostream & | os | ||
) |
Definition at line 127 of file GenericParameters.cc.
Referenced by podio::GenericParameters::print().
void podio::readGenericParameters | ( | sio::read_device & | device, |
GenericParameters & | params, | ||
sio::version_type | version | ||
) |
Definition at line 59 of file SIOBlock.cc.
Referenced by podio::SIOEventMetaDataBlock::read(), and podio::SIONumberedMetaDataBlock::read().
void podio::readMapLike | ( | sio::read_device & | device, |
MapLikeT & | map | ||
) |
Read anything that iterates like an std::map.
Definition at line 43 of file SIOBlock.h.
Referenced by podio::SIOMapBlock< KeyT, ValueT >::read(), and readGenericParameters().
std::optional< podio::CollectionReadBuffers > podio::unpack | ( | FrameDataT * | data, |
const std::string & | name | ||
) |
|
constexpr |
helper template to provide readable type names for basic types with macro PODIO_ADD_USER_TYPE(type)
void podio::writeGenericParameters | ( | sio::write_device & | device, |
const GenericParameters & | params | ||
) |
Definition at line 52 of file SIOBlock.cc.
Referenced by podio::SIOEventMetaDataBlock::write(), and podio::SIONumberedMetaDataBlock::write().
void podio::writeMapLike | ( | sio::write_device & | device, |
const MapLikeT & | map | ||
) |
Write anything that iterates like an std::map.
Definition at line 33 of file SIOBlock.h.
Referenced by podio::SIOMapBlock< KeyT, ValueT >::write(), and writeGenericParameters().