photosgallery/viewframework/medialists/src/glximagereader.cpp
branchRCL_3
changeset 18 bcb43dc84c44
parent 14 ce1c7ad1f18b
child 32 78ad99c24f08
--- a/photosgallery/viewframework/medialists/src/glximagereader.cpp	Mon Mar 15 12:40:30 2010 +0200
+++ b/photosgallery/viewframework/medialists/src/glximagereader.cpp	Wed Mar 31 21:31:03 2010 +0300
@@ -34,11 +34,11 @@
 // CGlxImageReader::NewL
 // ---------------------------------------------------------
 //  
-CGlxImageReader* CGlxImageReader::NewL(MImageReadyCallBack& aNotify)
+CGlxImageReader* CGlxImageReader::NewL()
     {
     TRACER("CGlxImageReader::NewL");  
     
-    CGlxImageReader* self = CGlxImageReader::NewLC( aNotify);
+    CGlxImageReader* self = CGlxImageReader::NewLC();
     CleanupStack::Pop(self);
     return self;
     }
@@ -47,11 +47,11 @@
 // CGlxImageReader::NewLC
 // ---------------------------------------------------------
 //  
-CGlxImageReader* CGlxImageReader::NewLC(MImageReadyCallBack& aNotify)
+CGlxImageReader* CGlxImageReader::NewLC()
     {
     TRACER("CGlxImageReader::NewLC"); 
     
-    CGlxImageReader* self = new(ELeave) CGlxImageReader(aNotify);
+    CGlxImageReader* self = new(ELeave) CGlxImageReader();
     CleanupStack::PushL(self);
     self->ConstructL();
     return self;
@@ -61,10 +61,9 @@
 // CGlxImageReader::CGlxImageReader
 // ---------------------------------------------------------
 // 
-CGlxImageReader::CGlxImageReader(MImageReadyCallBack& aNotify)
-:CActive(0),iNotify(aNotify)
-                                {
-                                }
+CGlxImageReader::CGlxImageReader()
+    {
+    }
 
 // ---------------------------------------------------------
 // CGlxImageReader::~CGlxImageReader
@@ -75,15 +74,9 @@
     TRACER("CGlxImageReader::~");
     if(iImageDecoder)
         {
-        Cancel();
         delete iImageDecoder;
         }  
 
-    if(iFrame)
-        {
-        delete iFrame;
-        }
-
     if(iImgViewerMgr)
         {
         iImgViewerMgr->DeleteInstance();
@@ -98,8 +91,6 @@
     {
     TRACER("CGlxImageReader::ConstructL");
 
-    CActiveScheduler::Add(this);
-
     iImgViewerMgr = CGlxImageViewerManager::InstanceL();
     if (!iImgViewerMgr)
         {
@@ -121,48 +112,11 @@
             TRAP(errInImage,iImageDecoder = CImageDecoder::FileNewL(CCoeEnv::Static()->FsSession(), iImgViewerMgr->ImageUri()->Des()));
             }
         }
+    
     if (errInImage != KErrNone)
         {
         User::Leave(errInImage);
         }
-
-    if ( iImageDecoder )
-        {
-        iFrame = new (ELeave) CFbsBitmap();
-        User::LeaveIfError(iFrame->Create(
-                iImageDecoder->FrameInfo(0).iOverallSizeInPixels,
-                iImageDecoder->FrameInfo(0).iFrameDisplayMode));
-        iImageDecoder->Convert(&iStatus, *iFrame, 0);
-        SetActive();
-        }
-    }
-
-// ---------------------------------------------------------
-// CGlxImageReader::DoCancel
-// ---------------------------------------------------------
-//
-void CGlxImageReader::DoCancel()
-    {
-    TRACER("CGlxImageReader::DoCancel");
-    iImageDecoder->Cancel();
-    }
-
-// ---------------------------------------------------------
-// CGlxImageReader::RunL
-// ---------------------------------------------------------
-//
-void CGlxImageReader::RunL()
-    {
-    TRACER("CGlxImageReader::RunL");
-    
-    TSize size = TSize();
-    TInt reqStatus = iStatus.Int(); 
-    if (reqStatus == KErrNone && iFrame)
-        {
-        size = iFrame->SizeInPixels();
-        }
-    GLX_DEBUG2("CGlxImageReader::RunL() reqStatus=%d", reqStatus);   
-    iNotify.ImageSizeReady(reqStatus, size);
     }
 
 // ---------------------------------------------------------
@@ -223,5 +177,23 @@
         {
         frameCount = iImageDecoder->FrameCount();
         }
+    GLX_DEBUG2("CGlxImageReader::GetFrameCount frameCount=%d", frameCount);
     return frameCount;
     }
+
+// ---------------------------------------------------------
+// CGlxImageReader::GetDimensions
+// ---------------------------------------------------------
+//
+TSize CGlxImageReader::GetDimensions()
+    {
+    TRACER("CGlxImageReader::GetDimensions");
+    TSize size = TSize();
+    if (iImageDecoder)
+        {
+        size = iImageDecoder->FrameInfo().iOverallSizeInPixels;
+        }
+    GLX_DEBUG3("CGlxImageReader::GetImageSize() size w(%d) h(%d)",
+            size.iWidth, size.iHeight);
+    return size;
+    }