picture.datatype: gi_RastPort should not be directly accessed
[AROS.git] / rom / intuition / lockibase.c
blobf5f5a37e92d960adcb9879878f3457d106f4685d
1 /*
2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
3 Copyright © 2001-2003, The MorphOS Development Team. All Rights Reserved.
4 $Id$
6 Locks the access to all public fields of the IntuitionBase.
7 */
9 #include <proto/exec.h>
10 #include "intuition_intern.h"
12 /*****************************************************************************
14 NAME */
15 #include <proto/intuition.h>
17 AROS_LH1(ULONG, LockIBase,
19 /* SYNOPSIS */
20 AROS_LHA(ULONG, What, D0),
22 /* LOCATION */
23 struct IntuitionBase *, IntuitionBase, 69, Intuition)
25 /* FUNCTION
26 Locks Intuition. While you hold this lock, no fields of Intuition
27 will change. Please release this as soon as possible.
29 INPUTS
30 What - Which fields of Intuition should be locked. The only allowed
31 value for this is currently 0 which means to lock everything.
33 RESULT
34 The result of this function must be passed to UnlockIBase().
36 NOTES
37 You *must not* call this function if you have any locks on other
38 system resources like layers and LayerInfo locks.
40 EXAMPLE
42 BUGS
44 SEE ALSO
45 UnLockIBase()
47 INTERNALS
49 HISTORY
50 29-10-95 digulla automatically created from
51 intuition_lib.fd and clib/intuition_protos.h
53 *****************************************************************************/
55 AROS_LIBFUNC_INIT
57 ObtainSemaphore (GetPrivIBase(IntuitionBase)->IBaseLock);
59 return What;
60 AROS_LIBFUNC_EXIT
61 } /* LockIBase */