1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QT3DANIMATION_QKEYFRAMEANIMATION_P_H
5#define QT3DANIMATION_QKEYFRAMEANIMATION_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists for the convenience
12// of other Qt classes. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <private/qobject_p.h>
19#include <Qt3DAnimation/qkeyframeanimation.h>
20#include <private/qabstractanimation_p.h>
21
22QT_BEGIN_NAMESPACE
23
24namespace Qt3DAnimation {
25
26class QKeyframeAnimationPrivate : public QAbstractAnimationPrivate
27{
28public:
29 QKeyframeAnimationPrivate();
30
31 void calculateFrame(float position);
32
33 QList<float> m_framePositions;
34 QList<Qt3DCore::QTransform *> m_keyframes;
35 Qt3DCore::QTransform *m_target;
36 QEasingCurve m_easing;
37 QString m_animationName;
38 QString m_targetName;
39 float m_minposition;
40 float m_maxposition;
41 QKeyframeAnimation::RepeatMode m_startMode;
42 QKeyframeAnimation::RepeatMode m_endMode;
43 QVector3D m_baseScale;
44 QVector3D m_baseTranslation;
45 QQuaternion m_baseRotation;
46 QMetaObject::Connection m_positionConnection;
47
48 Q_DECLARE_PUBLIC(QKeyframeAnimation)
49};
50
51} // Qt3DAnimation
52
53QT_END_NAMESPACE
54
55#endif // QT3DANIMATION_QKEYFRAMEANIMATION_P_H
56

source code of qt3d/src/animation/frontend/qkeyframeanimation_p.h