| /* Do not edit this file. It was automatically generated. */ |
| |
| #ifndef HEADER_linux_LinuxProcessList |
| #define HEADER_linux_LinuxProcessList |
| /* |
| htop - linux/LinuxProcessList.h |
| (C) 2014 Hisham H. Muhammad |
| Copyright 2015-2024 Rivoreo |
| Released under the GNU GPL, see the COPYING file |
| in the source distribution for its full text. |
| */ |
| |
| #ifdef MAJOR_IN_MKDEV |
| #elif defined MAJOR_IN_SYSMACROS |
| #endif |
| |
| #ifdef HAVE_DELAYACCT |
| #endif |
| |
| |
| #include "ProcessList.h" |
| |
| extern long long btime; |
| |
| typedef struct CPUData_ { |
| unsigned long long int totalTime; |
| unsigned long long int userTime; |
| unsigned long long int systemTime; |
| unsigned long long int systemAllTime; |
| unsigned long long int idleAllTime; |
| unsigned long long int idleTime; |
| unsigned long long int niceTime; |
| unsigned long long int ioWaitTime; |
| unsigned long long int irqTime; |
| unsigned long long int softIrqTime; |
| unsigned long long int stealTime; |
| unsigned long long int guestTime; |
| unsigned long long int totalPeriod; |
| unsigned long long int userPeriod; |
| unsigned long long int systemPeriod; |
| unsigned long long int systemAllPeriod; |
| unsigned long long int idleAllPeriod; |
| unsigned long long int idlePeriod; |
| unsigned long long int nicePeriod; |
| unsigned long long int ioWaitPeriod; |
| unsigned long long int irqPeriod; |
| unsigned long long int softIrqPeriod; |
| unsigned long long int stealPeriod; |
| unsigned long long int guestPeriod; |
| } CPUData; |
| |
| typedef struct TtyDriver_ { |
| char* path; |
| unsigned int major; |
| unsigned int minorFrom; |
| unsigned int minorTo; |
| } TtyDriver; |
| |
| typedef struct LinuxProcessList_ { |
| ProcessList super; |
| CPUData* cpus; |
| TtyDriver* ttyDrivers; |
| #ifdef HAVE_DELAYACCT |
| struct nl_sock *netlink_socket; |
| int netlink_family; |
| #endif |
| bool support_kthread_flag; |
| } LinuxProcessList; |
| |
| #ifndef PROCDIR |
| #define PROCDIR "/proc" |
| #endif |
| |
| #ifndef PROCSTATFILE |
| #define PROCSTATFILE PROCDIR "/stat" |
| #endif |
| |
| #ifndef PROCMEMINFOFILE |
| #define PROCMEMINFOFILE PROCDIR "/meminfo" |
| #endif |
| |
| #ifndef PROCTTYDRIVERSFILE |
| #define PROCTTYDRIVERSFILE PROCDIR "/tty/drivers" |
| #endif |
| |
| #ifndef PROC_LINE_LENGTH |
| #define PROC_LINE_LENGTH 4096 |
| #endif |
| |
| #ifndef SYS_SYSTEM_CPU_DIR |
| #define SYS_SYSTEM_CPU_DIR "/sys/devices/system/cpu/" |
| #endif |
| |
| |
| #ifndef PF_KTHREAD |
| #define PF_KTHREAD 0x00200000 |
| #endif |
| |
| #ifndef CLAMP |
| #define CLAMP(x,low,high) (((x)>(high))?(high):(((x)<(low))?(low):(x))) |
| #endif |
| |
| #ifdef HAVE_DELAYACCT |
| |
| #endif |
| |
| ProcessList* ProcessList_new(UsersTable* usersTable, const Hashtable *pidWhiteList, uid_t userId); |
| |
| void ProcessList_delete(ProcessList* pl); |
| |
| // Only used for Linux without PF_KTHREAD flag support (version < 2.6.27). |
| #ifdef HAVE_TASKSTATS |
| |
| #endif |
| |
| #ifdef HAVE_OPENVZ |
| |
| #endif |
| |
| #ifdef HAVE_CGROUP |
| |
| #endif |
| |
| #ifdef HAVE_VSERVER |
| |
| #endif |
| |
| #ifdef HAVE_DELAYACCT |
| |
| #endif |
| |
| void ProcessList_goThroughEntries(ProcessList* super, bool skip_processes); |
| |
| #endif |