From 3bd8002945e6c3e0119b8db1fce22e634e9c4ca5 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Tue, 10 Nov 2015 23:45:23 +0100 Subject: 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 --- src/sensehat/qsensehatsensors.cpp | 10 +++++++--- 1 file 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 #include #include #include @@ -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"); } -- cgit v1.2.3