Engauge Digitizer  2
ExportFileAbstractBase.h
1 /******************************************************************************************************
2  * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3  * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4  * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5  ******************************************************************************************************/
6 
7 #ifndef EXPORT_FILE_ABSTRACT_BASE_H
8 #define EXPORT_FILE_ABSTRACT_BASE_H
9 
10 #include "CurveConnectAs.h"
11 #include "ExportFileAbstractBase.h"
12 #include "ExportHeader.h"
13 #include <QStringList>
14 #include <QVector>
15 #include <vector>
16 
17 class Document;
19 class QTextStream;
20 class SplinePair;
21 class Transformation;
22 
25 {
26 public:
29 
30 protected:
32  QString curveSeparator (const QString *string) const;
33 
35  QStringList curvesToInclude (const DocumentModelExportFormat &modelExportOverride,
36  const Document &document,
37  const QStringList &curvesGraphsNames,
38  CurveConnectAs curveConnectAs1,
39  CurveConnectAs curveConnectAs2) const;
40 
42  void destroy2DArray (QVector<QVector<QString*> > &array) const;
43 
45  QString gnuplotComment() const;
46 
48  void insertLineSeparator (bool &isFirst,
49  ExportHeader exportHeader,
50  QTextStream &str) const;
51 
52 };
53 
54 #endif // EXPORT_FILE_ABSTRACT_BASE_H
void destroy2DArray(QVector< QVector< QString *> > &array) const
Deallocate memory for array.
Model for DlgSettingsExportFormat and CmdSettingsExportFormat.
Affine transformation between screen and graph coordinates, based on digitized axis points...
QStringList curvesToInclude(const DocumentModelExportFormat &modelExportOverride, const Document &document, const QStringList &curvesGraphsNames, CurveConnectAs curveConnectAs1, CurveConnectAs curveConnectAs2) const
Identify curves to include in export. The specified DocumentModelExportFormat overrides same data in ...
QString gnuplotComment() const
Gnuplot comment delimiter.
void insertLineSeparator(bool &isFirst, ExportHeader exportHeader, QTextStream &str) const
Insert line(s) between successive sets of curves.
Storage of one imported image and the data attached to that image.
Definition: Document.h:41
QString curveSeparator(const QString *string) const
Gnuplot requires, and other graphing tools probably prefer, blank lines between successive curves...
Strategy base class for exporting to a file. This class provides common methods.
ExportFileAbstractBase()
Single constructor.
Single X/Y pair for cubic spline interpolation initialization and calculations.
Definition: SplinePair.h:11