openPilotLog
aentry.h
1 /*
2  *openPilotLog - A FOSS Pilot Logbook Application
3  *Copyright (C) 2020-2021 Felix Turowsky
4  *
5  *This program is free software: you can redistribute it and/or modify
6  *it under the terms of the GNU General Public License as published by
7  *the Free Software Foundation, either version 3 of the License, or
8  *(at your option) any later version.
9  *
10  *This program is distributed in the hope that it will be useful,
11  *but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  *GNU General Public License for more details.
14  *
15  *You should have received a copy of the GNU General Public License
16  *along with this program. If not, see <https://www.gnu.org/licenses/>.
17  */
18 #ifndef AENTRY_H
19 #define AENTRY_H
20 
21 #include <QString>
22 #include <QStringList>
23 #include <QHash>
24 #include <QPair>
25 #include <QVariant>
26 
27 #include "src/database/adatabasetypes.h"
28 
33 class AEntry {
34 protected:
35  DataPosition position;
36 public:
37  RowData_T tableData;
38 public:
39  AEntry() = delete;
40  AEntry(const AEntry&) = default;
41  AEntry& operator=(const AEntry&) = default;
42  AEntry(DataPosition position_);
43  AEntry(RowData_T table_data);
44  AEntry(DataPosition position_, RowData_T table_data);
45 
46  void setData(RowData_T table_data);
47  void setPosition(DataPosition position_);
48 
49  const DataPosition& getPosition() const;
50  const RowData_T& getData() const;
51 
56  operator QString() const;
57 
58 };
59 
60 #endif // AENTRY_H
The Entry class encapsulates table metadata(table name, row id) and data for new and existing entries...
Definition: aentry.h:33
Definition: adatabasetypes.h:44