Phonon  4.7.0
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Pages
backendcapabilities.h
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 
23 #ifndef Phonon_BACKENDCAPABILITIES_H
24 #define Phonon_BACKENDCAPABILITIES_H
25 
26 #include "phonon_export.h"
27 #include "objectdescription.h"
28 
29 #include <QtCore/QObject>
30 
31 
32 #ifdef __QT_SYNCQT__
33 // Tell syncqt that the BackendCapabilities namespace should be treated like a class
34 #pragma qt_class(Phonon::BackendCapabilities)
35 #pragma qt_sync_stop_processing
36 #endif
37 
38 template<class T> class QList;
39 class QStringList;
40 
41 namespace Phonon
42 {
43 
50 namespace BackendCapabilities
51 {
57  class Notifier : public QObject
58  {
59  Q_OBJECT
60  Q_SIGNALS:
65  void capabilitiesChanged();
66 
75 
76 #ifndef PHONON_NO_AUDIOCAPTURE
77 
85 #endif //PHONON_NO_AUDIOCAPTURE
86 
87 #ifndef PHONON_NO_VIDEOCAPTURE
88 
96 #endif //PHONON_NO_VIDEOCAPTURE
97  };
98 
114  PHONON_EXPORT Notifier *notifier();
115 
121  PHONON_EXPORT QStringList availableMimeTypes();
122 
130  PHONON_EXPORT bool isMimeTypeAvailable(const QString &mimeType);
131 
139 
140 #ifndef PHONON_NO_AUDIOCAPTURE
141 
148 #endif //PHONON_NO_AUDIOCAPTURE
149 
156 // PHONON_EXPORT QList<VideoOutputDevice> availableVideoOutputDevices();
157 
158 #ifndef PHONON_NO_VIDEOCAPTURE
159 
166 #endif //PHONON_NO_VIDEOCAPTURE
167 
187 #if !defined(PHONON_NO_VIDEOCAPTURE) && !defined(PHONON_NO_AUDIOCAPTURE)
189 #endif // NOT PHONON_NO_VIDEOCAPTURE AND NOT PHONON_NO_AUDIOCAPTURE
190 
197 // PHONON_EXPORT QList<VisualizationDescription> availableVisualizations();
198 
199 #ifndef QT_NO_PHONON_EFFECT
200 
207 #endif //QT_NO_PHONON_EFFECT
208 
209 //X /**
210 //X * Returns descriptions for the video effects the backend supports.
211 //X *
212 //X * \return A list of VideoEffectDescription objects that give a name and
213 //X * description for every supported video effect.
214 //X */
215 //X PHONON_EXPORT QList<EffectDescription> availableVideoEffects();
216 
223 // PHONON_EXPORT QList<AudioCodecDescription> availableAudioCodecs();
224 
231 // PHONON_EXPORT QList<VideoCodecDescription> availableVideoCodecs();
232 
239 // PHONON_EXPORT QList<ContainerFormatDescription> availableContainerFormats();
240 } // namespace BackendCapabilities
241 } // namespace Phonon
242 
243 
244 #endif // Phonon_BACKENDCAPABILITIES_H
245 // vim: sw=4 ts=4 tw=80