00001 /* 00002 ** notifyvar.h for lseos in lseos-srv/basic/notify 00003 ** 00004 ** Copyright(c)2004 Vianney Rancurel 00005 ** Login <vianney@epita.fr> 00006 ** 00007 ** Started on Tue Feb 17 17:14:41 2004 Vianney Rancurel 00008 ** Last update Mon Dec 6 12:25:11 2004 Vianney Rancurel 00009 */ 00010 #ifndef __NOTIFYVAR_H__ 00011 #define __NOTIFYVAR_H__ 1 00012 #include <libc.h> 00013 00014 typedef enum 00015 { 00016 NOTIFY_DUMMY = 100, 00017 } t_notify_suberrno_codes; 00018 00019 struct s_observee; 00020 LIST_HEAD(s_observee_list, s_observee); 00021 typedef struct s_observee_list t_observee_list; 00022 00023 typedef struct s_observee 00024 { 00025 LIST_ENTRY(s_observee) list; 00026 00027 pid_t pid; 00028 int refcnt; 00029 u_int32_t dead:1; 00030 } t_observee; 00031 00032 struct s_observer; 00033 LIST_HEAD(s_observer_list, s_observer); 00034 typedef struct s_observer_list t_observer_list; 00035 00036 typedef struct s_observer 00037 { 00038 LIST_ENTRY(s_observer) list; 00040 pid_t pid; 00041 int refcnt; 00042 t_observee_list observees; 00043 } t_observer; 00044 00045 #endif