LMMS
Loading...
Searching...
No Matches
PluginIssue.h
Go to the documentation of this file.
1/*
2 * PluginIssue.h - PluginIssue class
3 *
4 * Copyright (c) 2019 Johannes Lorenz <j.git$$$lorenz-ho.me, $$$=@>
5 *
6 * This file is part of LMMS - https://lmms.io
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
12 *
13 * This program 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 * General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public
19 * License along with this program (see COPYING); if not, write to the
20 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301 USA.
22 *
23 */
24
25#ifndef LMMS_PLUGIN_ISSUE_H
26#define LMMS_PLUGIN_ISSUE_H
27
28#include <QDebug>
29#include <string>
30
31namespace lmms
32{
33
63
66{
67 static const char* msgFor(const PluginIssueType& it);
68
70 std::string m_info;
71
72public:
73 PluginIssue(PluginIssueType it, std::string msg = std::string())
74 : m_issueType(it), m_info(msg)
75 {
76 }
77 PluginIssueType type() const { return m_issueType; }
78 bool operator==(const PluginIssue& other) const;
79 bool operator<(const PluginIssue& other) const;
80 friend QDebug operator<<(QDebug stream, const PluginIssue& iss);
81};
82
83QDebug operator<<(QDebug stream, const PluginIssue& iss);
84
85} // namespace lmms
86
87#endif // LMMS_PLUGIN_ISSUE_H
Issue type bundled with informational string.
Definition PluginIssue.h:66
bool operator==(const PluginIssue &other) const
Definition PluginIssue.cpp:82
static const char * msgFor(const PluginIssueType &it)
Definition PluginIssue.cpp:33
PluginIssueType m_issueType
Definition PluginIssue.h:69
std::string m_info
Definition PluginIssue.h:70
friend QDebug operator<<(QDebug stream, const PluginIssue &iss)
Definition PluginIssue.cpp:98
PluginIssueType type() const
Definition PluginIssue.h:77
bool operator<(const PluginIssue &other) const
Definition PluginIssue.cpp:90
PluginIssue(PluginIssueType it, std::string msg=std::string())
Definition PluginIssue.h:73
const char * msg
Definition missing_descriptor.c:20
Definition AudioAlsa.cpp:35
QDataStream & operator<<(QDataStream &out, WaveMipMap &waveMipMap)
Definition BandLimitedWave.cpp:38
PluginIssueType
Definition PluginIssue.h:37
@ TooManyOutputChannels
Definition PluginIssue.h:43
@ PortHasNoMax
Definition PluginIssue.h:50
@ TooManyMidiInputChannels
Definition PluginIssue.h:44
@ DefaultValueNotInRange
Definition PluginIssue.h:52
@ UnknownPortType
Definition PluginIssue.h:40
@ TooManyMidiOutputChannels
Definition PluginIssue.h:45
@ MinGreaterMax
Definition PluginIssue.h:51
@ PortHasNoDef
Definition PluginIssue.h:48
@ Blocked
Definition PluginIssue.h:60
@ LogScaleMinMaxDifferentSigns
Definition PluginIssue.h:55
@ NoOutputChannel
Definition PluginIssue.h:46
@ TooManyInputChannels
Definition PluginIssue.h:42
@ UnknownPortFlow
Definition PluginIssue.h:39
@ NoIssue
Definition PluginIssue.h:61
@ BadPortType
port type not supported
Definition PluginIssue.h:59
@ PortHasNoMin
Definition PluginIssue.h:49
@ LogScaleMaxMissing
Definition PluginIssue.h:54
@ FeatureNotSupported
plugin requires functionality LMMS can't offer
Definition PluginIssue.h:57
@ LogScaleMinMissing
Definition PluginIssue.h:53