aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Input/in_mp3/ID3v1.h
blob: 8763cd01172003fd51a640aafd6ccd4c8d82f43c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef NULLSOFT_IN_MP3_ID3V1_H
#define NULLSOFT_IN_MP3_ID3V1_H

#include <bfc/platform/types.h>
class ID3v1
{
public:
	ID3v1();
	int Decode(const void *data);
	// return -1 for empty, 1 for OK, 0 for "don't understand tag name"
	int GetString(const char *tag, wchar_t *data, int dataLen);
	// returns 1 for OK, 0 for "don't understand tag name"
	int SetString(const char *tag, const wchar_t *data);
	int Encode(void *data);
	bool IsDirty() { return dirty; }
	bool HasData() { return hasData; }
	void Clear();

private:
	char title[31],artist[31],album[31],comment[31];
	char year[5];
	unsigned char genre;
	unsigned char track;

	bool hasData;
	bool dirty;
};

#endif