You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.2 KiB
46 lines
1.2 KiB
#ifndef HEADER_DarwinProcess |
|
#define HEADER_DarwinProcess |
|
/* |
|
htop - DarwinProcess.h |
|
(C) 2015 Hisham H. Muhammad |
|
Released under the GNU GPLv2+, see the COPYING file |
|
in the source distribution for its full text. |
|
*/ |
|
|
|
#include <sys/sysctl.h> |
|
|
|
#include "Settings.h" |
|
#include "darwin/DarwinProcessList.h" |
|
|
|
|
|
#define PROCESS_FLAG_TTY 0x00000100 |
|
|
|
typedef struct DarwinProcess_ { |
|
Process super; |
|
|
|
uint64_t utime; |
|
uint64_t stime; |
|
bool taskAccess; |
|
bool translated; |
|
} DarwinProcess; |
|
|
|
extern const ProcessClass DarwinProcess_class; |
|
|
|
extern const ProcessFieldData Process_fields[LAST_PROCESSFIELD]; |
|
|
|
Process* DarwinProcess_new(const Settings* settings); |
|
|
|
void Process_delete(Object* cast); |
|
|
|
void DarwinProcess_setFromKInfoProc(Process* proc, const struct kinfo_proc* ps, bool exists); |
|
|
|
void DarwinProcess_setFromLibprocPidinfo(DarwinProcess* proc, DarwinProcessList* dpl, double timeIntervalNS); |
|
|
|
/* |
|
* Scan threads for process state information. |
|
* Based on: http://stackoverflow.com/questions/6788274/ios-mac-cpu-usage-for-thread |
|
* and https://github.com/max-horvath/htop-osx/blob/e86692e869e30b0bc7264b3675d2a4014866ef46/ProcessList.c |
|
*/ |
|
void DarwinProcess_scanThreads(DarwinProcess* dp); |
|
|
|
#endif
|
|
|