~oif-team/ubuntu/natty/qt4-x11/xi2.1

« back to all changes in this revision

Viewing changes to src/3rdparty/phonon/mmf/effectfactory.h

  • Committer: Bazaar Package Importer
  • Author(s): Alessandro Ghersi
  • Date: 2009-11-02 18:30:08 UTC
  • mfrom: (1.2.2 upstream)
  • mto: (15.2.5 experimental)
  • mto: This revision was merged to the branch mainline in revision 88.
  • Revision ID: james.westby@ubuntu.com-20091102183008-b6a4gcs128mvfb3m
Tags: upstream-4.6.0~beta1
ImportĀ upstreamĀ versionĀ 4.6.0~beta1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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
 
 
19
#ifndef PHONON_MMF_EFFECTFACTORY_H
 
20
#define PHONON_MMF_EFFECTFACTORY_H
 
21
 
 
22
#include "abstractaudioeffect.h"
 
23
 
 
24
QT_BEGIN_NAMESPACE
 
25
 
 
26
namespace Phonon
 
27
{
 
28
namespace MMF
 
29
{
 
30
 
 
31
/**
 
32
 * @short Contains utility functions related to effects.
 
33
 */
 
34
class EffectFactory
 
35
{
 
36
public:
 
37
    /**
 
38
     * @short Creates an audio effect of type @p type.
 
39
     */
 
40
    static AbstractAudioEffect *createAudioEffect(AbstractAudioEffect::Type type,
 
41
                                                  QObject *parent);
 
42
 
 
43
    /**
 
44
     * @short Return the properties for effect @p type.
 
45
     *
 
46
     * This handles the effects for
 
47
     * BackendInterface::objectDescriptionProperties().
 
48
     */
 
49
    static QHash<QByteArray, QVariant> audioEffectDescriptions(AbstractAudioEffect::Type type);
 
50
 
 
51
    /**
 
52
     * @short Returns the indexes for the supported effects.
 
53
     *
 
54
     * This handles the effects for
 
55
     * BackendInterface::objectDescriptionIndexes().
 
56
     */
 
57
    static QList<int> effectIndexes();
 
58
 
 
59
private:
 
60
    static inline QHash<QByteArray, QVariant> constructEffectDescription(const QString &name,
 
61
                                                                         const QString &description);
 
62
 
 
63
    /**
 
64
     * This class is not supposed to be instantiated, so disable
 
65
     * the default constructor.
 
66
     */
 
67
    inline EffectFactory();
 
68
    Q_DISABLE_COPY(EffectFactory)
 
69
};
 
70
}
 
71
}
 
72
 
 
73
QT_END_NAMESPACE
 
74
 
 
75
#endif
 
76