1 /* 2 * PROJECT: ReactOS 3 * LICENSE: GPL - See COPYING in the top level directory 4 * FILE: base/services/audiosrv/audiosrv.h 5 * PURPOSE: Audio Service (private header) 6 * COPYRIGHT: Copyright 2007 Andrew Greenwood 7 */ 8 9 #ifndef _AUDIOSRV_PCH_ 10 #define _AUDIOSRV_PCH_ 11 12 #include <stdarg.h> 13 14 #include <windef.h> 15 #include <winbase.h> 16 #include <malloc.h> 17 #include <dbt.h> 18 #include <audiosrv/audiosrv.h> 19 20 #ifndef AUDIOSRV_PRIVATE_H 21 #define AUDIOSRV_PRIVATE_H 22 23 extern SERVICE_STATUS_HANDLE service_status_handle; 24 25 26 /* List management (pnp_list_manager.c) */ 27 28 VOID* 29 CreateDeviceDescriptor(WCHAR* path, BOOL is_enabled); 30 31 #define DestroyDeviceDescriptor(descriptor) free(descriptor) 32 33 BOOL 34 AppendAudioDeviceToList(PnP_AudioDevice* device); 35 36 BOOL 37 CreateAudioDeviceList(DWORD max_size); 38 39 VOID 40 DestroyAudioDeviceList(VOID); 41 42 43 /* Plug and Play (pnp.c) */ 44 45 BOOL 46 ProcessExistingDevices(VOID); 47 48 DWORD 49 ProcessDeviceArrival(DEV_BROADCAST_DEVICEINTERFACE* device); 50 51 BOOL 52 RegisterForDeviceNotifications(VOID); 53 54 VOID 55 UnregisterDeviceNotifications(VOID); 56 57 DWORD 58 HandleDeviceEvent( 59 DWORD dwEventType, 60 LPVOID lpEventData); 61 62 BOOL 63 StartSystemAudioServices(VOID); 64 65 /* Debugging */ 66 67 void logmsg(char* string, ...); 68 69 #endif 70 71 #endif /* _AUDIOSRV_PCH_ */ 72