public bool recognizeCircuit(CircuitParser.CircuitParser parser) { if (debug) { Console.WriteLine("========== Circuit Parsing Has Begun! =========="); } valid = false; // Determine the circuit structure and trigger event for feedback mechanisms valid = (parser.SuccessfullyParse(sketch)); if (!valid) { if (debug) { Console.WriteLine("The circuit parser could not parse the circuit."); } return(false); } CircuitSimLib.Circuit circuit = createCircuitAndCleanCircuit(parser); valid = parser.checkSubCircuits(circuit); if (!valid) { if (debug) { Console.WriteLine("SimulationManager.makeCircuit() failed."); } return(false); } return(valid); }
/// <summary> /// Updates SimulationManager, sets the sketchPanel's circuit, and creates the clean circuit. /// </summary> private CircuitSimLib.Circuit createCircuitAndCleanCircuit(CircuitParser.CircuitParser parser) { CircuitSimLib.Circuit circuit = createCircuit(parser); sketchPanel.Circuit = circuit; cleanCircuit = new CleanCircuit(ref sketchPanel, false); return(circuit); }