public SolversHolder(NodeCollectionStorage<FullConnectedGraph> storage, GeneticSolverBuilder geneticSolverBuilder, BruteForceSolverBuilder bruteForceSolverBuilder, OptionsWindow optionsWindow) { _storage = storage; _geneticSolverBuilder = geneticSolverBuilder; _bruteForceSolverBuilder = bruteForceSolverBuilder; _storage.CollectionChanged += StorageChangedHandler; optionsWindow.Changed += OptionsChangedHandler; InitializeSolvers(); InitializeFlagDictionarys(); }
public MainWindow() { InitializeComponent(); var bruteForceSolverBuilder = new BruteForceSolverBuilder(); var geneticSolverBuilder = new GeneticSolverBuilder(); _optionsWindow = new OptionsWindow(geneticSolverBuilder, bruteForceSolverBuilder); _solversHolder = new SolversHolder(_nodeCollectionStorage,geneticSolverBuilder,bruteForceSolverBuilder,_optionsWindow); _resultsWindow = new ResultsWindow(_solversHolder, _nodeCollectionStorage); _nodeCountWindow = new ConfirmNodeCountWindow(); _nodeCountWindow.ConfirmEvent += NodeCountWindowConfirmed; _render = new Render(MainCanvas, _nodeCollectionStorage, _solversHolder); }