Hi,
I've been trying to convert a regular UCHAR .bmp (from a buffer) to CFbsBitmap using the iDecoder = CImageDecoder:: DataNewL(fsSession, imgptr, CImageDecoder::EOptionNone);
And later:
TFrameInfo iFrameInfo = iDecoder->FrameInfo();
TInt frameCount = iDecoder->FrameCount();
TSize size = iFrameInfo.iOverallSizeInPixels;
mBitmap->Reset();
TInt err = mBitmap->Create(size, EGray2);
TSize bsize = mBitmap->SizeInPixels();
iDecoder->Convert(&iStatus, *mBitmap);
if(!IsActive())
SetActive();
I'm having problems to get the conversion even though I'm starting the sessions.
mFs.Connect();
RFs& fsSession = mFs;
RFbsSession::Connect(fsSession);
The call to iDecoder->Convert(&iStatus, *mBitmap); returns and leads to RunL(). However, even though the size of the bitmap that I created is correct, the new mBitmap is always empty.
I'm doing this on a dll, therefore I have no GUI. I have tried to start new sessions, etc but I always remain with an empty bmp.
What else could I be missing from the session?
I have even tried the following with no luck:
RWsSession();
iWsSession.Connect();
RFbsSession::Connect();
What is the procedure for using the image decoder when using a dll and no GUI? I do not want to end up writing the .bmp to .mbm converter code just because this doesn't work.
Thanks,
Rafa



