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

kbdmou.h
Go to the documentation of this file.
00001 /*
00002  * kbdmou.h
00003  *
00004  * Structures and definitions for Keyboard/Mouse class and port drivers.
00005  *
00006  * This file is part of the w32api package.
00007  *
00008  * Contributors:
00009  *   Created by Filip Navara <xnavara@volny.cz>
00010  *
00011  * THIS SOFTWARE IS NOT COPYRIGHTED
00012  *
00013  * This source code is offered for use in the public domain. You may
00014  * use, modify or distribute it freely.
00015  *
00016  * This code is distributed in the hope that it will be useful but
00017  * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
00018  * DISCLAIMED. This includes but is not limited to warranties of
00019  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00020  *
00021  */
00022 
00023 #pragma once
00024 
00025 #define _KBDMOU_
00026 
00027 #include <ntddkbd.h>
00028 #include <ntddmou.h>
00029 
00030 #define DD_KEYBOARD_PORT_DEVICE_NAME      "\\Device\\KeyboardPort"
00031 #define DD_KEYBOARD_PORT_DEVICE_NAME_U    L"\\Device\\KeyboardPort"
00032 #define DD_KEYBOARD_PORT_BASE_NAME_U      L"KeyboardPort"
00033 #define DD_POINTER_PORT_DEVICE_NAME       "\\Device\\PointerPort"
00034 #define DD_POINTER_PORT_DEVICE_NAME_U     L"\\Device\\PointerPort"
00035 #define DD_POINTER_PORT_BASE_NAME_U       L"PointerPort"
00036 
00037 #define DD_KEYBOARD_CLASS_BASE_NAME_U     L"KeyboardClass"
00038 #define DD_POINTER_CLASS_BASE_NAME_U      L"PointerClass"
00039 
00040 #define DD_KEYBOARD_RESOURCE_CLASS_NAME_U             L"Keyboard"
00041 #define DD_POINTER_RESOURCE_CLASS_NAME_U              L"Pointer"
00042 #define DD_KEYBOARD_MOUSE_COMBO_RESOURCE_CLASS_NAME_U L"Keyboard/Pointer"
00043 
00044 #define POINTER_PORTS_MAXIMUM             8
00045 #define KEYBOARD_PORTS_MAXIMUM            8
00046 
00047 #define KBDMOU_COULD_NOT_SEND_COMMAND     0x0000
00048 #define KBDMOU_COULD_NOT_SEND_PARAM       0x0001
00049 #define KBDMOU_NO_RESPONSE                0x0002
00050 #define KBDMOU_INCORRECT_RESPONSE         0x0004
00051 
00052 #define I8042_ERROR_VALUE_BASE            1000
00053 #define INPORT_ERROR_VALUE_BASE           2000
00054 #define SERIAL_MOUSE_ERROR_VALUE_BASE     3000
00055 
00056 #define IOCTL_INTERNAL_KEYBOARD_CONNECT \
00057   CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0080, METHOD_NEITHER, FILE_ANY_ACCESS)
00058 
00059 #define IOCTL_INTERNAL_KEYBOARD_DISCONNECT \
00060   CTL_CODE(FILE_DEVICE_KEYBOARD,0x0100, METHOD_NEITHER, FILE_ANY_ACCESS)
00061 
00062 #define IOCTL_INTERNAL_KEYBOARD_ENABLE \
00063   CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0200, METHOD_NEITHER, FILE_ANY_ACCESS)
00064 
00065 #define IOCTL_INTERNAL_KEYBOARD_DISABLE \
00066   CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0400, METHOD_NEITHER, FILE_ANY_ACCESS)
00067 
00068 #define IOCTL_INTERNAL_MOUSE_CONNECT \
00069   CTL_CODE(FILE_DEVICE_MOUSE, 0x0080, METHOD_NEITHER, FILE_ANY_ACCESS)
00070 
00071 #define IOCTL_INTERNAL_MOUSE_DISCONNECT \
00072   CTL_CODE(FILE_DEVICE_MOUSE, 0x0100, METHOD_NEITHER, FILE_ANY_ACCESS)
00073 
00074 #define IOCTL_INTERNAL_MOUSE_ENABLE \
00075   CTL_CODE(FILE_DEVICE_MOUSE, 0x0200, METHOD_NEITHER, FILE_ANY_ACCESS)
00076 
00077 #define IOCTL_INTERNAL_MOUSE_DISABLE \
00078   CTL_CODE(FILE_DEVICE_MOUSE, 0x0400, METHOD_NEITHER, FILE_ANY_ACCESS)
00079 
00080 typedef struct _CONNECT_DATA {
00081   PDEVICE_OBJECT ClassDeviceObject;
00082   PVOID ClassService;
00083 } CONNECT_DATA, *PCONNECT_DATA;
00084 
00085 typedef VOID
00086 (STDAPICALLTYPE *PSERVICE_CALLBACK_ROUTINE)(
00087   IN PVOID NormalContext,
00088   IN PVOID SystemArgument1,
00089   IN PVOID SystemArgument2,
00090   IN OUT PVOID SystemArgument3);
00091 
00092 #include <wmidata.h>

Generated on Sat May 26 2012 04:28:39 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.