gfxconversion/mifconv/inc/mifconv_iconbinaryconverter.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 02 Feb 2010 01:11:11 +0200
changeset 0 f453ebb75370
permissions -rw-r--r--
Revision: 201003 Kit: 201005

/*
* Copyright (c) 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:  Mifconv icon binary converters class.
*
*/


#ifndef __MIFCONVICONBINARYCONVERTER_H__
#define __MIFCONVICONBINARYCONVERTER_H__

#include "mifconv_fileconverter.h"
#include <fstream>

/**
 * Converter class for .svg to .svgb conversion:
 */

class MifConvIconBinaryConverter : public MifConvFileConverter
{
public:

    /**
     * Default constructor
     */
    MifConvIconBinaryConverter();

    /**
     * Destructor
     */
    virtual ~MifConvIconBinaryConverter();

    // From MifConvFileConverter:
	virtual void AppendFile( const MifConvSourceFile& sourcefile );
	virtual void Convert();
	virtual void Cleanup(bool err = false);
	virtual void Init();
	virtual void CleanupTargetFiles();

protected:

    /**
     * Converts files to svgb files.     
     */
	virtual void ConvertToSvgb();

    /**
     * Removes temporary files from the file system.
     */
	virtual void CleanupTempFiles();

    /**
     * Runs the external converter.     
     */
    void RunExtConverter();

    /**
     * Creates and initializes the temporary file     
     */
    void InitTempFile();
   
    /**
     * Returns default path to external converter.
     * @return Default path to external converter.
     */
    const MifConvString& GetDefaultExtConverterPath();

    void ConvertToBinaryFilename( MifConvString& input );
private:
    
    MifConvString iTempDir;
    MifConvStringList iTempFilenames;
    MifConvString iDefaultExtConverterPath;    
};


#endif