labplot  2.8.2
About: LabPlot is an application for plotting and analysis of 2D and 3D functions and data. It is a complete rewrite of LabPlot1 and lacks in the first release a lot of features available in the predecessor. On the other hand, the GUI and the usability is more superior.
  Fossies Dox: labplot-2.8.2.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

AbstractDataSource.h
Go to the documentation of this file.
1 /***************************************************************************
2 File : AbstractDataSource.h
3 Project : LabPlot
4 Description : Interface for data sources
5 --------------------------------------------------------------------
6 Copyright : (C) 2009-2017 Alexander Semke (alexander.semke@web.de)
7 Copyright : (C) 2015 Stefan Gerlach (stefan.gerlach@uni.kn)
8 ***************************************************************************/
9 
10 /***************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  * This program is distributed in the hope that it will be useful, *
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
20  * GNU General Public License for more details. *
21  * *
22  * You should have received a copy of the GNU General Public License *
23  * along with this program; if not, write to the Free Software *
24  * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
25  * Boston, MA 02110-1301 USA *
26  * *
27  ***************************************************************************/
28 #ifndef ABSTRACTDATASOURCE_H
29 #define ABSTRACTDATASOURCE_H
30 
34 #include <QVector>
35 
36 class QStringList;
37 
39  Q_OBJECT
40 
41 public:
42  AbstractDataSource(const QString& name, AspectType type);
43  ~AbstractDataSource() override = default;
44 
45  void clear();
46  virtual int prepareImport(std::vector<void*>& dataContainer, AbstractFileFilter::ImportMode, int actualRows, int actualCols,
47  QStringList colNameList = QStringList(), QVector<AbstractColumn::ColumnMode> = QVector<AbstractColumn::ColumnMode>()) = 0;
48  virtual void finalizeImport(int columnOffset = 0, int startColumn = 0, int endColumn = 0,
49  const QString& dateTimeFormat = QString(), AbstractFileFilter::ImportMode importMode = AbstractFileFilter::ImportMode::Replace) = 0;
50 };
51 
52 #endif // ABSTRACTDATASOURCE_H
AspectType
AspectType type() const
QString name() const
Interface for the data sources.
~AbstractDataSource() override=default
AbstractDataSource(const QString &name, AspectType type)
virtual int prepareImport(std::vector< void * > &dataContainer, AbstractFileFilter::ImportMode, int actualRows, int actualCols, QStringList colNameList=QStringList(), QVector< AbstractColumn::ColumnMode >=QVector< AbstractColumn::ColumnMode >())=0
virtual void finalizeImport(int columnOffset=0, int startColumn=0, int endColumn=0, const QString &dateTimeFormat=QString(), AbstractFileFilter::ImportMode importMode=AbstractFileFilter::ImportMode::Replace)=0
Base class of Aspects with MDI windows as views (AspectParts).
Definition: AbstractPart.h:36