Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_meta_data_type_info.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2009 Cyrille Berger <cberger@cberger.net>
3 *
4 * SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6
7#ifndef _KIS_META_DATA_TYPE_INFO_H_
8#define _KIS_META_DATA_TYPE_INFO_H_
9
10#include <QList>
11#include <QString>
12#include <kritametadata_export.h>
13
14namespace KisMetaData
15{
16class Parser;
17class Schema;
18class Value;
19class KRITAMETADATA_EXPORT TypeInfo
20{
21public:
37 class KRITAMETADATA_EXPORT Choice
38 {
39 public:
40 Choice(const Value&, const QString& hint);
41 Choice(const Choice&);
42 Choice& operator=(const Choice&);
43 ~Choice();
44 public:
45 const Value& value() const;
46 const QString& hint() const;
47 private:
48 struct Private;
49 Private* const d;
50 };
51private:
52 TypeInfo(PropertyType _propertiesType);
56 TypeInfo(PropertyType _propertiesType, const TypeInfo* _embedded);
61 TypeInfo(PropertyType _propertiesType, const TypeInfo* _embedded, const QList< Choice >&);
65 TypeInfo(Schema* _structureSchema, const QString& name);
66 ~TypeInfo();
67public:
68 PropertyType propertyType() const;
69 const TypeInfo* embeddedPropertyType() const;
70 const QList< Choice >& choices() const;
71 Schema* structureSchema() const;
72 const QString& structureName() const;
73 const Parser* parser() const;
77 bool hasCorrectType(const Value& value) const;
81 bool hasCorrectValue(const Value& value) const;
82public:
83 struct Private;
84private:
85 Private* const d;
86};
87}
88
89#endif
float value(const T *src, size_t ch)
Choice(const Value &, const QString &hint)
TypeInfo(PropertyType _propertiesType)
TypeInfo(PropertyType _propertiesType, const TypeInfo *_embedded, const QList< Choice > &)
TypeInfo(PropertyType _propertiesType, const TypeInfo *_embedded)