1 #ifndef HEADER_NetBSDProcessList 2 #define HEADER_NetBSDProcessList 3 /* 4 htop - NetBSDProcessList.h 5 (C) 2014 Hisham H. Muhammad 6 (C) 2015 Michael McConville 7 (C) 2021 Santhosh Raju 8 (C) 2021 htop dev team 9 Released under the GNU GPLv2+, see the COPYING file 10 in the source distribution for its full text. 11 */ 12 13 #include <kvm.h> 14 #include <stdbool.h> 15 #include <sys/types.h> 16 17 #include "Hashtable.h" 18 #include "ProcessList.h" 19 #include "UsersTable.h" 20 21 22 typedef struct CPUData_ { 23 unsigned long long int totalTime; 24 unsigned long long int userTime; 25 unsigned long long int niceTime; 26 unsigned long long int sysTime; 27 unsigned long long int sysAllTime; 28 unsigned long long int spinTime; 29 unsigned long long int intrTime; 30 unsigned long long int idleTime; 31 32 unsigned long long int totalPeriod; 33 unsigned long long int userPeriod; 34 unsigned long long int nicePeriod; 35 unsigned long long int sysPeriod; 36 unsigned long long int sysAllPeriod; 37 unsigned long long int spinPeriod; 38 unsigned long long int intrPeriod; 39 unsigned long long int idlePeriod; 40 41 double frequency; 42 } CPUData; 43 44 typedef struct NetBSDProcessList_ { 45 ProcessList super; 46 kvm_t* kd; 47 48 CPUData* cpuData; 49 } NetBSDProcessList; 50 51 52 ProcessList* ProcessList_new(UsersTable* usersTable, Hashtable* dynamicMeters, Hashtable* dynamicColumns, Hashtable* pidMatchList, uid_t userId); 53 54 void ProcessList_delete(ProcessList* this); 55 56 void ProcessList_goThroughEntries(ProcessList* super, bool pauseProcessUpdate); 57 58 #endif 59