+ /**
+ * @brief Add an observer to watch for when the Visuals resources are loaded.
+ * Currently only supports a single observer
+ *
+ */
+ void AddResourceObserver( Visual::ResourceObserver& observer );
+
+ /**
+ * @brief Remove an observer
+ */
+ void RemoveResourceObserver( Visual::ResourceObserver& observer );
+
+ /**
+ * @brief Called when the visuals resources are loaded / ready
+ */
+ void ResourceReady( Toolkit::Visual::ResourceStatus resourceStatus );
+
+ /**
+ * @brief Called when the visuals resources are loaded / ready
+ * @return true if ready, false otherwise
+ */
+ virtual bool IsResourceReady() const;
+
+ /**
+ * @brief Get the loading state of the visual resource
+ * @return Return the loading status (PREPARING, READY and FAILED) of visual resource
+ */
+ Toolkit::Visual::ResourceStatus GetResourceStatus() const;
+