--- projects/libstatgrab/src/libstatgrab/statgrab.h 2004/04/08 12:40:30 1.46 +++ projects/libstatgrab/src/libstatgrab/statgrab.h 2004/07/18 20:44:01 1.53 @@ -18,9 +18,12 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * 02111-1307 USA * - * $Id: statgrab.h,v 1.46 2004/04/08 12:40:30 pajs Exp $ + * $Id: statgrab.h,v 1.53 2004/07/18 20:44:01 ats Exp $ */ +#ifndef STATGRAB_H +#define STATGRAB_H + #include /* FIXME typedefs for 32/64-bit types */ @@ -64,8 +67,10 @@ typedef enum { } sg_error; void sg_set_error(sg_error code, const char *arg); +void sg_set_error_with_errno(sg_error code, const char *arg); sg_error sg_get_error(); const char *sg_get_error_arg(); +int sg_get_error_errno(); const char *sg_str_error(sg_error code); typedef struct { @@ -151,6 +156,9 @@ typedef struct { sg_fs_stats *sg_get_fs_stats(int *entries); +int sg_fs_compare_device_name(const void *va, const void *vb); +int sg_fs_compare_mnt_point(const void *va, const void *vb); + typedef struct { char *disk_name; long long read_bytes; @@ -161,6 +169,8 @@ typedef struct { sg_disk_io_stats *sg_get_disk_io_stats(int *entries); sg_disk_io_stats *sg_get_disk_io_stats_diff(int *entries); +int sg_disk_io_compare_name(const void *va, const void *vb); + typedef struct { char *interface_name; long long tx; @@ -176,6 +186,8 @@ typedef struct { sg_network_io_stats *sg_get_network_io_stats(int *entries); sg_network_io_stats *sg_get_network_io_stats_diff(int *entries); +int sg_network_io_compare_name(const void *va, const void *vb); + typedef enum { SG_IFACE_DUPLEX_FULL, SG_IFACE_DUPLEX_HALF, @@ -191,6 +203,8 @@ typedef struct { sg_network_iface_stats *sg_get_network_iface_stats(int *entries); +int sg_network_iface_compare_name(const void *va, const void *vb); + typedef struct { long long pages_pagein; long long pages_pageout; @@ -231,6 +245,15 @@ typedef struct { sg_process_stats *sg_get_process_stats(int *entries); +int sg_process_compare_name(const void *va, const void *vb); +int sg_process_compare_pid(const void *va, const void *vb); +int sg_process_compare_uid(const void *va, const void *vb); +int sg_process_compare_gid(const void *va, const void *vb); +int sg_process_compare_size(const void *va, const void *vb); +int sg_process_compare_res(const void *va, const void *vb); +int sg_process_compare_cpu(const void *va, const void *vb); +int sg_process_compare_time(const void *va, const void *vb); + typedef struct { int total; int running; @@ -241,28 +264,8 @@ typedef struct { sg_process_count *sg_get_process_count(); -typedef enum { - SG_PS_PID, - SG_PS_UID, - SG_PS_GID, - SG_PS_SIZE, - SG_PS_RES, - SG_PS_CPU, - SG_PS_TIME -} sg_sort_method; - -void sg_process_sort(sg_process_stats *ps, int num_ps, sg_sort_method sm); - -int sg_process_compare_pid(const void *va, const void *vb); -int sg_process_compare_uid(const void *va, const void *vb); -int sg_process_compare_gid(const void *va, const void *vb); -int sg_process_compare_size(const void *va, const void *vb); -int sg_process_compare_res(const void *va, const void *vb); -int sg_process_compare_cpu(const void *va, const void *vb); -int sg_process_compare_time(const void *va, const void *vb); - - #ifdef SG_ENABLE_DEPRECATED #include #endif +#endif