linelogic4

fortunatoa3/linelogic/linelogic4

No description
linelogic4
@/linelogic4
IN1boolean
IN2boolean
IN3boolean
IN4boolean
linelogic4
IN1
IN2
IN3
IN4
OUT
OUTnumber
To use the node in your project you should have the fortunatoa3/linelogic 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

struct State {
};

{{ GENERATED_CODE }}

void evaluate(Context ctx) {
    auto a  = getValue<input_IN1>(ctx);
    auto b  = getValue<input_IN2>(ctx);
    auto c  = getValue<input_IN3>(ctx);
    auto d  = getValue<input_IN4>(ctx);
     if ((a==false) && (b==false) && (c==false) && (d==false)) 
    emitValue<output_OUT>(ctx, 1);
      else if ((a==true) && (b==true) && (c==true) && (d==true)) 
    emitValue<output_OUT>(ctx, 16);
       else if ((a==false) && (b==false) && (c==false) && (d==true)) 
    emitValue<output_OUT>(ctx, 2);
        else if ((a==false) && (b==false) && (c==true) && (d==false)) 
    emitValue<output_OUT>(ctx, 3);
         else if ((a==false) && (b==false) && (c==true) && (d==true)) 
    emitValue<output_OUT>(ctx, 4);
          else if ((a==false) && (b==true) && (c==false) && (d==false)) 
    emitValue<output_OUT>(ctx, 5);
           else if ((a==false) && (b==true) && (c==false) && (d==true)) 
    emitValue<output_OUT>(ctx, 6);
            else if ((a==false) && (b==true) && (c==true) && (d==false)) 
    emitValue<output_OUT>(ctx, 7);
             else if ((a==false) && (b==true) && (c==true) && (d==true)) 
    emitValue<output_OUT>(ctx, 8);
              else if ((a==true) && (b==false) && (c==false) && (d==false)) 
    emitValue<output_OUT>(ctx, 9);
               else if ((a==true) && (b==false) && (c==false) && (d==true)) 
    emitValue<output_OUT>(ctx, 10);
                else if ((a==true) && (b==false) && (c==true) && (d==false)) 
    emitValue<output_OUT>(ctx, 11);
                 else if ((a==true) && (b==false) && (c==true) && (d==true)) 
    emitValue<output_OUT>(ctx, 12);
                  else if ((a==true) && (b==true) && (c==false) && (d==false)) 
    emitValue<output_OUT>(ctx, 13);
                   else if ((a==true) && (b==true) && (c==false) && (d==true)) 
    emitValue<output_OUT>(ctx, 14);
                    else if ((a==true) && (b==true) && (c==true) && (d==false)) 
    emitValue<output_OUT>(ctx, 15);
}