Leaked source code of windows server 2003
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.

66 lines
1.5 KiB

  1. /*
  2. * volume.h - Volume ADT module description.
  3. */
  4. /* Types
  5. ********/
  6. /* handles */
  7. DECLARE_HANDLE(HVOLUMELIST);
  8. DECLARE_STANDARD_TYPES(HVOLUMELIST);
  9. DECLARE_HANDLE(HVOLUME);
  10. DECLARE_STANDARD_TYPES(HVOLUME);
  11. /* volume results returned by AddVolume() */
  12. typedef enum _volumeresult
  13. {
  14. VR_SUCCESS,
  15. VR_UNAVAILABLE_VOLUME,
  16. VR_OUT_OF_MEMORY,
  17. VR_INVALID_PATH
  18. }
  19. VOLUMERESULT;
  20. DECLARE_STANDARD_TYPES(VOLUMERESULT);
  21. /* Prototypes
  22. *************/
  23. /* volume.c */
  24. extern BOOL CreateVolumeList(DWORD, HWND, PHVOLUMELIST);
  25. extern void DestroyVolumeList(HVOLUMELIST);
  26. extern void InvalidateVolumeListInfo(HVOLUMELIST);
  27. PUBLIC_CODE void ClearVolumeListInfo(HVOLUMELIST);
  28. extern VOLUMERESULT AddVolume(HVOLUMELIST, LPCTSTR, PHVOLUME, LPTSTR, int);
  29. extern void DeleteVolume(HVOLUME);
  30. extern COMPARISONRESULT CompareVolumes(HVOLUME, HVOLUME);
  31. extern BOOL CopyVolume(HVOLUME, HVOLUMELIST, PHVOLUME);
  32. extern BOOL IsVolumeAvailable(HVOLUME);
  33. extern void GetVolumeRootPath(HVOLUME, LPTSTR, int);
  34. #ifdef DEBUG
  35. extern LPTSTR DebugGetVolumeRootPath(HVOLUME, LPTSTR, int);
  36. extern ULONG GetVolumeCount(HVOLUMELIST);
  37. #endif
  38. extern void DescribeVolume(HVOLUME, PVOLUMEDESC);
  39. extern TWINRESULT WriteVolumeList(HCACHEDFILE, HVOLUMELIST);
  40. extern TWINRESULT ReadVolumeList(HCACHEDFILE, HVOLUMELIST, PHHANDLETRANS);
  41. extern BOOL IsValidHVOLUME(HVOLUME);
  42. #if defined(DEBUG) || defined(VSTF)
  43. extern BOOL IsValidHVOLUMELIST(HVOLUMELIST);
  44. #endif