ATLAS Offline Software
Loading...
Searching...
No Matches
RootKeyContainer.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5//====================================================================
6// Root Database implementation
7//--------------------------------------------------------------------
8//
9// Package : RootStorageSvc (The POOL project)
10//
11// Author : M.Frank
12//====================================================================
13#ifndef POOL_ROOTKEYCONTAINER_H
14#define POOL_ROOTKEYCONTAINER_H 1
15
16// Framework include files
19
20// Forward declarations
21class StatusCode;
22namespace CINT { class IOHandler; }
23class TDirectory;
24class TBuffer;
25class TClass;
26
27namespace pool {
28 // Forward declarations
29 class RootKeyIOHandler;
30
47 TDirectory* m_dir;
58
59 protected:
61 virtual StatusCode writeObject(ActionList::value_type&) override;
62 public:
63 explicit RootKeyContainer(const std::string& name);
68 virtual StatusCode close() override;
70 virtual StatusCode open(DbDatabase& dbH,
71 const std::string& nam,
72 const DbTypeInfo* info,
73 DbAccessMode mod) override;
75 virtual StatusCode checkAccess(DbDatabase& dbH,
76 const std::string& nam) const override final;
78 virtual uint64_t size() override;
80 virtual uint64_t nextRecordId() override;
82 virtual StatusCode next(Token::OID_t& linkH) override;
83
85
91 virtual StatusCode loadObject( void** ptr, ShapeH shape,
92 Token::OID_t& oid) override;
93
95 virtual StatusCode load( void** ptr, ShapeH shape,
96 const Token::OID_t& linkH,
97 Token::OID_t& oid,
98 bool any_next) override;
99
101
105 virtual StatusCode getOption(DbOption& opt) override;
106
108
112 virtual StatusCode setOption(const DbOption& opt) override;
113
115
120 virtual StatusCode transAct(Transaction::Action action) override;
121 };
122}
123#endif //POOL_ROOTKEYCONTAINER_H
virtual std::string name() const override
Get container name.
DbContainerImp(const std::string &name)
Description: Handle managing a DbDatabaseObj, a generic Database object.
Definition DbDatabase.h:55
Description: Definition an option to be supplied to database objects.
Definition DbOption.h:37
Definition of class DbTypeInfo.
Definition DbTypeInfo.h:49
Description: ROOT specific implementation of Database file.
TDirectory * m_dir
Reference to the root tree object.
virtual uint64_t size() override
Number of entries within the container.
virtual StatusCode load(void **ptr, ShapeH shape, const Token::OID_t &linkH, Token::OID_t &oid, bool any_next) override
Interface Implementation: Find entry in container.
virtual uint64_t nextRecordId() override
Number of record in the container.
RootKeyIOHandler * m_ioHandler
CINT IO handler to allow user overloads....
virtual StatusCode next(Token::OID_t &linkH) override
Fetch next object address to set token.
virtual StatusCode loadObject(void **ptr, ShapeH shape, Token::OID_t &oid) override
Find object by object identifier and load it into memory.
RootDatabase * m_rootDb
Root database file reference.
virtual StatusCode open(DbDatabase &dbH, const std::string &nam, const DbTypeInfo *info, DbAccessMode mod) override
Open the container for object access.
virtual StatusCode close() override
Close the container and deallocate resources.
RootKeyContainer(const std::string &name)
virtual StatusCode setOption(const DbOption &opt) override
Set options.
virtual StatusCode transAct(Transaction::Action action) override
Execute end of object modification requests during a transaction.
virtual StatusCode getOption(DbOption &opt) override
Access options.
DbDatabase m_dbH
Parent Database handle.
RootKeyContainer & operator=(const RootKeyContainer &)=delete
virtual StatusCode checkAccess(DbDatabase &dbH, const std::string &nam) const override final
Check if we can access the container for reading with the given type.
virtual StatusCode writeObject(ActionList::value_type &) override
Commit single entry to container.
RootKeyContainer(const RootKeyContainer &)=delete
int m_ioBytes
Number of bytes written/read during last operation. Set to -1 if it failed.
pool namespace
Definition libname.h:15
const class Shape * ShapeH