X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fanimated-image%2Frolling-image-cache.cpp;h=e8380608b633416b565a23f5f3fb00163a1adfd8;hb=bd126b5d480c08bf7a995b2c4532e80e76ec4ad2;hp=22847786182817da7e95696af100d898a6a33831;hpb=da6b7205afe6a54fb1caf7a765008948a57f45eb;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/animated-image/rolling-image-cache.cpp b/dali-toolkit/internal/visuals/animated-image/rolling-image-cache.cpp index 2284778..e838060 100644 --- a/dali-toolkit/internal/visuals/animated-image/rolling-image-cache.cpp +++ b/dali-toolkit/internal/visuals/animated-image/rolling-image-cache.cpp @@ -131,11 +131,40 @@ TextureSet RollingImageCache::FirstFrame() return Frame( 0u ); } -uint32_t RollingImageCache::GetFrameInterval( uint32_t frameIndex ) +TextureSet RollingImageCache::NextFrame() +{ + TextureSet textureSet; + if(!mQueue.IsEmpty()) + { + uint32_t frameIndex = mQueue.Front().mUrlIndex; + if(IsFrontReady()) + { + frameIndex = (frameIndex + 1) % mImageUrls.size(); + } + textureSet = Frame(frameIndex); + } + else + { + DALI_LOG_ERROR("Cache is empty."); + } + + return textureSet; +} + +uint32_t RollingImageCache::GetFrameInterval( uint32_t frameIndex ) const { return 0u; } +int32_t RollingImageCache::GetCurrentFrameIndex() const +{ + if(mQueue.IsEmpty()) + { + return -1; + } + return mQueue.Front().mUrlIndex; +} + bool RollingImageCache::IsFrontReady() const { return ( !mQueue.IsEmpty() && mQueue.Front().mReady );