]> pilppa.org Git - lib1wire.git/blobdiff - src/W1Device.hh
Started defining generic device type base classes that could be used
[lib1wire.git] / src / W1Device.hh
index 90b5532860790d287f6bdda828fcf379bad998f2..d1371e9e5214a598bd267872bfef9a076789c03f 100644 (file)
@@ -15,6 +15,7 @@
 #include <stdbool.h>
 
 #include "Data.hh"
+#include "DeviceTypeSensor.hh"
 
 #ifndef W1_SCAN_ROOTDIR
 #define W1_SCAN_ROOTDIR                "/sys/bus/w1/devices"
@@ -25,7 +26,7 @@
 #endif
 
 namespace w1 {
-       class W1Device {
+       class W1Device : public plp::DeviceTypeSensor {
                public:
                        W1Device(int family_code_param,
                                std::string device_id_param,
@@ -35,15 +36,13 @@ namespace w1 {
                        std::string get_id();
                        std::string get_name();
                        void set_name(std::string name_param);
-                       virtual std::string get_unit() = 0;
-                       virtual std::string get_device_type() = 0;
-                       Data *get_and_collect_data();
-                       virtual void save_data();
-                       virtual void printout();
+                       void printout();
+                       plp::Data *get_data();
+                       void save_data();
                protected:
                        virtual std::vector<double> *get_raw_data() = 0;
                        virtual unsigned int get_data_decimal_precision() = 0;
-                       void collect_data(Data *data);
+                       void collect_data(plp::Data *data);
                        std::string to_string(double val, int digit_count);
                        //Data *get_formatted_data(Data *data);
                        virtual bool is_supported_w1_family_code(int family_code) = 0;
@@ -52,7 +51,7 @@ namespace w1 {
                        std::string name;
                        std::string dir_path;
                        std::string slave_file;
-                       std::list<w1::Data *> memory_cache;
+                       std::list<plp::Data *> memory_cache;
        };
 }