uiaccelerator_plat/alf_visual_api/inc/alf/alfdrawer.h
branchRCL_3
changeset 6 10534483575f
parent 3 d8a3531bc6b8
--- a/uiaccelerator_plat/alf_visual_api/inc/alf/alfdrawer.h	Fri Mar 12 15:47:04 2010 +0200
+++ b/uiaccelerator_plat/alf_visual_api/inc/alf/alfdrawer.h	Mon Mar 15 12:43:37 2010 +0200
@@ -19,6 +19,9 @@
 
 #include <e32base.h>
 
+class CWsScreenDevice;
+class CFbsBitmap;
+
 /**
  * This provides additional alf drawing synchronization.
  * 
@@ -47,6 +50,21 @@
      */
     IMPORT_C TInt Finish();
 
+    /**
+     * Fallback copy screen to bitmap. This copies pixels from UI surface.
+     * This is similar to @c CWsScreenDevice::CopyScreenToBitmap. That method
+     * may use GPU memory and so cannot be guaranteed to succeed always.
+     * 
+     * @param aDevice screendevice.
+     * @param aBitmap bitmap to which pixels ought to be copied.
+     * @param aRect rect to copy.
+     * @return error code.
+     */
+    IMPORT_C static TInt FallbackCopyScreenToBitmap(
+        CWsScreenDevice& aDevice,
+        CFbsBitmap* aBitmap, 
+        const TRect& aRect);
+
 private:
     CAlfDrawer();
     void ConstructL();