1#ifndef TAG_PARSER_ID3V1TAG_H
2#define TAG_PARSER_ID3V1TAG_H
14 static constexpr TagType tagType = TagType::Id3v1Tag;
15 static constexpr std::string_view tagName =
"ID3v1 tag";
17 std::string_view typeName()
const override;
21 bool setValueConsideringTypeInfo(
KnownField field,
const TagValue &value,
const std::string &typeInfo);
22 bool hasField(
KnownField field)
const override;
23 void removeAllFields()
override;
24 std::size_t fieldCount()
const override;
25 bool supportsField(
KnownField field)
const override;
26 void ensureTextValuesAreProperlyEncoded()
override;
28 void parse(std::istream &sourceStream,
Diagnostics &diag);
29 void make(std::ostream &targetStream,
Diagnostics &diag);
32 void readValue(
TagValue &value, std::size_t maxLength,
const char *buffer);
33 void writeValue(
const TagValue &value, std::size_t length,
char *buffer, std::ostream &targetStream,
Diagnostics &diag);
The Diagnostics class is a container for DiagMessage.
The TagValue class wraps values of different types.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
Contains all classes and functions of the TagInfo library.
KnownField
Specifies the field.
TagTextEncoding
Specifies the text encoding.
TagType
Specifies the tag type.