|##########| |#MAGIC #|CLABLLHA |#PROJECT #|"ImportHelp" |#PATHS #|"StdProject" |#FLAGS #|-x---x--x-----x----------------- |#USERSW #|-------------------------------- |#USERMASK#|-------------------------------- |#SWITCHES#|xx---xxxxx------ |##########| DEFINITION MODULE Profiler; | Mittels diesem Modul, kann zu Optimierungszwecken festgestellt werden, | wieviel Zeit zwischen zwei Punkten vergeht, dabei wird sie Zeit in Micro- | sekunden gemessen, die Maxilmale, die Minimale und die Durchschnittszeit | festgehalten. | Außerdem wir die Zahl der Durchläufe bei Rekursiven Prozeduren die | Schachtelungstiefe sowie die momentane Stackposition ausgegeben. TYPE Profile = HIDDEN; PROCEDURE CreateProfile(REF Name : STRING):Profile; | Erzeugt eine Meßmarke PROCEDURE DestructProfile(p : Profile); | Löscht eine Marke | Name : PStart/PEnd | Funktion : Zwischen PStart/PEnd wird die Zeit gemessen PROCEDURE PStart(p : Profile); PROCEDURE PEnd(p : Profile); PROCEDURE WriteProfile(p : Profile); | Gibt ein Profile aus. PROCEDURE WriteProfiles; | Gibt alle erzeugten Profiles aus. PROCEDURE ResetProfiler; | Initialisiert den Zähler PROCEDURE ClearProfiles; | Löscht alle Profiles GROUP All = CreateProfile,DestructProfile,PStart,PEnd,WriteProfile, WriteProfiles,ResetProfiler,ClearProfiles; END Profiler.