diff -r 000000000000 -r 40261b775718 imagingandcamerafws/imagingfws/panorama/src/panoramaimpl.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imagingandcamerafws/imagingfws/panorama/src/panoramaimpl.cpp Tue Feb 02 01:56:55 2010 +0200 @@ -0,0 +1,257 @@ +// Copyright (c) 2008-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: +// +// Description: +// + +#include +#include +#include +#include +#include +#include "panoramaimpl.h" + +_LIT8(KPluginMatchString, "*"); // ECom insists on something + +//panorama +CImagePanoramaImpl* CImagePanoramaImpl::NewL() + { + CImagePanoramaImpl* self = new(ELeave) CImagePanoramaImpl(); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +CImagePanoramaImpl::CImagePanoramaImpl() + { + } + +void CImagePanoramaImpl::ConstructL() + { + TUid interfaceUid = {KUidPanoramaPluginInterface}; + iPlugin = static_cast (MmPluginUtils::CreateImplementationL(interfaceUid, iDestructorKey, KPluginMatchString)); + } + +CImagePanoramaImpl::~CImagePanoramaImpl() + { + if (iPlugin) + { + iPlugin->Destroy(); + } + REComSession::DestroyedImplementation(iDestructorKey); + } + +void CImagePanoramaImpl::InitializeL(const TSize & aSize, const TPanoramaLens& aPanoramaLens, const TDirection& aDirection) + { + iPlugin->InitializeL(aSize, aPanoramaLens, aDirection); + } + +void CImagePanoramaImpl::RenderL(const TDesC& aFilename) + { + iPlugin->RenderL(aFilename); + } + +void CImagePanoramaImpl::RenderL(const TDesC& aFilename, const TSize& aSize, const TBool aMaintainAspectRatio, const TUid& aImageTypeUid) + { + iPlugin->RenderL(aFilename, aSize, aMaintainAspectRatio, aImageTypeUid); + } + +void CImagePanoramaImpl::RenderL(RFile& aFile) + { + iPlugin->RenderL(aFile); + } + +void CImagePanoramaImpl::RenderL(RFile& aFile, const TSize& aSize, const TBool aMaintainAspectRatio, const TUid& aImageTypeUid) + { + iPlugin->RenderL(aFile, aSize, aMaintainAspectRatio, aImageTypeUid); + } + +void CImagePanoramaImpl::RenderL(HBufC8*& aDestData) + { + iPlugin->RenderL(aDestData); + } + +void CImagePanoramaImpl::RenderL(HBufC8*& aDestData, TUint32 aMaxBufferSize, const TSize& aSize, const TBool aMaintainAspectRatio, const TUid& aImageTypeUid) + { + iPlugin->RenderL(aDestData, aMaxBufferSize, aSize, aMaintainAspectRatio, aImageTypeUid); + } + +void CImagePanoramaImpl::RenderL(const CFbsBitmap& aBitmap) + { + iPlugin->RenderL(aBitmap); + } + +void CImagePanoramaImpl::RenderL(const CFbsBitmap& aBitmap, const TBool aMaintainAspectRatio) + { + iPlugin->RenderL(aBitmap, aMaintainAspectRatio); + } + +void CImagePanoramaImpl::RenderL(const CImageFrame& aImageFrame) + { + iPlugin->RenderL(aImageFrame); + } + +void CImagePanoramaImpl::RenderL(const CImageFrame& aImageFrame, const TBool aMaintainAspectRatio) + { + iPlugin->RenderL(aImageFrame, aMaintainAspectRatio); + } + +void CImagePanoramaImpl::CurrentImageSizeL(TSize& aSize) + { + iPlugin->CurrentImageSizeL(aSize); + } + +void CImagePanoramaImpl::AddFileL(const TDesC& aFilename, CPanoramaTransform& aPanTrans) + { + iPlugin->AddFileL(aFilename, aPanTrans); + } + +void CImagePanoramaImpl::AddBufferL(const TDesC8& aData, CPanoramaTransform& aPanTrans) + { + iPlugin->AddBufferL(aData, aPanTrans); + } + +void CImagePanoramaImpl::AddImageL(const CFbsBitmap& aBitmap, CPanoramaTransform& aPanTrans) + { + iPlugin->AddImageL(aBitmap, aPanTrans); + } + +void CImagePanoramaImpl::AddImageL(const CImageFrame& aImageFrame, CPanoramaTransform& aPanTrans) + { + iPlugin->AddImageL(aImageFrame, aPanTrans); + } + +TAny* CImagePanoramaImpl::Extension(TUid aExtension) + { + return iPlugin->Extension(aExtension); + } + +//Panorama transform +CPanoramaTransformImpl* CPanoramaTransformImpl::NewL() + { + CPanoramaTransformImpl* self = new(ELeave) CPanoramaTransformImpl(); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(self); + return self; + } + +CPanoramaTransformImpl::~CPanoramaTransformImpl() + { + } + +CPanoramaTransformImpl::CPanoramaTransformImpl() + { + } + +void CPanoramaTransformImpl::ConstructL() + { + } + +void CPanoramaTransformImpl::GetTranslation(TPoint& aDxDy, TSize& aDims) const + { + aDxDy = iDxDy; + aDims = iDims; + } + +void CPanoramaTransformImpl::SetTranslationL(const TPoint& aDxDy, const TSize& aDims) + { + iDxDy = aDxDy; + iDims = aDims; + } + +void CPanoramaTransformImpl::GetDirection(TDirection& aDirection) + { + aDirection = iDirection; + } + +void CPanoramaTransformImpl::GetDirection(TDirection& aDirection, TInt& aMinimumDelta) + { + aDirection = iDirection; + aMinimumDelta = iMinDelta; + } + +void CPanoramaTransformImpl::SetDirection(TDirection& aDirection) + { + iDirection = aDirection; + } + +void CPanoramaTransformImpl::SetDirection(TDirection& aDirection, TInt aMinDelta) + { + iDirection = aDirection; + iMinDelta = aMinDelta; + } + +//VFTracker +CVFTrackerImpl* CVFTrackerImpl::NewL() + { + CVFTrackerImpl* self = new(ELeave) CVFTrackerImpl(); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +CVFTrackerImpl::CVFTrackerImpl() + { + } + +void CVFTrackerImpl::ConstructL() + { + TUid interfaceUid = {KUidVFTrackerPluginInterface}; + iPlugin = static_cast (MmPluginUtils::CreateImplementationL(interfaceUid, iDestructorKey, KPluginMatchString)); + } + +CVFTrackerImpl::~CVFTrackerImpl() + { + if (iPlugin) + { + iPlugin->Destroy(); + } + REComSession::DestroyedImplementation(iDestructorKey); + } + +void CVFTrackerImpl::InitializeL(const TSize& aSize) + { + iPlugin->InitializeL(aSize); + } + +void CVFTrackerImpl::RegisterImageL(const CFbsBitmap& aBitmap, CPanoramaTransform& aPanTrans) + { + iPlugin->RegisterImageL(aBitmap, aPanTrans); + } + +void CVFTrackerImpl::RegisterImageL(const CImageFrame& aImageFrame, CPanoramaTransform& aPanTrans) + { + iPlugin->RegisterImageL(aImageFrame, aPanTrans); + } + +TBool CVFTrackerImpl::IsTimeToCapture(TDirection& aDirection) + { + return iPlugin->IsTimeToCapture(aDirection); + } + +TBool CVFTrackerImpl::IsTimeToCapture(TDirection& aDirection, TInt aOverlap) const + { + return iPlugin->IsTimeToCapture(aDirection, aOverlap); + } + +void CVFTrackerImpl::Reset() + { + iPlugin->Reset(); + } + +TAny* CVFTrackerImpl::Extension(TUid aExtension) + { + return iPlugin->Extension(aExtension); + }