diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/icl/orientationtransformextension.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epoc32/include/icl/orientationtransformextension.h Wed Mar 31 12:33:34 2010 +0100 @@ -0,0 +1,98 @@ +// 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: +// This is Image Transform extension for Rotate/Flip Transformations +// +// + +/** + @file + @publishedAll + @released +*/ + +#ifndef __ORIENTATIONTRANFORMEEXTENSION_H__ +#define __ORIENTATIONTRANFORMEEXTENSION_H__ + +#include +#include +#include + +/** +@publishedAll +@released + +The Orientation Extension to the ImageTransform plugin. + +The class provides the methods to set the image orientation and is intended to be implemented +by the plugins supporting the rotation of the image based on the orientation. The plugin +supporting this extension must use the opaque_data v2 format in RSS file and also the orientation flag +must be set in the opaque_data. The client must retrieve this extension implementation from +the plugin using its extension UID. +*/ +class COrientationTransformExtension : public CImageTransformPluginExtension + { +public: + /** + The possible orientations of the image. Similar to the EXIF orientation tag + */ + enum TOrientation + { + /** + No rotation done + */ + ERotationNone = 1, + /** + Rotate the image clockwise through 90 degrees. + */ + ERotation90DegreesClockwise = 6, + /** + Rotate the image clockwise through 180 degrees. + */ + ERotation180DegreesClockwise = 3, + /** + Rotate the image clockwise through 270 degrees. + */ + ERotation270DegreesClockwise = 8, + /** + Mirror the image over its vertical axis + */ + EMirrorVerticalAxis = 2, + /** + Mirror the image over its horizontal axis + */ + EMirrorHorizontalAxis = 4, + /** + Transpose (or mirror) the image across a diagonal running from top-left to lower-right. + */ + ETransposeOverMainDiagonal = 5, + /** + Transpose (or mirror) the image across a diagonal running from top-right to lower-left. + */ + ETransposeOverMinorDiagonal = 7 + }; + + IMPORT_C void SetOrientationL(TOrientation aOrientation ) ; + +protected: + virtual void DoSetOrientationL(TOrientation aOrientation) = 0; + +private: + IMPORT_C virtual void ReservedVirtual5(); + +private: + // Future proofing + TAny* iPad; + }; + +#endif // __ORIENTATIONTRANFORMEEXTENSION_H__