diff -r 57d4cdd99204 -r edfc90759b9f imageeditorengine/JpegScaler/inc/JpegScalerImpl.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imageeditorengine/JpegScaler/inc/JpegScalerImpl.h Fri Jan 29 13:53:17 2010 +0200 @@ -0,0 +1,129 @@ +/* +* 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: +* +*/ + + +#ifndef JPEGSCALERIMPL_H +#define JPEGSCALERIMPL_H + + +// INCLUDES +#include +#include + +#include "CJpegScale.h" + +// debug log writer +//#include "imageeditordebugutils.h" + +// CONSTANTS + +// FORWARD DECLARATIONS + +/* CLASS: CJpegScalerImpl +* +* CJpegScalerImpl +* Internal representation of CJpegScaler +* +*/ +class CJpegScalerImpl : public CAsyncOneShot//, public MJpegScaleCallBack +{ + +public: + +/** @name Methods:*/ +//@{ + + /** NewL factory method, pops cleanup stack + * + * @param - aFsSession + * @return pointer to created CJpegScalerImpl object + */ + static CJpegScalerImpl * NewL (RFs& aFsSession); + + /** Destructor + * + * @param - + * @return - + */ + ~CJpegScalerImpl (); + + /** RunL + * + * @param - + * @return - + */ + virtual void RunL(); + + /** Scale + * + * @param - + * @return - + */ + void Scale(TRequestStatus* aRequestStatus, const TFileName& aSrcFileName, const TFileName& aTrgFileName, const TSize& aDestinationSize); + +private: + + /** Default constructor + * + * @param - aFsSession + * @return - + */ + CJpegScalerImpl (RFs& aFsSession); + + /** Second phase constructor, may leave + * + * @param - + * @return - + */ + void ConstructL (); + + /** Callback function for CJpegScale + * + * @param - + * @return - + */ + //void JpegStatusCallBack( TInt aPercentReady ); + +private: + + /// File Server session handle + RFs& iFsSession; + + /// Source and target files + TFileName iSourceFileName; + TFileName iTargetFileName; + + /// Scaler + CJpegScale* iScale; + + /// Caller request status + TRequestStatus* iCallerReqStatus; + +#if defined (LOG_TIMING) + TTime iStartTime; + TTime iSavingStartTime; + TTime iFinishTime; +#endif + + +}; + +#endif + + +// End of File