File indexing completed on 2024-05-12 15:59:16
0001 /* 0002 * SPDX-FileCopyrightText: 2008 Cyrille Berger <cberger@cberger.net> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.1-or-later 0005 */ 0006 #include <QGlobalStatic> 0007 0008 #include "kis_debug.h" 0009 #include "kis_meta_data_merge_strategy_registry.h" 0010 #include "kis_meta_data_merge_strategy_p.h" 0011 0012 Q_GLOBAL_STATIC(KisMetaData::MergeStrategyRegistry, s_instance) 0013 0014 0015 using namespace KisMetaData; 0016 0017 MergeStrategyRegistry::MergeStrategyRegistry() 0018 { 0019 add(new DropMergeStrategy()); 0020 add(new PriorityToFirstMergeStrategy()); 0021 add(new OnlyIdenticalMergeStrategy()); 0022 add(new SmartMergeStrategy()); 0023 } 0024 0025 MergeStrategyRegistry::MergeStrategyRegistry(const MergeStrategyRegistry&) : KoGenericRegistry<const KisMetaData::MergeStrategy*>() 0026 { 0027 } 0028 0029 MergeStrategyRegistry& MergeStrategyRegistry::operator=(const MergeStrategyRegistry&) 0030 { 0031 return *this; 0032 } 0033 0034 MergeStrategyRegistry::~MergeStrategyRegistry() 0035 { 0036 Q_FOREACH (const QString &id, keys()) { 0037 delete get(id); 0038 } 0039 dbgRegistry << "Deleting MergeStrategyRegistry"; 0040 } 0041 0042 MergeStrategyRegistry* MergeStrategyRegistry::instance() 0043 { 0044 return s_instance; 0045 } 0046