dimm-change-state

cesars/dimmer/dimm-change-state

Change state ON-OFF/OFF-ON
dimm-change-state
@/dimm-change-state
Change state ON-OFF/OFF-ON
DIMM@/dimm-dev
Intput to Dev
SETpulse
Set change
dimm-change-state
DIMM'
DONE
DIMM
SET
DONEpulse
Pulse done
DIMM'@/dimm-dev
Output Dev to DIMM
To use the node in your project you should have the cesars/dimmer library installed. Use the “File → Add Library” menu item in XOD IDE if you don’t have it yet. See Using libraries for more info.

C++ implementation

node {
    void evaluate(Context ctx) {
        emitValue<output_DIMMU0027>(ctx, getValue<input_DIMM>(ctx));
        if (!isInputDirty<input_SET>(ctx))return;

        auto dimm = getValue<input_DIMM>(ctx);
        dimm->changeState();
        emitValue<output_DONE>(ctx, 1);
    }
}