convtbl.h (164672) | convtbl.h (164673) |
---|---|
1/* 2 * Copyright (c) 2003, Trent Nelson, <trent@arpa.com>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 * | 1/* 2 * Copyright (c) 2003, Trent Nelson, <trent@arpa.com>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/usr.bin/systat/convtbl.h 164672 2006-11-27 16:14:32Z yar $ | 28 * $FreeBSD: head/usr.bin/systat/convtbl.h 164673 2006-11-27 16:23:09Z yar $ |
29 */ 30 31#ifndef _CONVTBL_H_ 32#define _CONVTBL_H_ 33 34#include <sys/types.h> 35#include <stdint.h> 36 | 29 */ 30 31#ifndef _CONVTBL_H_ 32#define _CONVTBL_H_ 33 34#include <sys/types.h> 35#include <stdint.h> 36 |
37#define BITS (1) 38#define BYTES (1) 39#define KILO (1024LL) 40#define MEGA (KILO * 1024) 41#define GIGA (MEGA * 1024) 42 | |
43enum scale { 44 SC_BYTE, 45 SC_KILOBYTE, 46 SC_MEGABYTE, 47 SC_GIGABYTE, 48 SC_BIT, 49 SC_KILOBIT, 50 SC_MEGABIT, 51 SC_GIGABIT, 52 SC_AUTO /* KEEP THIS LAST */ 53}; 54 | 37enum scale { 38 SC_BYTE, 39 SC_KILOBYTE, 40 SC_MEGABYTE, 41 SC_GIGABYTE, 42 SC_BIT, 43 SC_KILOBIT, 44 SC_MEGABIT, 45 SC_GIGABIT, 46 SC_AUTO /* KEEP THIS LAST */ 47}; 48 |
55#define BIT (8) 56#define BYTE (1) 57 58struct convtbl { 59 uintmax_t mul; 60 uintmax_t scale; 61 const char *str; 62 const char *name; 63}; 64 65extern struct convtbl convtbl[]; 66 | |
67extern double convert(const uintmax_t, const int); 68extern const char *get_helplist(void); 69extern int get_scale(const char *); 70extern const char *get_string(const uintmax_t, const int); 71 72#endif /* ! _CONVTBL_H_ */ | 49extern double convert(const uintmax_t, const int); 50extern const char *get_helplist(void); 51extern int get_scale(const char *); 52extern const char *get_string(const uintmax_t, const int); 53 54#endif /* ! _CONVTBL_H_ */ |