DIRECTORY DragOpsCross USING [Word], IO USING [STREAM], Rope USING [ROPE]; TLCacheModels: CEDAR DEFINITIONS = BEGIN Word: TYPE = DragOpsCross.Word; wordsPerPage: CARDINAL = 128; logWordsPerPage: CARDINAL = 7; Cache: TYPE = REF CacheRec; CacheRec: TYPE = RECORD [ private: REF _ NIL, -- private data to the cache implementation pbus: PBusModel.PBus _ NIL, phACycle: CacheCycleProc _ NIL, phBCycle: CacheCycleProc _ NIL, reset: CacheResetProc _ NIL, -- Resets the given cache to its initial state flush: CacheFlushProc _ NIL, -- Forget everything it knows, but don't effect stats print: CachePrintProc _ NIL, -- Print statistics, and eventually resets them ]; CacheCycleProc: TYPE = PROC [cache: Cache]; CacheResetProc: TYPE = PROC [cache: Cache]; CacheFlushProc: TYPE = PROC [cache: Cache]; CachePrintProc: TYPE = PROC [cache: Cache, stream: IO.STREAM, name: Rope.ROPE, resetStatistics: BOOL _ TRUE]; PhACycle: CacheCycleProc; PhBCycle: CacheCycleProc; Reset: CacheResetProc; Flush: CacheFlushProc; Print: CachePrintProc; END. ΊTLCacheModels.mesa Written By: Pradeep Sindhu, August 19, 1985 4:57:12 pm PDT Pradeep Sindhu August 19, 1985 5:32:51 pm PDT Basic Types Cache Related Types The cache procedures Κ›˜™J™:Icode™-—K™šΟk ˜ Kšœ œ ˜Kšœœœ˜Kšœœœ˜K˜—šΟb œœ œ˜(K˜šœ ™ K˜Kšœœ˜Kšœœ˜Kšœœ˜—K˜šœ™K˜Kšžœœœ ˜–36 sp tabStopsšžœœœ˜K–36 sp tabStopsšœ œœΟc+˜?K–36 sp tabStopsšœœ˜K–36 sp tabStopsšœœ˜K–36 sp tabStopsšœœ˜K–36 sp tabStopsšœœŸ.˜KK–36 sp tabStopsšœœŸ5˜RK–36 sp tabStopsšœœŸ/˜LK–36 sp tabStops˜K–36 sp tabStops˜—K˜KšΟnœœœ˜,K˜Kš œœœ˜,K˜Kš œœœ˜,K˜Kš œœœœœ œœœ˜n—K˜™K˜Kšžœ˜K˜Kšžœ˜K˜Kšžœ˜K˜Kšžœ˜K˜Kšžœ˜—K˜Kšœ˜K˜K˜——…—q