aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Library/ml_disc/discInfo.h
blob: 89f6d30e8923c692adc23caf2d27bc8232d06cb2 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#ifndef NULLSOFT_DISCINFO_HEADER
#define NULLSOFT_DISCINFO_HEADER

#include <windows.h>


// disc data array size (see decalrations in discInfo.cpp)
#define DISC_DATA_COUNT			0x0009

#define TEXT_BUFFER_SIZE 64



class DiscInfo
{
public:
	DiscInfo(void);
	DiscInfo(const wchar_t *info);
	~DiscInfo(void);

public:
	
	BOOL SetStringInfo(const wchar_t *info);
	const wchar_t* GetStringInfo(void);

	DWORD GetMedium(void);
	DWORD GetMediumType(void);
	DWORD GetMediumFormat(void);
	BOOL  GetProtectedDVD(void);
	BOOL  GetErasable(void);
	DWORD GetTracksNumber(void);
	DWORD GetSectorsUsed(void);
	DWORD GetSectorsFree(void);
	void SetSerialNumber(int serialNumber);
	int GetSerialNumber(void);

	BOOL GetRecordable(void);

	const wchar_t* GetMediumText(void);
	const wchar_t* GetMediumTypeText(void);
	const wchar_t* GetMediumFormatText(void);
	const wchar_t* GetProtectedDVDText(void);
	const wchar_t* GetErasableText(void);
	const wchar_t* GetTracksNumberText(void);
	const wchar_t* GetSectorsUsedText(void);
	const wchar_t* GetSectorsFreeText(void);

	const wchar_t* GetRecordableText(void);

protected:
	void ResetData(void);

private:
	wchar_t *strData;
	int	 serialNum;
	wchar_t buffer[TEXT_BUFFER_SIZE];
	DWORD data[DISC_DATA_COUNT];

};

#endif // NULLSOFT_DISCINFO_HEADER