#include <framecache.h>
Inherits CacheBase.

Public Member Functions | |
| FrameCache () | |
| ~FrameCache () | |
| int | get_frame (VFrame *frame, int64_t position, int layer, double frame_rate, int asset_id=-1) |
| VFrame * | get_frame_ptr (int64_t position, int layer, double frame_rate, int color_model, int w, int h, int asset_id=-1) |
| void | put_frame (VFrame *frame, int64_t position, int layer, double frame_rate, int use_copy, Asset *asset=0) |
| void | dump () |
Private Member Functions | |
| int | frame_exists (VFrame *format, int64_t position, int layer, double frame_rate, FrameCacheItem **item_return, int asset_id) |
| int | frame_exists (int64_t position, int layer, double frame_rate, int color_model, int w, int h, FrameCacheItem **item_return, int asset_id) |
Definition at line 32 of file framecache.h.
| FrameCache::FrameCache | ( | ) |
Definition at line 48 of file framecache.C.
| FrameCache::~FrameCache | ( | ) |
Definition at line 53 of file framecache.C.
| int FrameCache::get_frame | ( | VFrame * | frame, | |
| int64_t | position, | |||
| int | layer, | |||
| double | frame_rate, | |||
| int | asset_id = -1 | |||
| ) |
Definition at line 59 of file framecache.C.
References CacheItemBase::age, VFrame::copy_from(), VFrame::copy_stacks(), FrameCacheItem::data, frame_exists(), CacheBase::get_age(), Mutex::lock(), CacheBase::lock, and Mutex::unlock().
Referenced by File::read_frame().

| VFrame * FrameCache::get_frame_ptr | ( | int64_t | position, | |
| int | layer, | |||
| double | frame_rate, | |||
| int | color_model, | |||
| int | w, | |||
| int | h, | |||
| int | asset_id = -1 | |||
| ) |
Definition at line 89 of file framecache.C.
References CacheItemBase::age, FrameCacheItem::data, frame_exists(), CacheBase::get_age(), Mutex::lock(), CacheBase::lock, and Mutex::unlock().
Referenced by ResourceThread::do_video(), and ResourcePixmap::draw_video_resource().

| void FrameCache::put_frame | ( | VFrame * | frame, | |
| int64_t | position, | |||
| int | layer, | |||
| double | frame_rate, | |||
| int | use_copy, | |||
| Asset * | asset = 0 | |||
| ) |
Definition at line 119 of file framecache.C.
References CacheItemBase::age, CacheItemBase::asset_id, FrameCacheItem::data, frame_exists(), FrameCacheItem::frame_rate, CacheBase::get_age(), Asset::id, FrameCacheItem::layer, Mutex::lock(), CacheBase::lock, Asset::path, CacheItemBase::path, CacheItemBase::position, CacheBase::put_item(), and Mutex::unlock().
Referenced by ResourceThread::do_video(), and File::read_frame().

| void FrameCache::dump | ( | ) |
Definition at line 227 of file framecache.C.
| int FrameCache::frame_exists | ( | VFrame * | format, | |
| int64_t | position, | |||
| int | layer, | |||
| double | frame_rate, | |||
| FrameCacheItem ** | item_return, | |||
| int | asset_id | |||
| ) | [private] |
Definition at line 174 of file framecache.C.
References CacheItemBase::asset_id, FrameCacheItem::data, EQUIV, VFrame::equivalent(), FrameCacheItem::frame_rate, CacheBase::get_item(), FrameCacheItem::layer, ListItem< TYPE >::next, and CacheItemBase::position.
Referenced by get_frame(), get_frame_ptr(), and put_frame().

| int FrameCache::frame_exists | ( | int64_t | position, | |
| int | layer, | |||
| double | frame_rate, | |||
| int | color_model, | |||
| int | w, | |||
| int | h, | |||
| FrameCacheItem ** | item_return, | |||
| int | asset_id | |||
| ) | [private] |
Definition at line 198 of file framecache.C.
References CacheItemBase::asset_id, FrameCacheItem::data, EQUIV, FrameCacheItem::frame_rate, VFrame::get_color_model(), VFrame::get_h(), CacheBase::get_item(), VFrame::get_w(), FrameCacheItem::layer, ListItem< TYPE >::next, and CacheItemBase::position.

1.5.5