5 #include "include/iosupport.h"
7 /// A single cache entry...
11 // NULL not queued, otherwise queue request record
14 // frame counter the icon was used the last time - oldest get rewritten first in case new icon is requested and cache is full. negative numbers mean
15 // slot is free and can be used right now
22 /// One texture cache instance
24 /// User specified ID, not used in any way by the cache code (not even initialized!)
27 /// count of entries (copy of the requested cache size upon cache initialization)
30 /// directory prefix for this cache (if any)
37 /// the cache entries itself
38 cache_entry_t
* content
;
41 /** Initializes the cache subsystem.
45 /** Terminates the cache. Does nothing currently. Users of this code have to destroy caches via cacheDestroyCache
49 /** Initializes a single cache
51 image_cache_t
* cacheInitCache(int userId
, char* prefix
, int isPrefixRelative
, char* suffix
, int count
);
53 /** Destroys a given cache (unallocates all memory stored there, disconnects the pixmaps from the usage points).
55 void cacheDestroyCache(image_cache_t
* cache
);
57 GSTEXTURE
* cacheGetTexture(image_cache_t
* cache
, item_list_t
* list
, int* cacheId
, int* UID
, char* value
);