diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2013-12-30 11:15:17 +0100 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2013-12-30 11:15:17 +0100 |
commit | 272e784d6c79e5f43e2514c349f46734fbbd0078 (patch) | |
tree | 11390357f5262672c50ed551059167fb749d3ecd /ftnoir_tracker_hydra/ftnoir_tracker_hydra.h | |
parent | 60a8fd51ba9cd77b1944d10cab75e095db7b2815 (diff) |
hydra: use new settings framework. also decruft
Diffstat (limited to 'ftnoir_tracker_hydra/ftnoir_tracker_hydra.h')
-rw-r--r-- | ftnoir_tracker_hydra/ftnoir_tracker_hydra.h | 57 |
1 files changed, 19 insertions, 38 deletions
diff --git a/ftnoir_tracker_hydra/ftnoir_tracker_hydra.h b/ftnoir_tracker_hydra/ftnoir_tracker_hydra.h index 240f0687..16629c3a 100644 --- a/ftnoir_tracker_hydra/ftnoir_tracker_hydra.h +++ b/ftnoir_tracker_hydra/ftnoir_tracker_hydra.h @@ -5,82 +5,63 @@ #include <QWaitCondition> #include <math.h> #include "facetracknoir/global-settings.h" +#include "facetracknoir/options.hpp" +using namespace options; + +struct settings { + pbundle b; + value<bool> bEnableRoll, bEnablePitch, bEnableYaw, bEnableX, bEnableY, bEnableZ; + settings() : + b(bundle("tracker-hydra")), + bEnableRoll(b, "enable-rz", true), + bEnablePitch(b, "enable-ry", true), + bEnableYaw(b, "enable-rx", true), + bEnableX(b, "enable-tx", true), + bEnableY(b, "enable-ty", true), + bEnableZ(b, "enable-tz", true) + {} +}; + class Hydra_Tracker : public ITracker { public: Hydra_Tracker(); ~Hydra_Tracker(); - void StartTracker(QFrame *) virt_override; void GetHeadPoseData(double *data) virt_override; - void loadSettings(); volatile bool should_quit; protected: void run(); // qthread override run method - private: + settings s; bool isCalibrated; - double newHeadPose[6]; // Structure with new headpose - bool bEnableRoll; - bool bEnablePitch; - bool bEnableYaw; - - bool bEnableX; - bool bEnableY; - bool bEnableZ; - QMutex mutex; - virtual int preferredHz() virt_override { return 250; } }; -// Widget that has controls for FTNoIR protocol client-settings. class TrackerControls: public QWidget, public ITrackerDialog { Q_OBJECT public: - explicit TrackerControls(); - ~TrackerControls(); - void showEvent (QShowEvent *); - void Initialize(QWidget *parent); void registerTracker(ITracker *) {} void unRegisterTracker() {} - private: + settings s; Ui::UIHydraControls ui; - void loadSettings(); - void save(); - - /** helper **/ - bool settingsDirty; - private slots: void doOK(); void doCancel(); - void settingChanged() { settingsDirty = true; } - void settingChanged(int) { settingsDirty = true; } }; -//******************************************************************************************************* -// FaceTrackNoIR Tracker DLL. Functions used to get general info on the Tracker -//******************************************************************************************************* class FTNoIR_TrackerDll : public Metadata { public: - FTNoIR_TrackerDll(); - ~FTNoIR_TrackerDll(); - void getFullName(QString *strToBeFilled); void getShortName(QString *strToBeFilled); void getDescription(QString *strToBeFilled); void getIcon(QIcon *icon); - -private: - QString trackerFullName; // Trackers' name and description - QString trackerShortName; - QString trackerDescription; }; |