home *** CD-ROM | disk | FTP | other *** search
- /*
- HEADER: CUG000.00;
- TITLE: Monitor include file;
- DATE: 09/07/88;
- VERSION: 1.0;
- FILENAME: MONITOR.H;
- SEE-ALSO: MONITOR.C;
- AUTHORS: Steve Roggenkamp
- */
- /*
- monitor.h -- monitor include file
-
- Steve Roggenkamp
- 5394 Winetavern Lane
- Dublin, OH 43017
- (614)792-8236
-
- 9 / 6 / 88
- */
-
- #ifndef MONITOR_H
- #define MONITOR_H
-
- #include "exec/types.h"
- #include "exec/nodes.h"
- #include "exec/lists.h"
- #include "exec/memory.h"
- #include "exec/interrupts.h"
- #include "exec/ports.h"
- #include "exec/libraries.h"
- #include "exec/tasks.h"
- #include "exec/io.h"
- #include "exec/devices.h"
- #include "devices/timer.h"
- #include "libraries/dos.h"
-
- #define MON_NAME(x) { (void (*)()) x, "x", 0L }
- #define STACKDIR 1 /* direction opposite to stack growth
- should be 1 if stack grows DOWNWARD
- should be -1 if stack grows UPWARD */
-
- struct monitor_table
- {
- void (*func)(); /* pointer to a function */
- char *name; /* function name */
- long count; /* count of times function is found */
- };
-
- typedef struct monitor_table mon_table;
-
- extern struct MsgPort *CreatePort();
- extern struct IORequest *CreateExtIO();
-
- long mon_cmp_addr(); /* compare function addresses */
- long mon_cmp_count(); /* compare function counts */
- long mon_cmp_name(); /* compare function names */
- struct timerequest *mon_create_timer(); /* create a timer */
- void mon_delete_timer(); /* delete a timer */
- mon_table *mon_get_func(); /* get a function using the pc */
- long mon_init(); /* initialize the monitor */
- void mon_print(); /* print the function table */
- void mon_sample(); /* sample the monitored task */
- void mon_sort_table(); /* sort the function table */
- void mon_table_qsort(); /* quicksort the function table */
- void mon_task(); /* monitor task entry function */
- void mon_terminate(); /* terminate the monitor & print */
- void mon_trace(); /* print trace back, not used */
-
- #endif
-
-