On Sat, Aug 02, 2003 at 11:19:44AM -0400, Alexander R. Pruss wrote:
> I am concerned a little about memory usage and caching. In image.c, images
> are run through an image optimizer for OS3.5+.  This means that a copy of
> the image is created by BmpCreate, on the heap I assume.  A pointer to
> this copy is then added to the cache.  The item is then deleted from the
> heap when ResetCache() is called, which happens according to the comments
> when a new document is loaded.

See how image.c and cache.c relate within the multiimage branch, I
think that that might already solve your problem.

> There is an easy fix here: only call the optimizer if the cache is
> enabled.  But before I implement this, I need to ask: Does the optimizer
> do anything useful if the cache is not enabled?  (Well, it does do one
> thing: It reduces memory usage for rotated viewing of bitmaps with higher
> depth than the current screen.)

Yes.. on OS5 devices we need to call OptimizeImage() so that we can
ConvertImageToV3(). The converting function doesn't work on images
read directly from the storage heap, so we need to include it in the
dynamic heap first (done by the remainder of OptimizeImage().

Even if the cache were to be disabled we still need to convert the
image otherwise all images will remain in 75dpi (rather than 150dpi as
they should be in os5 hires)

-- 
Adam McDaniel
Array.org
Calgary, AB, Canada
_______________________________________________
plucker-dev mailing list
[EMAIL PROTECTED]
http://lists.rubberchicken.org/mailman/listinfo/plucker-dev

Reply via email to