-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAudioCDTracks.h
executable file
·74 lines (53 loc) · 1.95 KB
/
AudioCDTracks.h
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
62
63
64
65
66
67
68
69
70
71
72
73
74
// AudioCDTracks.h: interface for the CAudioCDTracks class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_AUDIOCDTRACKS_H__C19DF98F_D6E7_41B4_9717_896D25D6D147__INCLUDED_)
#define AFX_AUDIOCDTRACKS_H__C19DF98F_D6E7_41B4_9717_896D25D6D147__INCLUDED_
#include "Track.h"
#include "RTFTitles.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
enum RetrieveMode
{
DontRetrieve,
RetrieveCDDB,
RetrieveCDText
};
class CAudioCDTracks : public CObject, public CRTFTitles
{
DECLARE_SERIAL (CAudioCDTracks)
public:
CAudioCDTracks ();
CAudioCDTracks (RetrieveMode mode);
LONG OpenCD(MCI_OPEN_PARMS& mciOpen);
virtual ~CAudioCDTracks();
CAudioCDTracks& operator= (CAudioCDTracks& t);
virtual void Serialize (CArchive& ar);
inline bool Aborted () { return m_bAborted; }
CString GetTrackLength (int nTrack);
bool GetCDText ();
bool GetCDDBInfo ();
inline int GetNumTracks () { return m_arrTrack.GetSize (); }
inline CTrack& GetTrack (int n) { return (CTrack&) *(m_arrTrack.GetAt (n)); }
inline CString GetTitle () { return m_strTitle; }
inline CString GetArtist () { return m_strArtist; }
inline CString GetSubtitle () { return m_strSubtitle; }
void SetTitle (CString strTitle) { m_strTitle = strTitle; }
void SetSubtitle (CString strSubtitle) { m_strSubtitle = strSubtitle; }
void SetTrackTexts (int nTrackNum, CString strTitle, CString strRemarks);
protected:
WORD GetTracksNum (MCI_OPEN_PARMS& mciOpen);
void ParseResult (CStdioFile* pFile);
void ParseQuery (CString strQueryRes, CString& strCategory, CString& strDiscId);
bool m_bAborted;
CStringArray m_arrLength;
CString m_strFramePos;
CString m_strCDLength;
CString m_strDiscId;
CString m_strTitle, m_strSubtitle;
CString m_strArtist;
CObArray m_arrTrack;
CString m_strDrive;
};
#endif // !defined(AFX_AUDIOCDTRACKS_H__C19DF98F_D6E7_41B4_9717_896D25D6D147__INCLUDED_)