summaryrefslogtreecommitdiff
path: root/libsensors_iio/src/SensorBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libsensors_iio/src/SensorBase.cpp')
-rw-r--r--libsensors_iio/src/SensorBase.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/libsensors_iio/src/SensorBase.cpp b/libsensors_iio/src/SensorBase.cpp
index c6cb908..b5d7e7f 100644
--- a/libsensors_iio/src/SensorBase.cpp
+++ b/libsensors_iio/src/SensorBase.cpp
@@ -105,6 +105,17 @@ char* SensorBase::GetName()
return (char *)sensor_t_data.name;
}
+int64_t SensorBase::GetTimestamp()
+{
+ struct timespec t;
+
+ t.tv_sec = 0;
+ t.tv_nsec = 0;
+ clock_gettime(CLOCK_BOOTTIME, &t);
+
+ return int64_t(t.tv_sec) * 1000000000LL + t.tv_nsec;
+}
+
int SensorBase::Enable(int handle, bool enable)
{
int err, i = 0;
@@ -129,6 +140,7 @@ int SensorBase::Enable(int handle, bool enable)
ResetBitEnableMask(handle);
}
+ last_data_timestamp = GetTimestamp();
#if (CONFIG_ST_HAL_DEBUG_LEVEL >= ST_HAL_DEBUG_INFO)
if (((old_status && !GetStatus()) || (!old_status && GetStatus())) && (sensor_t_data.type < SENSOR_TYPE_ST_CUSTOM_NO_SENSOR)) {