Only store the ReleasePolicy set as it's required satisfy Tizen API policy. However, it is not
used internally.
Change-Id: I768f7871d8110476a232f794acb787ed02e3a81b
DALI_TEST_CHECK( image );
- //ReleasePolicy is always never for framebuffer images
- DALI_TEST_EQUALS( image.GetReleasePolicy(), Image::NEVER, TEST_LOCATION );
+ // ReleasePolicy is deprecated. Only set, but not used internally.
+ DALI_TEST_EQUALS( image.GetReleasePolicy(), Image::UNUSED, TEST_LOCATION );
// initialise handle with NEVER release policy
image.Reset();
DALI_TEST_CHECK( image );
- //ReleasePolicy is always never for framebuffer images
+ // ReleasePolicy is deprecated. Only set, but not used internally.
DALI_TEST_EQUALS( image.GetReleasePolicy(), Image::NEVER, TEST_LOCATION );
END_TEST;
{
return mIsNativeFbo;
}
+
+void FrameBufferImage::SetReleasePolicy( Dali::Image::ReleasePolicy releasePolicy )
+{
+ mReleasePolicy = releasePolicy;
+}
+
FrameBufferImage::~FrameBufferImage()
{
}
*/
bool IsNativeFbo() const;
+ /**
+ * @brief Required for backwards compatibility. Value is just stored but not used internally.
+ * @param[in] releasePolicy The release policy (ignored as not supported).
+ */
+ void SetReleasePolicy( Dali::Image::ReleasePolicy releasePolicy );
+
public: // From Image
/**
* @copydoc Dali::Internal::Image::Connect()
return FrameBufferImage(internal.Get());
}
-FrameBufferImage FrameBufferImage::New( unsigned int width, unsigned int height, Pixel::Format pixelformat, ReleasePolicy /*releasePolicy*/, RenderBuffer::Format bufferformat )
+FrameBufferImage FrameBufferImage::New( unsigned int width, unsigned int height, Pixel::Format pixelformat, ReleasePolicy releasePolicy, RenderBuffer::Format bufferformat )
{
Dali::Vector2 stageSize = Stage::GetCurrent().GetSize();
Internal::FrameBufferImagePtr internal = Internal::FrameBufferImage::New(
pixelformat,
bufferformat);
+ internal->SetReleasePolicy( releasePolicy );
return FrameBufferImage(internal.Get());
}
-FrameBufferImage FrameBufferImage::New( NativeImageInterface& image, ReleasePolicy /*releasePolicy*/ )
+FrameBufferImage FrameBufferImage::New( NativeImageInterface& image, ReleasePolicy releasePolicy )
{
Internal::FrameBufferImagePtr internal = Internal::FrameBufferImage::New( image );
+ internal->SetReleasePolicy( releasePolicy );
return FrameBufferImage(internal.Get());
}