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.

93 lines
3.2 KiB

  1. //////////////////////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Module: IEmptyVolumeCache and IEmptyVolumeCacheCallBack interfaces
  4. // File: emptyvc.h
  5. //
  6. // Purpose: Defines IEmptyVolumeCache and IEmptyVolumeCacheCallBack
  7. // interface
  8. // Notes:
  9. // Mod Log: Created by Jason Cobb (2/97)
  10. //
  11. // Copyright (c)1997 Microsoft Corporation, All Rights Reserved
  12. //
  13. //////////////////////////////////////////////////////////////////////////////////////////////
  14. #ifndef __EMPTYVC_H
  15. #define __EMPTYVC_H
  16. //
  17. // GUID definition for the IApplicationManager interface
  18. //
  19. // IID_IEmptyVolumeCacheCallBack = {6E793361-73C6-11D0-8469-00AA00442901}
  20. // IID_IEmptyVolumeCache = {8FCE5227-04DA-11d1-A004-00805F8ABE06}
  21. DEFINE_GUID (IID_IEmptyVolumeCacheCallBack, 0x6E793361, 0x73C6, 0x11D0, 0x84, 0x69, 0x00, 0xAA, 0x00, 0x44, 0x29, 0x01);
  22. DEFINE_GUID (IID_IEmptyVolumeCache, 0x8fce5227, 0x4da, 0x11d1, 0xa0, 0x4, 0x0, 0x80, 0x5f, 0x8a, 0xbe, 0x6);
  23. //
  24. // IEmptyVolumeCache global Flags
  25. //
  26. #define EVCF_HASSETTINGS 0x00000001
  27. #define EVCF_ENABLEBYDEFAULT 0x00000002
  28. #define EVCF_REMOVEFROMLIST 0x00000004
  29. #define EVCF_ENABLEBYDEFAULT_AUTO 0x00000008
  30. #define EVCF_DONTSHOWIFZERO 0x00000010
  31. #define EVCF_SETTINGSMODE 0x00000020
  32. #define EVCF_OUTOFDISKSPACE 0x00000040
  33. //
  34. // IEmptyVolumeCacheCallBack global Flags
  35. //
  36. #define EVCCBF_LASTNOTIFICATION 0x00000001
  37. //////////////////////////////////////////////////////////////////////////////////////////////
  38. //
  39. // Class: CLISD_IEmptyVolumeCacheCallBack
  40. // Purpose: This is the CLISD_IEmptyVolumeCacheCallBack interface
  41. // Notes:
  42. // Mod Log: Created by Jason Cobb (2/97)
  43. //
  44. //////////////////////////////////////////////////////////////////////////////////////////////
  45. #undef INTERFACE
  46. #define INTERFACE IEmptyVolumeCacheCallBack
  47. interface IEmptyVolumeCacheCallBack : IUnknown
  48. {
  49. //
  50. // CLISD_IEmptyVolumeCacheCallBack interface members
  51. //
  52. STDMETHOD (ScanProgress) (THIS_ DWORDLONG, DWORD, LPCWSTR) PURE;
  53. STDMETHOD (PurgeProgress) (THIS_ DWORDLONG, DWORDLONG, DWORD, LPCWSTR) PURE;
  54. };
  55. typedef IEmptyVolumeCacheCallBack *LPIEMPTYVOLUMECACHECALLBACK;
  56. //////////////////////////////////////////////////////////////////////////////////////////////
  57. //
  58. // Class: IEmptyVolumeCache
  59. // Purpose: This is the IEmptyVolumeCache interface
  60. // Notes:
  61. // Mod Log: Created by Jason Cobb (2/97)
  62. //
  63. //////////////////////////////////////////////////////////////////////////////////////////////
  64. #undef INTERFACE
  65. #define INTERFACE IEmptyVolumeCache
  66. interface IEmptyVolumeCache : IUnknown
  67. {
  68. //
  69. // IEmptyVolumeCache interface members
  70. //
  71. STDMETHOD (Initialize) (THIS_ HKEY, LPCWSTR, LPWSTR *, LPWSTR *, DWORD *) PURE;
  72. STDMETHOD (GetSpaceUsed) (THIS_ DWORDLONG *, IEmptyVolumeCacheCallBack *) PURE;
  73. STDMETHOD (Purge) (THIS_ DWORDLONG, IEmptyVolumeCacheCallBack *) PURE;
  74. STDMETHOD (ShowProperties) (THIS_ HWND) PURE;
  75. STDMETHOD (Deactivate)(THIS_ DWORD *) PURE;
  76. };
  77. typedef IEmptyVolumeCache *LPIEMPTYVOLUMECACHE;
  78. #endif // __EMPTYVC_H