// HEXplorer is an Asap and HEX file editor
// Copyright (C) 2011  <Christophe Hoel>
//
// This file is part of HEXplorer.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.
//
// please contact the author at : christophe.hoel@gmail.com

#ifndef PLOT_H
#define PLOT_H

#include <qwt_plot.h>
#include <qwt_plot_marker.h>
#include <qwt_plot_curve.h>
#include <qwt_legend.h>
#include <qwt_text.h>
#include <qwt_math.h>
#include <math.h>
#include "data.h"
#include "graphmodel.h"
#include "sptablemodel.h"

class Plot : public QwtPlot
{
    Q_OBJECT

public:
    Plot(GraphModel *model, QString type = "XZ");
    ~Plot();

    GraphModel * getModel();
    void invertXY(bool inverted);

private:
    int nPointsX;
    int nPointsY;
    GraphModel *model;

    void plotXZ();
    void plotYZ();

public slots:
    void printPlot();
};

#endif // PLOT_H
