aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-11-10 23:45:23 +0100
committerLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-11-11 08:49:38 +0000
commit3bd8002945e6c3e0119b8db1fce22e634e9c4ca5 (patch)
treedbc59c6582ce78998979c4178e13148614d60d22
parent5bf7f558ac28db23025e05d1cac5108b744db092 (diff)
Share the calibration file with the Python libs
The local copy of /etc/RTIMULib.ini should be ~/.config/sense_hat/RTIMULib.ini. Change-Id: I9c2d04aa3c6b68febf2e9b90904df3bc5c69b972 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
-rw-r--r--src/sensehat/qsensehatsensors.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/sensehat/qsensehatsensors.cpp b/src/sensehat/qsensehatsensors.cpp
index ff44437..3d159a8 100644
--- a/src/sensehat/qsensehatsensors.cpp
+++ b/src/sensehat/qsensehatsensors.cpp
@@ -35,6 +35,7 @@
****************************************************************************/
#include "qsensehatsensors.h"
+#include <QStandardPaths>
#include <QFile>
#include <QTimer>
#include <RTIMULib.h>
@@ -90,8 +91,10 @@ QSenseHatSensorsPrivate::~QSenseHatSensorsPrivate()
void QSenseHatSensorsPrivate::open()
{
- const QString defaultConfig = QStringLiteral("/etc/RTIMULib.ini");
- const QString writableConfig = QStringLiteral("RTIMULib.ini");
+ const QString configFileName = QStringLiteral("RTIMULib.ini");
+ const QString defaultConfig = QStringLiteral("/etc/") + configFileName;
+ const QString writableConfigDir = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QStringLiteral("/sense_hat");
+ const QString writableConfig = writableConfigDir + QStringLiteral("/") + configFileName;
if (!flags.testFlag(QSenseHatSensors::DontCopyIniFile)) {
if (!QFile::exists(writableConfig)) {
@@ -101,7 +104,8 @@ void QSenseHatSensorsPrivate::open()
else
qWarning("/etc/RTIMULib.ini not found, sensors may not be functional");
}
- settings = new RTIMUSettings;
+ QByteArray dirName = writableConfigDir.toUtf8();
+ settings = new RTIMUSettings(dirName.constData(), "RTIMULib");
} else {
settings = new RTIMUSettings("/etc", "RTIMULib");
}