ATLAS Offline Software
ImplicitCollectionIterator.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 IMPLICITCOLLECTION_COLLECTIONITERATOR_H
6 #define IMPLICITCOLLECTION_COLLECTIONITERATOR_H
7 
11 
13 
14 class Token;
15 
16 namespace coral { class AttributeList; }
17 
18 namespace pool {
19 
20  // forward declarations
21  class IContainer;
22  class ITokenIterator;
23  class TokenList;
24  class ICollectionDescription;
25 
34  public ICollectionCursor
35  {
36  public:
40 
41  // ------------------- Query interface
42 
46 
47 
48  // ------------------- Cursor interface
49 
53  virtual bool next();
54 
56  virtual Token* token() const;
57  virtual const Token& eventRef() const { return *token(); }
58 
59  virtual const CollectionRowBuffer& currentRow() const;
60 
61  // ------------------- Seek interface
67  virtual bool seek(std::size_t position);
68 
72  virtual std::size_t size();
73 
74 
75  //------------------------------------------
76 
79 
80 
81  // ------------------- Unimplemented methods
82 
83  virtual void selectAllAttributes() {}
84  virtual void selectAllTokens() {}
85  virtual void selectAll() {}
86 
87  virtual void close() {}
88 
89 
90  protected:
94 
96  };
97 
98 }
99 
100 #endif
101 
102 
pool::IContainer
Definition: IContainer.h:23
pool::ImplicitCollectionIterator::currentRow
virtual const CollectionRowBuffer & currentRow() const
Returns the selected Tokens and Attributes for the current row of the query result set.
pool::ICollectionQuery
Definition: ICollectionQuery.h:27
pool::ImplicitCollectionIterator::next
virtual bool next()
Retrieves the next token in the collection.
pool::ImplicitCollectionIterator::m_tokenIterator
ITokenIterator * m_tokenIterator
Definition: ImplicitCollectionIterator.h:92
pool::ImplicitCollectionIterator::token
virtual Token * token() const
Returns the token of the current position.
ICollectionCursor.h
pool
pool namespace
Definition: libname.h:15
pool::ImplicitCollectionIterator::selectAllTokens
virtual void selectAllTokens()
Adds all Token columns to the query select list.
Definition: ImplicitCollectionIterator.h:84
pool::ImplicitCollectionIterator::m_rowBuffer
CollectionRowBuffer m_rowBuffer
Definition: ImplicitCollectionIterator.h:95
pool::ImplicitCollectionIterator::selectAllAttributes
virtual void selectAllAttributes()
Adds all Attribute columns to the query select list.
Definition: ImplicitCollectionIterator.h:83
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition: Token.h:21
coral
Definition: ISecondaryEventSelector.h:19
pool::ImplicitCollectionIterator::size
virtual std::size_t size()
Return the size of the collection.
CollectionRowBuffer.h
pool::ImplicitCollectionIterator::m_container
IContainer & m_container
Definition: ImplicitCollectionIterator.h:91
pool::ImplicitCollectionIterator
Definition: ImplicitCollectionIterator.h:35
pool::ImplicitCollectionIterator::m_token
Token * m_token
Definition: ImplicitCollectionIterator.h:93
pool::ICollectionCursor
Definition: ICollectionCursor.h:22
pool::ITokenIterator
Definition: ITokenIterator.h:21
pool::ImplicitCollectionIterator::execute
virtual pool::ICollectionCursor & execute()
Processes the query and returns a cursor over the query result.
pool::CollectionRowBuffer
Definition: CollectionRowBuffer.h:31
pool::ImplicitCollectionIterator::selectAll
virtual void selectAll()
Adds all Token and Attribute columns to the query select list.
Definition: ImplicitCollectionIterator.h:85
pool::ImplicitCollectionIterator::close
virtual void close()
Cleanup.
Definition: ImplicitCollectionIterator.h:87
pool::ATLAS_NOT_THREAD_SAFE
DbStatus DbObjectHandle< T >::makeLink ATLAS_NOT_THREAD_SAFE(const Token *pToken, Token::OID_t &linkH) const
Add persistent association entry.
Definition: DbObject.h:220
pool::ImplicitCollectionIterator::ImplicitCollectionIterator
ImplicitCollectionIterator(IContainer &container, const pool::ICollectionDescription &description)
Constructor.
ICollectionQuery.h
pool::ImplicitCollectionIterator::~ImplicitCollectionIterator
virtual ~ImplicitCollectionIterator()
Destructor.
pool::ImplicitCollectionIterator::seek
virtual bool seek(std::size_t position)
Seek to a given position in the collection.
pool::ImplicitCollectionIterator::eventRef
virtual const Token & eventRef() const
Returns the event reference Token for the current row.
Definition: ImplicitCollectionIterator.h:57
checker_macros.h
Define macros for attributes used to control the static checker.
pool::ICollectionDescription
Definition: ICollectionDescription.h:25
description
std::string description
glabal timer - how long have I taken so far?
Definition: hcg.cxx:88