2023-03-06 14:42:04 +01:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
// Copyright The Music Player Daemon Project
|
2015-03-01 00:48:44 +01:00
|
|
|
|
|
|
|
#ifndef MPD_TAG_ARCHIVE_HXX
|
|
|
|
#define MPD_TAG_ARCHIVE_HXX
|
|
|
|
|
2016-02-26 14:46:01 +01:00
|
|
|
class ArchiveFile;
|
2018-07-05 19:07:05 +02:00
|
|
|
class TagHandler;
|
2016-02-26 13:20:30 +01:00
|
|
|
class TagBuilder;
|
2015-03-01 00:48:44 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Scan the tags of a song file inside an archive. Invokes matching
|
|
|
|
* decoder plugins, but does not invoke the special "APE" and "ID3"
|
|
|
|
* scanners.
|
|
|
|
*
|
|
|
|
* @return true if the file was recognized (even if no metadata was
|
|
|
|
* found)
|
|
|
|
*/
|
|
|
|
bool
|
2016-02-26 15:07:30 +01:00
|
|
|
tag_archive_scan(ArchiveFile &archive, const char *path_utf8,
|
2018-07-05 19:07:05 +02:00
|
|
|
TagHandler &handler) noexcept;
|
2015-03-01 00:48:44 +01:00
|
|
|
|
2016-02-26 14:46:01 +01:00
|
|
|
/**
|
|
|
|
* Scan the tags of a song file inside an archive. Invokes matching
|
|
|
|
* decoder plugins, and falls back to generic scanners (APE and ID3)
|
|
|
|
* if no tags were found (but the file was recognized).
|
|
|
|
*
|
|
|
|
* @return true if the file was recognized (even if no metadata was
|
|
|
|
* found)
|
|
|
|
*/
|
|
|
|
bool
|
|
|
|
tag_archive_scan(ArchiveFile &archive, const char *path_utf8,
|
2018-01-21 11:41:13 +01:00
|
|
|
TagBuilder &builder) noexcept;
|
2016-02-26 14:46:01 +01:00
|
|
|
|
2015-03-01 00:48:44 +01:00
|
|
|
#endif
|