home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 May / PCFMay2001.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / acntdefs.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  2.6 KB  |  81 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  2. //====================================================================
  3. //                                                                     
  4. //   Microsoft Site Server v3.00                                   
  5. //                                                                     
  6. //   Copyright (c) 1997-98 Microsoft Corporation.  All rights reserved.   
  7. //   THIS CODE AND INFORMATION IS PROVIDED 'AS IS' WITHOUT WARRANTY OF
  8. //   ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  9. //   THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  10. //   PARTICULAR PURPOSE.
  11. //=====================================================================
  12.  
  13. //----------------------------------------------------------------------------
  14. //
  15. //  File:       acntdefs.h
  16. //
  17. //  Contents:   IAcceptNotify interface helper enums and structs
  18. //
  19. //  Classes:
  20. //
  21. //  Functions:
  22. //
  23. //  History:
  24. //
  25. //----------------------------------------------------------------------------
  26.  
  27. cpp_quote("#ifndef __ACNTDEFS_H")
  28. cpp_quote("#define __ACNTDEFS_H")
  29. typedef struct tagNOTIFYDATA
  30. {
  31.     DWORD dwDataType;
  32.     unsigned long cbData;    //size of any extra data
  33.     [size_is(cbData)]    unsigned char * pvData; //extra data
  34. }  NOTIFYDATA;
  35.  
  36. typedef enum tagANDchAdvise
  37. {
  38.     AND_ADD = 0x1,        //this has been added
  39.     AND_DELETE = 0x2,    //this has been deleted
  40.     AND_MODIFY = 0x4,    //this has been modified
  41.     ANDM_ADVISE_ACTION = 0x7, //include add, delete or modify
  42.  
  43.     AND_TREATASDEEP =  0x100,     //directory or other container
  44.  
  45.     AND_DELETE_WHEN_DONE = 0x200, //delete content after processing notification
  46.  
  47.     ANDF_DATAINLINE = 0x20000,    //the notification has all the data inline
  48.     
  49. } ANDchAdvise;
  50.  
  51. typedef enum tagANMMapping
  52. {
  53.     ANM_ADD = 0x1,        //add this mapping
  54.     ANM_DELETE = 0x2,    //delete this mapping
  55.     ANM_MODIFY = 0x4,    //modify this mapping
  56.  
  57.     ANM_PHYSICALTOLOGICAL = 0x10, //use this to map from physical to logical
  58.     ANM_LOGICALTOPHYSICAL = 0x20, //use this to map from logical to physical
  59.  
  60. } ANDMapping;
  61.  
  62.  
  63. //all states may not be supported by all notifiers
  64. typedef enum tagANSStatus
  65. {
  66.     NSS_START,        //normal state, sending notifications
  67.     NSS_BEGINBATCH,    //At the start of a batch of notifications
  68.     NSS_INBATCH,        //Within a batch of notifications
  69.     NSS_ENDBATCH,        //Done with a batch of notifications
  70.     NSS_PAUSE,        //Paused notification, still processing incoming
  71.     NSS_STOP,        //stopped, not processing incoming or sending notifications
  72.  
  73.     NSS_PAUSEPENDING = 0x10000,    //pending change to pause
  74.     NSS_STOPPENDING = 0x20000    //pending change to stop
  75. } ANSStatus;    
  76.  
  77.  
  78.  
  79. cpp_quote("#endif")
  80. #pragma option pop /*P_O_Pop*/
  81.