Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

94 lines
2.3 KiB

/*++
Copyright (c) 1997-2000 Microsoft Corporation All Rights Reserved
Module Name:
minwave.h
Abstract:
Definition of wavecyclic miniport class.
--*/
#ifndef _MSVAD_MINWAVE_H_
#define _MSVAD_MINWAVE_H_
#include "basewave.h"
//=============================================================================
// Referenced Forward
//=============================================================================
class CMiniportWaveCyclicStream;
typedef CMiniportWaveCyclicStream *PCMiniportWaveCyclicStream;
//=============================================================================
// Classes
//=============================================================================
///////////////////////////////////////////////////////////////////////////////
// CMiniportWaveCyclic
//
class CMiniportWaveCyclic :
public CMiniportWaveCyclicMSVAD,
public IMiniportWaveCyclic,
public CUnknown
{
private:
BOOL m_fCaptureAllocated;
BOOL m_fPcmRenderAllocated;
BOOL m_fAc3RenderAllocated;
public:
DECLARE_STD_UNKNOWN();
DEFINE_STD_CONSTRUCTOR(CMiniportWaveCyclic);
~CMiniportWaveCyclic();
IMP_IMiniportWaveCyclic;
protected:
NTSTATUS ValidateFormat
(
IN PKSDATAFORMAT pDataFormat
);
// Friends
friend class CMiniportWaveCyclicStream;
friend class CMiniportTopologySimple;
};
typedef CMiniportWaveCyclic *PCMiniportWaveCyclic;
///////////////////////////////////////////////////////////////////////////////
// CMiniportWaveCyclicStream
//
class CMiniportWaveCyclicStream :
public CMiniportWaveCyclicStreamMSVAD,
public CUnknown
{
protected:
PCMiniportWaveCyclic m_pMiniportLocal;
BOOL m_fFormatAc3;
public:
DECLARE_STD_UNKNOWN();
DEFINE_STD_CONSTRUCTOR(CMiniportWaveCyclicStream);
~CMiniportWaveCyclicStream();
NTSTATUS Init
(
IN PCMiniportWaveCyclic Miniport,
IN ULONG Channel,
IN BOOLEAN Capture,
IN PKSDATAFORMAT DataFormat
);
// Friends
friend class CMiniportWaveCyclic;
};
typedef CMiniportWaveCyclicStream *PCMiniportWaveCyclicStream;
#endif