measure with value of different types
[psensor.git] / src / lib / measure.c
index 7dcacc3..41217a1 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2010-2011 wpitchoune@gmail.com
+    Copyright (C) 2010-2011 jeanfi@gmail.com
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 #include <stdlib.h>
 #include <stdio.h>
+#include <string.h>
+
 #include "measure.h"
 
-struct measure *measures_create(int size)
+struct measure *measures_dbl_create(int size)
 {
        int i;
        struct measure *result;
@@ -29,7 +31,7 @@ struct measure *measures_create(int size)
        result = malloc(size * sizeof(struct measure));
 
        for (i = 0; i < size; i++) {
-               result[i].value = UNKNOWN_VALUE;
+               result[i].value.d_num = UNKNOWN_DBL_VALUE;
                timerclear(&result[i].time);
        }
 
@@ -43,6 +45,5 @@ void measures_free(struct measure *measures)
 
 void measure_copy(struct measure *src, struct measure *dst)
 {
-       dst->time = src->time;
-       dst->value = src->value;
+       memcpy(dst, src, sizeof(struct measure));
 }