1 /* $OpenBSD: display.h,v 1.12 2013/01/14 21:33:59 guenther Exp $ */ 2 3 /* 4 * Top users/processes display for Unix 5 * Version 3 6 * 7 * Copyright (c) 1984, 1989, William LeFebvre, Rice University 8 * Copyright (c) 1989, 1990, 1992, William LeFebvre, Northwestern University 9 * 10 * Redistribution and use in source and binary forms, with or without 11 * modification, are permitted provided that the following conditions 12 * are met: 13 * 1. Redistributions of source code must retain the above copyright 14 * notice, this list of conditions and the following disclaimer. 15 * 2. Redistributions in binary form must reproduce the above copyright 16 * notice, this list of conditions and the following disclaimer in the 17 * documentation and/or other materials provided with the distribution. 18 * 19 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 20 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 21 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 22 * IN NO EVENT SHALL THE AUTHOR OR HIS EMPLOYER BE LIABLE FOR ANY DIRECT, INDIRECT, 23 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 */ 30 31 /* constants needed for display.c */ 32 33 #define MT_standout 1 34 #define MT_delayed 2 35 36 /* prototypes */ 37 int display_resize(void); 38 void i_loadave(int, double *); 39 void u_loadave(int, double *); 40 void i_timeofday(time_t *); 41 void i_procstates(int, int *, int); 42 void u_procstates(int, int *); 43 void i_cpustates(int64_t *); 44 void u_cpustates(int64_t *); 45 void i_memory(int *); 46 void u_memory(int *); 47 void i_message(void); 48 void u_message(void); 49 void i_header(char *); 50 void u_header(char *); 51 void i_process(int, char *, int); 52 void u_process(int, char *, int); 53 void u_endscreen(void); 54 void display_header(int); 55 void new_message(int, const char *, ...); 56 void clear_message(void); 57 int readline(char *, int); 58 char *printable(char *); 59 void show_help(void); 60 void anykey(void); 61 62 #define putr() do { if (!smart_terminal) if (putchar('\r') == EOF) exit(1); } \ 63 while (0) 64 #define putn() do { if (!smart_terminal) if (putchar('\n') == EOF) exit(1); } \ 65 while (0) 66