ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Database
APR
CollectionSvc
src
ImplicitCollection.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef COLLECTIONSVC_IMPLICITCOLLECTION_H
6
#define COLLECTIONSVC_IMPLICITCOLLECTION_H
7
8
#include "
CollectionSvc/ICollection.h
"
9
#include "
CollectionSvc/CollectionDescription.h
"
10
#include "
CollectionSvc/CollectionRowBuffer.h
"
11
#include "
StorageSvc/DbPrint.h
"
12
13
#include "
CxxUtils/checker_macros.h
"
14
#include "Gaudi/PluginService.h"
15
16
namespace
pool
{
17
18
// forward declarations
19
class
ISession
;
20
class
IContainer
;
21
class
ICollectionQuery;
22
class
ICollectionIterator;
23
class
ImplicitCollectionIterator
;
24
26
class
ATLAS_NOT_THREAD_SAFE
ImplicitCollection
:
virtual
public
ICollection
,
public
APRMessaging
27
// ^ due to not thread-safe ImplicitCollectionIterator
28
{
29
public
:
32
ImplicitCollection
(
const
CollectionDescription
*
description
,
33
ICollection::OpenMode
mode,
34
ISession
* session );
35
37
~ImplicitCollection
();
38
39
ImplicitCollection
(
const
ImplicitCollection
&) =
delete
;
40
ImplicitCollection
&
operator=
(
const
ImplicitCollection
&) =
delete
;
41
43
virtual
void
insertRow
(
const
pool::CollectionRowBuffer
& inputRowBuffer )
override
final
;
44
46
virtual
void
commit
(
bool
/*reopen*/
=
false
) override final { };
47
virtual
void
close
() override final { };
48
virtual
void
open
() override final { };
49
51
virtual
const
CollectionDescription
&
description
()
const
override final;
52
54
virtual
std
::
unique_ptr
<
ICollectionCursor
>
cursor
() override final;
55
56
protected
:
57
void
open
(
ICollection
::
OpenMode
mode,
ISession
* session );
58
59
private
:
61
IContainer
*
m_container
;
62
63
CollectionDescription
m_description
;
64
};
65
}
66
67
#endif
operator=
ElementLink & operator=(const ElementLink &)=default
CollectionDescription.h
CollectionRowBuffer.h
DbPrint.h
ICollection.h
checker_macros.h
Define macros for attributes used to control the static checker.
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition
checker_macros.h:212
pool::APRMessaging::APRMessaging
APRMessaging(const std::string &name)
pool::CollectionDescription
An implementation used to define the properties of a collection to be constructed and to retrieve the...
Definition
CollectionDescription.h:26
pool::CollectionRowBuffer
A class representing a row of a collection.
Definition
CollectionRowBuffer.h:25
pool::ICollectionCursor
An interface used to navigate the result of a query on a collection.
Definition
ICollectionCursor.h:22
pool::ICollection
An interface to a storage technology specific collection of event references and attributes.
Definition
ICollection.h:24
pool::ICollection::OpenMode
OpenMode
Enumeration of the possible open modes of the collection.
Definition
ICollection.h:27
pool::IContainer
IContainer is the base class for container objects.
Definition
IContainer.h:23
pool::ISession
ISession is the interface class for user (macroscopic) sessions Every transaction and connection to a...
Definition
ISession.h:37
pool::ImplicitCollectionIterator
Iterator over an implicit collection.
Definition
ImplicitCollectionIterator.h:32
pool::ImplicitCollection::ImplicitCollection
ImplicitCollection(const CollectionDescription *description, ICollection::OpenMode mode, ISession *session)
Constructor compying to the new Collections API parameters as above, but name and connection passed i...
pool::ImplicitCollection::ImplicitCollection
ImplicitCollection(const ImplicitCollection &)=delete
pool::ImplicitCollection::close
virtual void close() override final
Closes the collection and terminates any database connections.
Definition
ImplicitCollection.h:47
pool::ImplicitCollection::insertRow
virtual void insertRow(const pool::CollectionRowBuffer &inputRowBuffer) override final
Adds a new row of data to the collection. Will always throw exception.
pool::ImplicitCollection::open
virtual void open() override final
Opens the collection and initializes it if necessary.
Definition
ImplicitCollection.h:48
pool::ImplicitCollection::commit
virtual void commit(bool=false) override final
Base interface methods that do nothing. Open/Close happens in xtor and dtor, and commit is a no-op.
Definition
ImplicitCollection.h:46
pool::ImplicitCollection::description
virtual const CollectionDescription & description() const override final
Returns an object used to describe the collection properties.
pool::ImplicitCollection::cursor
virtual std::unique_ptr< ICollectionCursor > cursor() override final
Returns a cursor for the collection.
pool::ImplicitCollection::m_container
IContainer * m_container
The underlying container handle.
Definition
ImplicitCollection.h:61
pool::ImplicitCollection::~ImplicitCollection
~ImplicitCollection()
Destructor.
pool::ImplicitCollection::m_description
CollectionDescription m_description
Definition
ImplicitCollection.h:63
unique_ptr
STL class.
const
pool
Framework include files.
Definition
libname.h:15
std
STL namespace.
protected
#define protected
Definition
testRead.cxx:26
private
#define private
Definition
testRead.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0