Enlightenment CVS committal Author : raster Project : e17 Module : libs/evas
Dir : e17/libs/evas/src/lib/include Modified Files: evas_common.h evas_private.h Log Message: and i implemented module UNLOADING. given enough cycles of non-use of a module and no references, it will get.... UNLOADED :) =================================================================== RCS file: /cvs/e/e17/libs/evas/src/lib/include/evas_common.h,v retrieving revision 1.64 retrieving revision 1.65 diff -u -3 -r1.64 -r1.65 --- evas_common.h 6 Sep 2006 07:33:40 -0000 1.64 +++ evas_common.h 18 Sep 2006 09:40:29 -0000 1.65 @@ -249,6 +249,7 @@ RGBA_Image_Flags flags; struct { + void *module; void *loader; // int format; char *file; =================================================================== RCS file: /cvs/e/e17/libs/evas/src/lib/include/evas_private.h,v retrieving revision 1.74 retrieving revision 1.75 diff -u -3 -r1.74 -r1.75 --- evas_private.h 6 Sep 2006 07:33:40 -0000 1.74 +++ evas_private.h 18 Sep 2006 09:40:29 -0000 1.75 @@ -45,10 +45,13 @@ int (*open)(Evas_Module *); void (*close)(Evas_Module *); } func; - unsigned char loaded : 1; + unsigned char loaded : 1; void *functions; /* this are the functions exported by the module */ void *data; /* some internal data for the module i.e the id for engines */ + + int ref; /* how many refs */ + int last_used; /* the cycle count when it was last used */ }; @@ -308,6 +311,7 @@ int events_frozen; struct { + Evas_Module *module; Evas_Func *func; struct { void *output; @@ -743,7 +747,12 @@ Evas_Module * evas_module_find_type(Evas_Module_Type type, const char *name); int evas_module_load(Evas_Module *em); void evas_module_unload(Evas_Module *em); +void evas_module_ref(Evas_Module *em); +void evas_module_unref(Evas_Module *em); +void evas_module_use(Evas_Module *em); +void evas_module_clean(void); void evas_module_shutdown(void); + EAPI int _evas_module_engine_inherit(Evas_Func *funcs, char *name); #define EVAS_API_OVERRIDE(func, api, prefix) \ ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs