diff options
| author | Girish Pattabiraman <[email protected]> | 2017-05-03 15:02:49 -0700 |
|---|---|---|
| committer | Girish Pattabiraman <[email protected]> | 2017-05-03 17:20:15 -0700 |
| commit | b9027f2b8124f5853dac4355ff4d9e85379e0e56 (patch) | |
| tree | 33487ba551e9e53ba5a000afc2ad8860892ef2fa /audio/sysvad/EndpointsCommon/AudioModuleHelper.h | |
| parent | 32dc5459e78107ce48412eef3653370f32274561 (diff) | |
Audio Modules Example
Delay APO
Package Project
Stream Position Bug Fix
SAL
Diffstat (limited to 'audio/sysvad/EndpointsCommon/AudioModuleHelper.h')
| -rw-r--r-- | audio/sysvad/EndpointsCommon/AudioModuleHelper.h | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/audio/sysvad/EndpointsCommon/AudioModuleHelper.h b/audio/sysvad/EndpointsCommon/AudioModuleHelper.h new file mode 100644 index 00000000..fa7a2c23 --- /dev/null +++ b/audio/sysvad/EndpointsCommon/AudioModuleHelper.h @@ -0,0 +1,95 @@ +/*++ + +Copyright (c) Microsoft Corporation All Rights Reserved + +Module Name: + + AudioModuleHelper.h + +Abstract: + + Simple helper for Audio Modules logic. + +--*/ + +#ifndef _SYSVAD_AUDIOMODULEHELPER_H_ +#define _SYSVAD_AUDIOMODULEHELPER_H_ + +// +// Module helper functions. +// +#pragma code_seg("PAGE") +NTSTATUS +AudioModule_GenericHandler_BasicSupport( + _In_ PAUDIOMODULE_PARAMETER_INFO ParameterInfo, + _Out_writes_bytes_opt_(*BufferCb) PVOID Buffer, + _Inout_ ULONG * BufferCb + ); + +#pragma code_seg("PAGE") +BOOLEAN +IsAudioModuleParameterValid( + _In_ PAUDIOMODULE_PARAMETER_INFO ParameterInfo, + _In_reads_bytes_opt_(BufferCb) PVOID Buffer, + _In_ ULONG BufferCb + ); + +#pragma code_seg("PAGE") +AUDIOMODULE * +AudioModule_FindModuleInList( + _In_ AUDIOMODULE * AudioModules, + _In_ ULONG AudioModuleCount, + _In_ GUID * ClassId, + _In_ ULONG InstanceId + ); + +#pragma code_seg("PAGE") +NTSTATUS +AudioModule_GenericHandler( + _In_ ULONG Verb, + _In_ ULONG ParameterId, + _In_ PAUDIOMODULE_PARAMETER_INFO ParameterInfo, + _Inout_updates_bytes_(ParameterInfo->Size) PVOID CurrentValue, + _In_reads_bytes_opt_(InBufferCb) PVOID InBuffer, + _In_ ULONG InBufferCb, + _Out_writes_bytes_opt_(*OutBufferCb) PVOID OutBuffer, + _Inout_ ULONG * OutBufferCb, + _In_ BOOL * ParameterChanged + ); + +// +// Miniport/Stream helper functions. +// +#pragma code_seg("PAGE") +NTSTATUS +AudioModule_GenericHandler_ModulesListRequest( + _In_ PPCPROPERTY_REQUEST PropertyRequest, + _In_ AUDIOMODULE * AudioModules, + _In_ ULONG AudioModuleCount + ); + +#pragma code_seg("PAGE") +NTSTATUS +AudioModule_GenericHandler_ModuleCommand( + _In_ PPCPROPERTY_REQUEST PropertyRequest, + _In_ AUDIOMODULE * AudioModules, + _In_ ULONG AudioModuleCount + ); + +#pragma code_seg("PAGE") +NTSTATUS +AudioModule_GenericHandler_ModuleNotificationDeviceId( + _In_ PPCPROPERTY_REQUEST PropertyRequest, + _In_ const GUID * NotificationDeviceId + ); + +#pragma code_seg("PAGE") +VOID +AudioModule_SendNotification( + _In_ PPORTCLSNOTIFICATIONS PortNotifications, + _In_ PVOID NotificationBuffer, + _In_ USHORT NotificationBufferCb + ); +#endif // _SYSVAD_AUDIOMODULEHELPER_H_ + + |
