From 3383d8e5561dfc6fb2b65e0a194df94ccb5e08af Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Wed, 21 Jan 2015 23:27:31 -0200 Subject: Sorry about the mega-patch. This is a work-in-progress, code is currently broken. (Some actions, and notably, the header, are missing.) --- ProcessList.h | 98 +++++------------------------------------------------------ 1 file changed, 8 insertions(+), 90 deletions(-) (limited to 'ProcessList.h') diff --git a/ProcessList.h b/ProcessList.h index 916039c3..e4c266c6 100644 --- a/ProcessList.h +++ b/ProcessList.h @@ -14,6 +14,7 @@ in the source distribution for its full text. #include "UsersTable.h" #include "Panel.h" #include "Process.h" +#include "Settings.h" #ifndef MAX_NAME #define MAX_NAME 128 @@ -23,51 +24,9 @@ in the source distribution for its full text. #define MAX_READ 2048 #endif -#ifndef ProcessList_cpuId -#define ProcessList_cpuId(pl, cpu) ((pl)->countCPUsFromZero ? (cpu) : (cpu)+1) -#endif - -typedef enum TreeStr_ { - TREE_STR_HORZ, - TREE_STR_VERT, - TREE_STR_RTEE, - TREE_STR_BEND, - TREE_STR_TEND, - TREE_STR_OPEN, - TREE_STR_SHUT, - TREE_STR_COUNT -} TreeStr; - -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 ProcessList_ { - const char **treeStr; + Settings* settings; + Vector* processes; Vector* processes2; Hashtable* processTable; @@ -79,67 +38,26 @@ typedef struct ProcessList_ { const char* incFilter; Hashtable* pidWhiteList; - int cpuCount; - int totalTasks; - int userlandThreads; - int kernelThreads; - int runningTasks; - #ifdef HAVE_LIBHWLOC hwloc_topology_t topology; bool topologyOk; #endif - CPUData* cpus; - - unsigned long long int totalMem; - unsigned long long int usedMem; - unsigned long long int freeMem; - unsigned long long int sharedMem; - unsigned long long int buffersMem; - unsigned long long int cachedMem; - unsigned long long int totalSwap; - unsigned long long int usedSwap; - unsigned long long int freeSwap; - - int flags; - ProcessField* fields; - ProcessField sortKey; - int direction; - bool hideThreads; - bool shadowOtherUsers; - bool showThreadNames; - bool showingThreadNames; - bool hideKernelThreads; - bool hideUserlandThreads; - bool treeView; - bool highlightBaseName; - bool highlightMegabytes; - bool highlightThreads; - bool detailedCPUTime; - bool countCPUsFromZero; - bool updateProcessNames; - bool accountGuestInCPUMeter; - bool userOnly; + + int cpuCount; } ProcessList; -ProcessList* ProcessList_new(UsersTable* ut, Hashtable* pidWhiteList); +ProcessList* ProcessList_new(UsersTable* ut, Hashtable* pidWhiteList, uid_t userId); void ProcessList_delete(ProcessList* pl); void ProcessList_scan(ProcessList* pl); -extern const char *ProcessList_treeStrAscii[TREE_STR_COUNT]; - -extern const char *ProcessList_treeStrUtf8[TREE_STR_COUNT]; - -ProcessList* ProcessList_init(ProcessList* this, UsersTable* usersTable, Hashtable* pidWhiteList); +ProcessList* ProcessList_init(ProcessList* this, UsersTable* usersTable, Hashtable* pidWhiteList, uid_t userId); void ProcessList_done(ProcessList* this); void ProcessList_setPanel(ProcessList* this, Panel* panel); -void ProcessList_invertSortOrder(ProcessList* this); - void ProcessList_printHeader(ProcessList* this, RichString* header); void ProcessList_add(ProcessList* this, Process* p); @@ -156,7 +74,7 @@ ProcessField ProcessList_keyAt(ProcessList* this, int at); void ProcessList_expandTree(ProcessList* this); -void ProcessList_rebuildPanel(ProcessList* this, bool flags, int following, const char* incFilter); +void ProcessList_rebuildPanel(ProcessList* this); #endif -- cgit v1.2.3