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.

85 lines
1.5 KiB

  1. /*++
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. fstub.h
  5. Abstract:
  6. Fstub private header file.
  7. Author:
  8. Matthew D Hendel (math) 01-Nov-1999
  9. Revision History:
  10. --*/
  11. #pragma once
  12. typedef struct _INTERNAL_DISK_GEOMETRY {
  13. DISK_GEOMETRY Geometry;
  14. LARGE_INTEGER DiskSize;
  15. } INTERNAL_DISK_GEOMETRY, *PINTERNAL_DISK_GEOMETRY;
  16. //
  17. // Verify that the INTERNAL_DISK_GEOMETRY structure matches the DISK_GEOMETRY
  18. // structure.
  19. //
  20. C_ASSERT (FIELD_OFFSET (DISK_GEOMETRY_EX, Geometry) ==
  21. FIELD_OFFSET (INTERNAL_DISK_GEOMETRY, Geometry) &&
  22. FIELD_OFFSET (DISK_GEOMETRY_EX, DiskSize) ==
  23. FIELD_OFFSET (INTERNAL_DISK_GEOMETRY, DiskSize));
  24. //
  25. // Debugging macros and flags
  26. //
  27. #define FSTUB_VERBOSE_LEVEL 4
  28. #if DBG
  29. VOID
  30. FstubDbgPrintPartition(
  31. IN PPARTITION_INFORMATION Partition,
  32. IN ULONG PartitionCount
  33. );
  34. VOID
  35. FstubDbgPrintDriveLayout(
  36. IN PDRIVE_LAYOUT_INFORMATION Layout
  37. );
  38. VOID
  39. FstubDbgPrintPartitionEx(
  40. IN PPARTITION_INFORMATION_EX PartitionEx,
  41. IN ULONG PartitionCount
  42. );
  43. VOID
  44. FstubDbgPrintDriveLayoutEx(
  45. IN PDRIVE_LAYOUT_INFORMATION_EX LayoutEx
  46. );
  47. VOID
  48. FstubDbgPrintSetPartitionEx(
  49. IN PSET_PARTITION_INFORMATION_EX SetPartition,
  50. IN ULONG PartitionNumber
  51. );
  52. #else
  53. #define FstubDbgPrintPartition(Partition, PartitionCount)
  54. #define FstubDbgPrintDriveLayout(Layout)
  55. #define FstubDbgPrintPartitionEx(PartitionEx, PartitionCount)
  56. #define FstubDbgPrintDriveLayoutEx(LayoutEx)
  57. #define FstubDbgPrintSetPartitionEx(SetPartition, PartitionNumber)
  58. #endif // !DBG