Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenmmdef.h
Go to the documentation of this file.
00001 /* 00002 * 00003 * COPYRIGHT: See COPYING in the top level directory 00004 * PROJECT: ReactOS kernel 00005 * FILE: lib/mmdrv/mmdef.h 00006 * PURPOSE: Multimedia Definitions (for mmdrv.dll) 00007 * PROGRAMMER: Andrew Greenwood 00008 * 00009 */ 00010 00011 #ifndef __INCLUDES_MMDEF_H__ 00012 #define __INCLUDES_MMDEF_H__ 00013 00014 //#define UNICODE 00015 00016 #define EXPORT __declspec(dllexport) 00017 00018 00019 //#include <stdio.h> 00020 //#include <windows.h> 00021 //#include <mmsystem.h> 00022 //#include <mmddk.h> 00023 00024 // This needs to be done to get winioctl.h to work: 00025 //typedef unsigned __int64 DWORD64, *PDWORD64; 00026 00027 //#include <winioctl.h> 00028 //#include "mmddk.h" 00029 00030 00031 #define SOUND_MAX_DEVICE_NAME 1024 // GUESSWORK 00032 #define SOUND_MAX_DEVICES 256 // GUESSWORK 00033 00034 00035 // If the root is \Device and the Device type is 00036 // WaveIn and the device number is 2, the full name is \Device\WaveIn2 00037 00038 #define WAVE_IN_DEVICE_NAME "\\Device\\WaveIn" 00039 #define WAVE_IN_DEVICE_NAME_U L"\\Device\\WaveIn" 00040 #define WAVE_OUT_DEVICE_NAME "\\Device\\WaveOut" 00041 #define WAVE_OUT_DEVICE_NAME_U L"\\Device\\WaveOut" 00042 00043 #define MIDI_IN_DEVICE_NAME "\\Device\\MidiIn" 00044 #define MIDI_IN_DEVICE_NAME_U L"\\Device\\MidiIn" 00045 #define MIDI_OUT_DEVICE_NAME "\\Device\\MidiOut" 00046 #define MIDI_OUT_DEVICE_NAME_U L"\\Device\\MidiOut" 00047 00048 #define AUX_DEVICE_NAME "\\Device\\MMAux" 00049 #define AUX_DEVICE_NAME_U L"\\Device\\MMAux" 00050 00051 00052 #define IOCTL_SOUND_BASE FILE_DEVICE_SOUND 00053 #define IOCTL_WAVE_BASE 0x0000 00054 #define IOCTL_MIDI_BASE 0x0080 00055 #define IOCTL_AUX_BASE 0x0100 00056 00057 // Wave device driver IOCTLs 00058 00059 #define IOCTL_WAVE_QUERY_FORMAT CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS) 00060 #define IOCTL_WAVE_SET_FORMAT CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0002, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00061 #define IOCTL_WAVE_GET_CAPABILITIES CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0003, METHOD_BUFFERED, FILE_READ_ACCESS) 00062 #define IOCTL_WAVE_SET_STATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0004, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00063 #define IOCTL_WAVE_GET_STATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0005, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00064 #define IOCTL_WAVE_GET_POSITION CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0006, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00065 #define IOCTL_WAVE_SET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0007, METHOD_BUFFERED, FILE_READ_ACCESS) 00066 #define IOCTL_WAVE_GET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0008, METHOD_BUFFERED, FILE_READ_ACCESS) 00067 #define IOCTL_WAVE_SET_PITCH CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0009, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00068 #define IOCTL_WAVE_GET_PITCH CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000A, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00069 #define IOCTL_WAVE_SET_PLAYBACK_RATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000B, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00070 #define IOCTL_WAVE_GET_PLAYBACK_RATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000C, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00071 #define IOCTL_WAVE_PLAY CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000D, METHOD_IN_DIRECT, FILE_WRITE_ACCESS) 00072 #define IOCTL_WAVE_RECORD CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000E, METHOD_OUT_DIRECT, FILE_WRITE_ACCESS) 00073 #define IOCTL_WAVE_BREAK_LOOP CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x000F, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00074 #define IOCTL_WAVE_SET_LOW_PRIORITY CTL_CODE(IOCTL_SOUND_BASE, IOCTL_WAVE_BASE + 0x0010, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00075 00076 // MIDI device driver IOCTLs 00077 00078 #define IOCTL_MIDI_GET_CAPABILITIES CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS) 00079 #define IOCTL_MIDI_SET_STATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0002, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00080 #define IOCTL_MIDI_GET_STATE CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0003, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00081 #define IOCTL_MIDI_SET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0004, METHOD_BUFFERED, FILE_READ_ACCESS) 00082 #define IOCTL_MIDI_GET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0005, METHOD_BUFFERED, FILE_READ_ACCESS) 00083 #define IOCTL_MIDI_PLAY CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0006, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00084 #define IOCTL_MIDI_RECORD CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0007, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00085 #define IOCTL_MIDI_CACHE_PATCHES CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0008, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00086 #define IOCTL_MIDI_CACHE_DRUM_PATCHES CTL_CODE(IOCTL_SOUND_BASE, IOCTL_MIDI_BASE + 0x0009, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00087 00088 // AUX device driver IOCTLs 00089 #define IOCTL_AUX_GET_CAPABILITIES CTL_CODE(IOCTL_SOUND_BASE, IOCTL_AUX_BASE + 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS) 00090 #define IOCTL_AUX_SET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_AUX_BASE + 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS) 00091 #define IOCTL_AUX_GET_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_AUX_BASE + 0x0003, METHOD_BUFFERED, FILE_READ_ACCESS) 00092 #define IOCTL_SOUND_GET_CHANGED_VOLUME CTL_CODE(IOCTL_SOUND_BASE, IOCTL_AUX_BASE + 0x0004, METHOD_BUFFERED, FILE_READ_ACCESS) 00093 00094 #endif Generated on Sun May 27 2012 04:24:43 for ReactOS by
1.7.6.1
|