home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / Guide.lzx / Guide / pDOS / Lock.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-11  |  2.7 KB  |  88 lines

  1. @DATABASE "pDOS/Lock.h"
  2. @MASTER   "Work2:AD/IInc/pDOS/Lock.h"
  3. @REMARK   This file was created by ADtoHT 2.0 on 11-Mär-97  13:34:09
  4. @REMARK   Do not edit
  5. @REMARK   ADtoHT is © 1993-1995 Christian Stieber
  6.  
  7. @NODE MAIN "pDOS/Lock.h"
  8. @TOC "__pOS_Dev.guide/MAIN"
  9.  
  10. @{"pDOS/Lock.h" LINK File}
  11.  
  12.  
  13. @{b}Structures@{ub}
  14.  
  15. @{"pOS_FileLock" LINK "pDOS/Lock.h/File" 20}
  16.  
  17. @ENDNODE
  18. @NODE File "pDOS/Lock.h"
  19. #ifndef __INC_POS_PDOS_LOCK_H
  20. #define __INC_POS_PDOS_LOCK_H
  21. /*******************************************************************
  22.  Includes Release 24
  23.  (C) Copyright 1995-1997 proDAD
  24.      All Rights Reserved
  25.  
  26.  $AUT Holger Burkarth
  27.  $DAT >>Lock.h<<   02 Dec 1996    11:28:25 - (C) ProDAD
  28. *******************************************************************/
  29. #ifndef __INC_POS_PDOS_DOSTYPES_H
  30. #include <@{"pDOS/DosTypes.h" LINK "pDOS/DosTypes.h/File"}>
  31. #endif
  32. #ifndef __INC_POS_PEXEC_LIST_H
  33. #include <@{"pExec/List.h" LINK "pExec/List.h/File"}>
  34. #endif
  35.  
  36. /*----------------------------------
  37. -----------------------------------*/
  38. struct pOS_FileLock
  39. {
  40.   @{"struct pOS_Node" LINK "pExec/List.h/File" 18}       fl_Node;
  41.   @{"struct pOS_DosDevice" LINK "pDOS/DosDev.h/File" 256} *fl_DosDev;  /*  */
  42.   @{"UBYTE" LINK "pExec/Types.h/File" 95}                 fl_Access;  /* (enum pOS_FileLockAccess) */
  43.   @{"UBYTE" LINK "pExec/Types.h/File" 95}                 fl_Flags;   /* (enum pOS_FileLockFlags) */
  44.   @{"UWORD" LINK "pExec/Types.h/File" 93}                 fl_Count;   /* Mehrfachnutzung */
  45.  
  46.   @{"UBYTE" LINK "pExec/Types.h/File" 95} fl_Reserved[8]; /* *** must be null */
  47. };
  48.  
  49.  
  50. /** @{"pOS_LockObject()" LINK "pDOSD/pOS_LockObject"} **/
  51. enum pOS_FileLockAccess /** fl_Access **/
  52. {
  53.   FILELKACC_Shared    = 0x0000,
  54.   FILELKACC_Exclusive = 0x0001, /* nur einer darf */
  55.  
  56.   FILELKACC_Unique    = 0x0400, /* MultiAssigns werden NICHT berücksichtigt */
  57.   FILELKACC_NoReq     = 0x0800, /* Es wird kein Report-Requester geöffnet */
  58. };
  59.  
  60.  
  61. enum pOS_FileLockFlags /** fl_Flags **/
  62. {
  63.   FILELKF_Assign       =0x01, /* Lock auf Multi-Assign */
  64.   FILELKF_Net          =0x04, /* Lock is Net-Lock */
  65. };
  66.  
  67.  
  68. /*\\
  69. *** result of @{"pOS_SameDosObject()" LINK "pDOSD/pOS_SameDosObject"}
  70. ***
  71. *** if(@{"pOS_SameDosObject" LINK "pDOSD/pOS_SameDosObject"}(...) & FILELKSF_Object) => same lock
  72. *** if(@{"pOS_SameDosObject" LINK "pDOSD/pOS_SameDosObject"}(...) & FILELKSF_Device) => same device
  73. \\*/
  74. enum pOS_SameFileLockType
  75. {
  76.   FILELKSF_None      = 0x0000, /* */
  77.   FILELKSF_Different = 0x0000, /* */
  78.   FILELKSF_Device    = 0x0001, /* Locks on same Device and Unit (scsi.device,0) */
  79.   FILELKSF_DDev      = 0x0002, /* Locks on same DosDevice (a:, df0:) */
  80.   FILELKSF_Volume    = 0x0004, /* Locks on same Volume */
  81.   FILELKSF_Object    = 0x0008, /* Locks on same Object (100%) */
  82.  
  83.   FILELKSF_Same = FILELKSF_Object
  84. };
  85.  
  86. #endif
  87. @ENDNODE
  88.