diff -r 000000000000 -r 15bf7259bb7c uiacceltk/hitchcock/Client/src/alftextureprocessor.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiacceltk/hitchcock/Client/src/alftextureprocessor.cpp Tue Feb 02 07:56:43 2010 +0200 @@ -0,0 +1,122 @@ +/* +* Copyright (c) 2006-2007 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: Texture +* +*/ + + + +#include "alf/alftextureprocessor.h" +#include "alf/alftexture.h" +#include "alf/alfenv.h" +#include "alf/alftexturemanager.h" +#include "alfclient.h" + +struct CAlfTextureProcessor::TPrivateData + { + CAlfEnv* iEnv; + }; + + + +// ======== MEMBER FUNCTIONS ======== + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +CAlfTextureProcessor::CAlfTextureProcessor() + { + + } + + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +CAlfTextureProcessor::~CAlfTextureProcessor() + { + if ( iData ) + { + } + delete iData; + iData = NULL; + } + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +CAlfTextureProcessor* CAlfTextureProcessor::NewL(CAlfEnv& aEnv) + { + CAlfTextureProcessor* self = + CAlfTextureProcessor::NewLC(aEnv); + CleanupStack::Pop( self ); + return self; + } + + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +CAlfTextureProcessor* CAlfTextureProcessor::NewLC(CAlfEnv& aEnv) + { + CAlfTextureProcessor* self = new( ELeave ) CAlfTextureProcessor; + CleanupStack::PushL( self ); + self->ConstructL(aEnv); + return self; + } + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +void CAlfTextureProcessor::ConstructL(CAlfEnv& aEnv) + { + iData = new (ELeave) TPrivateData; + iData->iEnv = &aEnv; + } + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +EXPORT_C void CAlfTextureProcessor::BlurL(const CAlfTexture& aSrc, CAlfTexture& aDest, + TInt aFilterSize, TInt aFlags) + { + // By default, use a quarter of the original size. + TSize originalSize = aSrc.Size(); + return BlurL(aSrc, aDest, + TSize(originalSize.iWidth/2, originalSize.iHeight/2), + aFilterSize, aFlags); + } + +// --------------------------------------------------------------------------- +// ?description +// --------------------------------------------------------------------------- +// +EXPORT_C void CAlfTextureProcessor::BlurL(const CAlfTexture& aSrc, CAlfTexture& aDest, + const TSize& aPreferredSize, TInt aFilterSize, TInt aFlag) + { + iData->iEnv->Client().TextureProcessorBlurL( aSrc.ServerHandle(), + aDest.ServerHandle(), + 0, + aPreferredSize, + aFilterSize, + aFlag ); + } + +