5#ifndef POOL_ROOTTREEINDEXCONTAINER_H
6#define POOL_ROOTTREEINDEXCONTAINER_H 1
58 Token::OID_t& oid) override;
This class provides a token that identifies in a unique way objects on the persistent storage.
virtual std::string name() const override
Get container name.
std::vector< DbAction > ActionList
Description: Handle managing a DbDatabaseObj, a generic Database object.
This class is highly inspired by the error code distribution system as it is used in DEC/VMS or MS/WN...
Definition of class DbTypeInfo.
RootTreeContainer(const std::string &name)
bool m_firstRead
first object retrieval attempt flag (to rebuild index)
TBranch * m_indexBranch
Pointer to index branch.
Long64_t m_index
Index (64 bit) - using ROOT type that matches the earlier 'long long'.
virtual ~RootTreeIndexContainer() override
RootTreeIndexContainer(const std::string &name)
RootTreeIndexContainer(const RootTreeIndexContainer &)=delete
virtual DbStatus open(DbDatabase &, const std::string &, const DbTypeInfo *, DbAccessMode) override final
Open the container.
const uint32_t m_index_multi
Index multiplier (e.g. pid - ppid), fill in c'tor.
virtual uint64_t nextRecordId() override final
Number of entries within the container.
RootTreeIndexContainer & operator=(const RootTreeIndexContainer &)=delete
virtual DbStatus writeObject(ActionList::value_type &) override
Commit single entry to container.
virtual DbStatus loadObject(void **ptr, ShapeH shape, Token::OID_t &oid) override
Find object by object identifier and load it into memory.
int64_t m_indexBump
How much to increase nextRecordID to keep index values synced with other containers.
virtual void useNextRecordId(uint64_t) override final
Suggest next Record ID for tbe next object written - for synced indexes.
const class Shape * ShapeH