public GenerateTestCase(ICurrentSettingsHolder currentSettingsHolder, IMazeGenerationFactory generationFactory, IMazeValidator validator, ICurrentMazeHolder currentMazeHolder) { _currentSettingsHolder = currentSettingsHolder; _generationFactory = generationFactory; _validator = validator; _currentMazeHolder = currentMazeHolder; }
public void Init( IMazeGenerationFactory generationFactory, ICurrentSettingsHolder currentSettingsHolder, IMazeValidator validator, ICurrentMazeHolder currentMazeHolder, ISceneLoader sceneLoader, IMazeNeedsGenerating mazeNeedsGenerating, IGenerateTestCase generateTestCase, IResourceLoader resourceLoader, IUiModeSwitcher uiModeSwitcher, ITimeRecorder timeRecorder) { _generationFactory = generationFactory; _currentSettingsHolder = currentSettingsHolder; _validator = validator; _currentMazeHolder = currentMazeHolder; _sceneLoader = sceneLoader; _resourceLoader = resourceLoader; _mazeNeedsGenerating = mazeNeedsGenerating; _uiModeSwitcher = uiModeSwitcher; _timeRecorder = timeRecorder; }
public ExperimentRunner(IMazeGenerationFactory mazeGenerationFactory, IArrayHelper arrayHelper, IOutputWriter outputWriter, IDirectionsFlagParser directionsFlagParser) { _mazeGenerationFactory = mazeGenerationFactory; _arrayHelper = arrayHelper; _outputWriter = outputWriter; _directionsFlagParser = directionsFlagParser; Settings1 = new MazeGenerationSettings { Algorithm = Algorithm.BinaryTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 } }; Settings2 = new MazeGenerationSettings { Algorithm = Algorithm.BinaryTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 } }; Settings3 = new MazeGenerationSettings { Algorithm = Algorithm.RecursiveBacktrackerAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 } }; Settings4 = new MazeGenerationSettings { Algorithm = Algorithm.RecursiveBacktrackerAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 } }; Settings5 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest } }; Settings6 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest } }; Settings7 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Random } }; Settings8 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Random } }; Settings9 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest, GrowingTreeStrategy.Newest, GrowingTreeStrategy.Newest, GrowingTreeStrategy.RandomOldest, GrowingTreeStrategy.Middle } }; Settings10 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest, GrowingTreeStrategy.Newest, GrowingTreeStrategy.Newest, GrowingTreeStrategy.RandomOldest, GrowingTreeStrategy.Middle } }; Settings11 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = true, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest, GrowingTreeStrategy.Oldest } }; Settings12 = new GrowingTreeSettings { Algorithm = Algorithm.GrowingTreeAlgorithm, AgentType = AgentType.None, DoorsAtEdge = false, ExtraWalls = WallCarverOption.Random, Option = MazeType.DirectedMaze, Size = new MazeSize { X = 25, Y = 25, Z = 25 }, Strategies = new List <GrowingTreeStrategy> { GrowingTreeStrategy.Newest, GrowingTreeStrategy.Oldest } }; }