ATLAS Offline Software
Loading...
Searching...
No Matches
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
11#include "POOLCore/DbPrint.h"
12
14#include "Gaudi/PluginService.h"
15
16namespace pool {
17
18 // forward declarations
19 namespace PersistencySvc { class ISession; }
21 class IContainer;
22 class ICollectionQuery;
23 class ICollectionIterator;
25
28 // ^ due to not thread-safe ImplicitCollectionIterator
29 {
30 public:
31 typedef Gaudi::PluginService::Factory<ICollection*( const CollectionDescription*, ICollection::OpenMode, ISession*)> Factory;
32
37 ISession* session );
38
41
43 ImplicitCollection& operator= (const ImplicitCollection&) = delete;
44
46 virtual void insertRow( const pool::CollectionRowBuffer& inputRowBuffer ) override;
47
49 void commit(bool reopen=false) override;
50
52 void close() override;
53
55 void open() override;
56
58 virtual const CollectionDescription& description() const override;
59
61 virtual ICollectionCursor& cursor() final override;
62
64 void open( ICollection::OpenMode mode, ISession* session );
65
66 private:
69
71 };
72}
73
74#endif
#define protected
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
APRMessaging(const std::string &name)
An implementation used to define the properties of a collection to be constructed and to retrieve the...
A class representing a row of a collection.
An interface used to navigate the result of a query on a collection.
An interface to a storage technology specific collection of event references and attributes.
Definition ICollection.h:23
OpenMode
Enumeration of the possible open modes of the collection.
Definition ICollection.h:26
IContainer is the base class for container objects.
Definition IContainer.h:23
Iterator over an implicit collection.
virtual const CollectionDescription & description() const override
Returns an object used to describe the collection properties.
void open() override
no-op at the moment
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...
virtual void insertRow(const pool::CollectionRowBuffer &inputRowBuffer) override
Adds a new row of data to the collection. Will always throw exception.
ImplicitCollection(const ImplicitCollection &)=delete
Gaudi::PluginService::Factory< ICollection *(const CollectionDescription *, ICollection::OpenMode, ISession *)> Factory
IContainer * m_container
The underlying container handle.
virtual ICollectionCursor & cursor() final override
Returns a cursor for the collection.
~ImplicitCollection()
Destructor.
void close() override
no-op at the moment
CollectionDescription m_description
void commit(bool reopen=false) override
Commits the last changes made to the collection. Will always return true.
ISession is the interface class for user (macroscopic) sessions Every transaction and connection to a...
Definition ISession.h:40
Framework include files.
Definition libname.h:15
#define private