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.

70 lines
1.5 KiB

  1. #pragma once
  2. //++
  3. //
  4. // Copyright (c) 2001 Microsoft Corporation
  5. //
  6. // FACILITY:
  7. //
  8. // Cluster Service
  9. //
  10. // MODULE DESCRIPTION:
  11. //
  12. // Header for Vss support within cluster service.
  13. //
  14. // ENVIRONMENT:
  15. //
  16. // User mode NT Service.
  17. //
  18. // AUTHOR:
  19. //
  20. // Conor Morrison
  21. //
  22. // CREATION DATE:
  23. //
  24. // 18-Apr-2001
  25. //
  26. // Revision History:
  27. //
  28. // X-1 CM Conor Morrison 18-Apr-2001
  29. // Initial version.
  30. //--
  31. #include "vss.h"
  32. #include "vswriter.h"
  33. // Derive a class from CVssWriter so that we can override some of the default
  34. // methods with our own funky cluster variants
  35. //
  36. // For more info search MSDN for CVssWriter.
  37. //
  38. class CVssWriterCluster : public CVssWriter
  39. {
  40. private:
  41. // callback when request for metadata comes in
  42. virtual bool STDMETHODCALLTYPE OnIdentify(IN IVssCreateWriterMetadata *pMetadata);
  43. // callback for prepare backup event
  44. virtual bool STDMETHODCALLTYPE OnPrepareBackup(
  45. IN IVssWriterComponents *pComponent
  46. );
  47. // callback for prepare snapsot event
  48. virtual bool STDMETHODCALLTYPE OnPrepareSnapshot();
  49. // callback for freeze event
  50. virtual bool STDMETHODCALLTYPE OnFreeze();
  51. // callback for thaw event
  52. virtual bool STDMETHODCALLTYPE OnThaw();
  53. // callback if current sequence is aborted
  54. virtual bool STDMETHODCALLTYPE OnAbort();
  55. };
  56. typedef CVssWriterCluster* PCVssWriterCluster;
  57. extern class CVssWriterCluster* g_pCVssWriterCluster;
  58. extern const VSS_ID g_VssIdCluster;
  59. extern bool g_bCVssWriterClusterSubscribed;