[Tizen] Add API for setting resource destruction callback
[platform/core/uifw/dali-adaptor.git] / dali / internal / imaging / common / native-image-source-impl.h
index 0833f51..ab2be5a 100755 (executable)
@@ -21,6 +21,7 @@
 // INTERNAL INCLUDES
 #include <dali/public-api/adaptor-framework/native-image-source.h>
 #include <dali/devel-api/adaptor-framework/bitmap-saver.h>
+#include <dali/devel-api/adaptor-framework/event-thread-callback.h>
 
 namespace Dali
 {
@@ -79,14 +80,14 @@ public:
   virtual ~NativeImageSource() = default;
 
   /**
-   * @copydoc Dali::NativeImageSource::GlExtensionCreate()
+   * @copydoc Dali::NativeImageSource::CreateResource()
    */
-  virtual bool GlExtensionCreate() = 0;
+  virtual bool CreateResource() = 0;
 
   /**
-   * @copydoc Dali::NativeImageSource::GlExtensionDestroy()
+   * @copydoc Dali::NativeImageSource::DestroyResource()
    */
-  virtual void GlExtensionDestroy() = 0;
+  virtual void DestroyResource() = 0;
 
   /**
    * @copydoc Dali::NativeImageSource::TargetTexture()
@@ -114,6 +115,31 @@ public:
   virtual bool RequiresBlending() const = 0;
 
   /**
+   * @copydoc Dali::NativeImageSource::GetTextureTarget()
+   */
+  virtual int GetTextureTarget() const = 0;
+
+  /**
+   * @copydoc Dali::NativeImageSource::GetCustomFragmentPrefix()
+   */
+  virtual const char* GetCustomFragmentPrefix() const = 0;
+
+  /**
+   * @copydoc Dali::NativeImageSource::GetCustomSamplerTypename()
+   */
+  virtual const char* GetCustomSamplerTypename() const = 0;
+
+  /**
+   * @copydoc Dali::NativeImageSource::GetNativeImageHandle()
+   */
+  virtual Any GetNativeImageHandle() const = 0;
+
+  /**
+   * @copydoc Dali::NativeImageSource::SourceChanged()
+   */
+  virtual bool SourceChanged() const = 0;
+
+  /**
    * @copydoc Dali::NativeImageInterface::GetExtension()
    */
   virtual NativeImageInterface::Extension* GetNativeImageInterfaceExtension() = 0;
@@ -129,6 +155,11 @@ public:
   virtual bool ReleaseBuffer() = 0;
 
   /**
+   * @brief Dali::DevelNativeImageSource::SetResourceDestructionCallback()
+   */
+  virtual void SetResourceDestructionCallback(EventThreadCallback* callback) = 0;
+
+  /**
    * @copydoc Dali::NativeImageSource::EncodeToFile(const std::string& )
    */
   inline bool EncodeToFile( const std::string& filename ) const