ATLAS Offline Software
ICollection.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef COLLECTIONBASE_ICOLLECTION_H
6 #define COLLECTIONBASE_ICOLLECTION_H
7 
8 #include <string>
9 
10 namespace pool {
11 
12  class ICollectionDescription;
13  class ICollectionSchemaEditor;
15  class ICollectionQuery;
16 
24  {
25  public:
28 
30  virtual ICollection::OpenMode openMode() const = 0;
31 
33  virtual void open() = 0;
34 
36  virtual bool isOpen() const = 0;
37 
39  virtual void commit( bool restartTransaction = true ) = 0;
40 
42  virtual void close() = 0;
43 
45  virtual const ICollectionDescription& description() const = 0;
46 
49 
52 
54  virtual ICollectionQuery* newQuery() = 0;
55 
57  virtual ~ICollection() {}
58 
59  };
60 
61 }
62 
63 #endif
pool::ICollectionQuery
Definition: ICollectionQuery.h:27
pool::ICollectionSchemaEditor
Definition: ICollectionSchemaEditor.h:22
pool
pool namespace
Definition: libname.h:15
pool::ICollection::close
virtual void close()=0
Closes the collection and terminates any database connections.
ICollectionDataEditor
pool::ICollection::openMode
virtual ICollection::OpenMode openMode() const =0
Returns the open mode of the collection for the present transaction.
pool::ICollection::newQuery
virtual ICollectionQuery * newQuery()=0
Returns an object used to query the collection.
pool::ICollection::commit
virtual void commit(bool restartTransaction=true)=0
Commits the latest changes made to the collection.
pool::ICollection::CREATE
@ CREATE
Definition: ICollection.h:27
pool::ICollection::OpenMode
OpenMode
Enumeration of the possible open modes of the collection.
Definition: ICollection.h:27
pool::ICollection::CREATE_AND_OVERWRITE
@ CREATE_AND_OVERWRITE
Definition: ICollection.h:27
pool::ICollection::description
virtual const ICollectionDescription & description() const =0
Returns an object used to describe the collection properties.
pool::ICollection::~ICollection
virtual ~ICollection()
Empty destructor.
Definition: ICollection.h:57
pool::ICollection::dataEditor
virtual ICollectionDataEditor & dataEditor()=0
Returns an object used to add, update or delete rows of the collection.
pool::ICollection::READ
@ READ
Definition: ICollection.h:27
pool::ICollection::UPDATE
@ UPDATE
Definition: ICollection.h:27
pool::ICollection::open
virtual void open()=0
Opens the collection and initializes it if necessary.
pool::ICollection::isOpen
virtual bool isOpen() const =0
Checks if the collection is open.
pool::ICollection
Definition: ICollection.h:24
pool::ICollectionDescription
Definition: ICollectionDescription.h:26
pool::ICollection::schemaEditor
virtual ICollectionSchemaEditor & schemaEditor()=0
Returns an object used to modify the collection schema.
pool::ICollectionDataEditor
Definition: ICollectionDataEditor.h:26