#ifndef __INC_POS_PGFX_MONLOCK_H
#define __INC_POS_PGFX_MONLOCK_H
/*******************************************************************
 Includes Release 24
 (C) Copyright 1995-1997 proDAD
     All Rights Reserved

 $AUT Holger Burkarth
 $DAT >>MonLock.h<<   25 Jan 1997    09:36:13 - (C) ProDAD
*******************************************************************/
#ifndef __INC_POS_PEXEC_LIST_H
#include <pExec/List.h>
#endif


/*----------------------------------
-----------------------------------*/
struct pOS_MonLock
{
  struct pOS_Node       mfl_Node;
  struct pOS_MonDevice *mfl_MonDev;
  UBYTE                 mfl_Access;  /* (enum pOS_MonLockAccess) */
  UBYTE                 mfl_Flags;   /* null */
  UWORD                 mfl_Count;   /* Mehrfachnutzung */

  UBYTE mfl_Reserved[32]; /* *** must be null */
};


enum pOS_MonLockAccess
{
  MONLKACC_Shared    = 0x00,
  MONLKACC_Exclusive = 0x01
};


/** result of pOS_SameMonObject() **/
enum pOS_SameMonLockType
{
  MONLKSF_None      = 0x0000, /* */
  MONLKSF_Different = 0x0000, /* */
  MONLKSF_Device    = 0x0001, /* Locks on same Device and Unit (xy.monitor,0) */
  MONLKSF_Object    = 0x0008, /* Locks on same Object (100%) */

  MONLKSF_Same = MONLKSF_Object
};


#endif
