Test initialisation of MUIA_List_AdjustWidth and MUIA_List_AdjustHeight, and
[AROS.git] / workbench / system / SysMon / sysmon_intern.h
blobe1b3a9a576ef811b214865808a612e74ccfd29a4
1 /*
2 Copyright 2010-2013, The AROS Development Team. All rights reserved.
3 $Id$
4 */
6 #ifndef _SYSMON_INTERN_H
7 #define _SYSMON_INTERN_H
9 #include <proto/exec.h>
10 #include <proto/intuition.h>
11 #include <libraries/mui.h>
12 #define MEMORY_RAM 0
13 #define MEMORY_CHIP 1
14 #define MEMORY_FAST 2
15 #define MEMORY_VRAM 3
16 #define MEMORY_GART 4
18 struct SysMonData
20 struct Task *sm_Task;
21 Object * application;
22 Object * mainwindow;
24 CONST_STRPTR tabs [4];
26 struct Hook tasklistconstructhook;
27 struct Hook tasklistdestructhook;
28 struct Hook tasklistdisplayhook;
29 struct Hook taskselectedhook;
30 struct Hook tasklistrefreshbuttonhook;
32 Object * tasklist;
33 Object * tasklistinfo;
35 Object ** cpuusagegauges;
36 Object ** cpufreqlabels;
37 Object ** cpufreqvalues;
39 Object * memorysize[5];
40 Object * memoryfree[5];
42 IPTR tasklistautorefresh;
44 struct List sm_TaskList;
45 struct Task *sm_TaskSelected;
47 ULONG sm_TasksWaiting;
48 ULONG sm_TasksReady;
49 ULONG sm_TaskTotalRuntime;
51 STRPTR tasklistinfobuf;
54 struct SysMonModule
56 BOOL (*Init)(struct SysMonData *);
57 VOID (*DeInit)(struct SysMonData *);
60 extern struct SysMonModule memorymodule;
61 extern struct SysMonModule videomodule;
62 extern struct SysMonModule processormodule;
63 extern struct SysMonModule timermodule;
64 extern struct SysMonModule tasksmodule;
66 VOID UpdateMemoryInformation(struct SysMonData * smdata);
67 VOID UpdateMemoryStaticInformation(struct SysMonData * smdata);
69 VOID UpdateVideoInformation(struct SysMonData * smdata);
70 VOID UpdateVideoStaticInformation(struct SysMonData * smdata);
72 ULONG GetProcessorCount();
73 VOID UpdateProcessorInformation(struct SysMonData * smdata);
74 VOID UpdateProcessorStaticInformation(struct SysMonData * smdata);
76 VOID UpdateTasksInformation(struct SysMonData * smdata);
77 VOID UpdateTasksStaticInformation(struct SysMonData * smdata);
79 struct TaskInfo;
81 AROS_UFP3(struct TaskInfo *, TasksListConstructFunction,
82 AROS_UFHA(struct Hook *, h, A0),
83 AROS_UFHA(APTR, pool, A2),
84 AROS_UFHA(struct Task *, curTask, A1));
86 AROS_UFP3(VOID, TasksListDestructFunction,
87 AROS_UFHA(struct Hook *, h, A0),
88 AROS_UFHA(APTR, pool, A2),
89 AROS_UFHA(struct TaskInfo *, obj, A1));
91 AROS_UFP3(VOID, TasksListDisplayFunction,
92 AROS_UFHA(struct Hook *, h, A0),
93 AROS_UFHA(STRPTR *, strings, A2),
94 AROS_UFHA(struct TaskInfo *, obj, A1));
96 AROS_UFP3(VOID, TaskSelectedFunction,
97 AROS_UFHA(struct Hook *, h, A0),
98 AROS_UFHA(Object *, object, A2),
99 AROS_UFHA(APTR, msg, A1));
101 ULONG GetSIG_TIMER();
102 VOID SignalMeAfter(ULONG msecs);
103 #endif