Marco MartinelliMultichannel support (#37)0a6adfe7 years agoHistory
83 lines · 3.1 KB · C
RawDownload
/*++ 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_ #define CB_EXTENSIBLE (sizeof(WAVEFORMATEXTENSIBLE) - sizeof(WAVEFORMATEX)) //=============================================================================// Referenced Forward//=============================================================================class CMiniportWaveCyclicStream;typedef CMiniportWaveCyclicStream *PCMiniportWaveCyclicStream; //=============================================================================// Classes//=============================================================================///////////////////////////////////////////////////////////////////////////////// CMiniportWaveCyclic //    class CMiniportWaveCyclic : public IMiniportWaveCyclic, public CUnknown {private:    BOOL                        m_fCaptureAllocated;    BOOL                        m_fRenderAllocated; protected:    PADAPTERCOMMON              m_AdapterCommon;    // Adapter common object    PPORTWAVECYCLIC             m_Port;             // Callback interface    PPCFILTER_DESCRIPTOR        m_FilterDescriptor; // Filter descriptor     ULONG                       m_NotificationInterval; // milliseconds.    ULONG                       m_SamplingFrequency;    // Frames per second.     PSERVICEGROUP               m_ServiceGroup;     // For notification.    KMUTEX                      m_SampleRateSync;   // Sync for sample rate      ULONG                       m_MaxDmaBufferSize; // Dma buffer size.     // All the below members should be updated by the child classes    ULONG                       m_MaxOutputStreams; // Max stream caps    ULONG                       m_MaxInputStreams;    ULONG                       m_MaxTotalStreams;     ULONG                       m_MinChannels;      // Format caps    ULONG                       m_MaxChannelsPcm;    ULONG                       m_MinBitsPerSamplePcm;    ULONG                       m_MaxBitsPerSamplePcm;    ULONG                       m_MinSampleRatePcm;    ULONG                       m_MaxSampleRatePcm; public:    DECLARE_STD_UNKNOWN();    CMiniportWaveCyclic(PUNKNOWN other);    ~CMiniportWaveCyclic();     IMP_IMiniportWaveCyclic;     NTSTATUS                    PropertyHandlerComponentId(IN PPCPROPERTY_REQUEST PropertyRequest);    NTSTATUS                    PropertyHandlerProposedFormat(IN PPCPROPERTY_REQUEST PropertyRequest);    NTSTATUS                    PropertyHandlerCpuResources(IN PPCPROPERTY_REQUEST PropertyRequest);    NTSTATUS                    PropertyHandlerGeneric(IN PPCPROPERTY_REQUEST PropertyRequest);    NTSTATUS                    PropertyHandlerPrivate(IN PPCPROPERTY_REQUEST PropertyRequest);     // Friends    friend class                CMiniportWaveCyclicStream;    friend class                CMiniportTopology;    friend void                 TimerNotify(IN PKDPC Dpc, IN PVOID DeferredContext, IN PVOID SA1, IN PVOID SA2);};typedef CMiniportWaveCyclic *PCMiniportWaveCyclic; #endif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t