summaryrefslogtreecommitdiff
path: root/rotord/src/nodes_maths.h
diff options
context:
space:
mode:
Diffstat (limited to 'rotord/src/nodes_maths.h')
-rw-r--r--rotord/src/nodes_maths.h45
1 files changed, 25 insertions, 20 deletions
diff --git a/rotord/src/nodes_maths.h b/rotord/src/nodes_maths.h
index 13947a0..07f111b 100644
--- a/rotord/src/nodes_maths.h
+++ b/rotord/src/nodes_maths.h
@@ -28,26 +28,28 @@ namespace Rotor {
}
Comparison* clone(map<string,string> &_settings) { return new Comparison(_settings);};
const float output(const Time_spec &time) {
- switch (attributes["operator"]->intVal) {
- case COMPARISON_Equal:
- return fequal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
- break;
- case COMPARISON_Not_equal:
- return fequal(parameters["value"]->value,inputs[0]->get(time))?0.0f:1.0f;
- break;
- case COMPARISON_Greater:
- return fgreater(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
- break;
- case COMPARISON_Less:
- return fless(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
- break;
- case COMPARISON_Greater_or_equal:
- return fgreater_or_equal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
- break;
- case COMPARISON_Less_or_equal:
- return fless_or_equal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
- break;
- }
+ if (inputs[0]->connection) {
+ switch (attributes["operator"]->intVal) {
+ case COMPARISON_Equal:
+ return fequal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
+ break;
+ case COMPARISON_Not_equal:
+ return fequal(parameters["value"]->value,inputs[0]->get(time))?0.0f:1.0f;
+ break;
+ case COMPARISON_Greater:
+ return fgreater(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
+ break;
+ case COMPARISON_Less:
+ return fless(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
+ break;
+ case COMPARISON_Greater_or_equal:
+ return fgreater_or_equal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
+ break;
+ case COMPARISON_Less_or_equal:
+ return fless_or_equal(parameters["value"]->value,inputs[0]->get(time))?1.0f:0.0f;
+ break;
+ }
+ }
return 0.0f;
}
@@ -248,6 +250,9 @@ namespace Rotor {
uint32_t seed;
private:
};
+
}
+
+
#endif