Sayonara Player
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Utils
Tagging
TagWriter.h
1
/* ${CLASS_NAME}.h */
2
3
/*
4
* Copyright (C) 2011-2024 Michael Lugmair
5
*
6
* This file is part of sayonara player
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (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
16
* GNU General Public License for more details.
17
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
#ifndef SAYONARA_PLAYER_TAGWRITER_H
22
#define SAYONARA_PLAYER_TAGWRITER_H
23
24
#include <memory>
25
26
class
MetaData
;
27
class
QString;
28
class
QPixmap;
29
30
namespace
Tagging
31
{
32
class
TagWriter
33
{
34
public
:
35
virtual
~TagWriter
() =
default
;
36
37
virtual
bool
writeMetaData(
const
QString& filepath,
const
MetaData
& track) = 0;
38
39
virtual
bool
writeChangedMetaDataOnly(
const
MetaData
& oldTrack,
const
MetaData
& newTrack) = 0;
40
41
virtual
bool
updateMetaData(
const
MetaData
& track) = 0;
42
43
virtual
bool
writeCover(
const
QString& filepath,
const
QPixmap& cover) = 0;
44
45
virtual
bool
writeLyrics(
const
QString& filepath,
const
QString& lyricsData) = 0;
46
47
static
std::shared_ptr<TagWriter> create();
48
};
49
50
using
TagWriterPtr = std::shared_ptr<TagWriter>;
51
}
52
53
#endif
//SAYONARA_PLAYER_TAGWRITER_H
MetaData
Definition
MetaData.h:43
Tagging::TagWriter
Definition
TagWriter.h:33
Tagging
The GUI_TagEdit class.
Definition
Engine.h:33
Generated on
for Sayonara Player by
1.17.0