summaryrefslogtreecommitdiff
path: root/include/decoder.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/decoder.h')
-rw-r--r--include/decoder.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/decoder.h b/include/decoder.h
new file mode 100644
index 0000000..2a8c58e
--- /dev/null
+++ b/include/decoder.h
@@ -0,0 +1,26 @@
+#pragma once
+
+namespace radio_controller {
+
+template<typename T>
+class iterator {
+public:
+ virtual bool next() = 0;
+
+ virtual bool has_next() const = 0;
+
+ virtual const T &value() const = 0;
+};
+
+struct sample {
+ uint16_t period_us;
+ uint16_t pulse_us;
+};
+
+//template<typename T>
+class decoder {
+public:
+ virtual void decode(iterator<sample> *it) = 0;
+};
+
+} // namespace radio_controller