diff -r e52958d06c29 -r 5fd161fa28b6 svgtviewer/SvgtViewerPlugin/SVGCodecInc/SVGConvert.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/svgtviewer/SvgtViewerPlugin/SVGCodecInc/SVGConvert.h Thu Sep 09 11:17:40 2010 +0300 @@ -0,0 +1,102 @@ +/* +* Copyright (c) 2005 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: ECom plugin to create the thumbnails from svg presentation. +* +*/ + + + +#ifndef SVGCONVERT_H +#define SVGCONVERT_H + +#include + +class CSvgReadCodec; +class CFrameInfoStrings; + +/** +* The PluginAPI for SVG content decoder. +* Intended to use it for the processing the SVG content. +*/ + +class CSvgDecoder : public CImageDecoderPlugin + { +public: + + /** + * Static constructor. Creates and returns a pointer to CSvgDecoder + * @since 3.1 + * @return Pointer to the deocder instance. + */ + static CSvgDecoder* NewL(); + + /** + * Destructor. + */ + ~CSvgDecoder(); + +public: //From CImageDecoderPlugin + /** + * Returns the image type & image sub type of the frame number specified + * @since 3.1 + * @param aFrameNumber + * @param aImageType + * @param aImageSubType + * @return None. + */ + void ImageType(TInt aFrameNumber, TUid& aImageType, TUid& aImageSubType) const; + + /** + * Returns the codec specific frame information stored in resource files. + * This is a virtual funtion that each individual plugin must implement. + * @param aFs A handle to a file server session. + * @param aFrameNumber The frame number to which the codec specific frame information + * applies (optional, defaults to zero). + * @return A pointer to a newly allocated CFrameInfoStrings object. + * Ownership is transferred to the caller. + */ + CFrameInfoStrings* FrameInfoStringsL(RFs& aFs, TInt aFrameNumber); + + TSize ContentSizeInTwips(const TSize aContentSizeInPixels) const; + +private: + //Default constructor + CSvgDecoder(); + +private: //From CImageDecoderPlugin + + /** + * Invokes the ReadFrameHeadersL() method of the supplied plugin. + * The plugin's version of ReadFrameHeadersL() should read the image header \ + * information, create + * the required codec and read the frame headers. + * This is a virtual funtion that each individual plugin must implement. + */ + void ScanDataL(); + + /** + * Reads the image header & data information. It populates the image information \ + * like content size, pixel depth. + * @since 3.1 + */ + void ReadFormatL(); + +private: //Data members + TPtrC8 iFileData; + }; + + +#endif // SVGCONVERT_H +// End of File +