+ * @brief Applies the image to the texture set used for this renderer
+ *
+ * @param[in] image The Image to apply to the texture set used for this renderer
+ */
+ void ApplyImageToSampler( const Image& image );
+
+ /**
+ * @brief Initializes the Dali::Renderer from an image url string
+ *
+ * @param[in] imageUrl The image url string to intialize this ImageRenderer from
+ */
+ void InitializeRenderer( const std::string& imageUrl );
+
+ /**
+ * @brief Initializes the Dali::Renderer from an image handle
+ *
+ * @param[in] image The image handle to intialize this ImageRenderer from
+ */
+ void InitializeRenderer( const Image& image );
+
+ /**
+ * @brief Creates the Dali::Renderer (potentially from the renderer cache), initializing it
+ *
+ * @return Returns the created Dali::Renderer
+ */
+ Renderer CreateRenderer() const;
+
+ /**
+ * @brief Creates the Dali::Renderer for NativeImage with custom sampler type and prefix, initializing it
+ *
+ * @return Returns the created Dali::Renderer
+ */
+ Renderer CreateNativeImageRenderer() const;
+
+ /**
+ * Callback function of image resource loading succeed
+ * @param[in] image The Image content that we attempted to load from mImageUrl
+ */
+ void OnImageLoaded( ResourceImage image );
+
+ /**
+ * Set the value to the uTextureRect uniform
+ * @param[in] textureRect The texture rectangular area.
+ */
+ void SetTextureRectUniform( const Vector4& textureRect );
+
+ /**
+ * Clean the renderer from cache, and remove the image from atlas if it is not used anymore
+ */
+ void CleanCache(const std::string& url);
+
+ /**
+ * Set shader code for nativeimage if it exists