1
/*  This file is part of the KDE project.
2
3
    Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
4
5
    This library is free software: you can redistribute it and/or modify
6
    it under the terms of the GNU Lesser General Public License as published by
7
    the Free Software Foundation, either version 2.1 or 3 of the License.
8
9
    This library is distributed in the hope that it will be useful,
10
    but WITHOUT ANY WARRANTY; without even the implied warranty of
11
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
    GNU Lesser General Public License for more details.
13
14
    You should have received a copy of the GNU Lesser General Public License
15
    along with this library.  If not, see <http://www.gnu.org/licenses/>.
16
*/
17
18
#ifndef Phonon_QT7_MEDIANODEEVENT_H
19
#define Phonon_QT7_MEDIANODEEVENT_H
20
21
#include <QtCore/qnamespace.h>
22
23
QT_BEGIN_NAMESPACE
24
25
namespace Phonon
26
{
27
namespace QT7
28
{
29
    class QuickTimeVideoPlayer;
30
31
    class MediaNodeEvent
32
    {
33
        public:
34
            enum Type {
35
                AudioGraphAboutToBeDeleted,
36
                NewAudioGraph,
37
                AudioGraphInitialized,
38
                AudioGraphCannotPlay,
39
                AboutToRestartAudioStream,
40
                RestartAudioStreamRequest,
41
                VideoSinkAdded,
42
                VideoSinkRemoved,
43
                AudioSinkAdded,
44
                AudioSinkRemoved,
45
                VideoSourceAdded,
46
                VideoSourceRemoved,
47
                AudioSourceAdded,
48
                AudioSourceRemoved,
49
				VideoOutputCountChanged,
50
                VideoFrameSizeChanged,
51
                SetMediaObject,
52
                StartConnectionChange,
53
                EndConnectionChange,
54
				MediaPlaying
55
            };
56
57
            MediaNodeEvent(Type type, void *data = 0);
58
            virtual ~MediaNodeEvent();
59
            inline Type type() const{ return eventType; };
60
            inline void* data() const { return eventData; };
61
62
        private:
63
            Type eventType;
64
            void *eventData;
65
    };
66
67
}} // namespace Phonon::QT7
68
69
QT_END_NAMESPACE
70
71
#endif // Phonon_QT7_MEDIANODEEVENT_H