/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
}
}
-TextureSet FixedImageCache::FirstFrame()
+TextureSet FixedImageCache::Frame( uint32_t frameIndex )
{
- TextureSet textureSet = GetFrontTextureSet();
-
- if( ! textureSet )
+ while( frameIndex > mFront )
{
- mWaitingForReadyFrame = true;
+ ++mFront;
+ if( mFront >= mImageUrls.size() )
+ {
+ mFront = 0;
+ }
+ LoadBatch();
}
- return textureSet;
-}
+ mFront = frameIndex;
-TextureSet FixedImageCache::NextFrame()
-{
TextureSet textureSet;
- ++mFront;
- mFront %= mImageUrls.size();
-
if( IsFrontReady() == true )
{
textureSet = GetFrontTextureSet();
mWaitingForReadyFrame = true;
}
- LoadBatch();
+ return textureSet;
+}
+
+TextureSet FixedImageCache::FirstFrame()
+{
+ TextureSet textureSet = GetFrontTextureSet();
+
+ if( ! textureSet )
+ {
+ mWaitingForReadyFrame = true;
+ }
+
+ return textureSet;
+}
+
+TextureSet FixedImageCache::NextFrame()
+{
+ TextureSet textureSet = Frame((mFront + 1) % mImageUrls.size());
return textureSet;
}
+uint32_t FixedImageCache::GetFrameInterval( uint32_t frameIndex )
+{
+ return 0u;
+}
+
+int32_t FixedImageCache::GetCurrentFrameIndex()
+{
+ return static_cast<int32_t>(mFront);
+}
+
bool FixedImageCache::IsFrontReady() const
{
return ( mReadyFlags.size() > 0 && mReadyFlags[mFront] == true );
// Try and load up to mBatchSize images, until the cache is filled.
// Once the cache is filled, mUrlIndex exceeds mImageUrls size and
// no more images are loaded.
- bool frontFrameReady = IsFrontReady();;
+ bool frontFrameReady = IsFrontReady();
for( unsigned int i=0; i< mBatchSize && mUrlIndex < mImageUrls.size(); ++i )
{
}
}
+void FixedImageCache::LoadComplete(
+ bool loadSuccess,
+ Devel::PixelBuffer pixelBuffer,
+ const VisualUrl& url,
+ bool preMultiplied )
+{
+ // LoadComplete is called if this TextureUploadObserver requested to load
+ // an image that will be returned as a type of PixelBuffer by using a method
+ // TextureManager::LoadPixelBuffer.
+}
+
} //namespace Internal
} //namespace Toolkit
-} //namespace Dali
+} //namespace Dali
\ No newline at end of file