TSP Solver and Generator
src/tspmodel.h
Go to the documentation of this file.
00001 
00028 #ifndef TSPMODEL_H
00029 #define TSPMODEL_H
00030 
00031 #include "globals.h"
00032 
00037 class CTSPModel: public QAbstractTableModel
00038 {
00039     Q_OBJECT
00040 
00041 public:
00042     CTSPModel(QObject *parent = 0);
00043     void clear();
00044     int columnCount(const QModelIndex &parent = QModelIndex()) const;
00045     QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
00046     Qt::ItemFlags flags(const QModelIndex &index) const;
00047     QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
00048     bool loadTask(const QString &fname);
00049     quint16 numCities() const;
00050     void randomize();
00051     int rowCount(const QModelIndex &parent = QModelIndex()) const;
00052     bool saveTask(const QString &fname);
00053     bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
00054     void setNumCities(int n);
00055 
00056 signals:
00062     void numCitiesChanged(int);
00063 
00064 private:
00065     QSettings *settings;
00066     QVector<QVector<double> > table;
00067     quint16 nCities;
00068     bool loadError(QDataStream::Status);
00069     bool loadTSPT(QDataStream *);
00070     bool loadZKT(QDataStream *);
00071     double rand(int, int) const;
00072 };
00073 
00074 #endif // TSPMODEL_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines