11#ifndef POOL_IDBCONTAINER_H
12#define POOL_IDBCONTAINER_H
54 virtual uint64_t
size() = 0;
56 virtual std::string
name()
const = 0;
62 virtual StatusCode
store(
const void*
object,
80 const std::string& nam,
85 const std::string& nam)
const = 0;
102 bool any_next=
false) = 0;
This file contains the class definition for the Token class (migrated from POOL).
Description: Definition of the object describing a database container Handle managing a DbContainerOb...
Description: Handle managing a DbDatabaseObj, a generic Database object.
Description: Definition an option to be supplied to database objects.
Definition of class DbTypeInfo.
virtual StatusCode setOption(const DbOption &refOpt)=0
Set options.
virtual uint64_t nextRecordId()=0
Number of next record in the container (=size if no delete is allowed)
virtual void release()=0
Release the technology specific implementation.
virtual StatusCode open(DbDatabase &dbH, const std::string &nam, const DbTypeInfo *info, DbAccessMode mode)=0
Open the container.
virtual StatusCode checkAccess(DbDatabase &dbH, const std::string &nam) const =0
Check if we can access the container for reading with the given type.
virtual StatusCode load(void **ptr, ShapeH shape, const Token::OID_t &lnkH, Token::OID_t &oid, bool any_next=false)=0
Find object within the container and load it into memory.
virtual ~IDbContainer()
Destructor (called only by sub-classes)
virtual StatusCode next(Token::OID_t &linkH)=0
Fetch next object address to set token.
virtual StatusCode allocate(DbContainer &cntH, const void *object, ShapeH shape, Token::OID_t &oid)=0
In place allocation of object location.
virtual uint64_t size()=0
Access to container size.
virtual std::string name() const =0
Get container name.
virtual StatusCode store(const void *object, DbContainer &cntH, ShapeH shape)=0
Store object in location.
virtual StatusCode getOption(DbOption &refOpt)=0
Access options.
virtual StatusCode transAct(Transaction::Action)=0
Execute Transaction Action.
virtual StatusCode close()=0
Close the container.
virtual void useNextRecordId(uint64_t)=0
Suggest next Record ID for tbe next object written - used only with synced indexes.
const class Shape * ShapeH