Blender
V3.3
|
Go to the source code of this file.
Typedefs | |
typedef void(* | MovieCacheGetKeyDataFP) (void *userkey, int *framenr, int *proxy, int *render_flags) |
typedef void *(* | MovieCacheGetPriorityDataFP) (void *userkey) |
typedef int(* | MovieCacheGetItemPriorityFP) (void *last_userkey, void *priority_data) |
typedef void(* | MovieCachePriorityDeleterFP) (void *priority_data) |
Definition at line 27 of file IMB_moviecache.h.
Definition at line 24 of file IMB_moviecache.h.
Definition at line 26 of file IMB_moviecache.h.
Definition at line 28 of file IMB_moviecache.h.
void IMB_moviecache_cleanup | ( | struct MovieCache * | cache, |
bool(cleanup_check_cb)(struct ImBuf *ibuf, void *userkey, void *userdata) | , | ||
void * | userdata | ||
) |
Referenced by BKE_image_free_all_textures(), BKE_image_free_anim_ibufs(), and BKE_movieclip_clear_proxy_cache().
struct MovieCache* IMB_moviecache_create | ( | const char * | name, |
int | keysize, | ||
GHashHashFP | hashfp, | ||
GHashCmpFP | cmpfp | ||
) |
Definition at line 265 of file moviecache.cc.
References BLI_ghash_new(), BLI_mempool_create(), BLI_MEMPOOL_NOP, BLI_strncpy(), MovieCache::cmpfp, MovieCache::hash, MovieCache::hashfp, MovieCache::items_pool, MovieCache::keys_pool, MovieCache::keysize, MEM_callocN, moviecache_hashcmp(), moviecache_hashhash(), MovieCache::name, PRINT, MovieCache::proxy, and MovieCache::userkeys_pool.
Referenced by colormanage_moviecache_ensure(), imagecache_put(), and put_imbuf_cache().
Definition at line 257 of file moviecache.cc.
References delete_MEM_CacheLimiter(), and limitor.
Referenced by BKE_blender_free(), and blender::bke::image::partial_update::ImagePartialUpdateTest::TearDown().
void IMB_moviecache_free | ( | struct MovieCache * | cache | ) |
Definition at line 444 of file moviecache.cc.
References BLI_ghash_free(), BLI_mempool_destroy(), MovieCache::hash, MovieCache::items_pool, MovieCache::keys_pool, MovieCache::last_userkey, MEM_freeN, moviecache_keyfree(), moviecache_valfree(), MovieCache::name, MovieCache::points, PRINT, and MovieCache::userkeys_pool.
Referenced by colormanage_cache_free(), free_buffers(), and image_free_cached_frames().
struct ImBuf* IMB_moviecache_get | ( | struct MovieCache * | cache, |
void * | userkey, | ||
bool * | r_is_cached_empty | ||
) |
Definition at line 401 of file moviecache.cc.
References BLI_ghash_lookup(), MovieCacheItem::c_handle, MovieCacheKey::cache_owner, MovieCache::hash, MovieCacheItem::ibuf, IMB_refImBuf(), limitor_lock, MEM_CacheLimiter_touch(), and MovieCacheKey::userkey.
Referenced by colormanage_cache_get_ibuf(), get_imbuf_cache(), and imagecache_get().
void IMB_moviecache_get_cache_segments | ( | struct MovieCache * | cache, |
int | proxy, | ||
int | render_flags, | ||
int * | r_totseg, | ||
int ** | r_points | ||
) |
Get segments of cached frames. Useful for debugging cache policies.
Definition at line 489 of file moviecache.cc.
References Freestyle::a, usdtokens::b(), BLI_ghash_len(), BLI_ghashIterator_getKey(), BLI_ghashIterator_getValue(), compare_int(), MovieCache::getdatafp, GHASH_ITER, MovieCache::hash, MovieCacheItem::ibuf, MEM_callocN, MEM_freeN, MEM_SAFE_FREE, MovieCache::points, MovieCache::proxy, MovieCache::render_flags, MovieCache::totseg, and MovieCacheKey::userkey.
Referenced by BKE_movieclip_get_cache_segments(), and draw_image_cache().
bool IMB_moviecache_has_frame | ( | struct MovieCache * | cache, |
void * | userkey | ||
) |
Definition at line 432 of file moviecache.cc.
References BLI_ghash_lookup(), MovieCacheKey::cache_owner, MovieCache::hash, and MovieCacheKey::userkey.
Referenced by has_imbuf_cache().
Definition at line 249 of file moviecache.cc.
References get_item_destroyable(), get_item_priority(), get_item_size(), limitor, MEM_CacheLimiter_ItemDestroyable_Func_set(), MEM_CacheLimiter_ItemPriority_Func_set(), moviecache_destructor(), and new_MEM_CacheLimiter().
Referenced by do_moviecache_put().
void IMB_moviecache_put | ( | struct MovieCache * | cache, |
void * | userkey, | ||
struct ImBuf * | ibuf | ||
) |
Definition at line 367 of file moviecache.cc.
References do_moviecache_put().
Referenced by colormanage_cache_put(), imagecache_put(), and put_imbuf_cache().
bool IMB_moviecache_put_if_possible | ( | struct MovieCache * | cache, |
void * | userkey, | ||
struct ImBuf * | ibuf | ||
) |
Definition at line 372 of file moviecache.cc.
References do_moviecache_put(), get_size_in_memory(), limitor, limitor_lock, MEM_CacheLimiter_get_maximum(), MEM_CacheLimiter_get_memory_in_use(), mem_in_use, and result.
Referenced by put_imbuf_cache().
void IMB_moviecache_remove | ( | struct MovieCache * | cache, |
void * | userkey | ||
) |
Definition at line 393 of file moviecache.cc.
References BLI_ghash_remove(), MovieCacheKey::cache_owner, MovieCache::hash, moviecache_keyfree(), moviecache_valfree(), and MovieCacheKey::userkey.
Referenced by imagecache_remove().
void IMB_moviecache_set_getdata_callback | ( | struct MovieCache * | cache, |
MovieCacheGetKeyDataFP | getdatafp | ||
) |
Definition at line 292 of file moviecache.cc.
References MovieCache::getdatafp.
Referenced by imagecache_put(), and put_imbuf_cache().
void IMB_moviecache_set_priority_callback | ( | struct MovieCache * | cache, |
MovieCacheGetPriorityDataFP | getprioritydatafp, | ||
MovieCacheGetItemPriorityFP | getitempriorityfp, | ||
MovieCachePriorityDeleterFP | prioritydeleterfp | ||
) |
Definition at line 297 of file moviecache.cc.
References MovieCache::getitempriorityfp, MovieCache::getprioritydatafp, MovieCache::keysize, MovieCache::last_userkey, MEM_mallocN, and MovieCache::prioritydeleterfp.
Referenced by put_imbuf_cache().
bool IMB_moviecacheIter_done | ( | struct MovieCacheIter * | iter | ) |
Definition at line 590 of file moviecache.cc.
References BLI_ghashIterator_done().
Referenced by BKE_image_file_format_set(), BKE_image_get_first_ibuf(), BKE_image_get_ibuf_with_name(), BKE_image_has_loaded_ibuf(), BKE_image_is_dirty_writable(), BKE_image_merge(), image_mem_size(), and image_save_sequence_exec().
void IMB_moviecacheIter_free | ( | struct MovieCacheIter * | iter | ) |
Definition at line 585 of file moviecache.cc.
References BLI_ghashIterator_free().
Referenced by BKE_image_file_format_set(), BKE_image_get_first_ibuf(), BKE_image_get_ibuf_with_name(), BKE_image_has_loaded_ibuf(), BKE_image_is_dirty_writable(), BKE_image_merge(), image_mem_size(), and image_save_sequence_exec().
struct ImBuf* IMB_moviecacheIter_getImBuf | ( | struct MovieCacheIter * | iter | ) |
Definition at line 600 of file moviecache.cc.
References BLI_ghashIterator_getValue(), and MovieCacheItem::ibuf.
Referenced by BKE_image_file_format_set(), BKE_image_get_first_ibuf(), BKE_image_get_ibuf_with_name(), BKE_image_has_loaded_ibuf(), BKE_image_is_dirty_writable(), BKE_image_merge(), image_mem_size(), and image_save_sequence_exec().
void* IMB_moviecacheIter_getUserKey | ( | struct MovieCacheIter * | iter | ) |
Definition at line 606 of file moviecache.cc.
References BLI_ghashIterator_getKey(), and MovieCacheKey::userkey.
Referenced by BKE_image_merge().
struct MovieCacheIter* IMB_moviecacheIter_new | ( | struct MovieCache * | cache | ) |
Definition at line 575 of file moviecache.cc.
References BLI_ghashIterator_new(), check_unused_keys(), and MovieCache::hash.
Referenced by BKE_image_file_format_set(), BKE_image_get_first_ibuf(), BKE_image_get_ibuf_with_name(), BKE_image_has_loaded_ibuf(), BKE_image_is_dirty_writable(), BKE_image_merge(), image_mem_size(), and image_save_sequence_exec().
void IMB_moviecacheIter_step | ( | struct MovieCacheIter * | iter | ) |
Definition at line 595 of file moviecache.cc.
References BLI_ghashIterator_step().
Referenced by BKE_image_file_format_set(), BKE_image_get_ibuf_with_name(), BKE_image_has_loaded_ibuf(), BKE_image_is_dirty_writable(), BKE_image_merge(), image_mem_size(), and image_save_sequence_exec().