home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Global Amiga Experience
/
globalamigaexperience.iso
/
compressed
/
development
/
clusterdemo.dms
/
clusterdemo.adf
/
Modules.lha
/
modules
/
txt
/
Levels.def
< prev
next >
Wrap
Text File
|
1994-05-25
|
5KB
|
109 lines
|##########|
|#MAGIC #|CLABLLEP
|#PROJECT #|"ImportHelp"
|#PATHS #|"StdProject"
|#FLAGS #|-x---x--x---x-x-----------------
|#USERSW #|--------------------------------
|#USERMASK#|--------------------------------
|#SWITCHES#|xx---xxxxx------
|##########|
DEFINITION MODULE Levels;
FROM System IMPORT PROC;
VAR
ActLevel : INTEGER; (* Aktuelle Aktions Ebene *)
(*----------------------------------------------------------------------------*)
(* Funktion : Alloziert ein Speicherstück, in der Größe des Typs von p. *)
(* Parameter : p -> Zeigervariable, der die Adresse des allozierten *)
(* Speicherstücks zugewießen wird. *)
(* Bemerkung : p darf kein offener Typ sein, war Allozierung nicht möglich, *)
(* wird ein Laufzeitfehler ausgelößt *)
(*----------------------------------------------------------------------------*)
PROCEDURE New(VAR p : ANYPTR);
(*----------------------------------------------------------------------------*)
(* Funktion : Wie New, jedoch erhält man einen Boolean-Wert zurück, ob die- *)
(* Allozierung möglich war, oder nicht. *)
(*----------------------------------------------------------------------------*)
PROCEDURE CheckNew(VAR p : ANYPTR):BOOLEAN;
(*----------------------------------------------------------------------------*)
(* Funktion : Gibt ein Speicherstück wieder frei. *)
(* Parameter : p <- Zieger auf das Speicherstück, das Freigegeben werden soll.*)
(*----------------------------------------------------------------------------*)
PROCEDURE Dispose(VAR p : ANYPTR);
(*----------------------------------------------------------------------------*)
(* Funktion : Gibt alle mit Levels allozierten Speicherstück wieder frei. *)
(* Parameter : p <- Zeiger auf das Speicherstück, das Freigegeben werden soll.*)
(*----------------------------------------------------------------------------*)
PROCEDURE DisposeAll;
(*----------------------------------------------------------------------------*)
(* Funktion : Alloziert ein Speicherstück der Länge Size. *)
(* Parameter : p -> Zeiger auf allozierte Speicherstück. *)
(* Size <- Anzahl Bytes, die alloziert werden sollen. *)
(*----------------------------------------------------------------------------*)
PROCEDURE Allocate(VAR p : ANYPTR;Size : LONGINT);
(*----------------------------------------------------------------------------*)
(* Funktion : Wie Allocate, jedoch mit Rückgabewert ob ein Fehler auftrat. *)
(*----------------------------------------------------------------------------*)
PROCEDURE CheckAllocate(VAR p : ANYPTR;Size : LONGINT):BOOLEAN;
(*----------------------------------------------------------------------------*)
(* Funktion : Wie Allocate, jedoch muß das allozierte Speicherstück im *)
(* Chipmem liegen. *)
(*----------------------------------------------------------------------------*)
PROCEDURE AllocChip(VAR p : ANYPTR;Size : LONGINT);
(*----------------------------------------------------------------------------*)
(* Funktion : Wie AllocChip, jedoch mit Rückgabewert ob ein Fehler auftrat. *)
(*----------------------------------------------------------------------------*)
PROCEDURE CheckAllocChip(VAR p : ANYPTR;Size : LONGINT):BOOLEAN;
(*----------------------------------------------------------------------------*)
(* Funktion : Ruft eine neue Aktionstufe auf. *)
(* Parameter : Begin <- Procedure, die als Aktionsstufe aufgerufen werden *)
(* soll. *)
(* Close <- Abschlußprozedur *)
(*----------------------------------------------------------------------------*)
PROCEDURE Call(Begin,Close : PROC);
(*----------------------------------------------------------------------------*)
(* Funktion : Terminiert eine oder mehrere Aktionsebenen. *)
(*----------------------------------------------------------------------------*)
PROCEDURE Terminate(Level : INTEGER);
GROUP
MemGrp = New,Dispose,DisposeAll,CheckNew,Allocate,CheckAllocate,AllocChip,
CheckAllocChip;
LevelGrp = ActLevel,Call,Terminate;
All = MemGrp,LevelGrp;
END Levels.