/****************************************************************************
*
*  Copyright (C) 2002-2012 Helta Kft. / NociSoft Software Solutions
*  All rights reserved.
*  Author: Norbert Szabo
*  E-mail: norbert@nocisoft.com, office@nocisoft.com
*  Web: www.nocisoft.com
*
*  This file is part of the NCReport Report Generator System
*
*  Licensees holding a valid NCReport License Agreement may use this
*  file in accordance with the rights, responsibilities, and obligations
*  contained therein. Please consult your licensing agreement or contact
*  norbert@nocisoft.com if any conditions of this licensing are not clear
*  to you.
*
*  This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
*  WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
****************************************************************************/

#ifndef NCREPORTPDFOUTPUT_H
#define NCREPORTPDFOUTPUT_H

#ifndef NCREPORT_NO_QPRINTER
#include "ncreportprinteroutput.h"
#include "ncreport_global.h"

class NCREPORTSHARED_EXPORT NCReportPdfOutput : public NCReportPrinterOutput
{
	Q_OBJECT
public:
    NCReportPdfOutput( NCReportPrinter::PrinterMode quality = NCReportPrinter::HighResolution, int dpi=-1,
                       NCReportPrinter::OutputFormat outputFormat = NCReportPrinter::PdfFormat, QObject* parent=Q_NULLPTR);

	virtual void cleanup();
	virtual void begin();
	virtual void end();
	virtual void setFileName( const QString& );
    void setPdfVersion( NCReport::PdfVersion version );
    void initPrinter();

private:
    NCReportPrinter::OutputFormat m_outputFormat;
    NCReport::PdfVersion m_version;
};
#endif

#endif // NCREPORTPDFOUTPUT_H
