Leaked source code of windows server 2003
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.
 
 
 
 
 
 

71 lines
1.8 KiB

#pragma once
//==========================================================================;
//
// CDecoderVideoPort - Video Port interface definitions
//
// $Date: 14 Oct 1998 15:11:14 $
// $Revision: 1.1 $
// $Author: Tashjian $
//
// $Copyright: (c) 1997 - 1998 ATI Technologies Inc. All Rights Reserved. $
//
//==========================================================================;
#include "i2script.h"
#include "aticonfg.h"
#define DD_OK 0
class CWDMVideoPortStream;
class CDecoderVideoPort
{
public:
CDecoderVideoPort(PDEVICE_OBJECT pDeviceObject);
// Attributes
private:
PDEVICE_OBJECT m_pDeviceObject;
CATIHwConfiguration * m_pCATIConfig;
ULONG m_ring3VideoPortHandle;
ULONG_PTR m_ring3DirectDrawHandle;
HANDLE m_ring0VideoPortHandle;
HANDLE m_ring0DirectDrawHandle;
BOOL GetRing0VideoPortHandle();
BOOL GetRing0DirectDrawHandle();
// Implementation
public:
void Open();
void Close();
BOOL RegisterForDirectDrawEvents( CWDMVideoPortStream* pStream);
BOOL UnregisterForDirectDrawEvents( CWDMVideoPortStream* pStream);
BOOL ReleaseRing0VideoPortHandle();
BOOL ReleaseRing0DirectDrawHandle();
BOOL ConfigVideoPortHandle(ULONG info);
BOOL ConfigDirectDrawHandle(ULONG_PTR info);
HANDLE GetVideoPortHandle() { return m_ring0VideoPortHandle; }
HANDLE GetDirectDrawHandle() { return m_ring0DirectDrawHandle; }
void CloseDirectDraw() {
m_ring0DirectDrawHandle = 0;
m_ring3DirectDrawHandle = 0;
}
void CloseVideoPort() {
m_ring0VideoPortHandle = 0;
m_ring3VideoPortHandle = -1;
}
};