2022-12-03 21:31:54 +00:00
|
|
|
#ifndef _CDVDREQUEST
|
|
|
|
#define _CDVDREQUEST
|
|
|
|
|
2023-01-29 22:58:21 +00:00
|
|
|
#include "dolphin/dvd.h"
|
2023-01-29 22:16:26 +00:00
|
|
|
#include "types.h"
|
2022-12-03 21:31:54 +00:00
|
|
|
|
2023-01-29 22:16:26 +00:00
|
|
|
class CDvdRequest {
|
|
|
|
public:
|
2023-01-29 22:58:21 +00:00
|
|
|
virtual ~CDvdRequest(){}; // 8
|
2023-01-29 22:16:26 +00:00
|
|
|
virtual void WaitUntilComplete() = 0; // c
|
2023-01-29 22:58:21 +00:00
|
|
|
virtual bool IsComplete() = 0; // 10
|
2023-01-29 22:16:26 +00:00
|
|
|
virtual void PostCancelRequest() = 0; // 14
|
|
|
|
virtual int GetMediaType() const = 0; // 18
|
|
|
|
};
|
2022-12-03 21:31:54 +00:00
|
|
|
|
2023-01-29 22:58:21 +00:00
|
|
|
class CRealDvdRequest : public CDvdRequest {
|
|
|
|
public:
|
|
|
|
~CRealDvdRequest();
|
|
|
|
void WaitUntilComplete();
|
|
|
|
bool IsComplete();
|
|
|
|
void PostCancelRequest();
|
|
|
|
int GetMediaType() const;
|
|
|
|
|
2023-02-01 08:13:54 +00:00
|
|
|
DVDFileInfo& FileInfo() { return mFileInfo; }
|
|
|
|
|
2023-01-29 22:58:21 +00:00
|
|
|
private:
|
|
|
|
DVDFileInfo mFileInfo;
|
|
|
|
};
|
|
|
|
|
2023-01-29 22:16:26 +00:00
|
|
|
class CARAMDvdRequest : public CDvdRequest {
|
|
|
|
public:
|
|
|
|
CARAMDvdRequest(uint i) : x4_dmaReq(i) {}
|
2023-01-29 22:58:21 +00:00
|
|
|
void WaitUntilComplete();
|
|
|
|
bool IsComplete();
|
|
|
|
void PostCancelRequest();
|
|
|
|
int GetMediaType() const;
|
|
|
|
|
2023-01-29 22:16:26 +00:00
|
|
|
private:
|
|
|
|
uint x4_dmaReq;
|
2022-12-03 21:31:54 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _CDVDREQUEST
|