aboutsummaryrefslogtreecommitdiffstats
path: root/Meter.h
diff options
context:
space:
mode:
authorDaniel Lange <DLange@git.local>2016-04-11 13:00:20 +0200
committerDaniel Lange <DLange@git.local>2016-04-11 13:00:20 +0200
commitea859f50d9438bc61ae96721a4d255b49de78653 (patch)
treebfb52a5f403ad1e86c562b2f4d608d1268fe8fcf /Meter.h
parent266ab52b3a741a58fb17c48b0f7939d7c5d266de (diff)
downloaddebian_htop-ea859f50d9438bc61ae96721a4d255b49de78653.tar.gz
debian_htop-ea859f50d9438bc61ae96721a4d255b49de78653.tar.bz2
debian_htop-ea859f50d9438bc61ae96721a4d255b49de78653.zip
Imported Upstream version 0.6.2upstream/0.6.2
Diffstat (limited to 'Meter.h')
-rw-r--r--Meter.h155
1 files changed, 112 insertions, 43 deletions
diff --git a/Meter.h b/Meter.h
index 4e0e5fa..73fa657 100644
--- a/Meter.h
+++ b/Meter.h
@@ -1,94 +1,163 @@
-/* Do not edit this file. It was automatically genarated. */
+/* Do not edit this file. It was automatically generated. */
#ifndef HEADER_Meter
#define HEADER_Meter
/*
-htop
-(C) 2004 Hisham H. Muhammad
+htop - Meter.c
+(C) 2004-2006 Hisham H. Muhammad
Released under the GNU GPL, see the COPYING file
in the source distribution for its full text.
*/
+#define _GNU_SOURCE
+#include <math.h>
+#include <string.h>
+#include <stdlib.h>
+#include <curses.h>
+#include <stdarg.h>
+
#include "Object.h"
#include "CRT.h"
#include "ListItem.h"
#include "String.h"
-
-#include <stdlib.h>
-#include <curses.h>
-#include <string.h>
-#include <math.h>
-#include <sys/param.h>
+#include "ProcessList.h"
#include "debug.h"
#include <assert.h>
-#define METER_BARBUFFER_LEN 128
-#define METER_GRAPHBUFFER_LEN 128
+#ifndef USE_FUNKY_MODES
+#define USE_FUNKY_MODES 1
+#endif
+
+#define METER_BUFFER_LEN 128
typedef struct Meter_ Meter;
+typedef struct MeterType_ MeterType;
+typedef struct MeterMode_ MeterMode;
-typedef void(*Meter_SetValues)(Meter*);
+typedef void(*MeterType_Init)(Meter*);
+typedef void(*MeterType_Done)(Meter*);
+typedef void(*MeterType_SetMode)(Meter*, int);
+typedef void(*Meter_SetValues)(Meter*, char*, int);
typedef void(*Meter_Draw)(Meter*, int, int, int);
-typedef enum MeterMode_ {
- UNSET,
- BAR,
- TEXT,
- GRAPH,
- LED,
- LAST_METERMODE
-} MeterMode;
-
-struct Meter_ {
- Object super;
-
- int h;
- int w;
+struct MeterMode_ {
Meter_Draw draw;
+ char* uiName;
+ int h;
+};
+
+struct MeterType_ {
Meter_SetValues setValues;
+ Object_Display display;
+ int mode;
int items;
+ double total;
int* attributes;
+ char* name;
+ char* uiName;
+ char* caption;
+ MeterType_Init init;
+ MeterType_Done done;
+ MeterType_SetMode setMode;
+ Meter_Draw draw;
+};
+
+struct Meter_ {
+ Object super;
+ char* caption;
+ MeterType* type;
+ int mode;
+ int param;
+ Meter_Draw draw;
+ void* drawBuffer;
+ int h;
+ ProcessList* pl;
double* values;
double total;
- char* caption;
- char* name;
- union {
- RichString* rs;
- char* c;
- double* graph;
- } displayBuffer;
- MeterMode mode;
};
extern char* METER_CLASS;
+extern MeterType CPUMeter;
+extern MeterType ClockMeter;
+extern MeterType LoadAverageMeter;
+extern MeterType LoadMeter;
+extern MeterType MemoryMeter;
+extern MeterType SwapMeter;
+extern MeterType TasksMeter;
+extern MeterType UptimeMeter;
+extern MeterType AllCPUsMeter;
+
+typedef enum {
+ CUSTOM_METERMODE = 0,
+ BAR_METERMODE,
+ TEXT_METERMODE,
+#ifdef USE_FUNKY_MODES
+ GRAPH_METERMODE,
+ LED_METERMODE,
+#endif
+ LAST_METERMODE
+} MeterModeId;
+extern MeterType* Meter_types[];
+extern MeterMode* Meter_modes[];
+#ifndef MIN
+#define MIN(a,b) ((a)<(b)?(a):(b))
+#endif
+#ifndef MAX
+#define MAX(a,b) ((a)>(b)?(a):(b))
+#endif
+
-Meter* Meter_new(char* name, char* caption, int items);
-void Meter_init(Meter* this, char* name, char* caption, int items);
-void Meter_delete(Object* cast);
+#ifdef USE_FUNKY_MODES
-void Meter_done(Meter* this);
+#endif
+Meter* Meter_new(ProcessList* pl, int param, MeterType* type);
+void Meter_delete(Object* cast);
-#define DrawDot(a,y,c) do { \
- attrset(a); \
- mvaddstr(y, x+k, c); \
-} while(0)
+void Meter_setCaption(Meter* this, char* caption);
-void Meter_setMode(Meter* this, MeterMode mode);
+void Meter_setMode(Meter* this, int modeIndex);
ListItem* Meter_toListItem(Meter* this);
+/* ---------- TextMeterMode ---------- */
+
+void TextMeterMode_draw(Meter* this, int x, int y, int w);
+
+/* ---------- BarMeterMode ---------- */
+
+
+void BarMeterMode_draw(Meter* this, int x, int y, int w);
+
+#ifdef USE_FUNKY_MODES
+
+/* ---------- GraphMeterMode ---------- */
+
+#define DrawDot(a,y,c) do { attrset(a); mvaddch(y, x+k, c); } while(0)
+
+
+
+void GraphMeterMode_draw(Meter* this, int x, int y, int w);
+
+/* ---------- LEDMeterMode ---------- */
+
+
+
+void LEDMeterMode_draw(Meter* this, int x, int y, int w);
+
+#endif
+
#endif

© 2014-2024 Faster IT GmbH | imprint | privacy policy