Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

110 lines
3.2 KiB

  1. /*++ BUILD Version: 0001 // Increment this if a change has global effects
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. ntddmodm.h
  5. Abstract:
  6. This is the include file that defines all constants and types for
  7. accessing the modem device.
  8. Author:
  9. Tony Ercolano (tonye) 14-Jul-1995
  10. Revision History:
  11. --*/
  12. #ifndef _NTDDMODM_
  13. #define _NTDDMODM_
  14. #if _MSC_VER > 1000
  15. #pragma once
  16. #endif
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. //
  21. // NtDeviceIoControlFile IoControlCode values for this device.
  22. //
  23. #define IOCTL_MODEM_GET_PASSTHROUGH CTL_CODE(FILE_DEVICE_MODEM, 1,METHOD_BUFFERED,FILE_ANY_ACCESS)
  24. #define IOCTL_MODEM_SET_PASSTHROUGH CTL_CODE(FILE_DEVICE_MODEM, 2,METHOD_BUFFERED,FILE_ANY_ACCESS)
  25. #define IOCTL_MODEM_SET_DLE_MONITORING CTL_CODE(FILE_DEVICE_MODEM, 3,METHOD_BUFFERED,FILE_ANY_ACCESS)
  26. #define IOCTL_MODEM_GET_DLE CTL_CODE(FILE_DEVICE_MODEM, 4,METHOD_BUFFERED,FILE_ANY_ACCESS)
  27. #define IOCTL_MODEM_SET_DLE_SHIELDING CTL_CODE(FILE_DEVICE_MODEM, 5,METHOD_BUFFERED,FILE_ANY_ACCESS)
  28. #define IOCTL_MODEM_STOP_WAVE_RECEIVE CTL_CODE(FILE_DEVICE_MODEM, 6,METHOD_BUFFERED,FILE_ANY_ACCESS)
  29. #define IOCTL_MODEM_SEND_MESSAGE CTL_CODE(FILE_DEVICE_MODEM, 7,METHOD_BUFFERED,FILE_ANY_ACCESS)
  30. #define IOCTL_MODEM_GET_MESSAGE CTL_CODE(FILE_DEVICE_MODEM, 8,METHOD_BUFFERED,FILE_ANY_ACCESS)
  31. #define IOCTL_MODEM_SEND_GET_MESSAGE CTL_CODE(FILE_DEVICE_MODEM, 9,METHOD_BUFFERED,FILE_ANY_ACCESS)
  32. #define IOCTL_MODEM_SEND_LOOPBACK_MESSAGE CTL_CODE(FILE_DEVICE_MODEM, 10,METHOD_BUFFERED,FILE_ANY_ACCESS)
  33. #define IOCTL_MODEM_CHECK_FOR_MODEM CTL_CODE(FILE_DEVICE_MODEM, 11,METHOD_BUFFERED,FILE_ANY_ACCESS)
  34. #define IOCTL_MODEM_SET_MIN_POWER CTL_CODE(FILE_DEVICE_MODEM, 12,METHOD_BUFFERED,FILE_ANY_ACCESS)
  35. #define IOCTL_MODEM_WATCH_FOR_RESUME CTL_CODE(FILE_DEVICE_MODEM, 13,METHOD_BUFFERED,FILE_ANY_ACCESS)
  36. #define IOCTL_CANCEL_GET_SEND_MESSAGE CTL_CODE(FILE_DEVICE_MODEM, 14,METHOD_BUFFERED,FILE_ANY_ACCESS)
  37. #define IOCTL_SET_SERVER_STATE CTL_CODE(FILE_DEVICE_MODEM, 15,METHOD_BUFFERED,FILE_ANY_ACCESS)
  38. #define MODEM_NOPASSTHROUGH 0x00000000U
  39. #define MODEM_PASSTHROUGH 0x00000001U
  40. #define MODEM_DCDSNIFF 0x00000002U
  41. #define MODEM_NOPASSTHROUGH_INC_SESSION_COUNT 0x00000003U
  42. #define MODEM_DLE_MONITORING_OFF 0x00000000
  43. #define MODEM_DLE_MONITORING_ON 0x00000001
  44. #define MODEM_DLE_SHIELDING_OFF 0x00000000
  45. #define MODEM_DLE_SHIELDING_ON 0x00000001
  46. #define MODEM_OPEN_TYPE_TSP 0
  47. #define MODEM_OPEN_TYPE_CLIENT 1
  48. #define MODEM_OPEN_TYPE_WAVE 2
  49. typedef struct _MODEM_MESSAGE {
  50. ULONG TotalSize;
  51. ULONG Flags;
  52. ULONG SessionId;
  53. ULONG RequestId;
  54. ULONG Reserved[2];
  55. } MODEM_MESSAGE, *PMODEM_MESSAGE;
  56. #ifdef DEFINE_GUID
  57. //
  58. // Declare the GUID that represents the device interface for modems.
  59. //
  60. DEFINE_GUID(GUID_DEVINTERFACE_MODEM, 0x2c7089aa, 0x2e0e, 0x11d1, 0xb1, 0x14, 0x00, 0xc0, 0x4f, 0xc2, 0xaa, 0xe4);
  61. //
  62. // Obsolete device interface class GUID name.
  63. // (use of above GUID_DEVINTERFACE_* name is recommended).
  64. //
  65. #define GUID_CLASS_MODEM GUID_DEVINTERFACE_MODEM
  66. #endif //DEFINE_GUID
  67. #ifdef __cplusplus
  68. }
  69. #endif
  70. #endif // _NTDDMODM_