tahamajs/CPS / Files /last_terms /Cyber-Physical-Systems-Course /Motion-Based-Authentication /src /verifier.h
| class Verifier : public QObject | |
| { | |
| Q_OBJECT | |
| Q_PROPERTY(bool isCalibrated READ isCalibrated NOTIFY finishedCalibrating) | |
| Q_PROPERTY(bool originalPatternExists READ originalPatternExists NOTIFY finishedRecordingPattern) | |
| public: | |
| Verifier(GyroscopeManager* gyroscopeManager, AccelerometerManager* m_accelerometerManager, QObject *parent = nullptr); | |
| Q_INVOKABLE void onRecordNewPatternPageClicked(); | |
| Q_INVOKABLE void onCalibrationPageClicked(); | |
| Q_INVOKABLE void onAuthenticatePatternPageClicked(); | |
| Q_INVOKABLE void onBackButtonClicked(); | |
| Q_INVOKABLE bool isCalibrated(); | |
| Q_INVOKABLE bool originalPatternExists(); | |
| void processSensorData(); | |
| bool hasMoved(); | |
| void reset(); | |
| bool isAuthenticated(); | |
| void showPattern(QVector<Path*> pattern); | |
| public slots: | |
| void addVerifiedPatternSegment(qreal x, qreal y, qreal angle); | |
| void addAuthenticationPatternSegment(qreal x, qreal y, qreal angle); | |
| void onGyroscopeDataReceived(qreal x, qreal y, qreal z, qint64 timestamp); | |
| void onAccelerometerDataReceived(qreal x, qreal y, qreal z, qint64 timestamp); | |
| private: | |
| bool m_verified; | |
| std::string m_page; | |
| std::string m_state; | |
| int m_finishRecordingTimeout; | |
| GyroscopeManager* m_gyroscopeManager; | |
| AccelerometerManager* m_accelerometerManager; | |
| qreal m_errorBias_x; | |
| qreal m_errorBias_y; | |
| QVector<Path*> m_verifiedPattern; | |
| QVector<Path*> m_currentPattern; | |
| signals: | |
| void finishedRecordingPattern(); | |
| void finishedCalibrating(); | |
| void calibratingAccelerometer(); | |
| void calibratingGyroscope(); | |
| void recordPatternStateChanged(const QString &state); | |
| void finishedAuthentication(bool isAuthenticated); | |
| }; | |
Xet Storage Details
- Size:
- 1.95 kB
- Xet hash:
- f2adc8ba7c0eab6403906ebc11d50effb4641f0c7773dcee9c09656788cb8b2a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.