MPD
0.20.18
PlaylistError.hxx
Go to the documentation of this file.
1
/*
2
* Copyright 2003-2017 The Music Player Daemon Project
3
* http://www.musicpd.org
4
*
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License along
16
* with this program; if not, write to the Free Software Foundation, Inc.,
17
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18
*/
19
20
#ifndef MPD_PLAYLIST_ERROR_HXX
21
#define MPD_PLAYLIST_ERROR_HXX
22
23
#include <stdexcept>
24
25
class
Domain
;
26
27
enum class
PlaylistResult
{
28
SUCCESS
,
29
DENIED
,
30
NO_SUCH_SONG
,
31
NO_SUCH_LIST
,
32
LIST_EXISTS
,
33
BAD_NAME
,
34
BAD_RANGE
,
35
NOT_PLAYING
,
36
TOO_LARGE
,
37
DISABLED
,
38
};
39
40
extern
const
Domain
playlist_domain
;
41
42
class
PlaylistError
:
public
std::runtime_error {
43
PlaylistResult
code;
44
45
public
:
46
PlaylistError
(
PlaylistResult
_code,
const
char
*msg)
47
:std::runtime_error(msg), code(_code) {}
48
49
PlaylistResult
GetCode
()
const
{
50
return
code;
51
}
52
53
static
PlaylistError
NoSuchSong
() {
54
return
PlaylistError
(
PlaylistResult::NO_SUCH_SONG
,
55
"No such song"
);
56
}
57
58
static
PlaylistError
NoSuchList
() {
59
return
PlaylistError
(
PlaylistResult::NO_SUCH_LIST
,
60
"No such playlist"
);
61
}
62
63
static
PlaylistError
BadRange
() {
64
return
PlaylistError
(
PlaylistResult::BAD_RANGE
,
65
"Bad song index"
);
66
}
67
68
static
PlaylistError
NotPlaying
() {
69
return
PlaylistError
(
PlaylistResult::NOT_PLAYING
,
70
"Not playing"
);
71
}
72
};
73
74
#endif
PlaylistResult::DISABLED
PlaylistResult::LIST_EXISTS
PlaylistResult::NO_SUCH_SONG
PlaylistError::BadRange
static PlaylistError BadRange()
Definition:
PlaylistError.hxx:63
PlaylistResult::NOT_PLAYING
PlaylistResult::BAD_RANGE
PlaylistError::NoSuchList
static PlaylistError NoSuchList()
Definition:
PlaylistError.hxx:58
PlaylistResult
PlaylistResult
Definition:
PlaylistError.hxx:27
PlaylistError
Definition:
PlaylistError.hxx:42
PlaylistResult::DENIED
PlaylistResult::NO_SUCH_LIST
PlaylistResult::BAD_NAME
Domain
Definition:
Domain.hxx:33
PlaylistResult::SUCCESS
PlaylistError::PlaylistError
PlaylistError(PlaylistResult _code, const char *msg)
Definition:
PlaylistError.hxx:46
PlaylistError::NotPlaying
static PlaylistError NotPlaying()
Definition:
PlaylistError.hxx:68
PlaylistError::NoSuchSong
static PlaylistError NoSuchSong()
Definition:
PlaylistError.hxx:53
PlaylistError::GetCode
PlaylistResult GetCode() const
Definition:
PlaylistError.hxx:49
playlist_domain
const Domain playlist_domain
PlaylistResult::TOO_LARGE
Generated on Tue Apr 10 2018 16:35:00 for MPD by
1.8.14