digiKam
Loading...
Searching...
No Matches
facedbschemaupdater.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2009-05-29
7 * Description : Face database schema updater
8 *
9 * SPDX-FileCopyrightText: 2007-2009 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 * SPDX-FileCopyrightText: 2020 by Nghia Duong <minhnghiaduong997 at gmail dot com>
12 *
13 * SPDX-License-Identifier: GPL-2.0-or-later
14 *
15 * ============================================================ */
16
17#pragma once
18
19// Local includes
20
22
23namespace Digikam
24{
25
26class FaceDbAccess;
27
29{
30public:
31
32 static int schemaVersion();
33
34public:
35
36 explicit FaceDbSchemaUpdater(FaceDbAccess* const dbAccess);
38
39 bool update();
40 void setObserver(InitializationObserver* const observer);
41
42private:
43
44 bool startUpdates();
45 bool makeUpdates();
46 bool createDatabase();
47 bool createTables();
48 bool createIndices();
49 bool createTriggers();
50 bool updateV1ToV2();
51 bool updateV2ToV5();
52 bool updateV3ToV5();
53 bool updateV4ToV5();
54
55private:
56
57 // Disable
59 FaceDbSchemaUpdater& operator=(const FaceDbSchemaUpdater&) = delete;
60
61private:
62
63 class Private;
64 Private* const d = nullptr;
65};
66
67} // namespace Digikam
Definition facedbaccess.h:35
Definition facedbschemaupdater.h:29
void setObserver(InitializationObserver *const observer)
Definition facedbschemaupdater.cpp:69
~FaceDbSchemaUpdater()
Definition facedbschemaupdater.cpp:64
static int schemaVersion()
Definition facedbschemaupdater.cpp:33
bool update()
Definition facedbschemaupdater.cpp:74
Definition collectionscannerobserver.h:47
Definition datefolderview.cpp:34