43 lines
903 B
C++
43 lines
903 B
C++
#ifndef SCANPROCESSSEQUENCE_H
|
|
#define SCANPROCESSSEQUENCE_H
|
|
|
|
#include <QObject>
|
|
#include <QStack>
|
|
|
|
enum ScanPosition
|
|
{
|
|
Left = 0, Right
|
|
};
|
|
|
|
class ScanProcessSequence : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
static ScanProcessSequence* getInstance();
|
|
void pushPosition(ScanPosition aPosition);
|
|
ScanPosition popPosition();
|
|
ScanPosition topPosition();
|
|
int getScanPositionSize();
|
|
void clear();
|
|
|
|
signals:
|
|
void startAutoLocate();
|
|
void stopAutoLocate();
|
|
void quitAutoLocate();
|
|
void startFullScan();
|
|
void fullScanDataExport();
|
|
void autoLocateXYUpdated(int aX, int aY);
|
|
void autoLocateZUpdated(int aZ);
|
|
void ScanProcessSequenceFinished();
|
|
|
|
private slots:
|
|
void updateAutoLocatePosition(int aX, int aY, int aZ);
|
|
|
|
private:
|
|
ScanProcessSequence(QObject* aParent = nullptr);
|
|
QStack<ScanPosition> mScanProtocol;
|
|
|
|
};
|
|
|
|
#endif // SCANPROCESSSEQUENCE_H
|