mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.3 KiB
72 lines
2.3 KiB
//**************************************************************************
|
|
//
|
|
// Title : SchDat.h
|
|
//
|
|
// Date : 1998.03.10 1st making
|
|
//
|
|
// Author : Toshiba [PCS](PSY) Hideki Yagi
|
|
//
|
|
// Copyright 1997 Toshiba Corporation. All Rights Reserved.
|
|
//
|
|
// -------------------------------------------------------------------------
|
|
//
|
|
// Change log :
|
|
//
|
|
// Date Revision Description
|
|
// ------------ ---------- -----------------------------------------------
|
|
// 1998.03.10 000.0000 1st making.
|
|
//
|
|
//**************************************************************************
|
|
|
|
#ifndef REARRANGEMENT
|
|
#define INIT_DVD_DATA 0
|
|
#define VALID_DVD_DATA 1
|
|
#define INVALID_DVD_DATA 2
|
|
#define DVD_DATA_MAX 0x10000
|
|
#define SRB_POINTER_MAX 0x30
|
|
#endif REARRANGEMENT
|
|
|
|
class CScheduleData
|
|
{
|
|
public:
|
|
CScheduleData( void );
|
|
~CScheduleData( void );
|
|
BOOL Init( void );
|
|
BOOL SendData( PHW_STREAM_REQUEST_BLOCK pSrb );
|
|
DWORD calcWaitTime( PHW_STREAM_REQUEST_BLOCK pSrb );
|
|
void putSRB( PHW_STREAM_REQUEST_BLOCK pSrb );
|
|
PHW_STREAM_REQUEST_BLOCK getSRB( void );
|
|
PHW_STREAM_REQUEST_BLOCK checkTopSRB( void );
|
|
void flushSRB( void );
|
|
void FastSlowControl( PHW_STREAM_REQUEST_BLOCK pSrb );
|
|
BOOL removeSRB( PHW_STREAM_REQUEST_BLOCK pSRb );
|
|
DWORD GetDataPTS( PKSSTREAM_HEADER pStruc );
|
|
#ifndef REARRANGEMENT
|
|
void InitRearrangement(void);
|
|
WORD SetSrbPointerTable( PHW_STREAM_REQUEST_BLOCK pSrb );
|
|
void SkipInvalidDvdData(void);
|
|
void SetWdmBuff(PHW_STREAM_REQUEST_BLOCK pSrb, WORD wWdmBuffptr, WORD wReadPacketNumber, ULONG ulNumber);
|
|
void IncSendPacketNumber(void);
|
|
void SendWdmBuff( PHW_STREAM_REQUEST_BLOCK pSrb, IMPEGBuffer *MPBuff);
|
|
BOOL SendPacket(INT SendNumber);
|
|
#endif REARRANGEMENT
|
|
|
|
//private:
|
|
// DWORD GetDataPTS( PKSSTREAM_HEADER pStruc );
|
|
|
|
private:
|
|
PHW_STREAM_REQUEST_BLOCK pTopSrb;
|
|
PHW_STREAM_REQUEST_BLOCK pBottomSrb;
|
|
ULONG count;
|
|
|
|
public:
|
|
KEVENT m_Event;
|
|
BOOL fScanCallBack;
|
|
|
|
#ifndef REARRANGEMENT
|
|
char m_bDvdDataTable[DVD_DATA_MAX];//DVDÃÞ°ÀŠÇ—�ðÌÞÙ
|
|
LONG m_SrbPointerTable[SRB_POINTER_MAX]; //SRB pointer table
|
|
int m_SendPacketNumber;
|
|
#endif REARRANGEMENT
|
|
|
|
};
|