ntddpsch.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef _NTDDPSCH_
  7. #define _NTDDPSCH_
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #pragma pack(1)
  12. #define PS_COMPONENT_ADAPTER 1
  13. #define PS_COMPONENT_FLOW 2
  14. #define PS_COMPONENT_CONFORMER 3
  15. #define PS_COMPONENT_SHAPER 4
  16. #define PS_COMPONENT_DRRSEQ 5
  17. typedef struct _PS_COMPONENT_STATS {
  18. ULONG Type;
  19. ULONG Length;
  20. UCHAR Stats[1];
  21. } PS_COMPONENT_STATS,*PPS_COMPONENT_STATS;
  22. #pragma pack()
  23. #pragma pack(1)
  24. typedef struct _PS_CONFORMER_STATS {
  25. ULONG NonconformingPacketsScheduled;
  26. } PS_CONFORMER_STATS,*PPS_CONFORMER_STATS;
  27. #pragma pack()
  28. #pragma pack(1)
  29. typedef struct _PS_SHAPER_STATS {
  30. ULONG MaxPacketsInShaper;
  31. ULONG AveragePacketsInShaper;
  32. } PS_SHAPER_STATS,*PPS_SHAPER_STATS;
  33. #pragma pack()
  34. #pragma pack(1)
  35. typedef struct _PS_DRRSEQ_STATS {
  36. ULONG MaxPacketsInNetcard;
  37. ULONG AveragePacketsInNetcard;
  38. ULONG MaxPacketsInSequencer;
  39. ULONG AveragePacketsInSequencer;
  40. ULONG NonconformingPacketsTransmitted;
  41. } PS_DRRSEQ_STATS,*PPS_DRRSEQ_STATS;
  42. #pragma pack()
  43. #pragma pack(1)
  44. typedef struct _PS_FLOW_STATS {
  45. ULONG DroppedPackets;
  46. ULONG PacketsScheduled;
  47. ULONG PacketsTransmitted;
  48. LARGE_INTEGER BytesScheduled;
  49. LARGE_INTEGER BytesTransmitted;
  50. } PS_FLOW_STATS,*PPS_FLOW_STATS;
  51. #pragma pack()
  52. #pragma pack(1)
  53. typedef struct _PS_ADAPTER_STATS {
  54. ULONG OutOfPackets;
  55. ULONG FlowsOpened;
  56. ULONG FlowsClosed;
  57. ULONG FlowsRejected;
  58. ULONG FlowsModified;
  59. ULONG FlowModsRejected;
  60. ULONG MaxSimultaneousFlows;
  61. } PS_ADAPTER_STATS,*PPS_ADAPTER_STATS;
  62. #pragma pack()
  63. #define ADAPTER_FLOW_MODE_DIFFSERV 1
  64. #define ADAPTER_FLOW_MODE_STANDARD 2
  65. #ifdef __cplusplus
  66. }
  67. #endif
  68. #endif