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.

121 lines
3.7 KiB

  1. //****************************************************************************
  2. //
  3. // File: atmcfg.h
  4. // Content: This file contains the ATM device specific configuration
  5. //
  6. // Copyright (c) 1997-1998, Microsoft Corporation, all rights reserved
  7. //
  8. // History:
  9. // Thurs 5-28-98 BJohnson Created
  10. //
  11. //****************************************************************************
  12. #ifndef _ATMCFG_H_
  13. #define _ATMCFG_H_
  14. //
  15. // #ifndef HKEY
  16. // #define HKEY PVOID
  17. // #endif
  18. //
  19. //
  20. // ATM Configuration info
  21. //
  22. typedef struct tagATMCONFIG {
  23. ULONG cbSize; /* size of structure */
  24. ULONG cbTotalSize; /* Total mem used by struct & var data */
  25. ULONG ulFlags; /* flags for the device */
  26. ULONG ulCircuitFlags; /* flags for the circuit */
  27. HKEY hkeyDriver; /* handle to driver registry key */
  28. ULONG ulVendorOffset; /* offset of vendor specific data in
  29. bytes from the start */
  30. ULONG cbVendorSize; /* size of the vendor specific data
  31. field */
  32. ULONG ulReservedOffset; /* offset of reserved data in bytes
  33. from the start */
  34. ULONG cbReservedSize; /* size of the reserved data field */
  35. WCHAR wcData[1]; /* variable data */
  36. } ATMCONFIG, FAR * LPATMCONFIG;
  37. //
  38. // ATM Phone book data. This data is stored on a per connection basis
  39. // and is the structure returned for get and set dev config.
  40. //
  41. typedef struct tagATMPBCONFIG {
  42. ULONG ulGeneralOpt; /* General options */
  43. ULONG ulCircuitOpt; /* Circuit options */
  44. ULONG ulCircuitSpeed; /* Circuit Speed */
  45. USHORT usPvcVpi; /* PVC: VPI */
  46. USHORT usPvcVci; /* PVC: VCI */
  47. } ATMPBCONFIG, FAR * LPATMPBCONFIG;
  48. //
  49. // Flags for ATM Phone Book entry
  50. //
  51. //
  52. // ATM General Options
  53. //
  54. #define ATM_GENERAL_OPT_VENDOR_CONFIG 0x00000001L
  55. #define ATM_GENERAL_OPT_SHOW_STATUS 0x00000002L
  56. #define ATM_GENERAL_OPT_ENABLE_LOG 0x00000004L
  57. #define ATM_GENERAL_OPT_MASK 0x0000000FL
  58. #define ATM_GENERAL_OPT_DEFAULT 0x00000000L
  59. //
  60. // ATM Circuit Options
  61. //
  62. #define ATM_CIRCUIT_OPT_QOS_ADJUST 0x00000010L
  63. #define ATM_CIRCUIT_OPT_SPEED_ADJUST 0x00000020L
  64. #define ATM_CIRCUIT_OPT_SVC 0x00000040L
  65. #define ATM_CIRCUIT_OPT_PVC 0x00000080L
  66. #define ATM_CIRCUIT_OPT_MASK 0x000000F0L
  67. #define ATM_CIRCUIT_OPT_DEFAULT (ATM_CIRCUIT_OPT_SVC | ATM_CIRCUIT_OPT_QOS_ADJUST | ATM_CIRCUIT_OPT_SPEED_ADJUST)
  68. //
  69. // ATM QOS Flags
  70. //
  71. #define ATM_CIRCUIT_QOS_VBR 0x00000100L
  72. #define ATM_CIRCUIT_QOS_CBR 0x00000200L
  73. #define ATM_CIRCUIT_QOS_ABR 0x00000400L
  74. #define ATM_CIRCUIT_QOS_UBR 0x00000800L
  75. #define ATM_CIRCUIT_QOS_MASK 0x00000F00L
  76. #define ATM_CIRCUIT_QOS_DEFAULT (ATM_CIRCUIT_QOS_UBR)
  77. //
  78. // ATM Speed Flags
  79. //
  80. #define ATM_CIRCUIT_SPEED_LINE_RATE 0x00001000L
  81. #define ATM_CIRCUIT_SPEED_USER_SPEC 0x00002000L
  82. #define ATM_CIRCUIT_SPEED_512KB 0x00004000L
  83. #define ATM_CIRCUIT_SPEED_1536KB 0x00008000L
  84. #define ATM_CIRCUIT_SPEED_25MB 0x00010000L
  85. #define ATM_CIRCUIT_SPEED_155MB 0x00020000L
  86. #define ATM_CIRCUIT_SPEED_MASK 0x000FF000L
  87. #define ATM_CIRCUIT_SPEED_DEFAULT (ATM_CIRCUIT_SPEED_LINE_RATE)
  88. //
  89. // ATM Encapsulation Flags
  90. //
  91. #define ATM_CIRCUIT_ENCAP_NULL 0x00100000L
  92. #define ATM_CIRCUIT_ENCAP_LLC 0x00200000L
  93. #define ATM_CIRCUIT_ENCAP_MASK 0x00F00000L
  94. #define ATM_CIRCUIT_ENCAP_DEFAULT (ATM_CIRCUIT_ENCAP_NULL)
  95. #endif //_ATMCFG_H_