Blender V2.61 - r43446
|
#include "BLI_utildefines.h"
#include "BLI_ghash.h"
Go to the source code of this file.
Typedefs | |
typedef void(* | MovieCacheGetKeyDataFP )(void *userkey, int *framenr, int *proxy, int *render_flags) |
Functions | |
void | IMB_moviecache_init (void) |
void | IMB_moviecache_destruct (void) |
struct MovieCache * | IMB_moviecache_create (int keysize, GHashHashFP hashfp, GHashCmpFP cmpfp, MovieCacheGetKeyDataFP getdatafp) |
void | IMB_moviecache_put (struct MovieCache *cache, void *userkey, struct ImBuf *ibuf) |
struct ImBuf * | IMB_moviecache_get (struct MovieCache *cache, void *userkey) |
void | IMB_moviecache_free (struct MovieCache *cache) |
void | IMB_moviecache_get_cache_segments (struct MovieCache *cache, int proxy, int render_flags, int *totseg_r, int **points_r) |
Definition in file IMB_moviecache.h.
typedef void(* MovieCacheGetKeyDataFP)(void *userkey, int *framenr, int *proxy, int *render_flags) |
Definition at line 45 of file IMB_moviecache.h.
struct MovieCache* IMB_moviecache_create | ( | int | keysize, |
GHashHashFP | hashfp, | ||
GHashCmpFP | cmpfp, | ||
MovieCacheGetKeyDataFP | getdatafp | ||
) | [read] |
Definition at line 201 of file moviecache.c.
References BLI_ghash_new(), BLI_mempool_create(), MovieCache::cmpfp, FALSE, MovieCache::getdatafp, MovieCache::hash, MovieCache::hashfp, MovieCache::items_pool, MovieCache::keys_pool, MovieCache::keysize, MEM_callocN(), moviecache_hashcmp(), moviecache_hashhash(), MovieCache::proxy, and MovieCache::userkeys_pool.
Referenced by put_imbuf_cache(), seq_stripelem_cache_cleanup(), and seq_stripelem_cache_put().
void IMB_moviecache_destruct | ( | void | ) |
Definition at line 195 of file moviecache.c.
References delete_MEM_CacheLimiter(), and limitor.
Referenced by free_blender().
void IMB_moviecache_free | ( | struct MovieCache * | cache | ) |
Definition at line 283 of file moviecache.c.
References BLI_ghash_free(), BLI_mempool_destroy(), MovieCache::hash, MovieCache::items_pool, MovieCache::keys_pool, MEM_freeN(), moviecache_keyfree(), moviecache_valfree(), MovieCache::points, and MovieCache::userkeys_pool.
Referenced by free_buffers(), seq_stripelem_cache_cleanup(), and seq_stripelem_cache_destruct().
struct ImBuf* IMB_moviecache_get | ( | struct MovieCache * | cache, |
void * | userkey | ||
) | [read] |
Definition at line 260 of file moviecache.c.
References BLI_ghash_lookup(), MovieCacheItem::c_handle, MovieCacheKey::cache_owner, MovieCache::curtime, MovieCache::hash, MovieCacheItem::ibuf, IMB_refImBuf(), MovieCacheItem::last_access, MEM_CacheLimiter_touch(), NULL, and MovieCacheKey::userkey.
Referenced by get_imbuf_cache(), and seq_stripelem_cache_get().
void IMB_moviecache_get_cache_segments | ( | struct MovieCache * | cache, |
int | proxy, | ||
int | render_flags, | ||
int * | totseg_r, | ||
int ** | points_r | ||
) |
Definition at line 298 of file moviecache.c.
References BLI_ghash_size(), BLI_ghashIterator_free(), BLI_ghashIterator_getKey(), BLI_ghashIterator_getValue(), BLI_ghashIterator_isDone(), BLI_ghashIterator_new(), BLI_ghashIterator_step(), compare_int(), MovieCache::getdatafp, MovieCache::hash, MovieCacheItem::ibuf, MEM_callocN(), MEM_freeN(), NULL, MovieCache::points, MovieCache::proxy, MovieCache::render_flags, MovieCache::totseg, and MovieCacheKey::userkey.
Referenced by BKE_movieclip_get_cache_segments().
void IMB_moviecache_init | ( | void | ) |
Definition at line 190 of file moviecache.c.
References get_item_size(), IMB_moviecache_destructor(), limitor, and new_MEM_CacheLimiter().
Referenced by IMB_moviecache_put().
void IMB_moviecache_put | ( | struct MovieCache * | cache, |
void * | userkey, | ||
struct ImBuf * | ibuf | ||
) |
Definition at line 221 of file moviecache.c.
References BLI_ghash_insert(), BLI_ghash_remove(), BLI_mempool_alloc(), MovieCacheItem::c_handle, MovieCacheItem::cache_owner, MovieCacheKey::cache_owner, check_unused_keys(), MovieCache::curtime, MovieCache::hash, MovieCacheItem::ibuf, IMB_moviecache_init(), IMB_refImBuf(), MovieCache::items_pool, MovieCache::keys_pool, MovieCache::keysize, MovieCacheItem::last_access, limitor, MEM_CacheLimiter_enforce_limits(), MEM_CacheLimiter_insert(), MEM_CacheLimiter_ref(), MEM_CacheLimiter_unref(), MEM_freeN(), moviecache_keyfree(), moviecache_valfree(), NULL, MovieCache::points, MovieCacheKey::userkey, and MovieCache::userkeys_pool.
Referenced by put_imbuf_cache(), and seq_stripelem_cache_put().