ImagingTools Core SDK
CSqliteJsonDatabaseDelegateComp.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ImtCore includes
6#include <imtdb/CSqlJsonDatabaseDelegateComp.h>
7
8
9namespace imtdb
10{
11
12
13class CSqliteJsonDatabaseDelegateComp: public imtdb::CSqlJsonDatabaseDelegateComp
14{
15public:
16 typedef imtdb::CSqlJsonDatabaseDelegateComp BaseClass;
17
18 I_BEGIN_COMPONENT(CSqliteJsonDatabaseDelegateComp)
19 I_END_COMPONENT
20
21 // reimplemented (imtdb::CSqlJsonDatabaseDelegateComp)
22 virtual QByteArray GetSelectionQuery(
23 const QByteArray& objectId = QByteArray(),
24 int offset = 0,
25 int count = -1,
26 const iprm::IParamsSet* paramsPtr = nullptr) const override;
27 virtual bool CreateSortQuery(const imtbase::ICollectionFilter& collectionFilter, QString& sortQuery) const override;
28 virtual bool CreateObjectFilterQuery(const iprm::IParamsSet& filterParams, QString& filterQuery) const override;
29 virtual bool CreateTextFilterQuery(const imtbase::ICollectionFilter& collectionFilter, QString& textFilterQuery) const override;
30 virtual bool CreatePaginationQuery(int offset, int count, QByteArray& paginationQuery) const override;
31 virtual bool CreateTimeFilterQuery(const imtbase::ITimeFilterParam& timeFilter, QString& timeFilterQuery, const QString& fieldId = QString()) const override;
32 virtual QByteArray GetObjectSelectionQuery(const QByteArray& objectId, const iprm::IParamsSet* paramsPtr = nullptr) const override;
33};
34
35
36} // namespace imtdb
37
38
Database Abstraction Layer (ORM Framework) for ImtCore applications.