Mercurial > MadButterfly
view include/mb_af.h @ 1248:2f9fa5d59e67
Add data_monitor meta-class to monitor accessing on domview_ui.
- The monitoring is to prevent from reentry triggered by DOM events.
- call 'do*' methods of a monitored class would try to lock
domview_ui at first.
- The method would not be executed actually if being fault to lock.
- You can make monitor to print debug message with environment variable
- DATA_MONITOR_DBG=1, or
- DATA_MONITOR_DBG=2
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Tue, 11 Jan 2011 10:04:14 +0800 |
parents | 5d9def42df12 |
children |
line wrap: on
line source
// -*- indent-tabs-mode: t; tab-width: 8; c-basic-offset: 4; -*- // vim: sw=4:ts=8:sts=4 #ifndef __APP_H #define __APP_H #include "mb_backend.h" typedef struct _mbapp mbaf_t; struct _mbapp { mb_rt_t *rt; redraw_man_t *rdman; mb_sprite_t *rootsprite; mb_obj_t *root; subject_t *kbevents; void *private; }; mbaf_t *mbaf_init(const char *module, const char *module_dir); void mbaf_set_data(mbaf_t *app,void *data); mb_timer_man_t *mbaf_get_timer(mbaf_t *app); void mbaf_loop(mbaf_t *app); #define MBAF_DATA(app,type) ((type *) ((app)->private)) #define MBAF_RDMAN(app) (((mbaf_t *) app)->rdman) #define MBAF_KB_SUBJECT(app) ((app)->kbevents) #include "mbbutton.h" #endif /* __MBAF_H_ */