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.

55 lines
1.3 KiB

  1. /****************************************************************************************************************
  2. FILENAME: Movefile.h
  3. COPYRIGHT 2001 Microsoft Corporation and Executive Software International, Inc.
  4. ***************************************************************************************************************/
  5. //The OS has a function called MoveFile. We wish to use our's not the OS's.
  6. #undef MoveFile
  7. //Moves a file to a new location on the disk.
  8. BOOL
  9. MoveFile(
  10. );
  11. //Called by MoveFile to move a file on a FAT drive.
  12. BOOL
  13. MoveFileFat(
  14. );
  15. //Called by MoveFile to move a file on an NTFS drive.
  16. BOOL
  17. MoveFileNtfs(
  18. );
  19. //Moves a piece of a file -- called by MoveFileFat or MoveFileNtfs
  20. BOOL
  21. MoveAPieceOfAFile(
  22. IN LONGLONG FileVcn,
  23. IN LONGLONG FreeLcn,
  24. IN LONGLONG FreeClusters
  25. );
  26. //If we cannot fully defragment a file, then partially defrag it by placing it in several locations on the disk.
  27. BOOL
  28. PartialDefrag(
  29. );
  30. //For debugging -- will display the extent list of a file.
  31. VOID
  32. ShowExtentList(
  33. );
  34. //Removes a file from it's file list.
  35. BOOL
  36. RemoveFileFromList(
  37. );
  38. //Adds a file to the appropriate file list.
  39. BOOL
  40. InsertFileInList(
  41. BOOL bPartialDefrag
  42. );