ATLAS Offline Software
SqliteRecordset.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 #ifndef RDBACCESSSVC_SQLITERECORDSET_H
13 #define RDBACCESSSVC_SQLITERECORDSET_H
14 
17 #include "SqliteRecord.h"
18 #include <string>
19 
20 class sqlite3;
21 
30 class SqliteRecordset final : public IRDBRecordset, public AthMessaging
31 {
32  public:
35 
38  void getData(sqlite3* db, const std::string& nodeName);
39 
41  unsigned int size() const override;
42 
44  std::string nodeName() const override;
45 
47  std::string tagName() const override {return std::string();}
48 
51  const IRDBRecord* operator[](unsigned int index) const override;
52 
54  IRDBRecordset::const_iterator begin() const override;
55 
57  IRDBRecordset::const_iterator end() const override;
58 
59  private:
60  std::string m_nodeName{};
63 };
64 
65 #endif
SqliteRecord.h
Declaration of the SqliteRecord class.
index
Definition: index.py:1
CaloCondBlobAlgs_fillNoiseFromASCII.db
db
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:43
SqliteRecordset::m_records
RecordsVector m_records
Definition: SqliteRecordset.h:62
SqliteRecordset::getData
void getData(sqlite3 *db, const std::string &nodeName)
Constructs SQL query and retrieves data from the DB.
Definition: SqliteRecordset.cxx:25
SqliteRecordset::m_nodeName
std::string m_nodeName
Definition: SqliteRecordset.h:60
IRDBRecordset
IRDBRecordset is an abstract interface to the RDB Recordsets, which represent a snapshot of HVS-tagge...
Definition: IRDBRecordset.h:35
SqliteRecordset::nodeName
std::string nodeName() const override
Definition: SqliteRecordset.cxx:134
SqliteRecordset::begin
IRDBRecordset::const_iterator begin() const override
Definition: SqliteRecordset.cxx:143
RecordsVector
std::vector< IRDBRecord_ptr > RecordsVector
Definition: IRDBRecordset.h:24
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition: AthMessaging.h:55
SqliteRecordset::end
IRDBRecordset::const_iterator end() const override
Definition: SqliteRecordset.cxx:148
IRDBRecord
IRDBRecord is one record in the IRDBRecordset object.
Definition: IRDBRecord.h:27
SqliteRecordset
SqliteRecordset implements IRDBRecordset interface. It is a container of records read from an SQLite ...
Definition: SqliteRecordset.h:31
SqliteRecordset::m_def
SqliteInpDef_ptr m_def
Definition: SqliteRecordset.h:61
AthMessaging.h
SqliteRecordset::size
unsigned int size() const override
Definition: SqliteRecordset.cxx:129
SqliteRecordset::operator[]
const IRDBRecord * operator[](unsigned int index) const override
Definition: SqliteRecordset.cxx:139
IRDBRecordset.h
Definition of the abstract IRDBRecordset interface.
SqliteInpDef_ptr
std::shared_ptr< SqliteInpDef > SqliteInpDef_ptr
Definition: SqliteRecord.h:40
SqliteRecordset::SqliteRecordset
SqliteRecordset()
Construct empty recordset.
Definition: SqliteRecordset.cxx:19
SqliteRecordset::tagName
std::string tagName() const override
Definition: SqliteRecordset.h:47
IRDBRecordset::const_iterator
RecordsVector::const_iterator const_iterator
Definition: IRDBRecordset.h:52