mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-08 21:09:49 +00:00
82 lines
1.6 KiB
C
82 lines
1.6 KiB
C
/* This file is part of hp2ps, a graph drawer for memory profiles.
|
|
Copyright (C) 2002 The University Court of the University of Glasgow.
|
|
This program is governed by the license contained in the file LICENSE. */
|
|
|
|
#ifndef HP_FILE_H
|
|
#define HP_FILE_H
|
|
|
|
typedef enum {
|
|
/* These tokens are found in ".hp" files */
|
|
|
|
EOF_TOK,
|
|
INTEGER_TOK,
|
|
FLOAT_TOK,
|
|
IDENTIFIER_TOK,
|
|
STRING_TOK,
|
|
BEGIN_SAMPLE_TOK,
|
|
END_SAMPLE_TOK,
|
|
JOB_TOK,
|
|
DATE_TOK,
|
|
SAMPLE_UNIT_TOK,
|
|
VALUE_UNIT_TOK,
|
|
MARK_TOK,
|
|
|
|
/* These extra ones are found only in ".aux" files */
|
|
|
|
X_RANGE_TOK,
|
|
Y_RANGE_TOK,
|
|
ORDER_TOK,
|
|
SHADE_TOK
|
|
} token;
|
|
|
|
struct datapoint {
|
|
int bucket;
|
|
floatish value;
|
|
};
|
|
|
|
struct chunk {
|
|
struct chunk *next;
|
|
short nd; /* 0 .. N_CHUNK - 1 */
|
|
struct datapoint *d;
|
|
};
|
|
|
|
|
|
struct entry {
|
|
struct entry *next;
|
|
struct chunk *chk;
|
|
char *name;
|
|
};
|
|
|
|
extern char *theident;
|
|
extern char *thestring;
|
|
extern int theinteger;
|
|
extern floatish thefloatish;
|
|
extern int g_ch;
|
|
extern token thetok;
|
|
extern int linenum;
|
|
extern int endfile;
|
|
|
|
char *TokenToString PROTO((token));
|
|
|
|
extern struct entry** identtable;
|
|
|
|
extern floatish *samplemap;
|
|
extern floatish *markmap;
|
|
|
|
void GetHpFile PROTO((FILE *));
|
|
void StoreSample PROTO((struct entry *, intish, floatish));
|
|
struct entry *MakeEntry PROTO((char *));
|
|
|
|
token GetNumber PROTO((FILE *));
|
|
void GetIdent PROTO((FILE *));
|
|
void GetString PROTO((FILE *));
|
|
boolish IsIdChar PROTO((int)); /* int is a "char" from getc */
|
|
|
|
extern char *jobstring;
|
|
extern char *datestring;
|
|
|
|
extern char *sampleunitstring;
|
|
extern char *valueunitstring;
|
|
|
|
#endif /* HP_FILE_H */
|