#ifndef Prof_INC_PROF_INTERNAL_H #define Prof_INC_PROF_INTERNAL_H // report functions #define NUM_VALUES 4 #define NUM_TITLE 2 #define NUM_HEADER (NUM_VALUES+1) typedef struct { int indent; char *name; int number; char prefix; int value_flag; double values[NUM_VALUES]; double heat; // used internally void *zone; } Prof_Report_Record; typedef struct { char *title[NUM_TITLE]; char *header[NUM_HEADER]; int num_record; int hilight; Prof_Report_Record *record; } Prof_Report; extern void Prof_free_report(Prof_Report *z); extern Prof_Report *Prof_create_report(void); // really internal functions extern void Prof_graph(int num_frames, void (*callback)(int id, int x0, int x1, float *values, void *data), void *data); extern void Prof_init_highlevel(); extern double Prof_get_time(void); extern int Prof_num_zones; extern Prof_Zone *Prof_zones[]; extern Prof_Declare(_global); #endif