File: kis_meta_data_backend_registry.cpp

package info (click to toggle)
krita 1%3A5.1.5%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 525,324 kB
  • sloc: cpp: 617,878; python: 15,597; xml: 8,427; ansic: 8,257; perl: 622; javascript: 438; sh: 214; sql: 129; lisp: 110; makefile: 8
file content (42 lines) | stat: -rw-r--r-- 1,011 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*
 *  SPDX-FileCopyrightText: 2007 Cyrille Berger <cberger@cberger.net>
 *  SPDX-FileCopyrightText: 2021 L. E. Segovia <amy@amyspark.me>
 *
 *  SPDX-License-Identifier: LGPL-2.1-or-later
 */

#include "kis_meta_data_backend_registry.h"

#include <QGlobalStatic>

#include <KoPluginLoader.h>

#include <kis_debug.h>

Q_GLOBAL_STATIC(KisMetadataBackendRegistry, s_instance)

KisMetadataBackendRegistry::KisMetadataBackendRegistry()
{
}

KisMetadataBackendRegistry::~KisMetadataBackendRegistry()
{
    Q_FOREACH (const QString &id, keys()) {
        delete get(id);
    }
    dbgRegistry << "Deleting KisMetadataBackendRegistry";
}

void KisMetadataBackendRegistry::init()
{
    KoPluginLoader::instance()->load("Krita/Metadata", "(Type == 'Service') and ([X-Krita-Version] == 28)");
}

KisMetadataBackendRegistry *KisMetadataBackendRegistry::instance()
{
    if (!s_instance.exists()) {
        dbgRegistry << "initializing KisMetadataBackendRegistry";
        s_instance->init();
    }
    return s_instance;
}