/* Do not edit this file. It was automatically generated. */ #ifndef HEADER_Process #define HEADER_Process /* htop - Process.h (C) 2004-2006 Hisham H. Muhammad Released under the GNU GPL, see the COPYING file in the source distribution for its full text. */ #define _GNU_SOURCE #include "ProcessList.h" #include "Object.h" #include "CRT.h" #include "String.h" #include "RichString.h" #include "debug.h" #include #include #include #include #include #include #include #include #include #include #include #include #ifdef HAVE_PLPA #include #endif // This works only with glibc 2.1+. On earlier versions // the behavior is similar to have a hardcoded page size. #ifndef PAGE_SIZE #define PAGE_SIZE ( sysconf(_SC_PAGESIZE) ) #endif #define PAGE_SIZE_KB ( PAGE_SIZE / ONE_K ) #define PROCESS_COMM_LEN 300 typedef enum ProcessField_ { PID = 1, COMM, STATE, PPID, PGRP, SESSION, TTY_NR, TPGID, FLAGS, MINFLT, CMINFLT, MAJFLT, CMAJFLT, UTIME, STIME, CUTIME, CSTIME, PRIORITY, NICE, ITREALVALUE, STARTTIME, VSIZE, RSS, RLIM, STARTCODE, ENDCODE, STARTSTACK, KSTKESP, KSTKEIP, SIGNAL, BLOCKED, SSIGIGNORE, SIGCATCH, WCHAN, NSWAP, CNSWAP, EXIT_SIGNAL, PROCESSOR, M_SIZE, M_RESIDENT, M_SHARE, M_TRS, M_DRS, M_LRS, M_DT, ST_UID, PERCENT_CPU, PERCENT_MEM, USER, TIME, NLWP, TGID, #ifdef HAVE_OPENVZ CTID, VPID, #endif #ifdef HAVE_VSERVER VXID, #endif #ifdef HAVE_TASKSTATS RCHAR, WCHAR, SYSCR, SYSCW, RBYTES, WBYTES, CNCLWB, IO_READ_RATE, IO_WRITE_RATE, IO_RATE, #endif LAST_PROCESSFIELD } ProcessField; struct ProcessList_; typedef struct Process_ { Object super; struct ProcessList_ *pl; bool updated; unsigned int pid; char* comm; int indent; char state; bool tag; unsigned int ppid; unsigned int pgrp; unsigned int session; unsigned int tty_nr; unsigned int tgid; int tpgid; unsigned long int flags; #ifdef DEBUG unsigned long int minflt; unsigned long int cminflt; unsigned long int majflt; unsigned long int cmajflt; #endif unsigned long int utime; unsigned long int stime; long int cutime; long int cstime; long int priority; long int nice; long int nlwp; #ifdef DEBUG long int itrealvalue; unsigned long int starttime; unsigned long int vsize; long int rss; unsigned long int rlim; unsigned long int startcode; unsigned long int endcode; unsigned long int startstack; unsigned long int kstkesp; unsigned long int kstkeip; unsigned long int signal; unsigned long int blocked; unsigned long int sigignore; unsigned long int sigcatch; unsigned long int wchan; unsigned long int nswap; unsigned long int cnswap; #endif int exit_signal; int processor; int m_size; int m_resident; int m_share; int m_trs; int m_drs; int m_lrs; int m_dt; uid_t st_uid; float percent_cpu; float percent_mem; char* user; #ifdef HAVE_OPENVZ unsigned int ctid; unsigned int vpid; #endif #ifdef HAVE_VSERVER unsigned int vxid; #endif #ifdef HAVE_TASKSTATS unsigned long long io_rchar; unsigned long long io_wchar; unsigned long long io_syscr; unsigned long long io_syscw; unsigned long long io_read_bytes; unsigned long long io_write_bytes; unsigned long long io_cancelled_write_bytes; double io_rate_read_bps; unsigned long long io_rate_read_time; double io_rate_write_bps; unsigned long long io_rate_write_time; #endif } Process; #ifdef DEBUG extern char* PROCESS_CLASS; #else #define PROCESS_CLASS NULL #endif extern char *Process_fieldNames[]; extern char *Process_fieldTitles[]; #define ONE_K 1024 #define ONE_M (ONE_K * ONE_K) #define ONE_G (ONE_M * ONE_K) void Process_delete(Object* cast); Process* Process_new(struct ProcessList_ *pl); Process* Process_clone(Process* this); void Process_toggleTag(Process* this); bool Process_setPriority(Process* this, int priority); #ifdef HAVE_PLPA unsigned long Process_getAffinity(Process* this); bool Process_setAffinity(Process* this, unsigned long mask); #endif void Process_sendSignal(Process* this, int signal); int Process_pidCompare(const void* v1, const void* v2); int Process_compare(const void* v1, const void* v2); #endif