Jose Fonseca | 9653f95 | 2015-05-19 16:32:43 +0100 | [diff] [blame] | 1 | #pragma once |
Zack Rusin | 8e7a4ff | 2011-04-07 01:15:48 -0400 | [diff] [blame] | 2 | |
| 3 | #include <QObject> |
| 4 | |
| 5 | class QListWidget; |
| 6 | |
José Fonseca | 933070e | 2011-05-10 20:27:00 +0100 | [diff] [blame] | 7 | enum DataType { |
| 8 | DT_INT8, |
| 9 | DT_UINT8, |
| 10 | DT_INT16, |
| 11 | DT_UINT16, |
| 12 | DT_INT32, |
| 13 | DT_UINT32, |
| 14 | DT_FLOAT, |
| 15 | DT_DOUBLE, |
| 16 | }; |
| 17 | |
Zack Rusin | 8e7a4ff | 2011-04-07 01:15:48 -0400 | [diff] [blame] | 18 | class VertexDataInterpreter : public QObject |
| 19 | { |
| 20 | Q_OBJECT |
| 21 | public: |
| 22 | VertexDataInterpreter(QObject *parent=0); |
| 23 | |
| 24 | QByteArray data() const; |
| 25 | |
| 26 | int type() const; |
| 27 | int stride() const; |
| 28 | int components() const; |
Zack Rusin | 1b91705 | 2011-04-07 19:38:40 -0400 | [diff] [blame] | 29 | int startingOffset() const; |
Zack Rusin | 8e7a4ff | 2011-04-07 01:15:48 -0400 | [diff] [blame] | 30 | |
| 31 | void setListWidget(QListWidget *listWidget); |
| 32 | |
| 33 | public slots: |
| 34 | void interpretData(); |
| 35 | |
| 36 | void setData(const QByteArray &data); |
| 37 | void setTypeFromString(const QString &str); |
| 38 | void setStride(int stride); |
| 39 | void setComponents(int num); |
| 40 | void setType(int type); |
Zack Rusin | 1b91705 | 2011-04-07 19:38:40 -0400 | [diff] [blame] | 41 | void setStartingOffset(int offset); |
Zack Rusin | 8e7a4ff | 2011-04-07 01:15:48 -0400 | [diff] [blame] | 42 | |
| 43 | private: |
| 44 | QListWidget *m_listWidget; |
| 45 | QByteArray m_data; |
| 46 | int m_type; |
| 47 | int m_stride; |
| 48 | int m_components; |
Zack Rusin | 1b91705 | 2011-04-07 19:38:40 -0400 | [diff] [blame] | 49 | int m_startingOffset; |
Zack Rusin | 8e7a4ff | 2011-04-07 01:15:48 -0400 | [diff] [blame] | 50 | }; |