-- Bitmap cache definitions for Chipmonk
-- last modified by McCreight, January 24, 1983  9:55 AM
-- written by McCreight, January 11, 1983  2:21 PM

DIRECTORY
  ppdefs;

ppCache: DEFINITIONS =
  BEGIN

  EnableCache, DisableCache, FlushEntireCache: PROC;

  CachingIsEnabled: PROC RETURNS [BOOLEAN];

  FlushObjectCache: PROC [ob: ppdefs.obPtr];

  SetupCacheGrayTables: PROC;
    -- called whenever color map changes

  DrawWithCaching: PROC [ob: ppdefs.obPtr, orient: ppdefs.orientationIndex,
    x, y: ppdefs.locNum, pr: POINTER TO ppdefs.drRecord, dest: ppdefs.Raster];
    -- creates a new pr with orCache filled in to paint into dest, then calls
    -- ob.p.drawme[orient] on it. 

  permittedCacheK: INTEGER;
    -- number of k words of long storage that can be devoted to bitmap caches
    -- <=0 disables caching

  maxColPixelsPerCacheMap, maxBWPixelsPerCacheMap: LONG INTEGER;

  END.