KWin
Loading...
Searching...
No Matches
anidata_p.h
Go to the documentation of this file.
1/*
2 KWin - the KDE window manager
3 This file is part of the KDE project.
4
5 SPDX-FileCopyrightText: 2011 Thomas Lübking <thomas.luebking@web.de>
6 SPDX-FileCopyrightText: 2018 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
7
8 SPDX-License-Identifier: GPL-2.0-or-later
9*/
10
11#pragma once
12
14#include "effect/effectwindow.h"
15#include "effect/timeline.h"
16
17#include <QEasingCurve>
18
19namespace KWin
20{
21
26{
27public:
30
31private:
32 Q_DISABLE_COPY(FullScreenEffectLock)
33};
34
35class KWIN_EXPORT AniData
36{
37public:
38 AniData();
39 AniData(AnimationEffect::Attribute a, int meta, const FPx2 &to,
40 int delay, const FPx2 &from, bool waitAtSource,
41 const std::shared_ptr<FullScreenEffectLock> &lock = nullptr,
42 bool keepAlive = true, GLShader *shader = nullptr);
43
44 bool isActive() const;
45
46 inline bool isOneDimensional() const
47 {
48 return from[0] == from[1] && to[0] == to[1];
49 }
50
51 quint64 id{0};
52 QString debugInfo() const;
57 uint meta;
58 qint64 frozenTime;
59 qint64 startTime;
60 std::shared_ptr<FullScreenEffectLock> fullScreenEffectLock;
65 AnimationEffect::TerminationFlags terminationFlags;
66 GLShader *shader{nullptr};
67};
68
69} // namespace
70
71QDebug operator<<(QDebug dbg, const KWin::AniData &a);
QDebug operator<<(QDebug dbg, const KWin::AniData &a)
qint64 frozenTime
Definition anidata_p.h:58
TimeLine timeLine
Definition anidata_p.h:56
bool waitAtSource
Definition anidata_p.h:61
bool isOneDimensional() const
Definition anidata_p.h:46
qint64 startTime
Definition anidata_p.h:59
AnimationEffect::TerminationFlags terminationFlags
Definition anidata_p.h:65
std::shared_ptr< FullScreenEffectLock > fullScreenEffectLock
Definition anidata_p.h:60
EffectWindowDeletedRef deletedRef
Definition anidata_p.h:63
AnimationEffect::Attribute attribute
Definition anidata_p.h:53
EffectWindowVisibleRef visibleRef
Definition anidata_p.h:64
Base class for all KWin effects.
Definition effect.h:535
FullScreenEffectLock(Effect *effect)
Definition anidata.cpp:23