Added Adaptor::GetGraphicsDisplay() to get EglDisplay
[platform/core/uifw/dali-adaptor.git] / dali / internal / adaptor / common / adaptor-impl.h
old mode 100644 (file)
new mode 100755 (executable)
index 27508e6..53e9c43
@@ -28,9 +28,7 @@
 
 // INTERNAL INCLUDES
 #include <dali/integration-api/adaptor.h>
-#include <dali/devel-api/adaptor-framework/render-surface.h>
 #include <dali/public-api/adaptor-framework/tts-player.h>
-#include <dali/devel-api/adaptor-framework/imf-manager.h>
 #include <dali/devel-api/adaptor-framework/clipboard.h>
 
 #include <dali/internal/legacy/common/tizen-platform-abstraction.h>
@@ -211,13 +209,18 @@ public: // AdaptorInternalServices implementation
   /**
    * @copydoc Dali::Adaptor::AddIdle()
    */
-  virtual bool AddIdle( CallbackBase* callback, bool forceAdd );
+  virtual bool AddIdle( CallbackBase* callback, bool hasReturnValue, bool forceAdd );
 
   /**
    * @copydoc Dali::Adaptor::RemoveIdle()
    */
   virtual void RemoveIdle( CallbackBase* callback );
 
+  /**
+   * Sets a pre-render callback.
+   */
+  void SetPreRenderCallback( CallbackBase* callback );
+
 public:
 
   /**
@@ -287,6 +290,13 @@ public:
   Any GetNativeWindowHandle();
 
   /**
+   * Get the native display associated with the graphics backend
+   *
+   * @return A handle to the native display
+   */
+  Any GetGraphicsDisplay();
+
+  /**
    * Sets use remote surface for eglSurface output
    * @param[in] useRemoteSurface True if the remote surface is used
    */
@@ -526,7 +536,7 @@ private:
   /**
    * Sends an notification message from main loop idle handler
    */
-  void ProcessCoreEventsFromIdle();
+  bool ProcessCoreEventsFromIdle();
 
   /**
    * Gets path for data/resource storage.
@@ -539,6 +549,22 @@ private:
    */
   void SetupSystemInformation();
 
+  /**
+   * Adds a callback to be run when entering an idle state.
+   *
+   * A callback of the following type should be used:
+   * @code
+   *   bool MyFunction();
+   * @endcode
+   * This callback will be called repeatedly as long as it returns true. A return of 0 deletes this callback.
+   */
+  bool AddIdleEnterer( CallbackBase* callback, bool forceAdd );
+
+  /**
+   * Removes a previously added the idle enterer callback.
+   */
+  void RemoveIdleEnterer( CallbackBase* callback );
+
 private:
 
   /**