diff -r 57d4cdd99204 -r edfc90759b9f imageeditorengine/JpegRotator/src/JpegRotator.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imageeditorengine/JpegRotator/src/JpegRotator.cpp Fri Jan 29 13:53:17 2010 +0200 @@ -0,0 +1,93 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "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: +* Ixonos Plc +* +* Description: +* +*/ + + +// INCLUDE FILES +#include "JpegRotator.h" +#include "JpegRotatorImpl.h" + +// CONSTANTS + +// debug log +#include "imageeditordebugutils.h" + +//============================================================================= +EXPORT_C CJpegRotator * CJpegRotator::NewLC (RFs& aFsSession) +{ + CJpegRotator * self = new (ELeave) CJpegRotator (); + CleanupStack::PushL (self); + self->ConstructL (aFsSession); + return self; +} + +//============================================================================= +EXPORT_C CJpegRotator * CJpegRotator::NewL (RFs& aFsSession) +{ + CJpegRotator * self = CJpegRotator::NewLC (aFsSession); + CleanupStack::Pop(); // self + return self; +} + +//============================================================================= +EXPORT_C CJpegRotator::~CJpegRotator () +{ + LOG( KJpegRotatorLogFile, "CJpegRotator::~CJpegRotator"); + + delete iImplementation; +} + +//============================================================================= +EXPORT_C void CJpegRotator::RotateImageL ( + TRequestStatus & aStatus, + const TDesC & aSourceFileName, + const TDesC & aTargetFileName, + CJpegRotator::TRotationMode aRotationMode, + TBool aHandleExifData, + TBool aForceLossyMode + ) +{ + LOGFMT( KJpegRotatorLogFile, "CJpegRotator::RotateImageL (rotation mode: %d)", aRotationMode ); + LOGFMT( KJpegRotatorLogFile, "\tSource image: %S", &aSourceFileName ); + LOGFMT( KJpegRotatorLogFile, "\tTarget image: %S", &aTargetFileName ); + + iImplementation->PrepareRotateFileL (aSourceFileName, aTargetFileName, aRotationMode, aHandleExifData); + iImplementation->StartAsyncRotate (aStatus, aForceLossyMode); +} + +//============================================================================= +EXPORT_C void CJpegRotator::Cancel () +{ + LOG( KJpegRotatorLogFile, "CJpegRotator::Cancel()"); + + iImplementation->Cancel(); +} + +//============================================================================= +CJpegRotator::CJpegRotator () +{ +} + +//============================================================================= +void CJpegRotator::ConstructL (RFs& aFsSession) +{ + LOG_INIT( KJpegRotatorLogFile ); + + iImplementation = CJpegRotatorImpl::NewL (aFsSession); +} + +// End of File