File indexing completed on 2024-05-12 15:59:15
0001 /* 0002 * SPDX-FileCopyrightText: 2007-2008 Cyrille Berger <cberger@cberger.net> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.1-or-later 0005 */ 0006 0007 #ifndef _KIS_META_DATA_FILTER_H_ 0008 #define _KIS_META_DATA_FILTER_H_ 0009 0010 #include <kritametadata_export.h> 0011 class QString; 0012 0013 namespace KisMetaData 0014 { 0015 class Store; 0016 /** 0017 * This class is a base class for filtering a meta data store to alter some 0018 * information. For instance, remove author information or change edition 0019 * date. 0020 */ 0021 class Filter 0022 { 0023 public: 0024 virtual ~Filter(); 0025 /// @return true if the filter is enabled by default when exporting 0026 virtual bool defaultEnabled() const = 0; 0027 /// @return the id of this filter 0028 virtual QString id() const = 0; 0029 /// @return the name of this filter 0030 virtual QString name() const = 0; 0031 /// @return a description of this filter 0032 virtual QString description() const = 0; 0033 /** 0034 * Apply a filter on a meta data store. 0035 */ 0036 virtual void filter(KisMetaData::Store*) const = 0; 0037 }; 0038 } 0039 0040 #endif