impegenc.h
来自「这是一个SIGMA方案的PMP播放器的UCLINUX程序,可播放DVD,VCD,」· C头文件 代码 · 共 83 行
H
83 行
/****************************************************************************** IVidDec.h : Type Definitions for mpeg encoder interface* REALmagic Quasar Hardware Library* Created by Aurelia Popa-Radu* Copyright Sigma Designs Inc* Sigma Designs Proprietary and confidential* Created on 5/8/01* Description:*****************************************************************************/#ifdef __cplusplusextern "C"{#endif #ifndef __IMPEGENCODER_H__#define __IMPEGENCODER_H__//////////////////////////////////////////////////////////////////////////////// MpegEncoder Abstract interfacestypedef HWLIB_INTERFACE tagIMpegEncoder{ struct tagIMpegEncoderVtbl *lpVtbl;} IMpegEncoder;typedef struct tagIMpegEncoderVtbl{ HWLIB_BEGIN_INTERFACE void ( *Delete) (IMpegEncoder* This, BOOL bDeleteObject); void ( *Init) (IMpegEncoder* This); void ( *Write) (IMpegEncoder* This, DWORD Address, DWORD Data); DWORD ( *Read) (IMpegEncoder* This, DWORD Address); DWORD ( *ReadTXFifo) (IMpegEncoder* pIMpegEncoder,DWORD *pTimeLeft_ms); QRESULT ( *HwReset) (IMpegEncoder* This, void* pUCode, DWORD nBytesUCode, void* pParams, DWORD nBytesParams, DWORD Info); BOOL ( *WriteCommand) (IMpegEncoder* This, DWORD Command, DWORD Info); BOOL ( *WriteEncodingParams) (IMpegEncoder* This, void* pData, DWORD nBytes, DWORD Info); BOOL ( *ReadData) (IMpegEncoder* This, DWORD Type, DWORD nBytes); BOOL ( *WriteData) (IMpegEncoder* This, DWORD Type, DWORD nBytes); void ( *SetCurrentIrqMask) (IMpegEncoder* This, DWORD IrqMask); DWORD ( *GetCurrentIrqMask) (IMpegEncoder* This); DWORD ( *GetHwIrqMask) (IMpegEncoder* This); DWORD ( *GetHwIrqStatus) (IMpegEncoder* This); void ( *InitPropertySet) (IMpegEncoder* This, void* pPropSet, DWORD dwSize); QRESULT ( *SetProperty) (IMpegEncoder* This, DWORD PropSet, DWORD PropId, DWORD Flags, void* pData, DWORD dwSizeIn, DWORD* pdwSizeOut); QRESULT ( *GetProperty) (IMpegEncoder* This, DWORD PropSet, DWORD PropId, DWORD Flags, void* pData, DWORD dwSizeIn, DWORD* pdwSizeOut); DWORD ( *GetMicrocodeVersion) (IMpegEncoder* This); QRESULT ( *Test) (IMpegEncoder* This,DWORD Command); HWLIB_END_INTERFACE} IMpegEncoderVtbl;#define IMpegEncoder_Delete(this,bDeleteObject) (this)->lpVtbl->Delete(this, bDeleteObject)#define IMpegEncoder_Init(this) (this)->lpVtbl->Init(this)#define IMpegEncoder_Write(this, Address, Data) (this)->lpVtbl->Write(this, Address, Data)#define IMpegEncoder_Read(this, Address) (this)->lpVtbl->Read(this, Address)#define IMpegEncoder_ReadTXFifo(this,pto) (this)->lpVtbl->ReadTXFifo(this,pto)#define IMpegEncoder_HwReset(this, pUCode, nBytesUCode, pParams, nBytesParams, Info)\ (this)->lpVtbl->HwReset(this, pUCode, nBytesUCode, pParams, nBytesParams, Info)#define IMpegEncoder_WriteCommand(this, Command, Info) (this)->lpVtbl->WriteCommand(this, Command, Info)#define IMpegEncoder_WriteEncodingParams(this, pData, nBytes, Info)\ (this)->lpVtbl->WriteEncodingParams(this, pData, nBytes, Info)#define IMpegEncoder_ReadData(this, Type, nBytes) (this)->lpVtbl->ReadData(this, Type, nBytes)#define IMpegEncoder_WriteData(this, Type, nBytes) (this)->lpVtbl->WriteData(this, Type, nBytes)#define IMpegEncoder_SetCurrentIrqMask(this, IrqMask) (this)->lpVtbl->SetCurrentIrqMask(this, IrqMask)#define IMpegEncoder_GetCurrentIrqMask(this) (this)->lpVtbl->GetCurrentIrqMask(this)#define IMpegEncoder_GetHwIrqMask(this) (this)->lpVtbl->GetHwIrqMask(this)#define IMpegEncoder_GetHwIrqStatus(this) (this)->lpVtbl->GetHwIrqStatus(this)#define IMpegEncoder_InitPropertySet(this, pPropSet, size) (this)->lpVtbl->InitPropertySet(this, pPropSet, size)#define IMpegEncoder_SetProperty(this, PropSet, PropId, Flags, pData, dwSizeIn, pdwSizeOut)\ (this)->lpVtbl->SetProperty(this, PropSet, PropId, Flags, pData, dwSizeIn, pdwSizeOut)#define IMpegEncoder_GetProperty(this, PropSet, PropId, Flags, pData, dwSizeIn, pdwSizeOut)\ (this)->lpVtbl->GetProperty(this, PropSet, PropId, Flags, pData, dwSizeIn, pdwSizeOut)#define IMpegEncoder_GetMicrocodeVersion(this) (this)->lpVtbl->GetMicrocodeVersion(this)#define IMpegEncoder_Test(this,Command) (this)->lpVtbl->Test(this,Command)#endif#ifdef __cplusplus}#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?