On Wednesday 11 April 2007 09:41:22 [EMAIL PROTECTED] wrote:
>       Cedric wrote:
> > > this is why there is a specific engine copy wrapping the image
> > > - the RGBA_Image just acts as a source of RGBA pixel data.
> > > the wrapping engine image colds a pointer to that plus engine
> > > specific data. the image is also looked up not just by filename
> > > + key, but ALSO by engine specific properties too.
> >
> > When I did take a look at others engines, I missed such idea.
> > So I didn't take them into account for the cache. I will need
> > to think how I could solve that, but I would like to try to solve
> > this on a real case. Do you have an engine that need more than
> > one private data ? (One that could be a good start to see,
> > understand and fix this problem)

>       The xrender based engines. The loaded data is kept in
> 'pictures', which are resources that depend on other X stuff.
>       That part would be easy to fix in what you have: add a
> function prototype to generate the 'cache_key' from given input
> (file, key, load_opts, void *engine_data).

Thanks, that should be easy.

>       But the 'problem' goes deeper than that. Right now the
> argb data itself (ie. the result of loading things given only
> the file/key/load_opts combo) may be shared by several cached
> engine images, ie. images which have the same file/key/load_opts
> but could have different 'displays' say, and this is the real
> source of the 'problem'.

I am not sure if I understand correctly the problem. As I currently 
implemented my cache mecanism, a RGBA_Image could only end in one image cache 
linked with one engine and one cache_key. Now what we want, is having one 
RGBA_Image in multiple cache linked with multiple engine, but with one 
cache_key. This cache_key should only be the same if all engine are really ok 
to share this RGBA_Image. Is it correct ?
        In that case, I need to provide a way to request each engine to compute 
the 
cache_key and if they all give the same answer, it's ok (I take for granted 
the fact that I could have multiple cache for one RGBA_Image. I know, it will 
need some thinking also). Or did I miss a bigger problem ?

Cedric

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to