Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: NaturalTinyShell_ice libmDot-12Sept mbed-rtos mbed
Fork of ICE by
Diff: src/OutputTask/Control.h
- Revision:
- 185:5ac6ab1ed875
- Child:
- 192:052a419837fa
diff -r 1e4d6ee57c31 -r 5ac6ab1ed875 src/OutputTask/Control.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/OutputTask/Control.h Wed Oct 05 16:41:57 2016 +0000
@@ -0,0 +1,67 @@
+#ifndef CONTROL_H
+#define CONTROL_H
+
+#include "global.h"
+#include <string>
+
+typedef enum {
+ CONTROL_OFF = 0,
+ CONTROL_ON = 1
+} ControlState;
+
+
+/*****************************************************************************
+ * Control class
+ * Contains the most pertinent control information to stack onto the output
+ * entry
+ ****************************************************************************/
+class Control
+{
+private:
+ std::string id; // control identifier
+ Control_t controlType; // control type
+ std::string input; // input
+ unsigned int priority; // control priority
+ ControlState state; // state (ON or OFF)
+
+public:
+ // ctor
+ Control(std::string id, Control_t controlType, std::string input, unsigned int priority, ControlState state) :
+ id(id), controlType(controlType), input(input), priority(priority), state(state) {}
+ // dtor
+ ~Control() {}
+
+ // displays a control's pertinents
+ void display() {
+ printf("[%-24s | %3s | %u]",
+ id.c_str(), (state == CONTROL_ON) ? "ON" : "OFF", priority);
+ }
+
+ std::string getId() const {
+ return id;
+ }
+
+ Control_t getControlType(void) const {
+ return controlType;
+ }
+
+ std::string getInput(void) const {
+ return input;
+ }
+
+ unsigned int getPriority() const {
+ return priority;
+ }
+
+ ControlState getState(void) const {
+ return state;
+ }
+
+ unsigned int getMappedState(void) const;
+
+ void setState(ControlState _state) {
+ state = _state;
+ }
+};
+
+#endif
\ No newline at end of file
