117 lines
2.8 KiB
C
117 lines
2.8 KiB
C
|
/*
|
|||
|
<EFBFBD>N<EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><EFBFBD><EFBFBD>C<EFBFBD>u<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃C<EFBFBD><EFBFBD><EFBFBD>^<EFBFBD>t<EFBFBD>F<EFBFBD>[<EFBFBD>X
|
|||
|
<EFBFBD>iNP2)<EFBFBD>@Sachiko Yasukawa
|
|||
|
*/
|
|||
|
// Date | Author | Description
|
|||
|
// -----------+--------------+--------------------------------------------
|
|||
|
// 1998.03.27 | Hideki Yagi | Change the specification about
|
|||
|
// | | Get***Property().
|
|||
|
//
|
|||
|
|
|||
|
typedef enum {
|
|||
|
PowerOff,
|
|||
|
Stop,
|
|||
|
Pause,
|
|||
|
Play,
|
|||
|
Slow,
|
|||
|
Scan
|
|||
|
} LIBSTATE;
|
|||
|
|
|||
|
class IMPEGBuffer : public IMBoardListItem
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual DWORD GetPageNum()=0;
|
|||
|
virtual DWORD GetPageSize(DWORD PageNum)=0;
|
|||
|
virtual BOOL GetPagePointer(DWORD PageNum, DWORD *LinearAdd, DWORD *PhyAdd)=0;
|
|||
|
virtual DWORD GetBufferFlag()=0;
|
|||
|
};
|
|||
|
|
|||
|
class IMPEGBoardState
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL Init()=0;
|
|||
|
};
|
|||
|
|
|||
|
//class IMPEGBoardLibEvent
|
|||
|
//{
|
|||
|
//public:
|
|||
|
// virtual void Advice(PVOID)=0;
|
|||
|
// virtual HALEVENTTYPE GetEventType()=0;
|
|||
|
//};
|
|||
|
|
|||
|
class ITransfer
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL Init()=0;
|
|||
|
virtual BOOL SetSink(IMPEGBoardEvent *pEvent)=0;
|
|||
|
virtual BOOL UnSetSink(IMPEGBoardEvent *pEvent)=0;
|
|||
|
virtual BOOL SetDMABuffer(DWORD size, BYTE* LinerAdd, BYTE *PhysAdd)=0;
|
|||
|
};
|
|||
|
|
|||
|
class IStateObject;
|
|||
|
|
|||
|
class IBaseStream
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL Init()=0;
|
|||
|
virtual BOOL Play()=0;
|
|||
|
virtual BOOL Stop()=0;
|
|||
|
virtual BOOL Pause()=0;
|
|||
|
virtual BOOL Slow(DWORD)=0;
|
|||
|
virtual BOOL Scan(DWORD)=0;
|
|||
|
virtual BOOL SingleStep()=0;
|
|||
|
virtual LIBSTATE GetState()=0;
|
|||
|
virtual BOOL SendData(IMPEGBuffer *)=0;
|
|||
|
virtual BOOL SetStateObject(IMPEGBoardState *pState)=0;
|
|||
|
virtual BOOL SetTransferObject(ITransfer *pTransfer)=0;
|
|||
|
virtual BOOL SetTransferMode(HALSTREAMMODE)=0;
|
|||
|
virtual BOOL SetDataDirection( DirectionType type ) = 0;
|
|||
|
virtual BOOL GetDataDirection( DirectionType *ptype ) = 0;
|
|||
|
};
|
|||
|
|
|||
|
class IVideoProperty
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL GetVideoProperty(VIDEOPROPTYPE PropertyType, PVOID pProperty)=0;
|
|||
|
virtual BOOL SetVideoProperty(VIDEOPROPTYPE PropetyType, PVOID pProperty)=0;
|
|||
|
};
|
|||
|
|
|||
|
class IAudioProperty
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL GetAudioProperty(AUDIOPROPTYPE PropertyType, PVOID pProperty)=0;
|
|||
|
virtual BOOL SetAudioProperty(AUDIOPROPTYPE PropertyType, PVOID pProperty)=0;
|
|||
|
};
|
|||
|
|
|||
|
class ISubpicProperty
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL GetSubpicProperty(SUBPICPROPTYPE PropertyType, PVOID pProperty)=0;
|
|||
|
virtual BOOL SetSubpicProperty(SUBPICPROPTYPE PropertyType, PVOID pProperty)=0;
|
|||
|
};
|
|||
|
|
|||
|
class ICopyProtectProperty
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL CppInit() =0;
|
|||
|
virtual BOOL SetChlgKey(UCHAR *)=0;
|
|||
|
virtual BOOL GetChlgKey(UCHAR *)=0;
|
|||
|
virtual BOOL SetDVDKey1(UCHAR *)=0;
|
|||
|
virtual BOOL GetDVDKey2(UCHAR *)=0;
|
|||
|
virtual BOOL SetTitleKey(UCHAR *)=0;
|
|||
|
virtual BOOL SetDiscKey(UCHAR *)=0;
|
|||
|
};
|
|||
|
|
|||
|
class IMPEGBoard
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual BOOL Init()=NULL;
|
|||
|
virtual BOOL AddStreamObjectInterface(IBaseStream *)=NULL;
|
|||
|
virtual BOOL ReleaseStreamObjectInterface(IBaseStream *)=NULL;
|
|||
|
virtual BOOL PowerOn()=NULL;
|
|||
|
virtual BOOL PowerOff()=NULL;
|
|||
|
virtual BOOL SetSTC(DWORD)=NULL;
|
|||
|
virtual BOOL GetSTC(DWORD *)=NULL;
|
|||
|
virtual BOOL SetHALObjectInterface(IClassLibHAL *)=NULL;
|
|||
|
};
|