1 #include <proto/intuition.h>
3 #include "intuition_intern.h"
4 #include "monitorclass_private.h"
7 * Private internal function.
8 * Find a monitorclass object corresponsing to a given monitor ID.
10 OOP_Object
*FindMonitor(ULONG id
, struct IntuitionBase
*IntuitionBase
)
13 OOP_Object
*ret
= NULL
;
15 ObtainSemaphoreShared(&GetPrivIBase(IntuitionBase
)->MonitorListSem
);
17 for (n
= GetPrivIBase(IntuitionBase
)->MonitorList
.mlh_Head
; n
->mln_Succ
; n
= n
->mln_Succ
)
19 if (DoMethod((Object
*)n
, MM_CheckID
, id
))
21 ret
= (OOP_Object
*)n
;
26 ReleaseSemaphore(&GetPrivIBase(IntuitionBase
)->MonitorListSem
);