 |
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef POOL_RNTUPLECONTAINER_H
10 #define POOL_RNTUPLECONTAINER_H 1
19 #include "ROOT/RNTupleView.hxx"
31 #if ROOT_VERSION_CODE < ROOT_VERSION( 6, 35, 0 )
32 namespace ROOT {
using ROOT::Experimental::RNTupleView; }
33 namespace ROOT::Experimental {
class RNTupleReader; }
34 namespace ROOT {
using ROOT::Experimental::RNTupleReader; }
36 namespace ROOT {
class RNTupleReader; }
58 std::optional< ROOT::RNTupleView<void> >
view;
61 void*
object =
nullptr;
bool isDirty() const
Return true if this branch container was updated and it's TTree needs to be Filled.
virtual pool::DbStatus writeObject(ActionList::value_type &) override final
Commit single entry to container.
virtual pool::DbStatus transAct(pool::Transaction::Action action) override final
Execute transaction action.
virtual ~RNTupleContainer()
virtual pool::DbStatus fetch(pool::DbSelect &sel) override final
Fetch next object address of the selection to set token.
virtual pool::DbStatus open(pool::DbDatabase &dbH, const std::string &nam, const pool::DbTypeInfo *info, pool::DbAccessMode mod) override final
Open the container for object access.
std::string m_name
Container name.
bool const RAWDATA *ch2 const
virtual pool::DbStatus checkAccess(pool::DbDatabase &dbH, const std::string &nam) const override final
Check if we can access the container for reading with the given type.
FieldDesc(FieldDesc &&other)=default
const std::string typeName()
FieldDesc(FieldDesc const &other)=delete
virtual uint64_t nextRecordId() override final
Number of next record in the container (=size if no delete is allowed)
bool m_isDirty
flag set on writing to prevent double writes in the same commit
const class Shape * ShapeH
def save(self, fileName="./columbo.out")
ROOT::RNTupleReader * m_ntupleReader
Internal cache of the native RNTupleReader.
Interface for a RNTuple-based Writer that handles AuxDyn attributes Works in conjuction with the gene...
std::vector< FieldDesc > m_fieldDescs
List of field descriptors.
pool::DbDatabase m_dbH
Parent Database handle.
std::unique_ptr< RootAuxDynIO::IFactoryTool > m_auxDynTool
Factory object from AuxDynIO plugin that creates AuxDyn readers and writers.
virtual uint64_t size() override final
Number of entries within the container.
virtual pool::DbStatus setOption(const pool::DbOption &opt) override final
Set options.
virtual pool::DbStatus close() override final
Close the container and deallocate resources.
Definition of a field info structure.
const uint32_t m_indexMulti
std::unique_ptr< RootAuxDynIO::IRNTupleAuxDynWriter > auxdyn_writer
pool::DbStatus initObjectFieldDesc(FieldDesc &dsc)
Init a field description for an object (i.e. find TClass etc.)
void clearDirty()
Clear the dirty status (used after containing TTree was Filled)
RootStorageSvc::RNTupleWriterHelper * m_ntupleWriter
Internal cache of the RNTupleWriterHelper.
FieldDesc & operator=(FieldDesc const &other)=delete
std::unique_ptr< RootAuxDynIO::IRootAuxDynReader > auxdyn_reader
virtual pool::DbStatus getOption(pool::DbOption &opt) override final
Access options.
virtual pool::DbStatus select(pool::DbSelect &sel) override final
Define selection.
pool::RootDatabase * m_rootDb
Root database file reference.
std::optional< ROOT::RNTupleView< void > > view
FieldDesc(const DbColumn &c)
Specialization of RootAuxDynStore for reading Aux Dynamic attributes from RNTuple.
int m_ioBytes
Number of bytes written/read during last operation. Set to -1 if it failed.
FieldDesc & operator=(FieldDesc &&other)=default
virtual pool::DbStatus loadObject(void **ptr, pool::ShapeH shape, Token::OID_t &oid) override final
Find object by object identifier and load it into memory.
RNTupleContainer()
Standard constructor.
virtual void useNextRecordId(uint64_t nextID) override final
Suggest next Record ID for tbe next object written - used only with synced indexes.
const pool::DbTypeInfo * m_type
reference to exact type description
const std::string & getName() const
Return the name of the container.
virtual pool::DbStatus save(pool::DbObjectHandle< pool::DbObject > &objH) override final
Add single entry to container.
DbColumn()
Cache class information (if available) Do not allow unwanted instantiations by users.
Selection rules: declare transient members.