Adding timestamp info to sensor_data class 58/23458/3
authorRamasamy <ram.kannan@samsung.com>
Thu, 26 Jun 2014 05:34:42 +0000 (11:04 +0530)
committerRamasamy <ram.kannan@samsung.com>
Wed, 2 Jul 2014 08:19:11 +0000 (13:49 +0530)
 - Adding new variable for time stamp info for received sensor data

signed-off-by: Ramasamy <ram.kannan@samsung.com>
Change-Id: I19e28b0021eb836cea28fcb9c56e44fa31589d28

src/sensor_fusion/standalone/util/sensor_data.cpp
src/sensor_fusion/standalone/util/sensor_data.h
src/sensor_fusion/standalone/util/test/sensor_data_test/sensor_data_main.cpp

index 4276631..c8960b8 100644 (file)
 #define SENSOR_DATA_SIZE 3
 
 template <typename TYPE>
-sensor_data<TYPE>::sensor_data() : m_data(SENSOR_DATA_SIZE)
+sensor_data<TYPE>::sensor_data() : m_data(SENSOR_DATA_SIZE), m_time_stamp(0)
 {
 }
 
 template <typename TYPE>
-sensor_data<TYPE>::sensor_data(const TYPE x, const TYPE y, const TYPE z)
+sensor_data<TYPE>::sensor_data(const TYPE x, const TYPE y,
+               const TYPE z, const unsigned long long time_stamp = 0)
 {
        TYPE vec_data[SENSOR_DATA_SIZE] = {x, y, z};
 
        vector<TYPE> v(SENSOR_DATA_SIZE, vec_data);
        m_data = v;
+       m_time_stamp = time_stamp;
 }
 
 template <typename TYPE>
-sensor_data<TYPE>::sensor_data(const vector<TYPE> v)
+sensor_data<TYPE>::sensor_data(const vector<TYPE> v,
+               const unsigned long long time_stamp = 0)
 {
        m_data = v;
+       m_time_stamp = time_stamp;
 }
 
 template <typename TYPE>
 sensor_data<TYPE>::sensor_data(const sensor_data<TYPE>& s)
 {
        m_data = s.m_data;
+       m_time_stamp = s.m_time_stamp;
 }
 
 template <typename TYPE>
@@ -58,6 +63,7 @@ template <typename TYPE>
 sensor_data<TYPE> sensor_data<TYPE>::operator =(const sensor_data<TYPE>& s)
 {
        m_data = s.m_data;
+       m_time_stamp = s.m_time_stamp;
 
        return *this;
 }
@@ -83,7 +89,7 @@ sensor_data<T> normalize(sensor_data<T> data)
        y /= val;
        z /= val;
 
-       sensor_data<T> s(x, y, z);
+       sensor_data<T> s(x, y, z, data.m_time_stamp);
 
        return s;
 }
@@ -97,7 +103,7 @@ sensor_data<T> scale_data(sensor_data<T> data, T scaling_factor)
        y = data.m_data.m_vec[1] / scaling_factor;
        z = data.m_data.m_vec[2] / scaling_factor;
 
-       sensor_data<T> s(x, y, z);
+       sensor_data<T> s(x, y, z, data.m_time_stamp);
 
        return s;
 }
index 18a5ee1..28bdcf7 100644 (file)
@@ -26,10 +26,13 @@ template <typename TYPE>
 class sensor_data {
 public:
        vector<TYPE> m_data;
+       unsigned long long m_time_stamp;
 
        sensor_data();
-       sensor_data(const TYPE x, const TYPE y, const TYPE z);
-       sensor_data(const vector<TYPE> v);
+       sensor_data(const TYPE x, const TYPE y, const TYPE z,
+                       const unsigned long long time_stamp);
+       sensor_data(const vector<TYPE> v,
+                       const unsigned long long time_stamp);
        sensor_data(const sensor_data<TYPE>& s);
        ~sensor_data();
 
index 8040ad6..511e949 100644 (file)
@@ -25,16 +25,16 @@ int main()
 
        vector<float> v1(3, arr1);
 
-       sensor_data<float> sd1(2.0, 3.0, 4.0);
+       sensor_data<float> sd1(2.0, 3.0, 4.0, 140737488355328);
        sensor_data<float> sd2(1.04, -4.678, -2.34);
-       sensor_data<float> sd3(0.054, 1.097, 4.456);
-       sensor_data<float> sd10(v1);
+       sensor_data<float> sd3(0.054, 1.097, 4.456, 140737488355328);
+       sensor_data<float> sd10(v1, 140737488355328);
 
        cout << "Constructor tests\n";
        cout << "input\t" << v1 << "\n";
-       cout << "output\t" << sd10.m_data << "\n\n";
+       cout << "output\t" << sd10.m_data << "\t" << sd10.m_time_stamp << "\n\n";
        cout << "input\t" << v1 << "\n";
-       cout << "output\t" << sd2.m_data<< "\n\n";
+       cout << "output\t" << sd2.m_data << "\t" << sd2.m_time_stamp << "\n\n";
 
        cout<< "Addition:\n";
        sensor_data<float> sd4 = sd1 + sd2;