ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Database
APR
RootStorageSvc
src
RootOODb.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_ROOTSTORAGESVC_ROOTOODB_H
14
#define POOL_ROOTSTORAGESVC_ROOTOODB_H 1
15
16
// Framework include files
17
#include "
StorageSvc/IOODatabase.h
"
18
19
#include "Gaudi/PluginService.h"
20
21
/*
22
* POOL namespace
23
*/
24
namespace
pool
{
25
38
class
RootOODb
:
public
IOODatabase
{
39
public
:
40
typedef
Gaudi::PluginService::Factory<
IOODatabase
*()>
Factory
;
41
43
explicit
RootOODb
(
DbType
typ=
ROOT_StorageType
);
45
virtual
~RootOODb
();
46
48
virtual
const
std::string&
name
()
const
;
49
51
static
const
char
*
catalogLabel
() {
return
"ROOT_All"
; }
52
54
IDbDomain
*
createDomain
();
56
IDbDatabase
*
createDatabase
();
58
IDbContainer
*
createContainer
(
const
std::string&
name
,
const
DbType
& typ);
59
private
:
61
IDbDomain
*
m_domainCache
{};
62
};
63
64
class
RootOOKey
:
public
RootOODb
{
65
public
:
67
RootOOKey
() :
RootOODb
(
ROOTKEY_StorageType
) { }
69
static
const
char
*
catalogLabel
() {
return
"ROOT_Key"
; }
70
};
71
72
class
RootOOTree
:
public
RootOODb
{
73
public
:
75
RootOOTree
() :
RootOODb
(
ROOTTREE_StorageType
) { }
77
static
const
char
*
catalogLabel
() {
return
"ROOT_Tree"
; }
78
};
79
80
class
RootOOTreeIndex
:
public
RootOODb
{
81
public
:
83
RootOOTreeIndex
() :
RootOODb
(
ROOTTREEINDEX_StorageType
) { }
85
static
const
char
*
catalogLabel
() {
return
"ROOT_Tree"
; }
86
};
87
88
class
RootOORNTuple
:
public
RootOODb
{
89
public
:
91
RootOORNTuple
() :
RootOODb
(
ROOTRNTUPLE_StorageType
) { }
93
static
const
char
*
catalogLabel
() {
return
"ROOT_RNTuple"
; }
94
};
95
96
}
// end namespace pool
97
98
#endif
/* POOL_ROOTSTORAGESVC_ROOTOODB_H */
IOODatabase.h
pool::DbType
Definition
DbType.h:30
pool::IDbContainer
Description:
Definition
IDbContainer.h:44
pool::IDbDatabase
IDbDatabase interface.
Definition
IDbDatabase.h:41
pool::IDbDomain
IDbDomain interface.
Definition
IDbDomain.h:42
pool::IOODatabase
Definition
IOODatabase.h:50
pool::RootOODb::createDomain
IDbDomain * createDomain()
Create Root Domain object.
pool::RootOODb::createDatabase
IDbDatabase * createDatabase()
Create Root Database object (TFile).
pool::RootOODb::RootOODb
RootOODb(DbType typ=ROOT_StorageType)
Standard Constructor.
pool::RootOODb::m_domainCache
IDbDomain * m_domainCache
Non-owning cache for the domain pointer.
Definition
RootOODb.h:61
pool::RootOODb::name
virtual const std::string & name() const
Name of the Database implementation.
pool::RootOODb::Factory
Gaudi::PluginService::Factory< IOODatabase *()> Factory
Definition
RootOODb.h:40
pool::RootOODb::~RootOODb
virtual ~RootOODb()
Standard Destructor.
pool::RootOODb::createContainer
IDbContainer * createContainer(const std::string &name, const DbType &typ)
Create Root Container object.
pool::RootOODb::catalogLabel
static const char * catalogLabel()
Label of the specific class.
Definition
RootOODb.h:51
pool::RootOOKey::RootOOKey
RootOOKey()
Standard Constructor.
Definition
RootOODb.h:67
pool::RootOOKey::catalogLabel
static const char * catalogLabel()
Label of the specific class.
Definition
RootOODb.h:69
pool::RootOORNTuple::RootOORNTuple
RootOORNTuple()
Standard Constructor.
Definition
RootOODb.h:91
pool::RootOORNTuple::catalogLabel
static const char * catalogLabel()
Label of the specific class.
Definition
RootOODb.h:93
pool::RootOOTreeIndex::RootOOTreeIndex
RootOOTreeIndex()
Standard Constructor.
Definition
RootOODb.h:83
pool::RootOOTreeIndex::catalogLabel
static const char * catalogLabel()
Label of the specific class.
Definition
RootOODb.h:85
pool::RootOOTree::RootOOTree
RootOOTree()
Standard Constructor.
Definition
RootOODb.h:75
pool::RootOOTree::catalogLabel
static const char * catalogLabel()
Label of the specific class.
Definition
RootOODb.h:77
pool
Framework include files.
Definition
libname.h:15
pool::ROOTTREE_StorageType
static const DbType ROOTTREE_StorageType
Definition
DbType.h:87
pool::ROOTRNTUPLE_StorageType
static const DbType ROOTRNTUPLE_StorageType
Definition
DbType.h:89
pool::ROOT_StorageType
static const DbType ROOT_StorageType
Definition
DbType.h:85
pool::ROOTTREEINDEX_StorageType
static const DbType ROOTTREEINDEX_StorageType
Definition
DbType.h:88
pool::ROOTKEY_StorageType
static const DbType ROOTKEY_StorageType
Definition
DbType.h:86
Generated on
for ATLAS Offline Software by
1.17.0