ATLAS Offline Software
Loading...
Searching...
No Matches
IDbDatabase.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//
7// Package : pool/StorageSvc (The pool framework)
8//
9// @author M.Frank
10//
11//====================================================================
12#ifndef POOL_IDBDATABASE_H
13#define POOL_IDBDATABASE_H
14
15// Framework include files
16#include "StorageSvc/pool.h"
18
19class StatusCode;
20
21/*
22 * POOL namespace declaration
23 */
24namespace pool {
25
26 // Forward declarations
27 class DbOption;
28 class DbDomain;
29 class DbDatabase;
30 class DbContainer;
31
43 public:
44 virtual ~IDbDatabase() { }
45
47 virtual long long int size() const = 0;
48
50
54 virtual StatusCode setOption(const DbOption& refOpt) = 0;
55
57
61 virtual StatusCode getOption(DbOption& refOpt) = 0;
62
64
68 virtual StatusCode close(DbAccessMode mode) = 0;
69
71
78 virtual StatusCode open(const DbDomain& domH,
79 const std::string& nam,
80 DbAccessMode mode) = 0;
81
83
88 virtual StatusCode onOpen(DbDatabase& dbH,
89 DbAccessMode mode) = 0;
90
92
96 virtual StatusCode reopen(DbAccessMode mode) = 0;
97
99
102 virtual StatusCode transAct(Transaction::Action action) = 0;
103 };
104} // End namespace pool
105#endif // POOL_IDBDATABASE_H
Description: Definition of the object describing a database container Handle managing a DbContainerOb...
Definition DbContainer.h:49
Description: Handle managing a DbDatabaseObj, a generic Database object.
Definition DbDatabase.h:55
Description:
Definition DbDomain.h:47
Description: Definition an option to be supplied to database objects.
Definition DbOption.h:37
IDbDatabase interface.
Definition IDbDatabase.h:42
virtual StatusCode open(const DbDomain &domH, const std::string &nam, DbAccessMode mode)=0
Open Database object.
virtual StatusCode onOpen(DbDatabase &dbH, DbAccessMode mode)=0
Callback after successful open of a database object.
virtual StatusCode close(DbAccessMode mode)=0
Close database access.
virtual ~IDbDatabase()
Definition IDbDatabase.h:44
virtual long long int size() const =0
Access the size of the database: May be undefined for some technologies.
virtual StatusCode reopen(DbAccessMode mode)=0
Re-open database with changing access permissions.
virtual StatusCode transAct(Transaction::Action action)=0
Execute Database Transaction action.
virtual StatusCode getOption(DbOption &refOpt)=0
Access options.
virtual StatusCode setOption(const DbOption &refOpt)=0
Set options.
pool namespace
Definition libname.h:15