--- a/ui/uiengine/medialists/src/glximagereader.cpp Fri Apr 16 14:58:46 2010 +0300
+++ b/ui/uiengine/medialists/src/glximagereader.cpp Mon May 03 12:31:32 2010 +0300
@@ -28,16 +28,17 @@
#include "glximagereader.h"
+const TInt KDefaultFrameCount = 1;
// ---------------------------------------------------------
// 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;
}
@@ -46,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;
@@ -60,8 +61,7 @@
// CGlxImageReader::CGlxImageReader
// ---------------------------------------------------------
//
-CGlxImageReader::CGlxImageReader(MImageReadyCallBack& aNotify)
-:CActive(0),iNotify(aNotify)
+CGlxImageReader::CGlxImageReader()
{
//no implementation
}
@@ -75,15 +75,9 @@
TRACER("CGlxImageReader::~");
if(iImageDecoder)
{
- Cancel();
delete iImageDecoder;
}
- if(iFrame)
- {
- delete iFrame;
- }
-
if(iImgViewerMgr)
{
iImgViewerMgr->Close();
@@ -98,8 +92,6 @@
{
TRACER("CGlxImageReader::ConstructL");
- CActiveScheduler::Add(this);
-
iImgViewerMgr = CGlxImageViewerManager::InstanceL();
if (!iImgViewerMgr)
{
@@ -125,45 +117,8 @@
{
User::Leave(errInImage);
}
-
- if ( iImageDecoder )
- {
- iFrame = new (ELeave) CFbsBitmap();
- 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);
- }
// ---------------------------------------------------------
// CGlxImageReader::GetDRMRightsL
// ---------------------------------------------------------
@@ -209,3 +164,36 @@
}
return value;
}
+
+// ---------------------------------------------------------
+// CGlxImageReader::GetFrameCount
+// ---------------------------------------------------------
+//
+TInt CGlxImageReader::GetFrameCount()
+ {
+ TRACER("CGlxImageReader::GetFrameCount");
+ TInt frameCount = KDefaultFrameCount;
+ if (iImageDecoder)
+ {
+ 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;
+ }