Phonon

mrl.h
1/* This file is part of the KDE project
2 Copyright (C) 2011 Harald Sitter <sitter@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_MRL_H
23#define PHONON_MRL_H
24
25#include <QUrl>
26
27#include "phonon_export.h"
28
29
30namespace Phonon
31{
32
33/** \class Mrl mrl.h phonon/Mrl
34 * Media Resource Locator - A QUrl particularly for MediaSources.
35 *
36 * Whenever working with URLs/URIs that actually are referencing a media resource
37 * a Mrl should be used rather than a QUrl. Mrl has functions particularly
38 * made for a media related use case and additionally overloads some of QUrl's
39 * functions to work more reasonable in a Phonon context.
40 *
41 * A Mrl can be used just like a QUrl.
42 *
43 * \ingroup Playback
44 * \author Harald Sitter <sitter@kde.org>
45 */
46class PHONON_EXPORT Mrl : public QUrl
47{
48public:
49 Mrl();
50 Mrl(const Mrl &copy);
51
52 Mrl(const QUrl &url);
53 Mrl(const QString &url);
54
55 Mrl &operator =(const Mrl &copy);
56#ifndef QT_NO_URL_CAST_FROM_STRING
57 Mrl &operator =(const QString &url);
58#endif
59
60 /**
61 * Returns the encoded representation of the MRL if it's valid; otherwise
62 * an empty QByteArray is returned. The output can be customized by passing
63 * flags with options.
64 *
65 * If the MRL is a local file it will first be encoded using the local encoding,
66 * otherwise it gets converted to UTF-8, and all non-ASCII characters are
67 * then percent encoded.
68 *
69 * \arg options QUrl::FormattingOptions to manipulate what the output should look like
70 *
71 * \returns the encoded MRL or an empty QByteArray if the MRL was invalid
72 */
73 QByteArray toEncoded(FormattingOptions options = None) const;
74};
75
76} // namespace Phonon
77
78
79#endif // PHONON_MRL_H
Media Resource Locator - A QUrl particularly for MediaSources.
Definition mrl.h:47
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:20:24 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.