2014-11-27 23:02:52 +00:00
|
|
|
#ifndef HEADER_Platform
|
|
|
|
#define HEADER_Platform
|
|
|
|
/*
|
|
|
|
htop - linux/Platform.h
|
|
|
|
(C) 2014 Hisham H. Muhammad
|
2020-10-05 07:51:32 +00:00
|
|
|
Released under the GNU GPLv2, see the COPYING file
|
2014-11-27 23:02:52 +00:00
|
|
|
in the source distribution for its full text.
|
|
|
|
*/
|
|
|
|
|
2020-09-19 11:55:23 +00:00
|
|
|
#include <stdbool.h>
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
2014-11-27 23:02:52 +00:00
|
|
|
#include "Action.h"
|
2020-11-17 07:12:38 +00:00
|
|
|
#include "BatteryMeter.h"
|
2020-10-21 15:06:32 +00:00
|
|
|
#include "DiskIOMeter.h"
|
2020-09-19 11:55:23 +00:00
|
|
|
#include "Meter.h"
|
|
|
|
#include "Process.h"
|
2020-11-11 21:15:35 +00:00
|
|
|
#include "ProcessLocksScreen.h"
|
2015-10-06 06:02:49 +00:00
|
|
|
#include "SignalsPanel.h"
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2015-03-16 04:43:04 +00:00
|
|
|
extern ProcessField Platform_defaultFields[];
|
2015-03-15 23:29:13 +00:00
|
|
|
|
|
|
|
extern int Platform_numberOfFields;
|
|
|
|
|
2016-08-30 12:41:17 +00:00
|
|
|
extern const SignalItem Platform_signals[];
|
2015-10-06 06:02:49 +00:00
|
|
|
|
2016-08-30 12:41:17 +00:00
|
|
|
extern const unsigned int Platform_numberOfSignals;
|
2015-10-06 06:02:49 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_setBindings(Htop_Action* keys);
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2020-10-05 11:19:50 +00:00
|
|
|
extern const MeterClass* const Platform_meterTypes[];
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2020-09-08 12:28:34 +00:00
|
|
|
int Platform_getUptime(void);
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_getLoadAverage(double* one, double* five, double* fifteen);
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2020-09-08 12:28:34 +00:00
|
|
|
int Platform_getMaxPid(void);
|
2014-11-27 23:02:52 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
double Platform_setCPUValues(Meter* this, int cpu);
|
2015-01-22 01:27:31 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_setMemoryValues(Meter* this);
|
2015-01-22 01:27:31 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_setSwapValues(Meter* this);
|
2015-01-22 01:27:31 +00:00
|
|
|
|
2020-09-22 11:54:15 +00:00
|
|
|
void Platform_setZramValues(Meter* this);
|
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_setZfsArcValues(Meter* this);
|
2019-07-07 02:37:02 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_setZfsCompressedArcValues(Meter* this);
|
2020-11-11 21:15:35 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
char* Platform_getProcessEnv(pid_t pid);
|
2015-12-03 21:16:10 +00:00
|
|
|
|
2020-11-11 21:15:35 +00:00
|
|
|
char* Platform_getInodeFilename(pid_t pid, ino_t inode);
|
|
|
|
|
|
|
|
FileLocks_ProcessData* Platform_getProcessLocks(pid_t pid);
|
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void Platform_getPressureStall(const char *file, bool some, double* ten, double* sixty, double* threehundred);
|
2020-08-20 03:59:41 +00:00
|
|
|
|
2020-10-21 15:06:32 +00:00
|
|
|
bool Platform_getDiskIO(DiskIOData* data);
|
2020-09-13 17:46:34 +00:00
|
|
|
|
2020-10-31 22:28:02 +00:00
|
|
|
bool Platform_getNetworkIO(unsigned long int* bytesReceived,
|
|
|
|
unsigned long int* packetsReceived,
|
|
|
|
unsigned long int* bytesTransmitted,
|
|
|
|
unsigned long int* packetsTransmitted);
|
2020-10-08 14:34:54 +00:00
|
|
|
|
2020-11-17 07:12:38 +00:00
|
|
|
void Platform_getBattery(double *percent, ACPresence *isOnAC);
|
|
|
|
|
2014-11-27 23:02:52 +00:00
|
|
|
#endif
|