ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

mmdrv.h File Reference
#include <mmioctl.h>
#include <mmddk.h>
#include <stdio.h>
#include <debug.h>

Go to the source code of this file.

Data Structures

struct  WaveOverlapInfo
union  MediaHeader
struct  ThreadInfo
struct  LoopInfo
struct  SessionInfo

Defines

#define MAX_DEVICES   256
#define MAX_DEVICE_NAME_LENGTH   256
#define MAX_BUFFER_SIZE   1048576
#define MAX_WAVE_BYTES   1048576
#define WHDR_COMPLETE   0x80000000
#define IsWaveDevice(devicetype)   ( ( devicetype == WaveOutDevice ) || ( devicetype == WaveInDevice ) )
#define IsMidiDevice(devicetype)   ( ( devicetype == MidiOutDevice ) || ( devicetype == MidiInDevice ) )
#define IsAuxDevice(devicetype)   ( devicetype == AuxDevice )
#define DRVM_TERMINATE   0xFFFFFFFE
#define DRVM_INVALID   0xFFFFFFFF
#define ASSERT(condition)

Typedefs

typedef DWORD ThreadFunction

Enumerations

enum  DeviceType {
  WaveOutDevice, WaveInDevice, MidiOutDevice, MidiInDevice,
  AuxDevice
}
enum  WaveState { WavePlaying, WaveStopped, WaveReset, WaveRestart }

Functions

BOOL NotifyClient (SessionInfo *session_info, DWORD message, DWORD_PTR parameter1, DWORD_PTR parameter2)
MMRESULT ErrorToMmResult (UINT error_code)
MMRESULT CobbleDeviceName (DeviceType device_type, UINT device_id, PWCHAR out_device_name)
MMRESULT OpenKernelDevice (DeviceType device_type, UINT device_id, DWORD access, HANDLE *handle)
VOID CloseKernelDevice (HANDLE device_handle)
MMRESULT SetDeviceData (HANDLE device_handle, DWORD ioctl, PBYTE input_buffer, DWORD buffer_size)
MMRESULT GetDeviceData (HANDLE device_handle, DWORD ioctl, PBYTE output_buffer, DWORD buffer_size)
MMRESULT CreateSession (DeviceType device_type, UINT device_id, SessionInfo **session_info)
VOID DestroySession (SessionInfo *session)
SessionInfoGetSession (DeviceType device_type, UINT device_id)
MMRESULT StartSessionThread (SessionInfo *session_info)
MMRESULT CallSessionThread (SessionInfo *session_info, ThreadFunction function, PVOID thread_parameter)
DWORD HandleBySessionThread (DWORD_PTR private_handle, DWORD_PTR message, DWORD_PTR parameter)
DWORD GetDeviceCount (DeviceType device_type)
DWORD GetDeviceCapabilities (DeviceType device_type, UINT device_id, DWORD_PTR capabilities, DWORD capabilities_size)
DWORD OpenDevice (DeviceType device_type, UINT device_id, PVOID open_descriptor, DWORD flags, DWORD_PTR private_handle)
DWORD CloseDevice (DWORD_PTR private_handle)
DWORD PauseDevice (DWORD private_handle)
DWORD RestartDevice (DWORD private_handle)
DWORD ResetDevice (DWORD private_handle)
DWORD GetPosition (DWORD private_handle, PMMTIME time, DWORD time_size)
DWORD BreakLoop (DWORD private_handle)
DWORD QueryWaveFormat (DeviceType device_type, PVOID lpFormat)
DWORD WriteWaveBuffer (DWORD_PTR private_handle, PWAVEHDR wave_header, DWORD wave_header_size)
DWORD WaveThread (LPVOID parameter)
VOID PerformWaveIO (SessionInfo *session_info)

Variables

CRITICAL_SECTION critical_section

Generated on Mon May 28 2012 05:12:46 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.