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
2.0 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Copyright (C) Microsoft Corporation, 1996.
  4. //
  5. // File: acntdefs.h
  6. //
  7. // Contents: IAcceptNotify interface helper enums and structs
  8. //
  9. // Classes:
  10. //
  11. // Functions:
  12. //
  13. // History: 2-22-96 Dmitriy Meyerzon Created
  14. // 4-26-96 SSanu Ssync'd to latest spec
  15. //
  16. //----------------------------------------------------------------------------
  17. cpp_quote("#ifndef __ACNTDEFS_H")
  18. cpp_quote("#define __ACNTDEFS_H")
  19. typedef struct tagNOTIFYDATA
  20. {
  21. DWORD dwDataType;
  22. unsigned long cbData; //size of any extra data
  23. [size_is(cbData)] unsigned char * pvData; //extra data
  24. } NOTIFYDATA;
  25. typedef enum tagANDchAdvise
  26. {
  27. AND_ADD = 0x1, //this has been added
  28. AND_DELETE = 0x2, //this has been deleted
  29. AND_MODIFY = 0x4, //this has been modified
  30. ANDM_ADVISE_ACTION = 0x7, //include add, delete or modify
  31. AND_TREATASDEEP = 0x100, //directory or other container
  32. AND_DELETE_WHEN_DONE = 0x200, //delete content after processing notification
  33. ANDF_DATAINLINE = 0x20000, //the notification has all the data inline
  34. } ANDchAdvise;
  35. typedef enum tagANMMapping
  36. {
  37. ANM_ADD = 0x1, //add this mapping
  38. ANM_DELETE = 0x2, //delete this mapping
  39. ANM_MODIFY = 0x4, //modify this mapping
  40. ANM_PHYSICALTOLOGICAL = 0x10, //use this to map from physical to logical
  41. ANM_LOGICALTOPHYSICAL = 0x20, //use this to map from logical to physical
  42. } ANDMapping;
  43. //all states may not be supported by all notifiers
  44. typedef enum tagANSStatus
  45. {
  46. NSS_START, //normal state, sending notifications
  47. NSS_BEGINBATCH, //At the start of a batch of notifications
  48. NSS_INBATCH, //Within a batch of notifications
  49. NSS_ENDBATCH, //Done with a batch of notifications
  50. NSS_PAUSE, //Paused notification, still processing incoming
  51. NSS_STOP, //stopped, not processing incoming or sending notifications
  52. NSS_PAUSEPENDING = 0x10000, //pending change to pause
  53. NSS_STOPPENDING = 0x20000 //pending change to stop
  54. } ANSStatus;
  55. cpp_quote("#endif")