1 | /* This file is part of the KDE project |
2 | Copyright (C) 2005-2006 Matthias Kretz <kretz@kde.org> |
3 | |
4 | This library is free software; you can redistribute it and/or |
5 | modify it under the terms of the GNU Lesser General Public |
6 | License as published by the Free Software Foundation; either |
7 | version 2.1 of the License, or (at your option) version 3, or any |
8 | later version accepted by the membership of KDE e.V. (or its |
9 | successor approved by the membership of KDE e.V.), Nokia Corporation |
10 | (or its successors, if any) and the KDE Free Qt Foundation, which shall |
11 | act as a proxy defined in Section 6 of version 3 of the license. |
12 | |
13 | This library is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 | Lesser General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU Lesser General Public |
19 | License along with this library. If not, see <http://www.gnu.org/licenses/>. |
20 | |
21 | */ |
22 | #ifndef Phonon_ABSTRACTVIDEOOUTPUTBASE_H |
23 | #define Phonon_ABSTRACTVIDEOOUTPUTBASE_H |
24 | |
25 | #include "phonondefs.h" |
26 | #include "phonon_export.h" |
27 | #include "medianode.h" |
28 | #include <QObject> |
29 | |
30 | |
31 | #ifndef QT_NO_PHONON_VIDEO |
32 | |
33 | class QString; |
34 | |
35 | namespace Phonon |
36 | { |
37 | |
38 | namespace Experimental |
39 | { |
40 | class Visualization; |
41 | class VisualizationPrivate; |
42 | } // namespace Experimental |
43 | |
44 | class AbstractVideoOutputPrivate; |
45 | |
46 | /** \class AbstractVideoOutput abstractvideooutput.h phonon/AbstractVideoOutput |
47 | * \brief Common base class for all video outputs. |
48 | * |
49 | * \see VideoWidget |
50 | */ |
51 | class PHONON_EXPORT AbstractVideoOutput : public MediaNode |
52 | { |
53 | friend class Experimental::Visualization; |
54 | friend class Experimental::VisualizationPrivate; |
55 | P_DECLARE_PRIVATE(AbstractVideoOutput) |
56 | protected: |
57 | /** |
58 | * \internal |
59 | * Constructor that is called from derived classes. |
60 | * |
61 | * \param d the private object |
62 | */ |
63 | AbstractVideoOutput(AbstractVideoOutputPrivate &d); |
64 | }; |
65 | } //namespace Phonon |
66 | |
67 | #endif //QT_NO_PHONON_VIDEO |
68 | |
69 | |
70 | #endif // Phonon_ABSTRACTVIDEOOUTPUTBASE_H |
71 | |