ATLAS Offline Software
RNTCollectionQuery.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 RNTCOLLECTIONQUERY_H
6 #define RNTCOLLECTIONQUERY_H
7 
8 #include "CoralBase/AttributeList.h"
9 
14 
15 #include "RNTCollectionCursor.h"
16 
17 #include <set>
18 
19 namespace pool::RootCollection {
20 
27  {
28  public:
31 
34 
40  virtual void addToOutputList( const std::string& columnName );
41 
47  virtual void addToOutputList( const std::vector<std::string>& columnNames );
48 
50  virtual void selectAllAttributes();
51 
53  virtual void selectAllTokens();
54 
56  virtual void selectAll();
57 
67  virtual void setCondition( const std::string& whereClause,
68  coral::AttributeList* attributeBindData = 0,
69  TokenList* tokenBindData = 0 ) ;
70 
72  virtual const std::string& whereClause() const;
73 
79  virtual void setRowCacheSize( int rowCacheSize );
80 
83 
90  virtual void skipEventReference( bool = true );
91 
92  protected:
93 
94  void addToTokenOutputList( const std::string& columnName );
95 
96  void addToAttributeOutputList( const std::string& columnName );
97 
98 
100  RNTupleReader *m_reader {nullptr}; // owned by the Collection
101 
103 
104  std::string m_whereClause;
105 
108 
109  std::set< std::string > m_selectedColumnNames;
110 
113  };
114 
115 } // end namespace
116 
117 #endif
pool::RootCollection::RNTCollectionQuery::m_description
const ICollectionDescription & m_description
Definition: RNTCollectionQuery.h:99
pool::ICollectionQuery
Definition: ICollectionQuery.h:27
pool::RootCollection::RNTCollectionQuery::selectAllAttributes
virtual void selectAllAttributes()
Adds all Attribute columns to the query select list.
TokenList.h
pool::RootCollection
Definition: CollectionCommon.h:9
RNTCollectionCursor.h
ICollectionCursor.h
pool::RootCollection::RNTupleReader
ROOT::Experimental::RNTupleReader RNTupleReader
Definition: RNTCollection.h:37
pool::RootCollection::RNTCollectionQuery::whereClause
virtual const std::string & whereClause() const
Returns the where clause of the query.
pool::RootCollection::RNTCollectionQuery::skipEventReference
virtual void skipEventReference(bool=true)
Tell the query to not include the primary event reference in the result by default (it can still bese...
pool::RootCollection::RNTCollectionQuery::addToAttributeOutputList
void addToAttributeOutputList(const std::string &columnName)
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
pool::RootCollection::RNTCollectionQuery::setCondition
virtual void setCondition(const std::string &whereClause, coral::AttributeList *attributeBindData=0, TokenList *tokenBindData=0)
Sets the query.
pool::RootCollection::RNTCollectionQuery::~RNTCollectionQuery
virtual ~RNTCollectionQuery()
Destructor.
pool::TokenList
Definition: TokenList.h:24
pool::RootCollection::RNTCollectionQuery::setRowCacheSize
virtual void setRowCacheSize(int rowCacheSize)
Sets the cache size used to store the query result.
pool::RootCollection::RNTCollectionQuery::selectAll
virtual void selectAll()
Adds all Token and Attribute columns to the query select list.
pool::RootCollection::RNTCollectionQuery::addToTokenOutputList
void addToTokenOutputList(const std::string &columnName)
pool::RootCollection::RNTCollectionQuery::m_cursor
RNTCollectionCursor * m_cursor
Definition: RNTCollectionQuery.h:102
pool::RootCollection::RNTCollectionQuery::m_outputTokenList
pool::TokenList m_outputTokenList
Definition: RNTCollectionQuery.h:106
pool::RootCollection::RNTCollectionQuery::m_selectedColumnNames
std::set< std::string > m_selectedColumnNames
Definition: RNTCollectionQuery.h:109
pool::RootCollection::RNTCollectionQuery::m_reader
RNTupleReader * m_reader
Definition: RNTCollectionQuery.h:100
pool::RootCollection::RNTCollectionQuery::addToOutputList
virtual void addToOutputList(const std::string &columnName)
Adds a column to the query select list.
pool::ICollectionCursor
Definition: ICollectionCursor.h:21
pool::RootCollection::RNTCollectionQuery::m_whereClause
std::string m_whereClause
Definition: RNTCollectionQuery.h:104
pool::RootCollection::RNTCollectionQuery::RNTCollectionQuery
RNTCollectionQuery(const pool::ICollectionDescription &description, RNTupleReader *reader)
Constructor.
pool::RootCollection::RNTCollectionQuery::m_skipEventRef
bool m_skipEventRef
If false, the primary event reference is added always to the query result.
Definition: RNTCollectionQuery.h:112
pool::RootCollection::RNTCollectionCursor
Definition: RNTCollectionCursor.h:41
pool::RootCollection::RNTCollectionQuery::m_outputAttributeList
coral::AttributeList m_outputAttributeList
Definition: RNTCollectionQuery.h:107
pool::RootCollection::RNTCollectionQuery::execute
virtual pool::ICollectionCursor & execute()
Processes the query and returns a cursor over the query result.
pool::RootCollection::RNTCollectionQuery::selectAllTokens
virtual void selectAllTokens()
Adds all Token columns to the query select list.
pool::RootCollection::RNTCollectionQuery::addToOutputList
virtual void addToOutputList(const std::vector< std::string > &columnNames)
Adds one or more columns to the query select list.
ICollectionQuery.h
pool::RootCollection::RNTCollectionQuery
Definition: RNTCollectionQuery.h:27
collisions.reader
reader
read the goodrunslist xml file(s)
Definition: collisions.py:22
ICollectionDescription.h
pool::ICollectionDescription
Definition: ICollectionDescription.h:26
description
std::string description
glabal timer - how long have I taken so far?
Definition: hcg.cxx:88