aboutsummaryrefslogtreecommitdiff
path: root/qt-widgets/adapter.h
blob: 9fc35fa337f06ff7d4db804ae8e25cea5e0f195e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef ADAPTER_H
#define ADAPTER_H

#include "../nissy-core/cpp/nissy.h"

#include <string>
#include <vector>
#include <QObject>

struct SolverConfiguration {
	nissy::cube cube{nissy::cube::SOLVED};
	unsigned minmoves{0};
	unsigned maxmoves{20};
	unsigned maxsolutions{1};
	int optimal{-1};
	int threads{8};
};

class NissyAdapter : public QObject {
	Q_OBJECT

public:
	NissyAdapter();
	~NissyAdapter();
	void solve(SolverConfiguration);

signals:
	void solveDone(QString);

private:
	static constexpr nissy::solver defaultOptimalSolver{"h48h3k2"};
	nissy::solver_data_t optimalSolverData;
};

#endif

Generated with cgit - Back to sebastiano.tronto.net