namespace StoneRed.LogicSimulator.Simulation; /// /// Defines the types of logic gates available in the circuit simulator. /// public enum GateKind : byte { /// /// An input gate that can have its value set externally via . /// Used as circuit inputs or constant values. /// Source, /// /// A NOT gate that inverts its input (0 → 1, 1 → 0). /// Not, /// /// A 2-input AND gate. Output is 1 only when both inputs are 1. /// And2, /// /// A 2-input OR gate. Output is 1 when at least one input is 1. /// Or2, /// /// A buffer gate that passes its input directly to the output. /// Used for signal routing or as macro gate input pins. /// Buffer, /// /// A sink gate that receives input but produces no useful output. /// Used as circuit outputs or macro gate output pins. /// Sink, /// /// A Look-Up Table gate implementing arbitrary combinational logic via a truth table. /// Created using instead of . /// Lut, }