/* -*- mode: c++; indent-tabs-mode: nil; -*-
 *
 * This file is part of the Mango recipe management distribution.
 * Copyright (c) 2000-2003, Roland Jesse
 * All rights reserved.
 *
 * For license and copyright information see the file COPYRIGHT or 
 * <http://www.opensource.org/licenses/bsd-license.html>.
 *
 * $Id: MangoExporter.h,v 1.4 2003/01/12 16:19:56 rjesse Exp $
 */
 
#ifndef MANGO_EXPORTER_H
#define MANGO_EXPORTER_H

#include "Exporter.h"
#include <qdatastream.h>

/*!
  Class for writing Mango's native file format.
*/
class MangoExporter : public Exporter {
      Q_OBJECT

   public:
	  MangoExporter( RecipeModel*); //!< Constructor.
	  MangoExporter( Recipe&); //!< Constructor.
	  virtual ~MangoExporter();	//!< Destructor.

      virtual QString getExtensions();
      virtual void apply() throw( Error);

   protected:
	  virtual void createCookbookHeader();
      virtual void createRecipes();
	  virtual void createRecipeHeader();
      virtual void createRecipeBody();

   private:
      QDataStream m_stream;
};
#endif // MANGO_EXPORTER_H
