Krita Source Code Documentation
Loading...
Searching...
No Matches
KisKritaSensorPack.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#ifndef KISKRITASENSORPACK_H
8#define KISKRITASENSORPACK_H
9
10#include "kritapaintop_export.h"
11#include <boost/operators.hpp>
12
13#include <KisSensorData.h>
15
16
17struct PAINTOP_EXPORT KisKritaSensorData : boost::equality_comparable<KisKritaSensorData>
18{
20
21 inline friend bool operator==(const KisKritaSensorData &lhs, const KisKritaSensorData &rhs) {
22 return lhs.sensorPressure == rhs.sensorPressure &&
24 lhs.sensorXTilt == rhs.sensorXTilt &&
25 lhs.sensorYTilt == rhs.sensorYTilt &&
28 lhs.sensorSpeed == rhs.sensorSpeed &&
30 lhs.sensorRotation == rhs.sensorRotation &&
31 lhs.sensorDistance == rhs.sensorDistance &&
32 lhs.sensorTime == rhs.sensorTime &&
35 lhs.sensorFade == rhs.sensorFade &&
38 }
39
56};
57
58class PAINTOP_EXPORT KisKritaSensorPack : public KisSensorPackInterface
59{
60public:
68 enum class Checkability {
69 NotCheckable,
70 Checkable,
71 CheckableIfHasPrefix,
72 };
73
74public:
75 KisKritaSensorPack(Checkability checkability);
77
78 KisSensorPackInterface * clone() const override;
79
80 std::vector<const KisSensorData *> constSensors() const override;
81 std::vector<KisSensorData *> sensors() override;
82
83 const KisKritaSensorData& constSensorsStruct() const;
84 KisKritaSensorData& sensorsStruct();
85
86 bool compare(const KisSensorPackInterface *rhs) const override;
87 bool read(KisCurveOptionDataCommon &data, const KisPropertiesConfiguration *setting) const override;
88 void write(const KisCurveOptionDataCommon &data, KisPropertiesConfiguration *setting) const override;
89
90 int calcActiveSensorLength(const QString &activeSensorId) const override;
91
92private:
95};
96
97#endif // KISKRITASENSORPACK_H
int calcActiveSensorLength(const KisCurveOptionDataCommon &data, const QString &activeSensorId)
KisKritaSensorPack(const KisKritaSensorPack &rhs)=default
KisKritaSensorData m_data
Checkability m_checkability
KisSensorWithLengthData sensorTime
KisSensorData sensorYTilt
KisSensorWithLengthData sensorDistance
KisSensorData sensorTiltElevation
KisSensorData sensorPerspective
KisSensorData sensorTangentialPressure
KisSensorData sensorSpeed
KisSensorData sensorPressureIn
KisSensorData sensorRotation
KisSensorData sensorXTilt
KisSensorData sensorFuzzyPerStroke
KisSensorData sensorPressure
KisSensorData sensorTiltDirection
friend bool operator==(const KisKritaSensorData &lhs, const KisKritaSensorData &rhs)
KisDrawingAngleSensorData sensorDrawingAngle
KisSensorData sensorFuzzyPerDab
KisSensorWithLengthData sensorFade