diff options
Diffstat (limited to 'rotord/src/nodes_maths.h')
| -rw-r--r-- | rotord/src/nodes_maths.h | 45 |
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 |
