aboutsummaryrefslogtreecommitdiff
path: root/GateNot.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'GateNot.cpp')
-rw-r--r--GateNot.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/GateNot.cpp b/GateNot.cpp
new file mode 100644
index 0000000..c272022
--- /dev/null
+++ b/GateNot.cpp
@@ -0,0 +1,20 @@
+#include "GateNot.h"
+
+GateNot GateNot::instance(GateNot::type);
+
+SignalLevel GateNot::level() {
+ SignalLevel new_level = LOW;
+ for (int i = 0; i < this->inputs.size(); i++){
+ SignalLevel l = this->inputs[i]->getLevel();
+
+ if (l == UNDEFINED) return UNDEFINED;
+ if (l == HIGH) new_level = HIGH;
+ }
+ return new_level;
+}
+
+GateNot::GateNot(const GateNot * prototype) : Node() { }
+
+GateNot * GateNot::clone() const {
+ return new GateNot(this);
+}