Engauge Digitizer  2
 All Classes Files Functions Variables Enumerations Enumerator Friends Pages
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 #endif // EXPORT_FILE_ABSTRACT_BASE_H
Model for DlgSettingsExportFormat and CmdSettingsExportFormat.
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 ...
Affine transformation between screen and graph coordinates, based on digitized axis points...
QString gnuplotComment() const
Gnuplot comment delimiter.
QString curveSeparator(const QString *string) const
Gnuplot requires, and other graphing tools probably prefer, blank lines between successive curves...
Storage of one imported image and the data attached to that image.
Definition: Document.h:40
Strategy base class for exporting to a file. This class provides common methods.
void destroy2DArray(QVector< QVector< QString * > > &array) const
Deallocate memory for array.
ExportFileAbstractBase()
Single constructor.
Single X/Y pair for cubic spline interpolation initialization and calculations.
Definition: SplinePair.h:11
void insertLineSeparator(bool &isFirst, ExportHeader exportHeader, QTextStream &str) const
Insert line(s) between successive sets of curves.