On Wed, Apr 9, 2008 at 6:38 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote: > Cedric wrote: > > Let's really break everything ! This is the same serie of old patch > > up to date that improve the cache system. It should not break > > anything. The code is cleaner and should fix some bugs hard to track > > in the current code base. > > > > I want to base my work on loading image in the background on this > > code. So I would like people to take time to test, check their > > application with it and report bugs to me.
> That's a pretty hefty patch. :) Do you think you could write > down some of the design/structure/etc, and what you're aiming for > here.. for the sake of posterity and mere mortals with little time > to look it all over. :) Yes of course. So it's basically an improvement of the current cache system. First I wanted a cleaner code, so all manipulation of an image entry in the cache are done by small function that only do that. I should have done this the first time. This reduce the number of bug inside the cache system and make the code easier to read. This function are at the top of the evas_cache*.c file. I also wanted to reduce the number of call to malloc. So I added the Image_Entry at the top of RGBA_Image and Soft16_Image. I removed the pointer to a RGBA_Surface to a structure inside RGBA_Image. With all this change, the cache system doesn't allocate the image structure, but it's the dutty of the common engine (then 32bpp and 16bpp common engine share now the same cache code). As this patch start to give more power to the 16bpp engine, it make it a common engine. The final goal is still to use the same cache system in each engine (many engine have right now their own cache system that do more or less the same thing). To do this, the next step will be to merge more code between both software_sdl engine (16 and 32 bpp). As the code base of the cache is cleaner, it should be easier to add new functionality. For example, I think adding the background loading of an image surface should be really easy with this code base. I know that this code change is huge, and it's difficult for me to split it as I started to do the work the old way (without git). If you have more questions or if I am not really clear on some change, don't hesitate to ask more question ! -- Cedric BAIL ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel