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.
|
|
#pragma once
//==========================================================================;
//
// Video Decoder Device abstract base class definition
//
// $Date: 28 Aug 1998 14:43:46 $
// $Revision: 1.1 $
// $Author: Tashjian $
//
// $Copyright: (c) 1997 - 1998 ATI Technologies Inc. All Rights Reserved. $
//
//==========================================================================;
#include "viddefs.h"
#include "mytypes.h"
class CWDMVideoDecoder;
class CVideoDecoderDevice { private: BOOL m_bOutputEnabledSet; CWDMVideoDecoder* m_pDecoder;
public: CVideoDecoderDevice(); virtual ~CVideoDecoderDevice();
virtual int GetDefaultDecoderWidth() = 0; virtual int GetDefaultDecoderHeight() = 0;
virtual void SetRect(MRect &) = 0;
virtual void SetVBIEN(BOOL b) = 0; virtual void SetVBIFMT(BOOL b) = 0;
virtual void SaveState() = 0; virtual void RestoreState(DWORD dwStreamsOpen = -1) = 0;
void GetCrossbarProperty(PHW_STREAM_REQUEST_BLOCK); void SetCrossbarProperty(PHW_STREAM_REQUEST_BLOCK); virtual BOOL GoodPins(ULONG InPin, ULONG OutPin) = 0; virtual BOOL TestRoute(ULONG InPin, ULONG OutPin) = 0; virtual void Route(ULONG OutPin, ULONG InPin) = 0; virtual ULONG GetNoInputs() = 0; virtual ULONG GetNoOutputs() = 0; virtual ULONG GetPinInfo(KSPIN_DATAFLOW dir, ULONG idx, ULONG &related) = 0; virtual ULONG GetRoute(ULONG OutPin) = 0; virtual KSPIN_MEDIUM * GetPinMedium(KSPIN_DATAFLOW dir, ULONG idx) = 0;
virtual ErrorCode SetVideoInput(Connector c) = 0;
virtual NTSTATUS GetProcAmpProperty(ULONG, PLONG) = 0; virtual NTSTATUS SetProcAmpProperty(ULONG, LONG) = 0;
void GetDecoderProperty(PHW_STREAM_REQUEST_BLOCK); virtual void GetVideoDecoderCaps(PKSPROPERTY_VIDEODECODER_CAPS_S) = 0; virtual DWORD GetVideoDecoderStandard() = 0; virtual void GetVideoDecoderStatus(PKSPROPERTY_VIDEODECODER_STATUS_S) = 0; virtual BOOL IsOutputEnabled() = 0; void SetDecoderProperty(PHW_STREAM_REQUEST_BLOCK); virtual BOOL SetVideoDecoderStandard(DWORD) = 0; virtual void SetOutputEnabled(BOOL) = 0; void SetOutputEnabledOverridden(BOOL bOutputEnabledSet) { m_bOutputEnabledSet = bOutputEnabledSet; } BOOL IsOutputEnabledOverridden() { return m_bOutputEnabledSet; }
virtual void GetVideoPortProperty(PHW_STREAM_REQUEST_BLOCK pSrb) = 0; virtual void GetVideoPortVBIProperty(PHW_STREAM_REQUEST_BLOCK pSrb) = 0;
virtual void Set16BitDataStream(BOOL b) = 0; virtual BOOL IsHighOdd() = 0; virtual void SetHighOdd(BOOL b) = 0; virtual void ConfigVPSurfaceParams(PKSVPSURFACEPARAMS pSurfaceParams) = 0; virtual void ConfigVPVBISurfaceParams(PKSVPSURFACEPARAMS pSurfaceParams) = 0;
virtual int GetDecoderHeight() = 0;
virtual void GetVideoSurfaceOrigin(int*, int*) = 0; virtual void GetVBISurfaceOrigin(int*, int*) = 0; void SetVideoDecoder(CWDMVideoDecoder* pDecoder) { m_pDecoder = pDecoder; } };
|