move ltt-private.h from public directroy into private directroy
[lttv.git] / ltt / branches / poly / lttv / modules / guiControlFlow / Process_List.h
CommitLineData
f0d936c0 1#ifndef _PROCESS_LIST_H
2#define _PROCESS_LIST_H
3
fa2c4dbe 4#include <gtk/gtk.h>
5#include <lttv/state.h>
6#include <ltt/ltt.h>
7
8/* The process list
9 *
10 * Tasks :
11 * Create a process list
12 * contains the data for the process list
13 * tells the height of the process list widget
14 * provides methods to add/remove process from the list
15 * note : the sync with drawing is left to the caller.
16 * provides helper function to convert a process unique identifier to
17 * pixels (in height).
5f16133f 18 *
19 * //FIXME : connect the scrolled window adjustment with the list.
fa2c4dbe 20 */
21
5f16133f 22typedef struct _ProcessInfo {
23
24 guint pid;
25 LttTime birth;
26
27} ProcessInfo;
28
29
30
31struct _ProcessList {
32
33 GtkWidget *Process_List_VC;
34 GtkListStore *Store_M;
35
36 /* A hash table by PID to speed up process position find in the list */
37 GHashTable *Process_Hash;
38
39 guint Number_Of_Process;
f7afe191 40 gboolean Test_Process_Sent;
5f16133f 41
42};
43
44
f0d936c0 45typedef struct _ProcessList ProcessList;
46
558aa013 47ProcessList *ProcessList_construct(void);
f0d936c0 48void ProcessList_destroy(ProcessList *Process_List);
49GtkWidget *ProcessList_getWidget(ProcessList *Process_List);
50
fa2c4dbe 51// out : success (0) and height
52int ProcessList_add(ProcessList *Process_List, guint pid, LttTime *birth,
53 guint *height);
54// out : success (0) and height
55int ProcessList_remove(ProcessList *Process_List, guint pid, LttTime *birth);
56
f7afe191 57guint ProcessList_get_height(ProcessList *Process_List);
fa2c4dbe 58
59// Returns 0 on success
60gint ProcessList_get_process_pixels(ProcessList *Process_List,
61 guint pid, LttTime *birth,
f7afe191 62 guint *y, guint *height);
f0d936c0 63#endif // _PROCESS_LIST_H
This page took 0.024633 seconds and 4 git commands to generate.