diff -r e1e28b0273b0 -r 93fff7023be8 IEBgps/src/IEBgpServerSession.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/IEBgps/src/IEBgpServerSession.cpp Fri Oct 15 10:18:29 2010 +0900 @@ -0,0 +1,265 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: Juha Kauppinen, Mika Hokkanen +* +* Description: Photo Browser +* +*/ + +// Include files +#include + +#include +#include + +#include "IEBgpsInfo.h" +#include "IEImageData.h" +//#include + +#include "IEBgpServerSession.h" +#include "IETNGenerator.h" + +// --------------------------- MEMBER FUNCTIONS ---------------------------- // + +CIEBgpServerSession* CIEBgpServerSession::NewL(RFs* aFileServer) +{ + DP0_IMAGIC((_L("CIEBgpServerSession::NewL ++"))); + CIEBgpServerSession* self = new (ELeave) CIEBgpServerSession(); + CleanupStack::PushL(self); + self->ConstructL(aFileServer); + CleanupStack::Pop(); + DP0_IMAGIC((_L("*)aMessage.Ptr0(); + TInt count = iImageArray.Count(); + iIETNGeneratorAO->SetImageArray(iImageArray); + + iCount = 0; + TFileName jpegFileName; + TFileName imagicThumbFileName; + iImageArray[0]->GetFileName(jpegFileName, EFullSize); + iImageArray[0]->GetFileName(imagicThumbFileName, ESize512x512); + + iIETNGeneratorAO->CreateThumbnailL(jpegFileName, imagicThumbFileName, iResolutionSize); + break; + } + + case EIESingleTNGeneration: + { + DP0_IMAGIC((_L("CIEBgpServerSession::ServiceL - EIESingleTNGeneration"))); + iSingleTNGeneration = ETrue; + iMessage = aMessage; + + TFileName jpegFileName; + TFileName imagicThumbFileName; + + error = aMessage.Read(0, iJpegFileName, 0); + error = aMessage.Read(1, iImagicThumbFileName, 0); + + iResolutionSize = *(TSize*)aMessage.Ptr2(); + if(error == KErrNone) + { + iIETNGeneratorAO->CreateThumbnailL(iJpegFileName,iImagicThumbFileName,iResolutionSize); + } + else + { + iSingleTNGeneration = EFalse; + iMessage.Complete(error); + } + break; + } + + case EIESingleTNGenerationWithBitmap: + { + DP0_IMAGIC((_L("CIEBgpServerSession::ServiceL - EIESingleTNGenerationWithBitmap"))); + iSingleTNGeneration = ETrue; + iMessage = aMessage; + + TFileName jpegFileName; + TFileName imagicThumbFileName; + + error = aMessage.Read(0, iJpegFileName, 0); + error = aMessage.Read(1, iImagicThumbFileName, 0); + + iResolutionSize = *(TSize*)aMessage.Ptr2(); + iSrcBitmap = (CFbsBitmap*)aMessage.Ptr3(); + + if(error == KErrNone) + { + iIETNGeneratorAO->CreateThumbnailL(iJpegFileName,iImagicThumbFileName,iResolutionSize); + } + else + { + iSingleTNGeneration = EFalse; + iMessage.Complete(error); + } + break; + } + + case EIECancelThumbnailGeneration: + { + DP0_IMAGIC((_L("CIEBgpServerSession::ServiceL - EIECancelThumbnailGeneration"))); + iIETNGeneratorAO->CancelRequestsAndDeleteObjects(); + //Complete current "Cancel" message + aMessage.Complete(KErrNone); + break; + } + + default: + break; + } + + DP0_IMAGIC((_L("CIEBgpServerSession::ServiceL --"))); + } + +void CIEBgpServerSession::ThumbNailGenerationCompleted(TInt aError) + { + DP0_IMAGIC((_L("CIEBgpServerSession::ThumbNailGenerationCompleted++"))); + + if(aError != KErrNone) + { + if(aError == KErrCancel) + iMessage.Complete(ETNGenerationCancelled); + else + iMessage.Complete(aError); + } + if(aError == KErrNone) + { + if(iSingleTNGeneration) + { + iSingleTNGeneration = EFalse; + iMessage.Complete(ETNGenerationcomplete); + } + else + { + iCount++; + + if(iCount > iImageArray.Count()-1 ) + { + iMessage.Complete(ETNGenerationcomplete); + } + else + { + TFileName jpegFileName; + TFileName imagicThumbFileName; + iImageArray[0]->GetFileName(jpegFileName, EFullSize); + iImageArray[0]->GetFileName(imagicThumbFileName, ESize512x512); + iIETNGeneratorAO->CreateThumbnailL(jpegFileName, imagicThumbFileName, iResolutionSize); + } + } + } + DP0_IMAGIC((_L("CIEBgpServerSession::ThumbNailGenerationCompleted --"))); + } + +void CIEBgpServerSession::FaceBrowsingComplete() + { + DP0_IMAGIC((_L("CIEBgpServerSession::FaceBrowsingComplete"))); + iMessage.Complete(EFaceDetectionComplete); + } + +void CIEBgpServerSession::FaceBrowsingError(TInt aError) + { + DP0_IMAGIC((_L("CIEBgpServerSession::FaceBrowsingError"))); + iMessage.Complete(aError); + } + +void CIEBgpServerSession::FaceCroppingError(TInt aError) + { + DP0_IMAGIC((_L("CIEBgpServerSession::FaceCroppingError"))); + iMessage.Complete(aError); + } + +void CIEBgpServerSession::FaceSingleFaceBrowsingComplete() + { + DP0_IMAGIC((_L("CIEBgpServerSession::FaceSingleFaceBrowsingComplete"))); + iMessage.Complete(ESingleFaceDetectionComplete); + } + +// EOF