]> pilppa.org Git - lib1wire.git/blobdiff - src/W1Device.hh
add support for storing data to text file periodically
[lib1wire.git] / src / W1Device.hh
index 190e36ea81b6f5e8842c728843a0ed10cd262e52..97d0da9582ff1e55d5e5b0c53895885c565eea1a 100644 (file)
@@ -8,9 +8,11 @@
 #ifndef W1DEVICE_HH_
 #define W1DEVICE_HH_
 
+#include <string>
+#include <list>
+
 #include <dirent.h>
 #include <stdbool.h>
-#include <string>
 
 #ifndef W1_SCAN_ROOTDIR
 #define W1_SCAN_ROOTDIR                "/sys/bus/w1/devices"
@@ -28,18 +30,24 @@ namespace w1 {
                        int get_family_code();
                        std::string get_id();
                        std::string get_name();
-                       virtual void printout();
                        void set_name(std::string name_param);
                        virtual std::string get_value() = 0;
                        virtual std::string get_unit() = 0;
+                       virtual std::string get_devicetype_name() = 0;
                        std::string get_time();
+                       virtual void printout();
+                       virtual void store();
                protected:
+                       void add_to_memory_cache(std::string formatted_data);
+                       std::string get_formatted_data();
+                       std::string get_formatted_data(std::string value);
                        virtual bool is_supported_family_code(int family_code) = 0;
                        int     family_code;
                        std::string id;
                        std::string name;
                        std::string dir_path;
                        std::string slave_file;
+                       std::list<std::string> memory_cache;
                private:
        };
 }