1/*-
2 * Top - a top users display for Berkeley Unix
3 *
4 * $FreeBSD$
5 */
6
7#ifndef TOP_H
8#define TOP_H
9
10#include <unistd.h>
11
12/* Number of lines of header information on the standard screen */
13extern int Header_lines;
14
15/* Special atoi routine returns either a non-negative number or one of: */
16#define Infinity	-1
17#define Invalid		-2
18
19/* maximum number we can have */
20#define Largest		0x7fffffff
21
22/* Exit code for system errors */
23#define TOP_EX_SYS_ERROR	23
24
25enum displaymodes { DISP_CPU = 0, DISP_IO, DISP_MAX };
26
27/*
28 * Format modifiers
29 */
30#define FMT_SHOWARGS 0x00000001
31
32extern enum displaymodes displaymode;
33
34extern int pcpu_stats;
35extern int overstrike;
36extern pid_t mypid;
37
38extern int (*compares[])(const void*, const void*);
39
40const char* kill_procs(char *);
41const char* renice_procs(char *);
42
43extern char copyright[];
44
45void quit(int);
46
47/*
48 *  The space command forces an immediate update.  Sometimes, on loaded
49 *  systems, this update will take a significant period of time (because all
50 *  the output is buffered).  So, if the short-term load average is above
51 *  "LoadMax", then top will put the cursor home immediately after the space
52 *  is pressed before the next update is attempted.  This serves as a visual
53 *  acknowledgement of the command.
54 */
55#define LoadMax  5.0
56
57/*
58 *  "Nominal_TOPN" is used as the default TOPN when
59 *  the output is a dumb terminal.  If we didn't do this, then
60 *  we will get every
61 *  process in the system when running top on a dumb terminal (or redirected
62 *  to a file).  Note that Nominal_TOPN is a default:  it can still be
63 *  overridden on the command line, even with the value "infinity".
64 */
65#define Nominal_TOPN	18
66
67#endif /* TOP_H */
68