Showing preview only (6,646K chars total). Download the full file or copy to clipboard to get everything.
Repository: davechurchill/ualbertabot
Branch: master
Commit: 558899d87934
Files: 639
Total size: 6.2 MB
Directory structure:
gitextract_8ijeqeyy/
├── .gitignore
├── BOSS/
│ ├── .gitignore
│ ├── Makefile
│ ├── Qt/
│ │ ├── BOSSGUI.pro
│ │ ├── main.cpp
│ │ ├── mainwindow.cpp
│ │ ├── mainwindow.h
│ │ └── mainwindow.ui
│ ├── VisualStudio/
│ │ ├── BOSS.sln
│ │ ├── BOSS.vcxproj
│ │ ├── BOSS.vcxproj.filters
│ │ ├── BOSS_combatsearch.vcxproj
│ │ ├── BOSS_main.psess
│ │ ├── BOSS_main.vcxproj
│ │ └── BOSS_main.vcxproj.filters
│ ├── bin/
│ │ ├── buildorders/
│ │ │ ├── Protoss_DarkTemplarRush.txt
│ │ │ ├── Protoss_DragoonRange.txt
│ │ │ ├── Terran_TankPush.txt
│ │ │ ├── Zerg_2HatchHydra.txt
│ │ │ └── Zerg_3HatchMuta.txt
│ │ └── images/
│ │ ├── command_icons/
│ │ │ └── fix.bat
│ │ └── units/
│ │ └── fix.bat
│ ├── emscripten/
│ │ ├── BOSS.html
│ │ ├── BOSS2.html
│ │ ├── config.html
│ │ └── config.txt
│ ├── lib/
│ │ ├── SDL2.lib
│ │ ├── SDL2_image.lib
│ │ └── opengl32.lib
│ ├── make_windows.bat
│ └── source/
│ ├── ActionInProgress.cpp
│ ├── ActionInProgress.h
│ ├── ActionSet.cpp
│ ├── ActionSet.h
│ ├── ActionType.cpp
│ ├── ActionType.h
│ ├── ActionTypeData.cpp
│ ├── ActionTypeData.h
│ ├── Array.hpp
│ ├── BOSS.cpp
│ ├── BOSS.h
│ ├── BOSSAssert.cpp
│ ├── BOSSAssert.h
│ ├── BOSSException.cpp
│ ├── BOSSException.h
│ ├── BOSSExperiments.cpp
│ ├── BOSSExperiments.h
│ ├── BOSSLogger.cpp
│ ├── BOSSLogger.h
│ ├── BOSSParameters.cpp
│ ├── BOSSParameters.h
│ ├── BOSSPlotBuildOrders.cpp
│ ├── BOSSPlotBuildOrders.h
│ ├── BOSS_main.cpp
│ ├── BaseTypes.h
│ ├── BuildOrder.cpp
│ ├── BuildOrder.h
│ ├── BuildOrderPlot.cpp
│ ├── BuildOrderPlot.h
│ ├── BuildOrderSearchGoal.cpp
│ ├── BuildOrderSearchGoal.h
│ ├── BuildOrderTester.cpp
│ ├── BuildOrderTester.h
│ ├── BuildingData.cpp
│ ├── BuildingData.h
│ ├── CImg/
│ │ └── CImg.h
│ ├── CombatSearch.cpp
│ ├── CombatSearch.h
│ ├── CombatSearchExperiment.cpp
│ ├── CombatSearchExperiment.h
│ ├── CombatSearchParameters.cpp
│ ├── CombatSearchParameters.h
│ ├── CombatSearchResults.cpp
│ ├── CombatSearchResults.h
│ ├── CombatSearch_BestResponse.cpp
│ ├── CombatSearch_BestResponse.h
│ ├── CombatSearch_BestResponseData.cpp
│ ├── CombatSearch_BestResponseData.h
│ ├── CombatSearch_Bucket.cpp
│ ├── CombatSearch_Bucket.h
│ ├── CombatSearch_BucketData.cpp
│ ├── CombatSearch_BucketData.h
│ ├── CombatSearch_Integral.cpp
│ ├── CombatSearch_Integral.h
│ ├── CombatSearch_IntegralData.cpp
│ ├── CombatSearch_IntegralData.h
│ ├── Common.h
│ ├── Constants.cpp
│ ├── Constants.h
│ ├── DFBB_BuildOrderSearchParameters.cpp
│ ├── DFBB_BuildOrderSearchParameters.h
│ ├── DFBB_BuildOrderSearchResults.cpp
│ ├── DFBB_BuildOrderSearchResults.h
│ ├── DFBB_BuildOrderSearchSaveState.cpp
│ ├── DFBB_BuildOrderSearchSaveState.h
│ ├── DFBB_BuildOrderSmartSearch.cpp
│ ├── DFBB_BuildOrderSmartSearch.h
│ ├── DFBB_BuildOrderStackSearch.cpp
│ ├── DFBB_BuildOrderStackSearch.h
│ ├── Eval.cpp
│ ├── Eval.h
│ ├── GameState.cpp
│ ├── GameState.h
│ ├── GraphViz.hpp
│ ├── HatcheryData.cpp
│ ├── HatcheryData.h
│ ├── JSONTools.cpp
│ ├── JSONTools.h
│ ├── NaiveBuildOrderSearch.cpp
│ ├── NaiveBuildOrderSearch.h
│ ├── Position.hpp
│ ├── PrerequisiteSet.cpp
│ ├── PrerequisiteSet.h
│ ├── StarCraftGUI.cpp
│ ├── StarCraftGUI.h
│ ├── Timer.hpp
│ ├── Tools.cpp
│ ├── Tools.h
│ ├── UnitData.cpp
│ ├── UnitData.h
│ ├── deprecated/
│ │ ├── BOSSAssert.cpp
│ │ ├── BOSSAssert.h
│ │ ├── BOSSVisExperiment.cpp
│ │ ├── BOSSVisExperiment.h
│ │ ├── GUI.cpp
│ │ ├── GUI.h
│ │ ├── GUITools.cpp
│ │ ├── GUITools.h
│ │ └── bwapidata/
│ │ ├── README.txt
│ │ └── include/
│ │ ├── AIModule.cpp
│ │ ├── BWAPI/
│ │ │ ├── AIModule.h
│ │ │ ├── Bitmap.h
│ │ │ ├── Bullet.h
│ │ │ ├── BulletType.h
│ │ │ ├── Client/
│ │ │ │ ├── BulletData.h
│ │ │ │ ├── BulletImpl.h
│ │ │ │ ├── Client.h
│ │ │ │ ├── Command.h
│ │ │ │ ├── CommandType.h
│ │ │ │ ├── Event.h
│ │ │ │ ├── ForceData.h
│ │ │ │ ├── ForceImpl.h
│ │ │ │ ├── GameData.h
│ │ │ │ ├── GameImpl.h
│ │ │ │ ├── PlayerData.h
│ │ │ │ ├── PlayerImpl.h
│ │ │ │ ├── Shape.h
│ │ │ │ ├── ShapeType.h
│ │ │ │ ├── UnitCommand.h
│ │ │ │ ├── UnitData.h
│ │ │ │ └── UnitImpl.h
│ │ │ ├── Client.h
│ │ │ ├── Color.h
│ │ │ ├── Constants.h
│ │ │ ├── CoordinateType.h
│ │ │ ├── DamageType.h
│ │ │ ├── Error.h
│ │ │ ├── Event.h
│ │ │ ├── EventType.h
│ │ │ ├── ExplosionType.h
│ │ │ ├── Flag.h
│ │ │ ├── Force.h
│ │ │ ├── Game.h
│ │ │ ├── GameType.h
│ │ │ ├── Input.h
│ │ │ ├── Latency.h
│ │ │ ├── Order.h
│ │ │ ├── Player.h
│ │ │ ├── PlayerType.h
│ │ │ ├── Position.h
│ │ │ ├── Race.h
│ │ │ ├── TechType.h
│ │ │ ├── TilePosition.h
│ │ │ ├── Unit.h
│ │ │ ├── UnitCommand.h
│ │ │ ├── UnitCommandType.h
│ │ │ ├── UnitSizeType.h
│ │ │ ├── UnitType.h
│ │ │ ├── UpgradeType.h
│ │ │ └── WeaponType.h
│ │ ├── BWAPI.cpp
│ │ ├── BWAPI.h
│ │ ├── Bitmap.cpp
│ │ ├── BulletType.cpp
│ │ ├── Color.cpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── DamageType.cpp
│ │ ├── Error.cpp
│ │ ├── Event.cpp
│ │ ├── ExplosionType.cpp
│ │ ├── GameType.cpp
│ │ ├── Order.cpp
│ │ ├── PlayerType.cpp
│ │ ├── Position.cpp
│ │ ├── Race.cpp
│ │ ├── TechType.cpp
│ │ ├── TilePosition.cpp
│ │ ├── UnitCommandType.cpp
│ │ ├── UnitSizeType.cpp
│ │ ├── UnitType.cpp
│ │ ├── UpgradeType.cpp
│ │ ├── Util/
│ │ │ ├── Bitmask.h
│ │ │ ├── Exceptions.cpp
│ │ │ ├── Exceptions.h
│ │ │ ├── FileLogger.cpp
│ │ │ ├── FileLogger.h
│ │ │ ├── Foreach.h
│ │ │ ├── Gnu.h
│ │ │ ├── LogLevel.h
│ │ │ ├── Logger.cpp
│ │ │ ├── Logger.h
│ │ │ ├── RectangleArray.h
│ │ │ ├── RegionQuadTree.h
│ │ │ ├── Strings.cpp
│ │ │ ├── Strings.h
│ │ │ ├── Types.h
│ │ │ ├── sha1.cpp
│ │ │ └── sha1.h
│ │ └── WeaponType.cpp
│ └── rapidjson/
│ ├── document.h
│ ├── filestream.h
│ ├── internal/
│ │ ├── pow10.h
│ │ ├── stack.h
│ │ └── strfunc.h
│ ├── prettywriter.h
│ ├── rapidjson.h
│ ├── reader.h
│ ├── stringbuffer.h
│ └── writer.h
├── License.md
├── README.md
├── SparCraft/
│ ├── .gitignore
│ ├── LINUX_HOW_TO_COMPILE.txt
│ ├── Makefile
│ ├── README.txt
│ ├── VisualStudio/
│ │ ├── SparCraft.sln
│ │ ├── SparCraft.vcxproj
│ │ ├── SparCraft.vcxproj.filters
│ │ ├── SparCraft_main.vcxproj
│ │ ├── SparCraft_main.vcxproj.filters
│ │ ├── bwapidata.vcxproj
│ │ ├── bwapidata.vcxproj.filters
│ │ └── set_environment_variables.bat
│ ├── asset/
│ │ └── images/
│ │ ├── command_icons/
│ │ │ └── fix.bat
│ │ └── units/
│ │ └── fix.bat
│ ├── bin/
│ │ └── .gitkeep
│ ├── bwapidata/
│ │ ├── README.txt
│ │ └── include/
│ │ ├── AIModule.cpp
│ │ ├── BWAPI/
│ │ │ ├── AIModule.h
│ │ │ ├── Bitmap.h
│ │ │ ├── Bullet.h
│ │ │ ├── BulletType.h
│ │ │ ├── Client/
│ │ │ │ ├── BulletData.h
│ │ │ │ ├── BulletImpl.h
│ │ │ │ ├── Client.h
│ │ │ │ ├── Command.h
│ │ │ │ ├── CommandType.h
│ │ │ │ ├── Event.h
│ │ │ │ ├── ForceData.h
│ │ │ │ ├── ForceImpl.h
│ │ │ │ ├── GameData.h
│ │ │ │ ├── GameImpl.h
│ │ │ │ ├── PlayerData.h
│ │ │ │ ├── PlayerImpl.h
│ │ │ │ ├── Shape.h
│ │ │ │ ├── ShapeType.h
│ │ │ │ ├── UnitCommand.h
│ │ │ │ ├── UnitData.h
│ │ │ │ └── UnitImpl.h
│ │ │ ├── Client.h
│ │ │ ├── Color.h
│ │ │ ├── Constants.h
│ │ │ ├── CoordinateType.h
│ │ │ ├── DamageType.h
│ │ │ ├── Error.h
│ │ │ ├── Event.h
│ │ │ ├── EventType.h
│ │ │ ├── ExplosionType.h
│ │ │ ├── Flag.h
│ │ │ ├── Force.h
│ │ │ ├── Game.h
│ │ │ ├── GameType.h
│ │ │ ├── Input.h
│ │ │ ├── Latency.h
│ │ │ ├── Order.h
│ │ │ ├── Player.h
│ │ │ ├── PlayerType.h
│ │ │ ├── Position.h
│ │ │ ├── Race.h
│ │ │ ├── TechType.h
│ │ │ ├── TilePosition.h
│ │ │ ├── Unit.h
│ │ │ ├── UnitCommand.h
│ │ │ ├── UnitCommandType.h
│ │ │ ├── UnitSizeType.h
│ │ │ ├── UnitType.h
│ │ │ ├── UpgradeType.h
│ │ │ └── WeaponType.h
│ │ ├── BWAPI.cpp
│ │ ├── BWAPI.h
│ │ ├── Bitmap.cpp
│ │ ├── BulletType.cpp
│ │ ├── Color.cpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── DamageType.cpp
│ │ ├── Error.cpp
│ │ ├── Event.cpp
│ │ ├── ExplosionType.cpp
│ │ ├── GameType.cpp
│ │ ├── Order.cpp
│ │ ├── PlayerType.cpp
│ │ ├── Position.cpp
│ │ ├── Race.cpp
│ │ ├── TechType.cpp
│ │ ├── TilePosition.cpp
│ │ ├── UnitCommandType.cpp
│ │ ├── UnitSizeType.cpp
│ │ ├── UnitType.cpp
│ │ ├── UpgradeType.cpp
│ │ ├── Util/
│ │ │ ├── Bitmask.h
│ │ │ ├── Exceptions.cpp
│ │ │ ├── Exceptions.h
│ │ │ ├── FileLogger.cpp
│ │ │ ├── FileLogger.h
│ │ │ ├── Foreach.h
│ │ │ ├── Gnu.h
│ │ │ ├── LogLevel.h
│ │ │ ├── Logger.cpp
│ │ │ ├── Logger.h
│ │ │ ├── RectangleArray.h
│ │ │ ├── RegionQuadTree.h
│ │ │ ├── Strings.cpp
│ │ │ ├── Strings.h
│ │ │ ├── Types.h
│ │ │ ├── sha1.cpp
│ │ │ └── sha1.h
│ │ └── WeaponType.cpp
│ ├── external_binaries/
│ │ └── lib/
│ │ ├── SDL.lib
│ │ ├── SDL_gfx.lib
│ │ ├── SDL_image.lib
│ │ ├── SDLmain.lib
│ │ └── opengl32.lib
│ ├── lib/
│ │ ├── SDL2.lib
│ │ ├── SDL2_image.lib
│ │ └── opengl32.lib
│ ├── sample_experiment/
│ │ ├── sample_exp.txt
│ │ ├── sample_exp_linux.txt
│ │ ├── sample_map_files/
│ │ │ ├── destination.txt
│ │ │ └── map_file_format.txt
│ │ ├── sample_results/
│ │ │ ├── sample_exp_2013-03-22_17-49-13_config.txt
│ │ │ ├── sample_exp_2013-03-22_17-49-13_results_raw.txt
│ │ │ └── sample_exp_2013-03-22_17-49-13_results_summary.txt
│ │ └── sample_state.txt
│ ├── source/
│ │ ├── Action.cpp
│ │ ├── Action.h
│ │ ├── AllPlayers.cpp
│ │ ├── AllPlayers.h
│ │ ├── AlphaBetaMove.cpp
│ │ ├── AlphaBetaMove.h
│ │ ├── AlphaBetaSearch.cpp
│ │ ├── AlphaBetaSearch.h
│ │ ├── AlphaBetaSearchParameters.hpp
│ │ ├── AlphaBetaSearchResults.hpp
│ │ ├── AnimationFrameData.cpp
│ │ ├── AnimationFrameData.h
│ │ ├── Array.hpp
│ │ ├── BaseTypes.hpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── ConfigFileGenerator.h
│ │ ├── EnumData.cpp
│ │ ├── EnumData.h
│ │ ├── Game.cpp
│ │ ├── Game.h
│ │ ├── GameState.cpp
│ │ ├── GameState.h
│ │ ├── GraphViz.hpp
│ │ ├── Hash.cpp
│ │ ├── Hash.h
│ │ ├── Logger.cpp
│ │ ├── Logger.h
│ │ ├── Map.hpp
│ │ ├── MoveArray.cpp
│ │ ├── MoveArray.h
│ │ ├── MoveSet.hpp
│ │ ├── Player.cpp
│ │ ├── Player.h
│ │ ├── PlayerProperties.cpp
│ │ ├── PlayerProperties.h
│ │ ├── Player_AlphaBeta.cpp
│ │ ├── Player_AlphaBeta.h
│ │ ├── Player_AttackClosest.cpp
│ │ ├── Player_AttackClosest.h
│ │ ├── Player_AttackDPS.cpp
│ │ ├── Player_AttackDPS.h
│ │ ├── Player_AttackWeakest.cpp
│ │ ├── Player_AttackWeakest.h
│ │ ├── Player_Cluster.cpp
│ │ ├── Player_Cluster.h
│ │ ├── Player_Kiter.cpp
│ │ ├── Player_Kiter.h
│ │ ├── Player_KiterDPS.cpp
│ │ ├── Player_KiterDPS.h
│ │ ├── Player_Kiter_NOKDPS.cpp
│ │ ├── Player_Kiter_NOKDPS.h
│ │ ├── Player_NOKDPS.cpp
│ │ ├── Player_NOKDPS.h
│ │ ├── Player_PortfolioGreedySearch.cpp
│ │ ├── Player_PortfolioGreedySearch.h
│ │ ├── Player_Random.cpp
│ │ ├── Player_Random.h
│ │ ├── Player_UCT.cpp
│ │ ├── Player_UCT.h
│ │ ├── PortfolioGreedySearch.cpp
│ │ ├── PortfolioGreedySearch.h
│ │ ├── Position.hpp
│ │ ├── Random.hpp
│ │ ├── SparCraft.cpp
│ │ ├── SparCraft.h
│ │ ├── SparCraftAssert.cpp
│ │ ├── SparCraftAssert.h
│ │ ├── SparCraftException.cpp
│ │ ├── SparCraftException.h
│ │ ├── Timer.cpp
│ │ ├── Timer.h
│ │ ├── TranspositionTable.cpp
│ │ ├── TranspositionTable.h
│ │ ├── TutorialCode.cpp
│ │ ├── UCTMemoryPool.hpp
│ │ ├── UCTNode.h
│ │ ├── UCTSearch.cpp
│ │ ├── UCTSearch.h
│ │ ├── UCTSearchParameters.hpp
│ │ ├── UCTSearchResults.hpp
│ │ ├── Unit.cpp
│ │ ├── Unit.h
│ │ ├── UnitAction.hpp
│ │ ├── UnitProperties.cpp
│ │ ├── UnitProperties.h
│ │ ├── UnitScriptData.cpp
│ │ ├── UnitScriptData.h
│ │ ├── UnitType.hpp
│ │ ├── WeaponProperties.cpp
│ │ ├── WeaponProperties.h
│ │ ├── glext/
│ │ │ ├── glext.h
│ │ │ └── wglext.h
│ │ ├── glfont2/
│ │ │ ├── glfont.cc
│ │ │ └── glfont.h
│ │ ├── gui/
│ │ │ ├── GUI.cpp
│ │ │ ├── GUI.h
│ │ │ ├── GUIGame.cpp
│ │ │ ├── GUIGame.h
│ │ │ ├── GUITools.cpp
│ │ │ └── GUITools.h
│ │ └── main/
│ │ ├── SearchExperiment.cpp
│ │ ├── SearchExperiment.h
│ │ └── main.cpp
│ └── starcraft_images/
│ └── fonts/
│ └── couriernew.glf
└── UAlbertaBot/
├── .gitignore
├── Source/
│ ├── AutoObserver.cpp
│ ├── AutoObserver.h
│ ├── BOSSManager.cpp
│ ├── BOSSManager.h
│ ├── BaseLocation.cpp
│ ├── BaseLocation.h
│ ├── BaseLocationManager.cpp
│ ├── BaseLocationManager.h
│ ├── BuildOrder.cpp
│ ├── BuildOrder.h
│ ├── BuildOrderQueue.cpp
│ ├── BuildOrderQueue.h
│ ├── BuildingData.cpp
│ ├── BuildingData.h
│ ├── BuildingManager.cpp
│ ├── BuildingManager.h
│ ├── BuildingPlacerManager.cpp
│ ├── BuildingPlacerManager.h
│ ├── CombatCommander.cpp
│ ├── CombatCommander.h
│ ├── CombatSimulation.cpp
│ ├── CombatSimulation.h
│ ├── Common.cpp
│ ├── Common.h
│ ├── Config.cpp
│ ├── Config.h
│ ├── DetectorManager.cpp
│ ├── DetectorManager.h
│ ├── DistanceMap.cpp
│ ├── DistanceMap.h
│ ├── GameCommander.cpp
│ ├── GameCommander.h
│ ├── Global.cpp
│ ├── Global.h
│ ├── Grid.hpp
│ ├── InformationManager.cpp
│ ├── InformationManager.h
│ ├── JSONTools.cpp
│ ├── JSONTools.h
│ ├── Logger.cpp
│ ├── Logger.h
│ ├── MapTools.cpp
│ ├── MapTools.h
│ ├── MedicManager.cpp
│ ├── MedicManager.h
│ ├── MeleeManager.cpp
│ ├── MeleeManager.h
│ ├── MetaType.cpp
│ ├── MetaType.h
│ ├── Micro.cpp
│ ├── Micro.h
│ ├── MicroManager.cpp
│ ├── MicroManager.h
│ ├── ParseUtils.cpp
│ ├── ParseUtils.h
│ ├── ProductionManager.cpp
│ ├── ProductionManager.h
│ ├── Profiler.hpp
│ ├── RangedManager.cpp
│ ├── RangedManager.h
│ ├── ScoutManager.cpp
│ ├── ScoutManager.h
│ ├── Squad.cpp
│ ├── Squad.h
│ ├── SquadData.cpp
│ ├── SquadData.h
│ ├── SquadOrder.h
│ ├── StarDraftMap.hpp
│ ├── StrategyManager.cpp
│ ├── StrategyManager.h
│ ├── TankManager.cpp
│ ├── TankManager.h
│ ├── TimerManager.cpp
│ ├── TimerManager.h
│ ├── TransportManager.cpp
│ ├── TransportManager.h
│ ├── UABAssert.cpp
│ ├── UABAssert.h
│ ├── UAlbertaBotModule.cpp
│ ├── UAlbertaBotModule.h
│ ├── UnitData.cpp
│ ├── UnitData.h
│ ├── UnitInfoManager.cpp
│ ├── UnitInfoManager.h
│ ├── UnitUtil.cpp
│ ├── UnitUtil.h
│ ├── WorkerData.cpp
│ ├── WorkerData.h
│ ├── WorkerManager.cpp
│ ├── WorkerManager.h
│ ├── main.cpp
│ ├── rapidjson/
│ │ ├── allocators.h
│ │ ├── document.h
│ │ ├── encodedstream.h
│ │ ├── encodings.h
│ │ ├── error/
│ │ │ ├── en.h
│ │ │ └── error.h
│ │ ├── filereadstream.h
│ │ ├── filewritestream.h
│ │ ├── internal/
│ │ │ ├── biginteger.h
│ │ │ ├── diyfp.h
│ │ │ ├── dtoa.h
│ │ │ ├── ieee754.h
│ │ │ ├── itoa.h
│ │ │ ├── meta.h
│ │ │ ├── pow10.h
│ │ │ ├── stack.h
│ │ │ ├── strfunc.h
│ │ │ └── strtod.h
│ │ ├── memorybuffer.h
│ │ ├── memorystream.h
│ │ ├── msinttypes/
│ │ │ ├── inttypes.h
│ │ │ └── stdint.h
│ │ ├── pointer.h
│ │ ├── prettywriter.h
│ │ ├── rapidjson.h
│ │ ├── reader.h
│ │ ├── stringbuffer.h
│ │ └── writer.h
│ ├── research/
│ │ ├── CombatData.cpp
│ │ ├── CombatData.h
│ │ ├── GameHistory.hpp
│ │ ├── HardCodedInfo.cpp
│ │ ├── HardCodedInfo.h
│ │ ├── MapGrid.cpp
│ │ ├── MapGrid.h
│ │ ├── combatpredictor/
│ │ │ ├── CombatPredictor.cpp
│ │ │ └── CombatPredictor.h
│ │ ├── hlsearch/
│ │ │ ├── HLCombatCommander.cpp
│ │ │ ├── HLCombatCommander.h
│ │ │ ├── HLManager.cpp
│ │ │ ├── HLManager.h
│ │ │ ├── HLSearch.cpp
│ │ │ ├── HLSearch.h
│ │ │ ├── HLSquad.cpp
│ │ │ ├── HLSquad.h
│ │ │ ├── HLState.cpp
│ │ │ ├── HLState.h
│ │ │ ├── HLStatistics.cpp
│ │ │ ├── HLStatistics.h
│ │ │ ├── HLStrategyManager.cpp
│ │ │ ├── HLStrategyManager.h
│ │ │ ├── HLTranspositionTable.cpp
│ │ │ ├── HLTranspositionTable.h
│ │ │ ├── HLUnitData.cpp
│ │ │ └── HLUnitData.h
│ │ ├── sparcraft/
│ │ │ ├── SparCraftManager.cpp
│ │ │ ├── SparCraftManager.h
│ │ │ ├── UnitCommandData.cpp
│ │ │ ├── UnitCommandData.h
│ │ │ ├── UnitCommandManager.cpp
│ │ │ └── UnitCommandManager.h
│ │ └── visualizer/
│ │ ├── Display.cpp
│ │ ├── Display.h
│ │ ├── EnhancedInterface.hpp
│ │ ├── ReplayVisualizer.cpp
│ │ ├── ReplayVisualizer.h
│ │ ├── Visualizer.cpp
│ │ └── Visualizer.h
│ └── stardraft/
│ ├── BaseBorderFinder.hpp
│ ├── Grid2D.hpp
│ ├── StarDraft.h
│ └── StarDraftMap.hpp
├── VisualStudio/
│ ├── StarterBot.vcxproj
│ ├── StarterBot.vcxproj.filters
│ ├── UAlbertaBot.sln
│ ├── UAlbertaBot.vcxproj
│ └── UAlbertaBot.vcxproj.filters
├── bin/
│ └── UAlbertaBot_Config.txt
├── starterbot/
│ ├── Grid.hpp
│ ├── MapTools.cpp
│ ├── MapTools.h
│ ├── StarterBot.cpp
│ ├── StarterBot.h
│ ├── Tools.cpp
│ ├── Tools.h
│ └── main.cpp
└── uml/
└── ualbertabot.dia
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
*.sdf
*.suo
*.opensdf
*.user
*.dll
*.exe
*.o
UAlbertaBot/UAB_ErrorLog.txt
UAlbertaBot/UAB_ErrorLog.txt
*.pd_
UAlbertaBot/UAB_ErrorLog.txt
BOSS/VisualStudio/BOSS.VC.db
*.bwta
*.db
*.ipch
*.opendb
*.db-shm
*.db-wal
*.json
*.zip
*.iobj
*.ipdb
*.map
*.pdb
*.ilk
================================================
FILE: BOSS/.gitignore
================================================
VisualStudio/Release
VisualStudio/Debug
VisualStudio/ipch
VisualStudio/*.txt
VisualStudio/*.vsp
emscripten/*.js
emscripten/*.mem
emscripten/*.data
bin/*.exe
bin/*.pdb
bin/*.ilk
bin/*.txt
bin/*.map
bin/*.bsc
bin/*.lib
bin/*.gpl
bin/*.zip
bin/qtdeploy/*
bin/deploy/*
bin/gnuplot/*
source/*.o
qtgui/*
build-BOSSGUI-Desktop_Qt_5_6_0_MSVC2013_32bit-Release
================================================
FILE: BOSS/Makefile
================================================
SHELL=C:/Windows/System32/cmd.exe
CC=em++
CFLAGS=-O3 -Wno-tautological-constant-out-of-range-compare
LDFLAGS=-O3 -s ALLOW_MEMORY_GROWTH=1 --llvm-lto 1 -s DISABLE_EXCEPTION_CATCHING=0
INCLUDES=-Isource/rapidjson -Isource -Isource/bwapidata/include
SOURCES=$(wildcard source/*.cpp source/bwapidata/include/*.cpp)
OBJECTS=$(SOURCES:.cpp=.o)
HTMLFLAGS=-s EXPORTED_FUNCTIONS="['_main', '_ResetExperiment']" --preload-file asset -s LEGACY_GL_EMULATION=1
all:emscripten/BOSS.html
emscripten/BOSS.html:$(OBJECTS) Makefile
$(CC) $(OBJECTS) -o $@ $(LDFLAGS) $(HTMLFLAGS)
.cpp.o:
$(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
clean:
rm $(OBJECTS)
================================================
FILE: BOSS/Qt/BOSSGUI.pro
================================================
#-------------------------------------------------
#
# Project created by QtCreator 2016-04-20T14:07:30
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = BOSSGUI
TEMPLATE = app
INCLUDEPATH += C:\\libraries\\BWAPI_412\\include\\
INCLUDEPATH += d:\\ualbertabot\\BOSS\\source\\
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
win32:RC_ICONS += Protoss_Probe.ico
LIBS += -L$$PWD/../bin/ -lBOSS
LIBS += -LC:/libraries/BWAPI_412/lib/ -lBWAPI
DESTDIR = $$PWD/../../bin/
================================================
FILE: BOSS/Qt/main.cpp
================================================
#include "mainwindow.h"
#include <QApplication>
#include "BOSS.h"
int main(int argc, char *argv[])
{
srand(time(NULL));
QCoreApplication::addLibraryPath("./");
BOSS::init();
QApplication a(argc, argv);
MainWindow w;
w.setWindowTitle("StarCraft Build-Order Visualization");
w.show();
return a.exec();
}
================================================
FILE: BOSS/Qt/mainwindow.cpp
================================================
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
#include <QFileDialog>
#include "BOSS.h"
#include "BuildOrderPlot.h"
#include "BOSSException.h"
std::map<std::string, QIcon> iconMap;
std::map<std::string, QListWidgetItem> itemMap;
std::map<std::string, QImage> imageMap;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
for (size_t r(0); r < BOSS::Races::NUM_RACES; ++r)
{
const std::vector<BOSS::ActionType> & actions = BOSS::ActionTypes::GetAllActionTypes((r));
for (size_t a(0); a < actions.size(); ++a)
{
const std::string & name = actions[a].getName();
QString imageFile = getImageName(actions[a]);
iconMap[name] = QIcon(imageFile);
itemMap[name] = QListWidgetItem(iconMap[name], QString::fromStdString(name));
imageMap[name] = QImage(imageFile);
}
}
ui->setupUi(this);
ui->raceComboBox->addItem(iconMap["Protoss_Probe"], "Protoss");
ui->raceComboBox->addItem(iconMap["Terran_SCV"], "Terran");
ui->raceComboBox->addItem(iconMap["Zerg_Drone"], "Zerg");
ui->armyValueGraph->setToolTip("Visualizes sum of resouces spent on fighting units over time.\n\nWorkers are not counted.");
ui->resourceGraphButton->setToolTip("Visualizes resource totals over time.\n\nWill create separate graphs for minerals and gas collected.\n\nAppends _minerals and _gas to file chosen.");
ui->visualizeButton->setToolTip("Visualizes build order concurrency and timings.");
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_deleteItemsButton_clicked()
{
qDeleteAll(ui->buildOrderList->selectedItems());
}
void MainWindow::on_addToBuildOrderButton_clicked()
{
const QString & actionName = ui->actionTypeComboBox->currentText();
addToList(ui->buildOrderList, actionName.toStdString());
//ui->buildOrderList->addItem();
ui->buildOrderList->scrollToBottom();
}
void MainWindow::on_addToStateButton_clicked()
{
const QString & actionName = ui->actionTypeComboBox->currentText();
addToList(ui->initialStateList, actionName.toStdString());
//ui->buildOrderList->addItem();
ui->initialStateList->scrollToBottom();
}
void MainWindow::setInitialState(const std::string & raceString)
{
BOSS::RaceID race = BOSS::Races::GetRaceID(raceString);
ui->initialStateList->clear();
// set the initial state items to the default starting state
addToList(ui->initialStateList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->initialStateList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->initialStateList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->initialStateList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->initialStateList, BOSS::ActionTypes::GetResourceDepot(race));
if (race == BOSS::Races::Zerg)
{
addToList(ui->initialStateList, BOSS::ActionTypes::GetSupplyProvider(race));
}
}
void MainWindow::setInitialBuildOrder(const std::string & raceString)
{
BOSS::RaceID race = BOSS::Races::GetRaceID(raceString);
ui->buildOrderList->clear();
// add a sample build order to the build order list
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetSupplyProvider(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
addToList(ui->buildOrderList, BOSS::ActionTypes::GetWorker(race));
if (race == BOSS::Races::Protoss)
{
addToList(ui->buildOrderList, BOSS::ActionTypes::GetActionType("Protoss_Gateway"));
}
else if (race == BOSS::Races::Terran)
{
addToList(ui->buildOrderList, BOSS::ActionTypes::GetActionType("Terran_Barracks"));
}
else if (race == BOSS::Races::Zerg)
{
addToList(ui->buildOrderList, BOSS::ActionTypes::GetActionType("Zerg_Spawning_Pool"));
}
}
void MainWindow::on_raceComboBox_currentIndexChanged(const QString &arg1)
{
std::string raceString = arg1.toStdString();;
BOSS::RaceID race = BOSS::Races::GetRaceID(raceString);
ui->actionTypeComboBox->clear();
ui->initialStateList->clear();
ui->mineralsSpinBox->setValue(50);
ui->gasSpinBox->setValue(0);
setInitialState(raceString);
setInitialBuildOrder(raceString);
const auto & actionTypes = BOSS::ActionTypes::GetAllActionTypes(race);
for (const auto & type : actionTypes)
{
if (type.getName() == "Zerg_Larva") continue;
if (type.getName() == "Protoss_Dark_Archon") continue;
if (type.getName() == "Protoss_Archon") continue;
ui->actionTypeComboBox->addItem(iconMap[type.getName()], QString::fromStdString(type.getName()));
}
}
void MainWindow::addToList(QListWidget * list, const BOSS::ActionType & type)
{
list->insertItem(list->count(), new QListWidgetItem(itemMap[type.getName()]));
}
void MainWindow::addToList(QListWidget * list, const std::string & typeName)
{
list->insertItem(list->count(), new QListWidgetItem(itemMap[typeName]));
}
void MainWindow::on_clearAllItems_clicked()
{
ui->buildOrderList->clear();
}
void MainWindow::on_deleteItemsButtonState_clicked()
{
qDeleteAll(ui->initialStateList->selectedItems());
}
void MainWindow::on_clearAllItemsState_clicked()
{
ui->initialStateList->clear();
}
void MainWindow::on_actionTypeComboBox_currentIndexChanged(const QString &arg1)
{
if (arg1.length() == 0)
{
return;
}
BOSS::ActionType type = BOSS::ActionTypes::GetActionType(arg1.toStdString());
std::stringstream minerals, gas, buildTime, builder, hpShield;
minerals << type.mineralPrice()/1000;
gas << type.gasPrice()/1000;
buildTime << type.buildTime();
builder << type.whatBuildsActionType().getName();
if (type.isUnit())
{
hpShield << type.getUnitType().maxHitPoints() << " / " << type.getUnitType().maxShields();
}
else
{
hpShield << "N/A";
}
ui->itemInformationLabel->setText(arg1);
ui->mineralCost->setText(QString::fromStdString(minerals.str()));
ui->gasCost->setText(QString::fromStdString(gas.str()));
ui->buildTime->setText(QString::fromStdString(buildTime.str()));
ui->builder->setText(QString::fromStdString(builder.str()));
ui->hpShield->setText(QString::fromStdString(hpShield.str()));
ui->imageLabel->setPixmap(QPixmap::fromImage(imageMap[type.getName()]));
}
BOSS::GameState MainWindow::getState()
{
BOSS::GameState state(BOSS::Races::GetRaceID(ui->raceComboBox->currentText().toStdString()));
state.setMinerals(ui->mineralsSpinBox->value());
state.setGas(ui->gasSpinBox->value());
for(int row = 0; row < ui->initialStateList->count(); row++)
{
state.addCompletedAction(BOSS::ActionTypes::GetActionType(ui->initialStateList->item(row)->text().toStdString()));
}
return state;
}
BOSS::BuildOrder MainWindow::getBuildOrder()
{
BOSS::BuildOrder buildOrder;
for(int row = 0; row < ui->buildOrderList->count(); row++)
{
buildOrder.add(BOSS::ActionTypes::GetActionType(ui->buildOrderList->item(row)->text().toStdString()));
}
return buildOrder;
}
QString MainWindow::getImageName(const BOSS::ActionType & type)
{
std::string filename = "images/";
if (type.isUnit())
{
filename += "units/" + type.getName() + ".png";
}
else if (type.isUpgrade() || type.isTech())
{
filename += "command_icons/" + type.getName() + ".png";
}
return QString::fromStdString(filename);
}
void MainWindow::on_visualizeButton_clicked()
{
generatePlot(PlotTypes::BuildOrderPlot);
}
void MainWindow::on_resourceGraphButton_clicked()
{
generatePlot(PlotTypes::ResourcePlot);
}
void MainWindow::on_armyValueGraph_clicked()
{
generatePlot(PlotTypes::ArmyPlot);
}
void MainWindow::generatePlot(int plotType)
{
try
{
BOSS::GameState state = getState();
BOSS::BuildOrder buildOrder = getBuildOrder();
if (buildOrder.size() == 0)
{
QMessageBox::information(this, tr("BOSS Visualization Error"), tr("Cannot visualize an empty build order. Try adding some units.") );
return;
}
if (buildOrder.isLegalFromState(state))
{
QString file = QFileDialog::getSaveFileName(this, tr("Save Visualization Gnuplot File"), QDir::currentPath(), tr("gnuplot files (*.gpl);;All files (*.*)"));
BOSS::BuildOrderPlot plot(state, buildOrder);
if (plotType == PlotTypes::BuildOrderPlot)
{
plot.writeRectanglePlot(file.toStdString());
}
else if (plotType == PlotTypes::ArmyPlot)
{
plot.writeArmyValuePlot(file.toStdString());
}
else if (plotType == PlotTypes::ResourcePlot)
{
plot.writeResourcePlot(file.toStdString());
}
}
else
{
std::string why = buildOrder.whyIsNotLegalFromState(state);
QMessageBox::information(this, tr("BOSS Visualization Error"), tr(why.c_str()) );
}
}
catch (BOSS::BOSSException e)
{
std::stringstream ss;
ss << "Build-Order Exception Thrown\n\nPlease contact author with error details\n\n" << e.what();
QMessageBox::information(this, "BOSS Visualization Error", ss.str().c_str());
}
}
void MainWindow::on_loadBuildOrderButton_clicked()
{
QString file = QFileDialog::getOpenFileName(this, tr("Load Build-Order File"), QDir::currentPath(), tr("Text Files (*.txt);;All files (*.*)"));
if (file.size() == 0) return;
std::ifstream fin(file.toStdString());
std::string line;
std::string raceString;
// read the first line of the file which should be the race
std::getline(fin, raceString);
BOSS::RaceID race = BOSS::Races::GetRaceID(raceString);
if (race == BOSS::Races::None)
{
QMessageBox::information(this, tr("BOSS Visualization Error"), tr("First line of the build-order file was not a valid race.\n\nIt must be Protoss, Terran, or Zerg.") );
return;
}
size_t lineNum = 1;
std::vector<BOSS::ActionType> types;
// read the remaining lines which each should be one build-order item
while (std::getline(fin, line))
{
// break when we reach a blank line
if (line.size() == 0)
{
break;
}
++lineNum;
if (!BOSS::ActionTypes::TypeExists(line))
{
std::stringstream ss;
ss << "Line " << lineNum << " of the build order file was not a valid Build-Order ActionType.";
QMessageBox::information(this, tr("BOSS Visualization Error"), tr(ss.str().c_str()) );
return;
}
BOSS::ActionType type = BOSS::ActionTypes::GetActionType(line);
if (type.getRace() != race)
{
std::stringstream ss;
ss << "Build order file specifies " << raceString << " race.\n\nLine " << lineNum << ": " << type.getName() << " is not a " << raceString << " unit.";
ss << "\n\nPlease ensure all units are of the same race and try again.";
QMessageBox::information(this, tr("BOSS Visualization Error"), tr(ss.str().c_str()) );
return;
}
types.push_back(type);
}
// we must change the selected race to the race loaded
if (raceString != ui->raceComboBox->currentText().toStdString())
{
for (int i=0; i < ui->raceComboBox->count(); ++i)
{
std::string itemRace = ui->raceComboBox->itemText(i).toStdString();
if (itemRace == raceString)
{
ui->raceComboBox->setCurrentIndex(i);
break;
}
}
}
ui->buildOrderList->clear();
for (const auto & type : types)
{
addToList(ui->buildOrderList, type.getName());
}
fin.close();
ui->buildOrderList->scrollToBottom();
}
void MainWindow::on_saveBuildOrderButton_clicked()
{
QString file = QFileDialog::getSaveFileName(this, tr("Save Build-Order"), QDir::currentPath(), tr("Text Files (*.txt);;All files (*.*)"));
if (file.size() == 0) return;
std::ofstream fout(file.toStdString());
fout << ui->raceComboBox->currentText().toStdString() << "\n";
for(int row = 0; row < ui->buildOrderList->count(); row++)
{
fout << ui->buildOrderList->item(row)->text().toStdString() << "\n";
}
ui->buildOrderList->scrollToBottom();
fout.close();
}
void MainWindow::on_actionAbout_triggered()
{
QMessageBox msgBox(this);
msgBox.setWindowTitle("About");
msgBox.setIconPixmap(QPixmap::fromImage(imageMap["Protoss_Probe"]));
msgBox.setTextFormat(Qt::RichText); //this is what makes the links clickable
msgBox.setText("StarCraft Build-Order Visualizer<br><br>Written by <a href=\"http://webdocs.cs.ualberta.ca/~cdavid/\">David Churchill</a><br><br>Source and details available on <a href=\"https://github.com/davechurchill/ualbertabot\">GitHub</a><br><br>To view output graphs, use <a href=\"http://www.gnuplot.info/\">gnuplot</a>");
msgBox.exec();
}
void MainWindow::on_loadStateButton_clicked()
{
QString file = QFileDialog::getOpenFileName(this, tr("Load State File"), QDir::currentPath(), tr("Text Files (*.txt);;All files (*.*)"));
if (file.size() == 0) return;
std::ifstream fin(file.toStdString());
std::string line;
std::string raceString;
// read the first line of the file which should be the race
std::getline(fin, raceString);
BOSS::RaceID race = BOSS::Races::GetRaceID(raceString);
if (race == BOSS::Races::None)
{
QMessageBox::information(this, tr("BOSS Visualization Error"), tr("First line of the state file was not a valid race.\n\nIt must be Protoss, Terran, or Zerg.") );
return;
}
size_t lineNum = 1;
std::vector<BOSS::ActionType> types;
// read the remaining lines which each should be one build-order item
while (std::getline(fin, line))
{
// break when we reach a blank line
if (line.size() == 0)
{
break;
}
++lineNum;
if (!BOSS::ActionTypes::TypeExists(line))
{
std::stringstream ss;
ss << "Line " << lineNum << " of the state file was not a valid ActionType.";
QMessageBox::information(this, tr("BOSS Visualization Error"), tr(ss.str().c_str()) );
return;
}
BOSS::ActionType type = BOSS::ActionTypes::GetActionType(line);
if (type.getRace() != race)
{
std::stringstream ss;
ss << "State file specifies " << raceString << " race.\n\nLine " << lineNum << ": " << type.getName() << " is not a " << raceString << " unit.";
ss << "\n\nPlease ensure all units are of the same race and try again.";
QMessageBox::information(this, tr("BOSS Visualization Error"), tr(ss.str().c_str()) );
return;
}
types.push_back(type);
}
// we must change the selected race to the race loaded
if (raceString != ui->raceComboBox->currentText().toStdString())
{
for (int i=0; i < ui->raceComboBox->count(); ++i)
{
std::string itemRace = ui->raceComboBox->itemText(i).toStdString();
if (itemRace == raceString)
{
ui->raceComboBox->setCurrentIndex(i);
break;
}
}
}
ui->initialStateList->clear();
for (const auto & type : types)
{
addToList(ui->initialStateList, type.getName());
}
fin.close();
ui->initialStateList->scrollToBottom();
}
void MainWindow::on_saveStateButton_clicked()
{
QString file = QFileDialog::getSaveFileName(this, tr("Save State"), QDir::currentPath(), tr("Text Files (*.txt);;All files (*.*)"));
if (file.size() == 0) return;
std::ofstream fout(file.toStdString());
fout << ui->raceComboBox->currentText().toStdString() << "\n";
for(int row = 0; row < ui->initialStateList->count(); row++)
{
fout << ui->initialStateList->item(row)->text().toStdString() << "\n";
}
fout.close();
}
void MainWindow::on_viewStateButton_clicked()
{
BOSS::GameState state = getState();
QMessageBox::about(this, "State Details", state.toString().c_str());
}
void MainWindow::on_buildOrderDetails_clicked()
{
std::stringstream ss;
BOSS::GameState state = getState();
BOSS::BuildOrder buildOrder = getBuildOrder();
if (buildOrder.isLegalFromState(state))
{
ss << "Build-Order can be built from the chosen initial state.\n\n";
buildOrder.doActions(state);
int totalFrames = state.getLastActionFinishTime();
ss << "Total time to completion: " << totalFrames << " frames " << " (" << (totalFrames / (60 * 24)) << "m " << ((totalFrames / 24) % 60) << "s)\n\n";
int totalMinerals = 0;
int totalGas = 0;
for (size_t a(0); a < buildOrder.size(); ++a)
{
totalMinerals += buildOrder[a].mineralPrice();
totalGas+= buildOrder[a].gasPrice();
}
ss << "Total Minerals Gathered: " << (state.getMinerals() + totalMinerals)/BOSS::Constants::RESOURCE_SCALE << "\n";
ss << "Total Gas Gathered: " << (state.getGas() + totalGas)/BOSS::Constants::RESOURCE_SCALE << "\n\n";
}
else
{
ss << buildOrder.whyIsNotLegalFromState(state);
}
QMessageBox::about(this, "Build-Order Details", ss.str().c_str() );
}
void MainWindow::on_viewFinalStateButton_clicked()
{
std::stringstream ss;
BOSS::GameState state = getState();
BOSS::BuildOrder buildOrder = getBuildOrder();
if (buildOrder.isLegalFromState(state))
{
ss << "Final state after build-order has completed:\n";
buildOrder.doActions(state);
state.fastForward(state.getLastActionFinishTime());
ss << state.toString() << "\n";
int totalMinerals = 0;
int totalGas = 0;
for (size_t a(0); a < buildOrder.size(); ++a)
{
totalMinerals += buildOrder[a].mineralPrice();
totalGas+= buildOrder[a].gasPrice();
}
ss << "Total Minerals Gathered: " << (state.getMinerals() + totalMinerals)/BOSS::Constants::RESOURCE_SCALE << "\n";
ss << "Total Gas Gathered: " << (state.getGas() + totalGas)/BOSS::Constants::RESOURCE_SCALE << "\n\n";
}
else
{
ss << buildOrder.whyIsNotLegalFromState(state);
}
QMessageBox::about(this, "Final State Details", ss.str().c_str() );
}
================================================
FILE: BOSS/Qt/mainwindow.h
================================================
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QListWidget>
#include "BOSS.h"
namespace PlotTypes
{
enum { BuildOrderPlot, ArmyPlot, ResourcePlot };
}
namespace Ui
{
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_deleteItemsButton_clicked();
void on_addToBuildOrderButton_clicked();
void on_visualizeButton_clicked();
void on_raceComboBox_currentIndexChanged(const QString &arg1);
void on_addToStateButton_clicked();
void on_clearAllItems_clicked();
void on_deleteItemsButtonState_clicked();
void on_clearAllItemsState_clicked();
void on_actionTypeComboBox_currentIndexChanged(const QString &arg1);
void on_saveBuildOrderButton_clicked();
void on_resourceGraphButton_clicked();
void on_armyValueGraph_clicked();
void on_actionAbout_triggered();
void on_loadStateButton_clicked();
void on_saveStateButton_clicked();
QString getImageName(const BOSS::ActionType & type);
BOSS::GameState getState();
BOSS::BuildOrder getBuildOrder();
void generatePlot(int plotType);
void on_loadBuildOrderButton_clicked();
void setInitialState(const std::string & raceString);
void setInitialBuildOrder(const std::string & raceString);
void addToList(QListWidget * list, const BOSS::ActionType & type);
void addToList(QListWidget * list, const std::string & typeName);
void on_viewStateButton_clicked();
void on_buildOrderDetails_clicked();
void on_viewFinalStateButton_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
================================================
FILE: BOSS/Qt/mainwindow.ui
================================================
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>640</width>
<height>480</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>640</width>
<height>480</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>640</width>
<height>480</height>
</size>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QPushButton" name="addToBuildOrderButton">
<property name="geometry">
<rect>
<x>20</x>
<y>70</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Add to Build Order</string>
</property>
</widget>
<widget class="QComboBox" name="actionTypeComboBox">
<property name="geometry">
<rect>
<x>20</x>
<y>40</y>
<width>211</width>
<height>22</height>
</rect>
</property>
</widget>
<widget class="QComboBox" name="raceComboBox">
<property name="geometry">
<rect>
<x>120</x>
<y>10</y>
<width>111</width>
<height>22</height>
</rect>
</property>
</widget>
<widget class="QListWidget" name="buildOrderList">
<property name="geometry">
<rect>
<x>20</x>
<y>150</y>
<width>211</width>
<height>231</height>
</rect>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::MultiSelection</enum>
</property>
</widget>
<widget class="QPushButton" name="deleteItemsButton">
<property name="geometry">
<rect>
<x>20</x>
<y>390</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Clear Selected </string>
</property>
</widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>20</x>
<y>10</y>
<width>91</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Select Race</string>
</property>
</widget>
<widget class="QPushButton" name="clearAllItems">
<property name="geometry">
<rect>
<x>130</x>
<y>390</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Clear All</string>
</property>
</widget>
<widget class="QLabel" name="buildOrderLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>120</y>
<width>91</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Build-Order</string>
</property>
</widget>
<widget class="QListWidget" name="initialStateList">
<property name="geometry">
<rect>
<x>250</x>
<y>150</y>
<width>211</width>
<height>231</height>
</rect>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::MultiSelection</enum>
</property>
</widget>
<widget class="QPushButton" name="addToStateButton">
<property name="geometry">
<rect>
<x>130</x>
<y>70</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Add to Initial State</string>
</property>
</widget>
<widget class="QLabel" name="initialStateLabel">
<property name="geometry">
<rect>
<x>250</x>
<y>120</y>
<width>101</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Initial State</string>
</property>
</widget>
<widget class="QPushButton" name="deleteItemsButtonState">
<property name="geometry">
<rect>
<x>250</x>
<y>390</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Clear Selected</string>
</property>
</widget>
<widget class="QPushButton" name="clearAllItemsState">
<property name="geometry">
<rect>
<x>360</x>
<y>390</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Clear All</string>
</property>
</widget>
<widget class="QSpinBox" name="mineralsSpinBox">
<property name="geometry">
<rect>
<x>490</x>
<y>170</y>
<width>121</width>
<height>22</height>
</rect>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="maximum">
<number>99999</number>
</property>
</widget>
<widget class="QLabel" name="mineralsLabel">
<property name="geometry">
<rect>
<x>510</x>
<y>150</y>
<width>91</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Starting Minerals</string>
</property>
</widget>
<widget class="QLabel" name="gasLabel">
<property name="geometry">
<rect>
<x>520</x>
<y>200</y>
<width>91</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Starting Gas</string>
</property>
</widget>
<widget class="QSpinBox" name="gasSpinBox">
<property name="geometry">
<rect>
<x>490</x>
<y>220</y>
<width>121</width>
<height>22</height>
</rect>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="maximum">
<number>99999</number>
</property>
</widget>
<widget class="QLabel" name="itemInformationLabel">
<property name="geometry">
<rect>
<x>250</x>
<y>10</y>
<width>241</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Item:</string>
</property>
</widget>
<widget class="QLabel" name="mineralCostLabel">
<property name="geometry">
<rect>
<x>250</x>
<y>60</y>
<width>71</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Minerals:</string>
</property>
</widget>
<widget class="QLabel" name="gasCostLabel">
<property name="geometry">
<rect>
<x>250</x>
<y>80</y>
<width>51</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Gas:</string>
</property>
</widget>
<widget class="QLabel" name="label_4">
<property name="geometry">
<rect>
<x>340</x>
<y>60</y>
<width>61</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Build Time:</string>
</property>
</widget>
<widget class="QLabel" name="mineralCost">
<property name="geometry">
<rect>
<x>310</x>
<y>60</y>
<width>31</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<widget class="QLabel" name="gasCost">
<property name="geometry">
<rect>
<x>310</x>
<y>80</y>
<width>31</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<widget class="QLabel" name="buildTime">
<property name="geometry">
<rect>
<x>410</x>
<y>60</y>
<width>51</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<widget class="QLabel" name="producerLabel">
<property name="geometry">
<rect>
<x>250</x>
<y>40</y>
<width>51</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Producer:</string>
</property>
</widget>
<widget class="QLabel" name="builder">
<property name="geometry">
<rect>
<x>310</x>
<y>40</y>
<width>131</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<widget class="QLabel" name="label_6">
<property name="geometry">
<rect>
<x>340</x>
<y>80</y>
<width>61</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>HP / Shield:</string>
</property>
</widget>
<widget class="QLabel" name="hpShield">
<property name="geometry">
<rect>
<x>410</x>
<y>80</y>
<width>51</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<widget class="QLabel" name="imageLabel">
<property name="geometry">
<rect>
<x>470</x>
<y>10</y>
<width>161</width>
<height>121</height>
</rect>
</property>
<property name="text">
<string>Image Here</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="visualizeButton">
<property name="geometry">
<rect>
<x>490</x>
<y>420</y>
<width>121</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Build-Order Graph</string>
</property>
</widget>
<widget class="QPushButton" name="saveBuildOrderButton">
<property name="geometry">
<rect>
<x>130</x>
<y>420</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Save Build-Order</string>
</property>
</widget>
<widget class="QPushButton" name="loadBuildOrderButton">
<property name="geometry">
<rect>
<x>20</x>
<y>420</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Load Build-Order</string>
</property>
</widget>
<widget class="QPushButton" name="saveStateButton">
<property name="geometry">
<rect>
<x>360</x>
<y>420</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Save State</string>
</property>
</widget>
<widget class="QPushButton" name="loadStateButton">
<property name="geometry">
<rect>
<x>250</x>
<y>420</y>
<width>101</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Load State</string>
</property>
</widget>
<widget class="QLabel" name="initialStateLabel_2">
<property name="geometry">
<rect>
<x>490</x>
<y>330</y>
<width>131</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Generate Graphs</string>
</property>
</widget>
<widget class="QPushButton" name="resourceGraphButton">
<property name="geometry">
<rect>
<x>490</x>
<y>390</y>
<width>121</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Resource Graphs</string>
</property>
</widget>
<widget class="QPushButton" name="armyValueGraph">
<property name="geometry">
<rect>
<x>490</x>
<y>360</y>
<width>121</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Army Value Graph</string>
</property>
</widget>
<widget class="QPushButton" name="viewStateButton">
<property name="geometry">
<rect>
<x>380</x>
<y>120</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>View Details</string>
</property>
</widget>
<widget class="QPushButton" name="buildOrderDetails">
<property name="geometry">
<rect>
<x>150</x>
<y>120</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>View Details</string>
</property>
</widget>
<widget class="QPushButton" name="viewFinalStateButton">
<property name="geometry">
<rect>
<x>490</x>
<y>280</y>
<width>121</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>View Final State</string>
</property>
</widget>
</widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>640</width>
<height>21</height>
</rect>
</property>
<widget class="QMenu" name="menuHelp">
<property name="title">
<string>Help</string>
</property>
<addaction name="actionAbout"/>
</widget>
<addaction name="menuHelp"/>
</widget>
<action name="actionAbout">
<property name="text">
<string>About</string>
</property>
</action>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>
================================================
FILE: BOSS/VisualStudio/BOSS.sln
================================================
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BOSS", "BOSS.vcxproj", "{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BOSS_main", "BOSS_main.vcxproj", "{25544976-2D9A-4669-8EF6-B622C3B5A42E}"
ProjectSection(ProjectDependencies) = postProject
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127} = {9F8709E3-AC4F-45F2-8105-4A99D8E2A127}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Debug|Win32.ActiveCfg = Debug|Win32
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Debug|Win32.Build.0 = Debug|Win32
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Debug|x64.ActiveCfg = Debug|Win32
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Release|Win32.ActiveCfg = Release|Win32
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Release|Win32.Build.0 = Release|Win32
{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}.Release|x64.ActiveCfg = Release|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Debug|Win32.ActiveCfg = Debug|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Debug|Win32.Build.0 = Debug|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Debug|x64.ActiveCfg = Debug|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Release|Win32.ActiveCfg = Release|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Release|Win32.Build.0 = Release|Win32
{25544976-2D9A-4669-8EF6-B622C3B5A42E}.Release|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
================================================
FILE: BOSS/VisualStudio/BOSS.vcxproj
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\source\ActionInProgress.h" />
<ClInclude Include="..\source\ActionSet.h" />
<ClInclude Include="..\source\ActionType.h" />
<ClInclude Include="..\source\ActionTypeData.h" />
<ClInclude Include="..\source\Array.hpp" />
<ClInclude Include="..\source\BaseTypes.h" />
<ClInclude Include="..\source\BOSSAssert.h" />
<ClInclude Include="..\source\BOSSException.h" />
<ClInclude Include="..\source\BuildOrder.h" />
<ClInclude Include="..\source\BuildOrderPlot.h" />
<ClInclude Include="..\source\CombatSearch_BestResponse.h" />
<ClInclude Include="..\source\CombatSearch_BestResponseData.h" />
<ClInclude Include="..\source\CombatSearch_Bucket.h" />
<ClInclude Include="..\source\CombatSearch_BucketData.h" />
<ClInclude Include="..\source\CombatSearch_IntegralData.h" />
<ClInclude Include="..\source\CombatSearch_Integral.h" />
<ClInclude Include="..\source\Constants.h" />
<ClInclude Include="..\source\CombatSearch.h" />
<ClInclude Include="..\source\BOSS.h" />
<ClInclude Include="..\source\BuildingData.h" />
<ClInclude Include="..\source\CombatSearchParameters.h" />
<ClInclude Include="..\source\CombatSearchResults.h" />
<ClInclude Include="..\source\Common.h" />
<ClInclude Include="..\source\BuildOrderSearchGoal.h" />
<ClInclude Include="..\source\DFBB_BuildOrderSearchParameters.h" />
<ClInclude Include="..\source\DFBB_BuildOrderSearchResults.h" />
<ClInclude Include="..\source\DFBB_BuildOrderSmartSearch.h" />
<ClInclude Include="..\source\DFBB_BuildOrderStackSearch.h" />
<ClInclude Include="..\source\Eval.h" />
<ClInclude Include="..\source\GraphViz.hpp" />
<ClInclude Include="..\source\GameState.h" />
<ClInclude Include="..\source\HatcheryData.h" />
<ClInclude Include="..\source\BOSSLogger.h" />
<ClInclude Include="..\source\JSONTools.h" />
<ClInclude Include="..\source\NaiveBuildOrderSearch.h" />
<ClInclude Include="..\source\PrerequisiteSet.h" />
<ClInclude Include="..\source\Timer.hpp" />
<ClInclude Include="..\source\Tools.h" />
<ClInclude Include="..\source\UnitData.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\source\ActionInProgress.cpp" />
<ClCompile Include="..\source\ActionSet.cpp" />
<ClCompile Include="..\source\ActionType.cpp" />
<ClCompile Include="..\source\ActionTypeData.cpp" />
<ClCompile Include="..\source\BOSSAssert.cpp" />
<ClCompile Include="..\source\BOSSException.cpp" />
<ClCompile Include="..\source\BuildOrder.cpp" />
<ClCompile Include="..\source\BuildOrderPlot.cpp" />
<ClCompile Include="..\source\CombatSearch.cpp" />
<ClCompile Include="..\source\BOSS.cpp" />
<ClCompile Include="..\source\BuildingData.cpp" />
<ClCompile Include="..\source\CombatSearch_BestResponse.cpp" />
<ClCompile Include="..\source\CombatSearch_BestResponseData.cpp" />
<ClCompile Include="..\source\CombatSearch_Bucket.cpp" />
<ClCompile Include="..\source\CombatSearch_BucketData.cpp" />
<ClCompile Include="..\source\CombatSearch_IntegralData.cpp" />
<ClCompile Include="..\source\CombatSearchParameters.cpp" />
<ClCompile Include="..\source\CombatSearchResults.cpp" />
<ClCompile Include="..\source\CombatSearch_Integral.cpp" />
<ClCompile Include="..\source\Constants.cpp" />
<ClCompile Include="..\source\BuildOrderSearchGoal.cpp" />
<ClCompile Include="..\source\DFBB_BuildOrderSearchParameters.cpp" />
<ClCompile Include="..\source\DFBB_BuildOrderSearchResults.cpp" />
<ClCompile Include="..\source\DFBB_BuildOrderSmartSearch.cpp" />
<ClCompile Include="..\source\DFBB_BuildOrderStackSearch.cpp" />
<ClCompile Include="..\source\Eval.cpp" />
<ClCompile Include="..\source\GameState.cpp" />
<ClCompile Include="..\source\HatcheryData.cpp" />
<ClCompile Include="..\source\BOSSLogger.cpp" />
<ClCompile Include="..\source\JSONTools.cpp" />
<ClCompile Include="..\source\NaiveBuildOrderSearch.cpp" />
<ClCompile Include="..\source\PrerequisiteSet.cpp" />
<ClCompile Include="..\source\Tools.cpp" />
<ClCompile Include="..\source\UnitData.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="ClassDiagram.cd" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{9F8709E3-AC4F-45F2-8105-4A99D8E2A127}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>StarcraftBuildOrderSearch</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<OutDir>../bin/</OutDir>
<TargetName>$(ProjectName)_d</TargetName>
<TargetExt>.lib</TargetExt>
<IntDir>$(SolutionDir)\$(Configuration)\$(ProjectName)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<OutDir>../bin/</OutDir>
<IntDir>$(SolutionDir)\$(Configuration)\$(ProjectName)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<MinimalRebuild>false</MinimalRebuild>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>../../bwapidata/lib/bwapidatad_$(PlatformToolset).lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>Full</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BrowseInformation>true</BrowseInformation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>../../bwapidata/lib/bwapidata_$(PlatformToolset).lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateMapFile>true</GenerateMapFile>
</Link>
<Bscmake>
<PreserveSbr>true</PreserveSbr>
</Bscmake>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
================================================
FILE: BOSS/VisualStudio/BOSS.vcxproj.filters
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClCompile Include="..\source\BOSS.cpp">
<Filter>common</Filter>
</ClCompile>
<ClCompile Include="..\source\ActionInProgress.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\BuildingData.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\GameState.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\UnitData.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\Eval.cpp">
<Filter>search\util</Filter>
</ClCompile>
<ClCompile Include="..\source\ActionType.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\ActionTypeData.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearchResults.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearchParameters.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\PrerequisiteSet.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\ActionSet.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\Tools.cpp">
<Filter>search\util</Filter>
</ClCompile>
<ClCompile Include="..\source\DFBB_BuildOrderSmartSearch.cpp">
<Filter>search\BuildOrderSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\DFBB_BuildOrderSearchParameters.cpp">
<Filter>search\BuildOrderSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\DFBB_BuildOrderSearchResults.cpp">
<Filter>search\BuildOrderSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\DFBB_BuildOrderStackSearch.cpp">
<Filter>search\BuildOrderSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\Constants.cpp">
<Filter>common</Filter>
</ClCompile>
<ClCompile Include="..\source\HatcheryData.cpp">
<Filter>engine</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSLogger.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\JSONTools.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\NaiveBuildOrderSearch.cpp">
<Filter>search\NaiveSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\BuildOrderSearchGoal.cpp">
<Filter>search\util</Filter>
</ClCompile>
<ClCompile Include="..\source\BuildOrder.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_Integral.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_BucketData.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_IntegralData.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_Bucket.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_BestResponse.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\BuildOrderPlot.cpp">
<Filter>util</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearch_BestResponseData.cpp">
<Filter>search\CombatSearch</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSAssert.cpp">
<Filter>common</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSException.cpp">
<Filter>common</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\source\Timer.hpp">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\Common.h">
<Filter>common</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSS.h">
<Filter>common</Filter>
</ClInclude>
<ClInclude Include="..\source\ActionInProgress.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\BuildingData.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\GameState.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\Array.hpp">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\UnitData.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\Eval.h">
<Filter>search\util</Filter>
</ClInclude>
<ClInclude Include="..\source\BaseTypes.h">
<Filter>common</Filter>
</ClInclude>
<ClInclude Include="..\source\ActionType.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\ActionTypeData.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\GraphViz.hpp">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearchResults.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearchParameters.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\Constants.h">
<Filter>common</Filter>
</ClInclude>
<ClInclude Include="..\source\PrerequisiteSet.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\ActionSet.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\Tools.h">
<Filter>search\util</Filter>
</ClInclude>
<ClInclude Include="..\source\DFBB_BuildOrderSmartSearch.h">
<Filter>search\BuildOrderSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\DFBB_BuildOrderSearchParameters.h">
<Filter>search\BuildOrderSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\DFBB_BuildOrderSearchResults.h">
<Filter>search\BuildOrderSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\DFBB_BuildOrderStackSearch.h">
<Filter>search\BuildOrderSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\HatcheryData.h">
<Filter>engine</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSLogger.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\JSONTools.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\NaiveBuildOrderSearch.h">
<Filter>search\NaiveSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\BuildOrderSearchGoal.h">
<Filter>search\util</Filter>
</ClInclude>
<ClInclude Include="..\source\BuildOrder.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_Integral.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_BucketData.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_IntegralData.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_Bucket.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_BestResponse.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\BuildOrderPlot.h">
<Filter>util</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearch_BestResponseData.h">
<Filter>search\CombatSearch</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSAssert.h">
<Filter>common</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSException.h">
<Filter>common</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Filter Include="util">
<UniqueIdentifier>{c90b8009-1e1e-42e5-a28e-017e8e72cfe1}</UniqueIdentifier>
</Filter>
<Filter Include="common">
<UniqueIdentifier>{f458ce38-5149-4277-8582-e76bc9eaab52}</UniqueIdentifier>
</Filter>
<Filter Include="search">
<UniqueIdentifier>{0f8d0d91-8735-4269-b306-24e4a55588ad}</UniqueIdentifier>
</Filter>
<Filter Include="search\util">
<UniqueIdentifier>{e1d1becf-4265-4c2c-aa97-d66a9a961a6d}</UniqueIdentifier>
</Filter>
<Filter Include="search\CombatSearch">
<UniqueIdentifier>{c231a723-7f0a-4414-bbef-4928739d854e}</UniqueIdentifier>
</Filter>
<Filter Include="search\BuildOrderSearch">
<UniqueIdentifier>{be1fbb05-de74-477b-9915-4a5ef14b38db}</UniqueIdentifier>
</Filter>
<Filter Include="search\NaiveSearch">
<UniqueIdentifier>{533866dc-7d6d-4bc0-a795-ae6e41d9eac0}</UniqueIdentifier>
</Filter>
<Filter Include="engine">
<UniqueIdentifier>{975df5db-5385-4879-9a2a-e0f7d4354574}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<None Include="ClassDiagram.cd" />
</ItemGroup>
</Project>
================================================
FILE: BOSS/VisualStudio/BOSS_combatsearch.vcxproj
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\source\BOSSExperiments.cpp" />
<ClCompile Include="..\source\BOSSVisExperiment.cpp" />
<ClCompile Include="..\source\GUI.cpp" />
<ClCompile Include="..\source\GUITools.cpp" />
<ClCompile Include="..\source\BOSS_main.cpp" />
<ClCompile Include="..\source\BuildOrderTester.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\source\BOSSExperiments.h" />
<ClInclude Include="..\source\BOSSVisExperiment.h" />
<ClInclude Include="..\source\GUI.h" />
<ClInclude Include="..\source\GUITools.h" />
<ClInclude Include="..\source\BuildOrderTester.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{25544976-2D9A-4669-8EF6-B622C3B5A42E}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>StarcraftBuildOrderSearch</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)..\bin\</OutDir>
<TargetName>$(ProjectName)_d</TargetName>
<IntDir>$(Configuration)\BOSS_main\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)..\bin\</OutDir>
<IntDir>$(Configuration)\BOSS_main\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include;$(SDL_IMAGE_DIR)/include;$(SDL_DIR)/include;../source/rapidjson;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>$(BWAPI_DIR)/lib/BWAPId.lib;$(SolutionDir)\$(Configuration)\BOSS\BOSS_d.lib;../lib/opengl32.lib;../lib/SDL2.lib;../lib/SDL2_image.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include;$(SDL_IMAGE_DIR)/include;$(SDL_DIR)/include;../source/rapidjson;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>$(BWAPI_DIR)/lib/BWAPI.lib;$(SolutionDir)\$(Configuration)\BOSS\BOSS.lib;../lib/opengl32.lib;../lib/SDL2.lib;../lib/SDL2_image.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateMapFile>true</GenerateMapFile>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
================================================
FILE: BOSS/VisualStudio/BOSS_main.psess
================================================
<?xml version="1.0" encoding="UTF-8"?>
<VSPerformanceSession Version="1.00">
<Options>
<Solution>BOSS.sln</Solution>
<CollectionMethod>Sampling</CollectionMethod>
<AllocationMethod>None</AllocationMethod>
<AddReport>true</AddReport>
<ResourceBasedAnalysisSelected>true</ResourceBasedAnalysisSelected>
<UniqueReport>Timestamp</UniqueReport>
<SamplingMethod>Cycles</SamplingMethod>
<CycleCount>10000000</CycleCount>
<PageFaultCount>10</PageFaultCount>
<SysCallCount>10</SysCallCount>
<SamplingCounter Name="" ReloadValue="00000000000f4240" DisplayName="" />
<RelocateBinaries>false</RelocateBinaries>
<HardwareCounters EnableHWCounters="false" />
<EtwSettings />
<PdhSettings>
<PdhCountersEnabled>false</PdhCountersEnabled>
<PdhCountersRate>500</PdhCountersRate>
<PdhCounters>
<PdhCounter>\Memory\Pages/sec</PdhCounter>
<PdhCounter>\PhysicalDisk(_Total)\Avg. Disk Queue Length</PdhCounter>
<PdhCounter>\Processor(_Total)\% Processor Time</PdhCounter>
</PdhCounters>
</PdhSettings>
</Options>
<ExcludeSmallFuncs>true</ExcludeSmallFuncs>
<InteractionProfilingEnabled>false</InteractionProfilingEnabled>
<JScriptProfilingEnabled>false</JScriptProfilingEnabled>
<PreinstrumentEvent>
<InstrEventExclude>false</InstrEventExclude>
</PreinstrumentEvent>
<PostinstrumentEvent>
<InstrEventExclude>false</InstrEventExclude>
</PostinstrumentEvent>
<Binaries>
<ProjBinary>
<Path>..\bin\BOSS_main.exe</Path>
<ArgumentTimestamp>01/01/0001 00:00:00</ArgumentTimestamp>
<Instrument>true</Instrument>
<Sample>true</Sample>
<ExternalWebsite>false</ExternalWebsite>
<InteractionProfilingEnabled>false</InteractionProfilingEnabled>
<IsLocalJavascript>false</IsLocalJavascript>
<IsWindowsStoreApp>false</IsWindowsStoreApp>
<IsWWA>false</IsWWA>
<LaunchProject>true</LaunchProject>
<OverrideProjectSettings>false</OverrideProjectSettings>
<LaunchMethod>Executable</LaunchMethod>
<ExecutablePath>..\bin\BOSS_main.exe</ExecutablePath>
<StartupDirectory>..\bin</StartupDirectory>
<Arguments>
</Arguments>
<NetAppHost>IIS</NetAppHost>
<NetBrowser>InternetExplorer</NetBrowser>
<ExcludeSmallFuncs>true</ExcludeSmallFuncs>
<JScriptProfilingEnabled>false</JScriptProfilingEnabled>
<PreinstrumentEvent>
<InstrEventExclude>false</InstrEventExclude>
</PreinstrumentEvent>
<PostinstrumentEvent>
<InstrEventExclude>false</InstrEventExclude>
</PostinstrumentEvent>
<ProjRef>{25544976-2D9A-4669-8EF6-B622C3B5A42E}|BOSS_main.vcxproj</ProjRef>
<ProjPath>BOSS_main.vcxproj</ProjPath>
<ProjName>BOSS_main</ProjName>
</ProjBinary>
</Binaries>
<Reports>
<Report>
<Path>BOSS_main150112.vsp</Path>
</Report>
</Reports>
<Launches>
<ProjBinary>
<Path>:PB:{25544976-2D9A-4669-8EF6-B622C3B5A42E}|BOSS_main.vcxproj</Path>
</ProjBinary>
</Launches>
</VSPerformanceSession>
================================================
FILE: BOSS/VisualStudio/BOSS_main.vcxproj
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\source\BOSSExperiments.cpp" />
<ClCompile Include="..\source\BOSSParameters.cpp" />
<ClCompile Include="..\source\BOSSPlotBuildOrders.cpp" />
<ClCompile Include="..\source\CombatSearchExperiment.cpp" />
<ClCompile Include="..\source\BOSS_main.cpp" />
<ClCompile Include="..\source\BuildOrderTester.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\source\BOSSExperiments.h" />
<ClInclude Include="..\source\BOSSParameters.h" />
<ClInclude Include="..\source\BOSSPlotBuildOrders.h" />
<ClInclude Include="..\source\CombatSearchExperiment.h" />
<ClInclude Include="..\source\BuildOrderTester.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{25544976-2D9A-4669-8EF6-B622C3B5A42E}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>StarcraftBuildOrderSearch</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)..\bin\</OutDir>
<TargetName>$(ProjectName)_d</TargetName>
<IntDir>$(Configuration)\BOSS_main\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)..\bin\</OutDir>
<IntDir>$(Configuration)\BOSS_main\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include;../source/rapidjson;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>$(BWAPI_DIR)/lib/BWAPId.lib;../bin/BOSS_d.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(BWAPI_DIR)/include;../source/rapidjson;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4996;4099</DisableSpecificWarnings>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BrowseInformation>true</BrowseInformation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>$(BWAPI_DIR)/lib/BWAPI.lib;../bin/BOSS.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateMapFile>true</GenerateMapFile>
</Link>
<Bscmake>
<PreserveSbr>true</PreserveSbr>
</Bscmake>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
================================================
FILE: BOSS/VisualStudio/BOSS_main.vcxproj.filters
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClCompile Include="..\source\BOSS_main.cpp" />
<ClCompile Include="..\source\BuildOrderTester.cpp">
<Filter>testing</Filter>
</ClCompile>
<ClCompile Include="..\source\CombatSearchExperiment.cpp">
<Filter>experiments</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSPlotBuildOrders.cpp">
<Filter>experiments</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSParameters.cpp">
<Filter>experiments</Filter>
</ClCompile>
<ClCompile Include="..\source\BOSSExperiments.cpp">
<Filter>experiments</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<Filter Include="experiments">
<UniqueIdentifier>{1d1bf021-f0f5-44d7-abf5-ded9f0d6ed4d}</UniqueIdentifier>
</Filter>
<Filter Include="testing">
<UniqueIdentifier>{b8dbb056-eafb-4ae0-8475-538af1b4bae4}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\source\BuildOrderTester.h">
<Filter>testing</Filter>
</ClInclude>
<ClInclude Include="..\source\CombatSearchExperiment.h">
<Filter>experiments</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSPlotBuildOrders.h">
<Filter>experiments</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSParameters.h">
<Filter>experiments</Filter>
</ClInclude>
<ClInclude Include="..\source\BOSSExperiments.h">
<Filter>experiments</Filter>
</ClInclude>
</ItemGroup>
</Project>
================================================
FILE: BOSS/bin/buildorders/Protoss_DarkTemplarRush.txt
================================================
Protoss
Protoss_Probe
Protoss_Probe
Protoss_Probe
Protoss_Probe
Protoss_Pylon
Protoss_Probe
Protoss_Gateway
Protoss_Probe
Protoss_Assimilator
Protoss_Probe
Protoss_Cybernetics_Core
Protoss_Probe
Protoss_Citadel_of_Adun
Protoss_Probe
Protoss_Templar_Archives
Protoss_Gateway
Protoss_Dark_Templar
Protoss_Dark_Templar
Protoss_Pylon
Protoss_Dark_Templar
Protoss_Dark_Templar
Protoss_Probe
Protoss_Pylon
Protoss_Probe
================================================
FILE: BOSS/bin/buildorders/Protoss_DragoonRange.txt
================================================
Protoss
Protoss_Probe
Protoss_Probe
Protoss_Probe
Protoss_Probe
Protoss_Pylon
Protoss_Probe
Protoss_Probe
Protoss_Gateway
Protoss_Probe
Protoss_Assimilator
Protoss_Probe
Protoss_Probe
Protoss_Cybernetics_Core
Protoss_Probe
Protoss_Probe
Protoss_Gateway
Singularity_Charge
Protoss_Dragoon
Protoss_Gateway
Protoss_Pylon
Protoss_Dragoon
Protoss_Dragoon
Protoss_Probe
Protoss_Gateway
Protoss_Pylon
Protoss_Probe
Protoss_Dragoon
Protoss_Dragoon
Protoss_Dragoon
================================================
FILE: BOSS/bin/buildorders/Terran_TankPush.txt
================================================
Terran
Terran_SCV
Terran_SCV
Terran_SCV
Terran_SCV
Terran_SCV
Terran_Supply_Depot
Terran_SCV
Terran_Barracks
Terran_Refinery
Terran_SCV
Terran_SCV
Terran_SCV
Terran_SCV
Terran_Factory
Terran_Factory
Terran_SCV
Terran_SCV
Terran_SCV
Terran_SCV
Terran_Machine_Shop
Terran_Machine_Shop
Terran_Supply_Depot
Tank_Siege_Mode
Terran_Siege_Tank_Tank_Mode
Terran_Siege_Tank_Tank_Mode
Terran_Siege_Tank_Tank_Mode
Terran_Siege_Tank_Tank_Mode
================================================
FILE: BOSS/bin/buildorders/Zerg_2HatchHydra.txt
================================================
Zerg
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Overlord
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Hatchery
Zerg_Spawning_Pool
Zerg_Drone
Zerg_Extractor
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Hydralisk_Den
Zerg_Drone
Zerg_Overlord
Zerg_Drone
Zerg_Drone
Zerg_Drone
Grooved_Spines
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Overlord
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Overlord
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
Zerg_Hydralisk
================================================
FILE: BOSS/bin/buildorders/Zerg_3HatchMuta.txt
================================================
Zerg
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Overlord
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Hatchery
Zerg_Spawning_Pool
Zerg_Drone
Zerg_Drone
Zerg_Hatchery
Zerg_Extractor
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Overlord
Zerg_Lair
Zerg_Extractor
Zerg_Drone
Zerg_Drone
Zerg_Zergling
Zerg_Zergling
Zerg_Zergling
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Overlord
Zerg_Drone
Zerg_Overlord
Zerg_Drone
Zerg_Overlord
Zerg_Spire
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Drone
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
Zerg_Mutalisk
================================================
FILE: BOSS/bin/images/command_icons/fix.bat
================================================
for %%f in (*.png) DO ( convert "%%f" -strip -resize 32x32! "%%f" )
================================================
FILE: BOSS/bin/images/units/fix.bat
================================================
for %%f in (*.png) DO ( convert "%%f" -strip "%%f" )
================================================
FILE: BOSS/emscripten/BOSS.html
================================================
<!doctype html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Emscripten-Generated Code</title>
<style>
body {
font-family: arial;
margin: 0;
padding: none;
}
.emscripten { padding-right: 0; margin-left: auto; margin-right: auto; display: block; }
div.emscripten { text-align: center; }
div.emscripten_border { border: 1px solid black; }
/* the canvas *must not* have any border or padding, or mouse coords will be wrong */
canvas.emscripten { border: 0px none; }
#emscripten_logo {
display: inline-block;
margin: 0;
}
.spinner {
height: 30px;
width: 30px;
margin: 0;
margin-top: 20px;
margin-left: 20px;
display: inline-block;
vertical-align: top;
-webkit-animation: rotation .8s linear infinite;
-moz-animation: rotation .8s linear infinite;
-o-animation: rotation .8s linear infinite;
animation: rotation 0.8s linear infinite;
border-left: 5px solid rgb(235, 235, 235);
border-right: 5px solid rgb(235, 235, 235);
border-bottom: 5px solid rgb(235, 235, 235);
border-top: 5px solid rgb(120, 120, 120);
border-radius: 100%;
background-color: rgb(189, 215, 46);
}
@-webkit-keyframes rotation {
from {-webkit-transform: rotate(0deg);}
to {-webkit-transform: rotate(360deg);}
}
@-moz-keyframes rotation {
from {-moz-transform: rotate(0deg);}
to {-moz-transform: rotate(360deg);}
}
@-o-keyframes rotation {
from {-o-transform: rotate(0deg);}
to {-o-transform: rotate(360deg);}
}
@keyframes rotation {
from {transform: rotate(0deg);}
to {transform: rotate(360deg);}
}
#status {
display: inline-block;
vertical-align: top;
margin-top: 30px;
margin-left: 20px;
font-weight: bold;
color: rgb(120, 120, 120);
}
#progress {
height: 20px;
width: 30px;
}
#controls {
display: inline-block;
float: right;
vertical-align: top;
margin-top: 30px;
margin-right: 20px;
}
#output {
width: 100%;
height: 200px;
margin: 0 auto;
margin-top: 10px;
display: block;
background-color: black;
color: white;
font-family: 'Lucida Console', Monaco, monospace;
outline: none;
}
</style>
</head>
<body>
<a href="http://emscripten.org">
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="296px"
height="78px"
viewBox="420 120 100 170"
enable-background="new 0 0 900 400"
xml:space="preserve"
inkscape:version="0.48.4 r9939"
sodipodi:docname="emscripten_powered_by_logo.svg"><metadata
id="metadata345"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs343"><linearGradient
y2="247.6265"
x2="225.1929"
y1="152.499"
x1="225.1929"
gradientUnits="userSpaceOnUse"
id="linearGradient5104"><stop
id="stop5106"
style="stop-color:#C1D72F"
offset="0.3227531" /><stop
id="stop5108"
style="stop-color:#BCD631"
offset="0.45119295" /><stop
id="stop5110"
style="stop-color:#AFD136"
offset="0.64491969" /><stop
id="stop5112"
style="stop-color:#ABD037"
offset="1" /><a:midPointStop
style="stop-color:#C1D72F"
offset="0.0123" /><a:midPointStop
style="stop-color:#C1D72F"
offset="0.3086" /><a:midPointStop
style="stop-color:#ABD037"
offset="1" /></linearGradient><linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient5120"
x1="397.56918"
y1="128.12726"
x2="397.56918"
y2="166.25996"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.103059,0,0,1.103059,-38.997823,3.1312145)" /><filter
inkscape:collect="always"
id="filter5126"><feGaussianBlur
inkscape:collect="always"
stdDeviation="0.56377237"
id="feGaussianBlur5128" /></filter><linearGradient
inkscape:collect="always"
xlink:href="#SVGID_2_"
id="linearGradient5134"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.103059,0,0,1.103059,-38.997823,3.1312145)"
x1="397.56918"
y1="128.12726"
x2="397.56918"
y2="166.25996" /></defs><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1440"
inkscape:window-height="838"
id="namedview341"
showgrid="false"
inkscape:zoom="0.63555556"
inkscape:cx="224.82424"
inkscape:cy="-52.085109"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1" /><g
id="g5130"
transform="matrix(0.91591318,0,0,0.91591318,28.176953,14.143571)"><path
transform="matrix(1.103059,0,0,1.103059,-35.073492,-16.03923)"
id="path5122"
style="fill:#383838;fill-opacity:0.34705882;stroke:none;filter:url(#filter5126)"
d="m 494.39333,173.6323 c 0.57407,0.28703 1.87073,1.00226 2.89426,1.02855 0.55732,0.0143 1.14006,-0.1672 1.60262,-0.4784 1.20466,-0.81046 2.23561,-2.03031 2.72683,-3.39661 0.19424,-0.54027 0.0238,-1.72222 0.0238,-1.72222 l -3.82713,-14.06478 -1.98533,0 0.50231,-2.67891 6.36261,0 2.55939,12.22285 4.78392,-9.68746 -2.00924,0 0,-2.65498 7.19979,0 -11.00301,22.38875 -1.69829,1.91358 -2.29628,1.3395 -2.46371,0.26312 -2.29628,-0.21528 -2.79859,-1.36342 z m -12.0637,-14.56445 c -0.93698,1.88565 -1.70261,4.35262 -0.81842,6.26333 0.36549,0.78976 1.35098,1.19428 2.192,1.41737 0.60934,0.16133 1.29167,0.0999 1.88775,-0.10468 0.48126,-0.1655 0.8829,-0.5224 1.255,-0.8697 0.40341,-0.3768 0.77723,-0.80461 1.03505,-1.29262 0.21864,-0.41395 0.40236,-0.84786 0.49325,-1.30698 0.20667,-1.0485 0.35879,-2.1079 0.33583,-3.17631 -0.0184,-0.87403 -0.0789,-1.87107 -0.47711,-2.64959 -0.26344,-0.51379 -0.77017,-0.71849 -1.33113,-0.85633 -0.42395,-0.10479 -0.81432,-0.0626 -1.21773,0.10517 -0.65479,0.27273 -1.2544,0.5311 -1.82112,0.95764 -0.57331,0.4317 -1.21403,0.86959 -1.53337,1.5127 z m 0.65588,-4.31208 c 0,0 2.19341,-1.80738 3.45549,-2.27082 0.71718,-0.26365 3.45363,-0.65258 4.15,-0.3378 1.47292,0.66633 2.26103,1.57529 2.7222,2.60001 0.46118,1.02472 0.69944,2.59956 0.79701,3.73627 0.13278,1.55027 -0.13682,3.77629 -0.53404,5.74843 -0.30079,1.49256 -1.01883,2.74423 -1.83478,3.92156 -1.06526,1.5373 -1.82382,2.15116 -3.66756,2.46594 -0.98864,0.16889 -1.93845,0.46787 -3.25466,0.0928 -1.4384,-0.40963 -2.35273,-0.81244 -3.39599,-1.63337 -0.72524,-0.57054 -1.16043,-1.54043 -1.16043,-1.54043 l 0,2.82636 -4.8903,0 3.39872,-23.01602 -1.92242,-0.85888 0.0403,-2.38127 7.25847,0.0534 z m -23.77803,2.20447 c 0.29175,1.49273 0.0813,4.83252 -0.86111,6.69751 -0.3062,0.60617 -0.94813,1.32967 -1.55479,1.6983 -1.01515,0.61713 -2.21688,1.21322 -3.3966,1.07639 -0.47944,-0.0541 -0.97036,-0.34348 -1.24383,-0.74151 -0.47686,-0.69328 -0.43621,-1.55032 -0.45448,-2.39198 -0.024,-1.06873 0.13137,-2.23775 0.38272,-3.277 0.18705,-0.7744 0.4229,-1.58254 0.86111,-2.24844 0.39037,-0.59323 0.92628,-1.12617 1.55478,-1.45909 0.54854,-0.29014 1.19695,-0.38467 1.81791,-0.40664 0.63637,-0.0231 1.3031,0.0385 1.88966,0.28704 0.3875,0.16453 0.92361,0.3524 1.00463,0.76542 z m 1.29312,-9.69052 -0.64254,6.12262 c 0,0 -1.68393,-0.96858 -2.605,-1.25148 -0.73032,-0.22434 -1.50312,-0.36654 -2.26624,-0.33838 -0.97069,0.0345 -1.91182,0.22099 -2.81751,0.57088 -0.9185,0.35497 -1.78344,0.94565 -2.49338,1.62792 -0.88025,0.84538 -1.51404,1.90455 -2.02977,3.0106 -0.39653,0.84993 -0.69517,1.75284 -0.87975,2.67232 -0.22875,1.14241 -0.44415,2.38719 -0.43937,3.55197 0.01,1.44865 0.0623,2.89489 0.54092,4.26214 0.25525,0.72907 0.71643,1.40578 1.28572,1.9283 0.56835,0.52207 1.29566,0.87604 2.02935,1.11621 0.41072,0.13491 0.85346,0.17274 1.28579,0.16935 1.00285,-0.01 2.03715,-0.0883 2.97671,-0.43999 0.66497,-0.2489 1.21759,-0.73399 1.79298,-1.1502 0.75304,-0.54475 2.16476,-1.86006 2.16476,-1.86006 l 0,1.62374 -0.5751,0 0,1.48807 6.86709,0 0,-2.84135 -1.92841,0 3.21374,-23.57782 -7.37422,0 0,2.33412 z m -93.60062,7.55781 2.33363,15.57933 6.23084,0 4.04243,-11.34169 1.62654,11.34169 5.88425,0 7.05633,-16.38872 0,-2.0141 -6.1713,0 0,2.82349 1.88966,0 -4.04243,10.16973 -0.74151,0 -1.29167,-12.55773 -5.38194,0 -4.7361,12.50989 -1.55478,-12.94538 -6.86496,0 0,2.82349 z m -12.15,0.72146 c -0.56264,0.0892 -1.03524,0.17358 -1.53086,0.45447 -0.737,0.41808 -1.46132,0.95771 -1.91357,1.67437 -0.44123,0.70048 -0.53204,1.57581 -0.66975,2.39196 -0.1751,1.04003 -0.20064,2.10306 -0.19136,3.15741 0.01,0.81614 -0.0138,1.66577 0.35879,2.39197 0.1904,0.37315 0.52874,0.80945 0.88503,1.02855 0.56015,0.34453 1.06632,0.55494 1.72222,0.598 0.72597,0.0483 1.48801,-0.18852 2.10493,-0.57408 0.59422,-0.37072 1.03334,-0.97401 1.38735,-1.5787 0.46117,-0.78744 0.70905,-1.69257 0.90895,-2.58334 0.20377,-0.90704 0.33579,-1.84565 0.28703,-2.77468 -0.0491,-0.92714 -0.18211,-1.88434 -0.57407,-2.72684 -0.2728,-0.58681 -0.70954,-1.00753 -1.29166,-1.29165 -0.44403,-0.21628 -0.99455,-0.24402 -1.48303,-0.16744 z m -6.62442,-0.73581 c 0.65404,-0.6664 1.4072,-1.25479 2.23273,-1.69161 1.0305,-0.54505 2.16429,-0.92749 3.31518,-1.11604 1.51307,-0.24806 3.09342,-0.2847 4.60036,0 0.88055,0.16632 1.78322,0.44742 2.50307,0.98113 0.77409,0.57312 1.35279,1.40936 1.79291,2.26639 0.42901,0.83457 0.6828,1.77223 0.77798,2.70605 0.16564,1.61985 0.024,3.29135 -0.37201,4.87103 -0.33328,1.33759 -0.88436,2.64754 -1.65745,3.78889 -0.67549,0.99679 -1.52894,1.91262 -2.53721,2.5709 -0.89957,0.58746 -1.9718,0.87641 -3.01035,1.15006 -0.87153,0.22963 -1.77166,0.4095 -2.67235,0.40576 -1.21068,-0.01 -2.47998,-0.0817 -3.58589,-0.57511 -1.09854,-0.48896 -1.89728,-1.32739 -2.60455,-2.30013 -0.61123,-0.83995 -1.02561,-1.59975 -1.31932,-2.87516 -0.2125,-0.9233 -0.40006,-2.19912 -0.37215,-3.14592 0.0335,-1.16537 0.3568,-2.74121 0.83416,-3.80434 0.52547,-1.17098 1.17609,-2.3161 2.07489,-3.2319 z m 94.95184,13.82318 c -2.20516,1.01761 -4.61429,1.69636 -7.02343,1.69636 -5.32726,0 -7.22678,-3.12145 -7.22678,-7.22678 0,-7.1251 4.54685,-11.19645 10.0772,-11.19645 3.7324,0 5.56453,1.69625 5.56453,4.47856 0,4.85189 -5.12329,6.27735 -10.41633,6.82001 0.10168,1.73076 0.81446,3.32485 3.3592,3.32485 1.2218,0 2.88401,-0.37315 4.91982,-1.22099 z m -3.22292,-11.77374 c 0,-0.81423 -0.57695,-1.28891 -1.62876,-1.28891 -1.89988,0 -3.46041,1.66212 -3.96978,4.34287 1.45897,-0.20368 5.59854,-0.91613 5.59854,-3.05396 z m -30.33408,11.77374 c -2.2054,1.01761 -4.61457,1.69636 -7.02371,1.69636 -5.32653,0 -7.22671,-3.12145 -7.22671,-7.22678 0,-7.1251 4.54679,-11.19645 10.07785,-11.19645 3.73175,0 5.56382,1.69625 5.56382,4.47856 0,4.85189 -5.12273,6.27735 -10.41568,6.82001 0.10142,1.73076 0.81422,3.32485 3.35884,3.32485 1.22158,0 2.8842,-0.37315 4.91994,-1.22099 z m -3.22305,-11.77374 c 0,-0.81423 -0.57638,-1.28891 -1.62883,-1.28891 -1.89959,0 -3.46023,1.66212 -3.96971,4.34287 1.4591,-0.20368 5.59854,-0.91613 5.59854,-3.05396 z m -82.36051,20.5268 -0.0679,-0.13571 0.98406,-5.66614 2.10303,-15.16698 c 0.0687,-0.40664 -0.0332,-0.61046 -0.30522,-0.71214 l -1.66259,-0.61111 0.37379,-2.57855 6.78556,0 -0.40663,2.71427 0.10142,0.0335 c 2.0016,-1.86631 4.10566,-3.08743 6.24306,-3.08743 2.91821,0 4.95366,1.86577 4.95366,6.78561 0,4.68241 -1.83206,11.6379 -8.14271,11.6379 -2.20534,0 -3.42694,-0.84825 -4.68256,-1.73039 l -0.74621,5.08917 c -0.0341,0.37361 0.0326,0.50898 0.47457,0.54273 l 3.42697,0.33969 -0.37385,2.5447 -9.0589,0 z m 6.78613,-12.04485 c 0.84787,0.71258 1.96788,1.32305 3.22348,1.32305 2.74798,0 3.76601,-3.86811 3.76601,-6.85368 0,-2.002 -0.47476,-3.32542 -1.76432,-3.32542 -1.35696,0 -3.08763,1.4591 -4.30913,2.54506 z m 81.08934,4.85147 0.33969,-2.54464 1.56064,-0.2038 c 0.47498,-0.0683 0.5429,-0.1695 0.61084,-0.67837 l 1.42466,-10.34864 c 0.0335,-0.37315 -0.0335,-0.61046 -0.33914,-0.71214 l -1.69691,-0.61111 0.37365,-2.57855 6.71797,0 -0.44097,3.05395 0.10191,0.0679 c 1.32326,-1.89982 3.22359,-3.46042 5.39485,-3.46042 0.7463,0 2.0359,0.13582 2.61295,0.30538 l -0.84863,6.17508 -3.96972,-0.13582 -0.10157,-1.76443 c -0.0335,-0.30537 -0.10223,-0.40701 -0.37391,-0.40701 -0.64452,0 -1.69636,0.78027 -2.64651,1.76455 l -1.18674,8.61817 c -0.0687,0.54303 -0.0334,0.64474 0.47477,0.67874 l 3.22351,0.27142 -0.37384,2.51081 -10.8575,0 z"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cssscccccccccccccccccssssssssccssscssssscsssccccccccsssssssssccsccsssssssssscsscccccccccccccccccccccccccccccccsssscsssssscscsssssssscsssssssssscsssscsccsscscsssscsccsscsccccccccccsssccccccccssscccccccccccccsccccsccccccc" /><path
sodipodi:nodetypes="cssscccccccccccccccccssssssssccssscssssscsssccccccccsssssssssccsccsssssssssscsscccccccccccccccccccccccccccccccsssscsssssscscsssssssscsssssssssscsssscsccsscscsssscsccsscsccccccccccsssccccccccssscccccccccccccsccccsccccccc"
inkscape:connector-curvature="0"
d="m 509.55935,174.26011 c 0.63327,0.31663 2.06355,1.10555 3.19256,1.13455 0.61476,0.0158 1.25757,-0.18443 1.76781,-0.5277 1.3288,-0.89397 2.46618,-2.23946 3.00784,-3.74661 0.21419,-0.59598 0.0258,-1.89972 0.0258,-1.89972 l -4.22153,-15.51428 -2.18993,0 0.55406,-2.95501 7.01835,0 2.82313,13.48255 5.27696,-10.68586 -2.21631,0 0,-2.92858 7.94179,0 -12.13698,24.69605 -1.87332,2.11078 -2.5329,1.4776 -2.71762,0.29022 -2.53295,-0.23748 -3.08699,-1.50392 z m -13.30698,-16.06545 c -1.0335,2.08005 -1.87803,4.80122 -0.90274,6.90883 0.4032,0.87116 1.49018,1.31738 2.4179,1.56347 0.67214,0.17793 1.42477,0.1102 2.08233,-0.11548 0.53084,-0.1826 0.97383,-0.5762 1.38432,-0.9593 0.44502,-0.4157 0.85733,-0.8875 1.14176,-1.42582 0.24113,-0.45665 0.44375,-0.93526 0.54404,-1.44168 0.22797,-1.1566 0.3958,-2.3252 0.37043,-3.50371 -0.0204,-0.96413 -0.0869,-2.06387 -0.52631,-2.92259 -0.29054,-0.56679 -0.84946,-0.79259 -1.46826,-0.94463 -0.46761,-0.11559 -0.89829,-0.0686 -1.34322,0.11597 -0.72226,0.30083 -1.38368,0.5859 -2.00879,1.05634 -0.63242,0.4762 -1.33915,0.9593 -1.69146,1.6686 z m 0.72346,-4.75648 c 0,0 2.41951,-1.99358 3.81169,-2.50482 0.79109,-0.29085 3.80953,-0.71977 4.57766,-0.3726 1.6247,0.73503 2.49408,1.73759 3.00274,2.86791 0.50868,1.13043 0.77154,2.86756 0.87911,4.12137 0.14648,1.71007 -0.15092,4.16549 -0.58904,6.34083 -0.33179,1.64636 -1.12383,3.02703 -2.02388,4.32576 -1.17506,1.6957 -2.01178,2.37286 -4.04556,2.72004 -1.09051,0.18629 -2.13814,0.51607 -3.59006,0.10268 -1.5866,-0.45183 -2.59522,-0.89615 -3.74599,-1.8017 -0.79994,-0.62933 -1.28003,-1.6992 -1.28003,-1.6992 l 0,3.11766 -5.39426,0 3.74898,-25.38802 -2.12052,-0.94738 0.0443,-2.62669 8.00657,0.0587 z m -26.22853,2.43167 c 0.32185,1.64663 0.0893,5.33062 -0.9498,7.38781 -0.33781,0.66857 -1.04588,1.46667 -1.7151,1.8733 -1.11975,0.68073 -2.44527,1.33822 -3.7466,1.18729 -0.52883,-0.0601 -1.07036,-0.37888 -1.37203,-0.81791 -0.52601,-0.76478 -0.48121,-1.71012 -0.50128,-2.63848 -0.0263,-1.17893 0.14487,-2.46835 0.42212,-3.6147 0.20635,-0.8543 0.4665,-1.74564 0.94981,-2.48024 0.43067,-0.65433 1.02178,-1.24217 1.71508,-1.60939 0.60504,-0.32004 1.32025,-0.42437 2.00521,-0.44854 0.70197,-0.0251 1.4374,0.0425 2.08446,0.31654 0.4274,0.18153 1.01882,0.3888 1.10813,0.84432 z m 1.42642,-10.68922 -0.70874,6.75362 c 0,0 -1.85753,-1.06838 -2.8735,-1.38048 -0.80562,-0.24744 -1.65802,-0.40424 -2.49984,-0.37318 -1.07069,0.0382 -2.10882,0.24369 -3.1078,0.62968 -1.01321,0.39157 -1.96724,1.04315 -2.75039,1.79572 -0.97095,0.93248 -1.67003,2.10085 -2.23897,3.3208 -0.43738,0.93753 -0.76677,1.93354 -0.9704,2.94777 -0.2523,1.26016 -0.4899,2.63324 -0.48461,3.91802 0.011,1.59795 0.0683,3.19329 0.59661,4.70144 0.28155,0.80417 0.79028,1.55058 1.41822,2.127 0.62695,0.57587 1.4292,0.96634 2.23856,1.23121 0.45301,0.14881 0.94135,0.19054 1.41828,0.18685 1.10615,-0.011 2.24705,-0.0973 3.28346,-0.48539 0.73352,-0.2745 1.34304,-0.80959 1.97773,-1.2687 0.83064,-0.60085 2.38786,-2.05176 2.38786,-2.05176 l 0,1.79104 -0.63429,0 0,1.64147 7.57478,0 0,-3.13415 -2.12721,0 3.54494,-26.00772 -8.13411,0 0,2.57462 z m -103.24702,8.33671 2.57413,17.18493 6.87304,0 4.45903,-12.51049 1.79414,12.51049 6.49065,0 7.78353,-18.07772 0,-2.2217 -6.8073,0 0,3.11449 2.08446,0 -4.45903,11.21783 -0.8179,0 -1.42488,-13.85193 -5.93654,0 -5.2242,13.79919 -1.71497,-14.27958 -7.57246,0 0,3.11449 z m -13.4021,0.79586 c -0.62064,0.0982 -1.14194,0.19148 -1.68866,0.50127 -0.813,0.46118 -1.61192,1.05641 -2.11077,1.84697 -0.48673,0.77268 -0.58683,1.73821 -0.73875,2.63846 -0.1932,1.14723 -0.22134,2.31976 -0.21116,3.48281 0.011,0.90024 -0.0148,1.83747 0.39579,2.63847 0.21,0.41165 0.58324,0.89285 0.97623,1.13455 0.61796,0.38003 1.17622,0.61214 1.89972,0.6596 0.80077,0.0533 1.64141,-0.20792 2.32189,-0.63318 0.65546,-0.40892 1.13978,-1.07441 1.53029,-1.7414 0.50878,-0.86864 0.78215,-1.86707 1.00265,-2.84964 0.22477,-1.00044 0.37039,-2.03585 0.31663,-3.06058 -0.0541,-1.02274 -0.20091,-2.07854 -0.63327,-3.00784 -0.3009,-0.64731 -0.78264,-1.11143 -1.42476,-1.42485 -0.48983,-0.23858 -1.09705,-0.26912 -1.63583,-0.18464 z m -7.30711,-0.81171 c 0.72143,-0.735 1.55219,-1.38409 2.46282,-1.86591 1.1367,-0.60125 2.38729,-1.02309 3.65678,-1.23104 1.66908,-0.27366 3.41222,-0.314 5.07446,0 0.97135,0.18342 1.96702,0.49352 2.76107,1.08223 0.85389,0.63222 1.49219,1.55466 1.97771,2.49999 0.47321,0.92057 0.7531,1.95483 0.85808,2.98495 0.18274,1.78675 0.0263,3.63055 -0.41031,5.37303 -0.36757,1.47539 -0.97545,2.92034 -1.82825,4.17929 -0.74509,1.09959 -1.68654,2.10982 -2.79871,2.8359 -0.99227,0.64796 -2.175,0.96671 -3.32055,1.26856 -0.96139,0.25333 -1.95426,0.4517 -2.94774,0.44756 -1.33549,-0.011 -2.73559,-0.0897 -3.9555,-0.63431 -1.21174,-0.53936 -2.09278,-1.46419 -2.87295,-2.53723 -0.67423,-0.92645 -1.13131,-1.76457 -1.45532,-3.17146 -0.2344,-1.0184 -0.44126,-2.42572 -0.41044,-3.47012 0.0365,-1.28547 0.39349,-3.02371 0.92005,-4.19644 0.57967,-1.29168 1.29729,-2.5548 2.2888,-3.565 z m 104.73744,15.24778 c -2.43247,1.12251 -5.0899,1.87126 -7.74734,1.87126 -5.87626,0 -7.97147,-3.44315 -7.97147,-7.97158 0,-7.8594 5.0154,-12.35035 11.11569,-12.35035 4.11711,0 6.13803,1.87105 6.13803,4.94016 0,5.35189 -5.65129,6.92425 -11.48983,7.52281 0.11219,1.90916 0.89836,3.66755 3.7054,3.66755 1.3477,0 3.18121,-0.41165 5.42682,-1.34689 z m -3.55513,-12.98704 c 0,-0.89823 -0.63635,-1.42181 -1.79655,-1.42181 -2.09568,0 -3.81712,1.83342 -4.37899,4.79047 1.60937,-0.22468 6.17554,-1.01053 6.17554,-3.36866 z m -33.46028,12.98704 c -2.4327,1.12251 -5.09006,1.87126 -7.74751,1.87126 -5.87553,0 -7.97151,-3.44315 -7.97151,-7.97158 0,-7.8594 5.01539,-12.35035 11.11645,-12.35035 4.11635,0 6.13722,1.87105 6.13722,4.94016 0,5.35189 -5.65062,6.92425 -11.48908,7.52281 0.11182,1.90916 0.89812,3.66755 3.70494,3.66755 1.34748,0 3.1815,-0.41165 5.42704,-1.34689 z m -3.55514,-12.98704 c 0,-0.89823 -0.63578,-1.42181 -1.79674,-1.42181 -2.09539,0 -3.81683,1.83342 -4.37881,4.79047 1.60951,-0.22468 6.17555,-1.01053 6.17555,-3.36866 z m -90.84852,22.6422 -0.0749,-0.14971 1.08546,-6.25004 2.31984,-16.73008 c 0.0757,-0.44854 -0.0367,-0.67336 -0.33673,-0.78554 l -1.83388,-0.67411 0.41228,-2.84425 7.48486,0 -0.44853,2.99397 0.11182,0.0371 c 2.2079,-2.05871 4.52887,-3.40563 6.88646,-3.40563 3.21901,0 5.46427,2.05807 5.46427,7.48491 0,5.16501 -2.02094,12.8373 -8.98192,12.8373 -2.43264,0 -3.78014,-0.93565 -5.16516,-1.90869 l -0.82311,5.61357 c -0.0376,0.41212 0.0356,0.56148 0.52347,0.59873 l 3.78017,0.37469 -0.41234,2.8069 -9.9925,0 z m 7.48553,-13.28615 c 0.93528,0.78598 2.17068,1.45946 3.55568,1.45946 3.03118,0 4.15411,-4.26682 4.15411,-7.56009 0,-2.2083 -0.52366,-3.66812 -1.94612,-3.66812 -1.49686,0 -3.40583,1.6095 -4.75323,2.80736 z m 89.44624,5.35147 0.37469,-2.80694 1.72154,-0.2248 c 0.52388,-0.0753 0.5988,-0.1869 0.67374,-0.74827 l 1.57152,-11.41514 c 0.0365,-0.41155 -0.0368,-0.67336 -0.3741,-0.78554 l -1.87181,-0.67411 0.41215,-2.84425 7.41037,0 -0.48647,3.36865 0.11241,0.0749 c 1.45966,-2.09562 3.55581,-3.81702 5.95085,-3.81702 0.8232,0 2.2457,0.14982 2.88225,0.33688 l -0.93613,6.81148 -4.37882,-0.14982 -0.11196,-1.94633 c -0.0371,-0.33677 -0.11284,-0.44891 -0.41252,-0.44891 -0.71092,0 -1.87116,0.86067 -2.91921,1.94635 l -1.30904,9.50637 c -0.0757,0.59903 -0.0368,0.71124 0.52367,0.74874 l 3.55571,0.29932 -0.41234,2.76961 -11.9765,0 z"
style="fill:url(#linearGradient5134);fill-opacity:1;stroke:none"
id="path5080" /></g><path
fill="#E2E2E2"
d="M256.023,135.437H196.36c-16.432,0-29.8,13.368-29.8,29.8v73.527c0,16.432,13.368,29.8,29.8,29.8h59.663 c16.433,0,29.801-13.368,29.801-29.8v-73.527C285.824,148.805,272.456,135.437,256.023,135.437z M191.561,165.236 c0-2.646,2.153-4.8,4.8-4.8h59.663c2.647,0,4.801,2.153,4.801,4.8v73.527c0,2.646-2.153,4.8-4.801,4.8H196.36 c-2.646,0-4.8-2.153-4.8-4.8V165.236z"
id="path3" /><path
d="m 531.664,250.155 h 18.498 l -2.809,18.064 h 5.59 37.586 l 2.6,-17.718 c 4.98,-1.091 9.133,-3.455 12.512,-6.693 3.084,4.075 8.566,7.37 18.252,7.37 6.338,0 12.775,-1.807 17.174,-3.687 4.254,2.399 9.463,3.687 15.459,3.687 3.088,0 6.236,-0.355 9.426,-1.023 h 67.135 l 3.354,-24.827 -5.445,-0.764 1.879,-13.356 c 0.371,-2.386 0.449,-4.66 0.449,-6.156 l -0.008,-0.375 c -0.457,-12.191 -8.139,-19.765 -20.045,-19.765 -2.404,0 -4.623,0.314 -6.676,0.852 h -34.189 l -0.035,0.244 c -2.527,-0.701 -5.41,-1.096 -8.686,-1.096 -3.801,0 -7.406,0.555 -10.76,1.598 l 0.105,-0.746 h -12.467 l 1.826,-12.951 H 615.08 l -1.846,7.658 c -1.373,5.704 -2.213,5.793 -4.453,6.03 l -4.508,0.477 c -3.049,-1.424 -6.357,-2.065 -9.602,-2.065 -2.135,0 -4.275,0.284 -6.416,0.852 h -19.291 c 0.502,-1.772 0.775,-3.674 0.775,-5.678 0,-9.601 -6.846,-16.305 -16.646,-16.305 -11.055,0 -18.775,7.721 -18.775,18.776 0,0.951 0.082,1.869 0.219,2.764 -2.135,-0.288 -4.277,-0.409 -5.553,-0.409 -2.053,0 -4.072,0.288 -6.045,0.852 h -31.342 c -2.74,-0.553 -5.641,-0.852 -8.537,-0.852 -7.138,0 -13.492,1.674 -18.808,4.723 l -3.451,-1.461 c -3.711,-1.571 -11.232,-3.262 -18.979,-3.262 -8.933,0 -16.383,2.56 -21.576,7.016 -3.265,-4.473 -8.523,-7.016 -15.228,-7.016 -4.822,0 -9.021,1.477 -12.572,3.44 -2.996,-2.204 -6.796,-3.44 -11.115,-3.44 -2.327,0 -4.48,0.315 -6.476,0.852 h -33.963 l -0.035,0.245 c -2.526,-0.702 -5.41,-1.097 -8.687,-1.097 -20.458,0 -35.307,16.031 -35.307,38.117 0,17.363 10.785,28.149 28.148,28.149 3.087,0 6.236,-0.356 9.426,-1.023 h 88.816 c 3.706,0.676 7.669,1.023 11.154,1.023 8.907,0 16.278,-2.375 21.51,-6.593 4.872,4.252 11.585,6.593 19.728,6.593 3.053,0 6.206,-0.368 9.286,-1.023 h 44.664 2.069 z"
id="path5"
inkscape:connector-curvature="0"
style="fill:#e2e2e2" /><path
fill="#F5F5F5"
d="M255.023,133.437H195.36c-16.432,0-29.8,13.368-29.8,29.8v73.527c0,16.432,13.368,29.8,29.8,29.8h59.663 c16.433,0,29.801-13.368,29.801-29.8v-73.527C284.824,146.805,271.456,133.437,255.023,133.437z M190.561,163.236 c0-2.646,2.153-4.8,4.8-4.8h59.663c2.647,0,4.801,2.153,4.801,4.8v73.527c0,2.646-2.153,4.8-4.801,4.8H195.36 c-2.646,0-4.8-2.153-4.8-4.8V163.236z"
id="path7" /><g
id="g9"><g
id="g11"><path
fill="#FBFDF8"
d="M195.361,251.626c-8.161,0-14.8-6.64-14.8-14.8v-73.527c0-8.161,6.639-14.8,14.8-14.8h59.663 c8.161,0,14.8,6.639,14.8,14.8v73.527c0,8.16-6.639,14.8-14.8,14.8H195.361z"
id="path13" /><path
fill="#F0F4E1"
d="M255.024,152.499c5.964,0,10.8,4.835,10.8,10.8v73.527c0,5.965-4.835,10.8-10.8,10.8h-59.663 c-5.964,0-10.8-4.835-10.8-10.8v-73.527c0-5.964,4.835-10.8,10.8-10.8H255.024 M255.024,144.499h-59.663 c-10.366,0-18.8,8.434-18.8,18.8v73.527c0,10.366,8.434,18.8,18.8,18.8h59.663c10.366,0,18.8-8.434,18.8-18.8v-73.527 C273.824,152.933,265.391,144.499,255.024,144.499L255.024,144.499z"
id="path15" /></g><defs
id="defs17"><filter
id="Adobe_OpacityMaskFilter"
filterUnits="userSpaceOnUse"
x="176.562"
y="144.499"
width="97.263"
height="111.127"><feColorMatrix
type="matrix"
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0"
color-interpolation-filters="sRGB"
result="source"
id="feColorMatrix20" /></filter></defs><mask
maskUnits="userSpaceOnUse"
x="176.562"
y="144.499"
width="97.263"
height="111.127"
id="SVGID_1_"><g
filter="url(#Adobe_OpacityMaskFilter)"
id="g23"><image
overflow="visible"
width="422"
height="480"
xlink:href="data:image/jpeg;base64,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 7fGT6fI+nyPp8j6fI+nyPp8j6fI+nyPp8j6fI+nyPp8D7x8fJtxp1m7Tp5jbw/MfWIjbXTk5SHsH j/sBQ63ZK2AdthqO8vXbUZWrJ0V/oJ7ZB7Sa+ofJMIkS6IySyJRLIkSyJEsiRLIkSyJEsiRLIkSy JVLYiRLYicEr8xfwSemN0kjy8PIdkfxQp0xWEAPYPH/YCh1uyVsAAz08ome2si37qZkumaULspIu 2aRkuyki7KSLspIuyki7KSLspIuyki7KSLtilC6qSLtilC6fNNFu5qz8k7wcI+vkAAHsHj/sBWoQ AAAAAAAAAAAAAAAAAAAAAAAAAHpAf//aAAgBAgABBQD/ACi//9oACAEDAAEFAP8AKL//2gAIAQEA AQUA6w6rz/LM+776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvv qs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qz vvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++qzvvqs776rO++ qzvvqs776rMfLPYHlHyRFUbivuDeUv1FOSVKJkRwE4CcAOAHADgBwA4AcAOAHADgBwA4AcAOAHAD gBwA4AcAOAHADgBwA4AcAOAnARciFyRUK8ndQcgyGxaaqf4fYHlHwRFUjZe68RsqbpGoKIUQkKYY kISEYJDAmBMCYEwJgTAmBMCYEwJgTAmBMCYEwJgTAmBMCYEwJgTAmCQWELCKoSFcNByEhIyxusk5 VVQV0VUL8vYHlGltupyqDlaIMREQaijcUoilMUSKgkZDDIYZDDIYZDDIYZDDIYZDDIYZDDIYZDDI YZDDIYZDDIYZDDIYZDDIYZDDIYZDDIYZDDILGQWKVRSuKORR2KPRCZltDiSYrjFXx9geUaG26nKs vy9KEjxhmONRxuOUMFLAjIjJdF0XRdIXSF0hdF0XRdF0XRdF0XRdF0XRdF0XRdIXSF0hdIXRdCsi sisFTBXHHY49GH4xMhU10y4tTFfw9geUCJ9rlcL6SNHGGBlgbZKGilsShDZQ+kPr/wBX0fSGygtC CtoVNDjI6wPsElgzCGjlLrdTden2B5QZfGvnYbCIkdkYZGmihsSn61ItJXQOtD7JIZJTBm0X6+Hs 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 DNdYwcM11jBwzXWMHDNdYwcM11jBwzXWMHDNdYwcM11jBwzXWMHDP+z/AEd/2MzUhXbvz7H6XVO/ Y7vFJSkpSUpKUlKSlJSkpSUpKUlKSlJSkpSUpKUlKSlJSkpSUpKUlKSlJSkpSUpKUlKSlJSkp+le p3d6ndOn4OZqQrt349EOqp0QT9PVfzGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGC9X RVh9/wAjo8nRfnmakK7d+H+LqdVEefTqonYYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBg wYMGDBeqd/uKip2+/wAszUhXbsqOutURVT9SidhgwYMlZ/XsGDBgvYVFQVOnb6fHM1IV27J0QR95 O6idhOwyaWC9hU6d/oK6v0+GZqQrt2RFVOyCdhBJrUU/cRO6N+GZqQrt06CL07qIJNiijydGjzsu ZqQrt0dd/MRBBJsUUU/y+8uZqQrt06/YQQSbFFFOv2WXM1IV26KIJNyij0uZqQrt0e8iCTcoo/Lm akK7dHvIggk2KKKPy5mpCu3R7yIJNyij8uZqQrt0e8iCTcoo/LmakK7dHvIgk3KKPy5mpCu3R7yI JNyij8uZqQrt0e8iCTaooo/LmakK7dHvIgk3KKPy5mpCu3R7yIJNyij8uZqQrt0e8iCCTaoo/Lma kK7dHvIggk2qKPy5mpCu3R7yIIJNqij8uZqQrt0e8iCCTaoo/LmakK7dHvIggk2qKPy5mpCu3R7y IIJNqij8uZqQrt0e8iCCTaoo/LmakK7dHvIggk2qKPy5mpCu3R7yIIJNqij8uZqQrt0e8iCCTaoo /LmakK7dHvIggk2qKPy5mpCu3R7yIIJNqij8uZqQrt0e8iCCTaoo/LmakK7dHvIggk2qKPy5mpCu 3R7yIIJNqij8uZqQrt0e8iCCTaoo/LmakK7dHvIggk2qKPy5mpCu3R7yIIJNqij8uZqQrt0e8iCC Taoo/LmakK7dHvIggk2qKPy5mpCu3R7yIIJNqij8uZqQrt0e8iCTcoo/LmakK7dHvIgk2qKKPy5m pCu3R7yIJNyij8uZqQrt0e8iCTcoo/LmakK7dHvIgk3KKPy5mpCu3R7yIJNyij8uZqQrt0e8iCCT aoo/LmakK7dHvIgk3KKPy5mpCu3R4QSblFHpczUhXboqfcQQSbVFFT7y5mpCu3RPzEEEmxRRRHZc zUhXbojyfRR1RBJsUUUX7JLmakK7dk/bVfAgk2KKL37qwVV+suZqQrt2RHk+giook2L3F7i9GJ8M zUhXbsqItFRFRRO40aNmVo0aL3FhuL5+OZqQrt34I69REVFGjRo0aNGjf6po0aNGjRo0XuK5DXv9 zqrV+OZqQrt349UXt9hEVeijRo0aNGjRo0aNGjRo0aNGjRo0aNGjRo0aNGjRo0aNGjRo0Xq9/YVH V6OnVflmakK7d+XVOw3qh0e7FM7PJ7KQ0aNGjRo0aNGjRo0aNGjRo0aNGjRo0aNGjRpSKaH6V6nR 3sh1eXr+BmakK7d/C7KqFJfZTX2U19lNfZTX2U19lN72U3vZTe9lN72U3vZTe9lN72U3vZTe9lN7 2U3vZTe9lN72U3vZTe9lN72U3vZTe9lN72U19lNfZTX2U19lNfZSX2d3l/Ej/wAj/wCf+7/jD6/y f5/7tBOnX+L/AMfr+5tPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPK m08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptP Km08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKm08qbTyptPKn/jan//Z"
transform="matrix(0.24 0 0 0.24 174.5615 142.499)"
id="image25"></image></g></mask><g
opacity="0.09"
mask="url(#SVGID_1_)"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
id="g27"><path
fill="#1D2915"
a:adobe-blending-mode="normal"
a:adobe-opacity-share="0"
d="M195.361,251.626 c-8.161,0-14.8-6.64-14.8-14.8v-73.527c0-8.161,6.639-14.8,14.8-14.8h59.663c8.161,0,14.8,6.639,14.8,14.8v73.527 c0,8.16-6.639,14.8-14.8,14.8H195.361z"
id="path29" /><path
fill="#1D2915"
a:adobe-blending-mode="normal"
a:adobe-opacity-share="0"
d="M255.024,152.499 c5.964,0,10.8,4.835,10.8,10.8v73.527c0,5.965-4.835,10.8-10.8,10.8h-59.663c-5.964,0-10.8-4.835-10.8-10.8v-73.527 c0-5.964,4.835-10.8,10.8-10.8H255.024 M255.024,144.499h-59.663c-10.366,0-18.8,8.434-18.8,18.8v73.527 c0,10.366,8.434,18.8,18.8,18.8h59.663c10.366,0,18.8-8.434,18.8-18.8v-73.527C273.824,152.933,265.391,144.499,255.024,144.499 L255.024,144.499z"
id="path31" /></g></g><g
id="g33"><g
id="g35"><linearGradient
id="SVGID_2_"
gradientUnits="userSpaceOnUse"
x1="225.1929"
y1="152.499"
x2="225.1929"
y2="247.6265"><stop
offset="0.0123"
style="stop-color:#C1D72F"
id="stop38" /><stop
offset="0.1394"
style="stop-color:#BCD631"
id="stop40" /><stop
offset="0.5859"
style="stop-color:#AFD136"
id="stop42" /><stop
offset="1"
style="stop-color:#ABD037"
id="stop44" /><a:midPointStop
offset="0.0123"
style="stop-color:#C1D72F" /><a:midPointStop
offset="0.3086"
style="stop-color:#C1D72F" /><a:midPointStop
offset="1"
style="stop-color:#ABD037" /></linearGradient><path
d="M184.562,236.826c0,5.965,4.835,10.8,10.8,10.8h59.663c5.964,0,10.8-4.835,10.8-10.8v-73.527 c0-5.964-4.835-10.8-10.8-10.8h-59.663c-5.964,0-10.8,4.835-10.8,10.8V236.826z"
id="path46"
fill="url(#SVGID_2_)" /></g><defs
id="defs48"><filter
id="Adobe_OpacityMaskFilter_1_"
filterUnits="userSpaceOnUse"
x="184.562"
y="152.499"
width="81.263"
height="95.127"><feColorMatrix
type="matrix"
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0"
color-interpolation-filters="sRGB"
result="source"
id="feColorMatrix51" /></filter></defs><mask
maskUnits="userSpaceOnUse"
x="184.562"
y="152.499"
width="81.263"
height="95.127"
id="SVGID_3_"><g
filter="url(#Adobe_OpacityMaskFilter_1_)"
id="g54"><image
overflow="visible"
width="356"
height="414"
xlink:href="data:image/jpeg;base64,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 zFhO7bfhcyUttpzKJlCjZiwndtvwuZKW205lEyhRsxYTu234XMlLbacyiZQo2YsJ3bb8LmSlttOZ RMoUbMWE7tt+FzJS22nMomUKNmLCd22/C5kpbbTmUTKFGzFhO7bfhcyUttpzKJlCjZiwndtvwuZK W205lEyhRsxYTu234XMlLbacyiZQo2YsJ3bb8LmSlttOZRMoUbMWE7tt+FzJS22nMomUKNmLCd22 /C5kpbbTmUTKFGzFhO7bfhcyUttpzKJlCjZiwndtvwuZKW205lEyhRsxYTu234XMlLbacyiZQo2Y sJ3bb8LmSlttOZRMoUbMWE7tt+FzJS22nMomUKNmLCd22/C5kpbbTmUTKFGzFhO7bfhcyUttpzKJ lCjZiwndtvwuZKW205lEyhRsxYTu234XMlLbacyiZQo2YsJ3bb8LmSlttOZRMoUbMWE7tt+FzJS2 2nMomUKNmLCd22/C5kpbbTmUTKFGzFhO7bfhcyUttpzCZQo38SwndtvwuZKW20dTVfvQQ+cmUXiI xFhxUsJ3bb8LmSlttGVPp8/C/go1fkTjky8RyqsB9T6KvD8CwndtvwuZKW23BKNR3wqftX+qCcRO JwyLiLxF4i0Ka8V/cuFhO7bfhcyUttuCKi/CpBRtOs74cnBF/qJ+oiRIkSJEiRIkSJEiRIkSJEiR IkSJEiRIkSJEiRIkReIv6hadFfl31d9EFc5flViuFhO7bfhcyUttv2ERrvzNT/VT4qIrf+TqIdVD qodVDqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTqpqdVNTq pqdVNTqpqdVNTqpqdVDqodVDqC/xorl0F/O74av+qfYsJ3bb8LmSlttyywndtvzD/9k="
transform="matrix(0.24 0 0 0.24 182.5615 150.499)"
id="image56"></image></g></mask><g
opacity="0.35"
mask="url(#SVGID_3_)"
a:adobe-opacity-share="1"
id="g58"><path
a:adobe-opacity-share="0"
d="M184.562,236.826c0,5.965,4.835,10.8,10.8,10.8h59.663 c5.964,0,10.8-4.835,10.8-10.8v-73.527c0-5.964-4.835-10.8-10.8-10.8h-59.663c-5.964,0-10.8,4.835-10.8,10.8V236.826z"
id="path60"
fill="#1D2915" /></g></g><linearGradient
id="SVGID_4_"
gradientUnits="userSpaceOnUse"
x1="226.1924"
y1="159.7139"
x2="226.1924"
y2="200"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop63" /><stop
offset="0.3788"
style="stop-color:#F8FBF3"
id="stop65" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop67" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.4383"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></linearGradient><polygon
fill="url(#SVGID_4_)"
points="221.189,159.714 214.142,180.951 224.048,180.951 214.142,200 238.243,173.61 227.655,173.61 236.978,159.714 "
id="polygon69" /><g
id="g71"><g
id="g73"><g
id="g75"><image
overflow="visible"
opacity="0.75"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="392"
height="242"
xlink:href="data:image/png;base64,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 SUVORK5CYII="
transform="matrix(0.24 0 0 0.24 179.2061 198.1514)"
id="image77"></image><g
id="g79"><radialGradient
id="SVGID_5_"
cx="225.1929"
cy="226.1387"
r="30.8299"
gradientTransform="matrix(1 0 0 0.75 0 56.5347)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop82" /><stop
offset="0.4828"
style="stop-color:#FDFEFB"
id="stop84" /><stop
offset="0.7611"
style="stop-color:#F8FBF3"
id="stop86" /><stop
offset="0.989"
style="stop-color:#F2F8E8"
id="stop88" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop90" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.8025"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><path
fill="url(#SVGID_5_)"
d="M186.706,235.825c0,5.965,4.835,10.801,10.799,10.801h55.374c5.965,0,10.801-4.836,10.801-10.801 v-19.373c0-5.965-4.836-10.801-10.801-10.801h-55.374c-5.964,0-10.799,4.836-10.799,10.801V235.825z"
id="path92" /><path
fill="none"
stroke="#EDF5E5"
stroke-width="5"
stroke-miterlimit="10"
d="M186.706,235.825 c0,5.965,4.835,10.801,10.799,10.801h55.374c5.965,0,10.801-4.836,10.801-10.801v-19.373c0-5.965-4.836-10.801-10.801-10.801 h-55.374c-5.964,0-10.799,4.836-10.799,10.801V235.825z"
id="path94" /></g></g><path
opacity="0.74"
fill="#FFFFFF"
a:adobe-blending-mode="lighten"
d="M263.623,229.595c0.037-0.364,0.057-0.734,0.057-1.107 v-13.375c0-5.965-4.836-10.799-10.801-10.799h-55.374c-5.964,0-10.799,4.834-10.799,10.799v7.324 c7.545-1.012,15.699-1.566,24.213-1.566C231.959,220.87,250.812,224.252,263.623,229.595z"
id="path96" /><linearGradient
id="SVGID_6_"
gradientUnits="userSpaceOnUse"
x1="225.1929"
y1="204.3135"
x2="225.1929"
y2="246.626"><stop
offset="0.0123"
style="stop-color:#FFFFFF;stop-opacity:0"
id="stop99" /><stop
offset="0.0141"
style="stop-color:#FDFDFC;stop-opacity:2.231669e-04"
id="stop101" /><stop
offset="0.1344"
style="stop-color:#BEBEAF;stop-opacity:0.0148"
id="stop103" /><stop
offset="0.2565"
style="stop-color:#94957C;stop-opacity:0.0297"
id="stop105" /><stop
offset="0.3796"
style="stop-color:#747759;stop-opacity:0.0446"
id="stop107" /><stop
offset="0.5029"
style="stop-color:#5D633F;stop-opacity:0.0596"
id="stop109" /><stop
offset="0.6263"
style="stop-color:#4D552E;stop-opacity:0.0746"
id="stop111" /><stop
offset="0.75"
style="stop-color:#414B23;stop-opacity:0.0896"
id="stop113" /><stop
offset="0.8742"
style="stop-color:#3B461E;stop-opacity:0.1047"
id="stop115" /><stop
offset="1"
style="stop-color:#38441C;stop-opacity:0.12"
id="stop117" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF;stop-opacity:0" /><a:midPointStop
offset="0.2901"
style="stop-color:#FFFFFF;stop-opacity:0" /><a:midPointStop
offset="1"
style="stop-color:#38441C;stop-opacity:0.12" /></linearGradient><path
fill="url(#SVGID_6_)"
a:adobe-blending-mode="darken"
d="M263.68,221.954v13.871c0,5.965-4.836,10.801-10.801,10.801 h-55.374c-5.964,0-10.799-4.836-10.799-10.801v-13.871l0.038-7.704c0,0,0.923-9.937,11.173-9.937h54.962 c0,0,10.063,0.328,10.801,10.799V221.954z"
id="path119" /></g><g
id="g121"><g
id="g123"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAuJJREFUeNrsl9trE0EUxjO7m5vW tKFN1RqLCmqlIvjgkz5I/cOFIqLggw9KsRHxUo1IdEtactG9+A1+A8dxNrsxK/rgwI9lt5ueb875 ZuZspfJ//Bhqjvc0AfCIHClIQEzSMkUoBqyCJbAKWrxXQoBmBL6AQzChmGQREWbmNQY/DS6Aa6AL mtZvdcDPoEcOQEgxUV5mVMYzH5wCZ8FFcJ0CLoN1UHeIGII34AV4BvbBW4qbzsqKctzruq+ALXAL 3ABXwAafNyjS9sQ3cAwG4BXYA0/AU/AejLOE+I4MtME22AH3wE2wyedNivSFQT3eB/y79kwHnGE2 v4IjinCaNrBEtJiBu2SLs686VkRWGRt8/wTL5jFwxIxMbSGB+Ac1qtcluEMBbWslFDV7QBFdlmBE bwxZtthVDn1dpgF3WIIOhakF9iCf2ajQK32W5hcRJgvnmYHb9ECzQAnyhif8o7PxkWImsiQeRSyJ fWCjJAGy5G2usKtgzc6wx5dWxT6wYhm2jKNBm/UcV90m/aLsdLVoonX+QJV8RvmcXNflNVOOKktQ Fz4p+6AMrBg/GUeeFWUHd51HyuXevz7+GRELNSRzjMwYnmhI5Laa/gEBYxEjskVE7Ih67AeOi3ZE BYc55j+xxzjgpBMpImZL1mNDMuDxm5aYBT2x1+wx+vZJ6lt94kl2Ux1uWl4JWZhy9g/AQ/DOPjt8 q0ULuLebhiRYYO8wPUTIdm+X1zDrKE/FKjH95TL3eP83MiIF7FHAY2ZkYpfadxhoRE80WJ66EKIK BE9YAiPgPkW8dPUSFUfDGnMpHVmKvQJCEoofcsamBLs0fOgSUMnomo2QQ66UAbMTi4+hmOk2mGZW B39OE+rgj5iBcNb3h5qxk9boDb1SLrEh2c75+NlnCfT1A4OP8nZiVeAT0IhZY0Ni+gHP8oEpQ59Z HHP2uRtfkeUnxTj7AWHqMU0ZiRVX2ld5kZ4jnSewHN8FGACSOOKkAlOGAAAAAABJRU5ErkJggg=="
transform="matrix(0.24 0 0 0.24 199.0298 216.5547)"
id="image125"></image><g
id="g127"><radialGradient
id="SVGID_7_"
cx="202.6289"
cy="219.7041"
r="2.9995"
gradientTransform="matrix(1 0 0 0.75 0 54.926)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop130" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop132" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop134" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_7_)"
cx="202.629"
cy="219.704"
r="2.999"
id="circle136" /></g></g><g
id="g138"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAhCAYAAAC1ONkWAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAtFJREFUeNrsmP1LFEEYx292Ts3V 9ujFrCiwFyPShH4I+imoiPqbhYKIoKigN0W8SulNIrOU63S921u/A9+BYdm9mbndg4IGPiynuzOf eea52WeuVvvf/Joo8VwA6rxm+0lBD3R5TYctpu6XYBRE4DiYzMhpqRbYBDtgHyQ+gsIzQmMUOg3O gzkwzciZTUXqO1gCH8E3CsauERSOUiOgAc6AC2ABXAYXwZECsV/gPVgBb8AH8AVsg45NTjhKTYGr 4Aa4AmYZqYjLmpdj+4ySilwTLIOn4C34YZOTjlLXwH1wC8xzKSMureQym0g+O85ITxP1uU3hPS6r t5j63zFK3QM3uYwNQ0g45KUSPMSJNLjsLS71blHUZJ9Ox5lDSuo2k32SHYsBvslKcAIc5jJvUK7r I1ZntK6Du8yryBJhW9P73hi3jg2ym7ek0hKtO0z4E5xx2RYYOany7DPYyotaUPCwyoVL3KemKpLS TX+h5jhGI88jT0x9/U9yrzoHwoL7ykQtZN8LHGvURUxy05xhntWH8I7WOTzDsaSLmOAMQl6DIYgF mTGEi5iWEyWqD9dtpHCMoPaXtn9KrHSR59CsYxSJ6SKv1e9FW6L1MmM4iXWMIu8ri7u04mjF7HuJ Y3VcxLqciaqfVlnYJRWKJexzlWNs5r2SZMGMNOp1cRYc5atEVBCtPVazD8AzHzHdQUKZUyzywoIT kY9Uh9XrC4o1WTimPmI9ouv9iAXfIHKm1GtKvSyKlq2C1Una5sMTLBRHPN4MOvIxpV6BRfCEJU/s W8Ganf4xzoaCf5dGaS36JHnMKnWNUg/BY35uD1rza7ku5bY4658cMDHkEt6nUZP4TQG1dI/Ic/CJ /SVVHHglS2J94pnluXLecuB9x3Nlk5+3jUlV9hOBMAQjCpn1lMikgFrCdQrtGEKp62CDlCtaMLQc eNu+QmV/7XGp2cyN2rsdCDAAoyXZx8WJpTUAAAAASUVORK5CYII="
transform="matrix(0.24 0 0 0.24 213.9448 216.5547)"
id="image140"></image><g
id="g142"><radialGradient
id="SVGID_8_"
cx="217.5439"
cy="219.7041"
r="2.9995"
gradientTransform="matrix(1 0 0 0.75 0 54.926)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop145" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop147" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop149" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_8_)"
cx="217.544"
cy="219.704"
r="2.999"
id="circle151" /></g></g><g
id="g153"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAhCAYAAAC1ONkWAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAttJREFUeNrsmO9r00Acxptc1m6d Fn9M125sU4RVpyjiSwXB/9wXulciiE4dhpUMpwzFUa02XdP4HDwHR7hcLk0mCh58WOnI9548973k uTYa/0e54c15nQ8E8TJ1UpKQ2Z8QJgUtgDa4CC6AliZOiYrBCfgGfoLTsgK9OQStgE2wDa6DDv+v hhQwBAdgH0TgS1mBLsIEBV0F18BNcJvC1sCyQdgIHFHYG/AODMAxBSZVhQXgHJ15AO5T2Aa4TMHC 0GMJBXwFhxT2Erygkz/AtGhim1NS1A3wCDwGO+AKBS3QKS+nrlp6eQProKe5G4LvNucCS0+1uXQP wRNwj6JaFkH6SgitNxeJ0BwNueSzMsIC3ulduiX/roJmpp9cWkVQ1CrrqB17ws+TPGdM3y3Rftnk fTpVVlS2ZpN1+qy7znl8V2HSrUvcdbKnutryVRk+63RZd5vzBC7ClFvyMXALbHEDiJreNGpDbbH+ Wp5rJmEd7sQ+n13NCq8uU881WbfPeTquwtq0u1ezW1nXepyn7SJM9dgSCc4oPBTO4Rus9jKJwatZ lGeZy+rYXzH+GWEpXxEq5Kl8VecwBcnURVjMgCcZn5GwsTZH7CJMD3khL5zWLGzKuiHnGZpe5CZh I6bO9wx7v+bN7YYxY70j1o/yEoZpKSdMmntMoMq1tIYlVG7ts/4x50tddmXCEDfgxRETZ1JRWMI6 EesObGFRWCyfaa+oDl8jQd4DscApJUr21S54Dj7wu1JBUW2Ct1rybDDRntditUtPnWor8Aw8Zd2h rXdFQdGYd6WfbPTYnOeeEiSv/cTDyC5FvbL1luspSSXPFUYUmaHu8KS0yfjdMpySYp6QIop6TZdC njEnRTvdpVc8Lt0yBW4wS+04HHj3+Fg4pKARnUxdJnVNBL7hSNal4OxPBFLAZ/CRzumn8NR1wrKR xdfy1KLlwDvmw3RaRlDVX3s8h8dGWiUE/BZgAMf82R9IYLF+AAAAAElFTkSuQmCC"
transform="matrix(0.24 0 0 0.24 228.8599 216.5547)"
id="image155"></image><g
id="g157"><radialGradient
id="SVGID_9_"
cx="232.459"
cy="219.7041"
r="2.9995"
gradientTransform="matrix(1 0 0 0.75 0 54.926)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop160" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop162" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop164" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_9_)"
cx="232.459"
cy="219.704"
r="2.999"
id="circle166" /></g></g><g
id="g168"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAt9JREFUeNrsl91rE0EUxTOzm69a 05YmVWsUFdRKRfDBJ32Q+ocLRUTBBx+UYiOitlqRaEos2UT3w3P1jIzrbHZNVuiDAz9CNru5Z+69 M3O2Uvk/fg414zOCDzSxRwJiEJGkTBGKAatgEayCFr8rS4AwAp/BIRhTTDyPCDPzGoOfAhfANdAF zdT/SMBPoEf2wYBiQldmVAEBHjgJzoCL4DoFXAZroO4QMQRvwAvwDOyCtxQ3SWdF5QiQui+DDXAL 3ABXwDqvNygy3RPfwBHog1dgBzwBT8E7ENhCvJwMrIBNsAXugZvgPK83KdKzGlTzu8/fpWc64DSz +RV8oYhfTetPEdFiBu6SDc6+6lgRWZNo8P4Flk0zcMiMSGkSP+MPalQvJbhDASuplVB0RfkU0WUJ RuyNIcsWucoh15bYgFssQYfC1Bz7kcdsVNgrByzNHyJMFs4xA7fZA80CJcgb2uofycYHihlrh4hF ax9YL0mAGT7LKivsKmjLpLXjplVrH1ie0ryzlkWa9SxXnWR5QTv6ocUmWuMDqlLu8Di5ruk1Vzmq LEGdD5QtQln7yI8YespZUXbwzBi6cgzGsRTx14ZkxvFbDJeI9Laa/AMBgRUjTIsI6Yh69ANH0xzR DMMc8x/pMcTwjNIiIlqyHg1Jn8dvUmIWZGKv6THk/Jh4GWqFE3RTHW5auoQsTDj7B+Ah2JOzI8vU RNxQ2pYh8efYO4yHGNDubfNzkHWUJ9YqMf5yiZ7AmyEjtoAdCnjMjIj5TbycBhqxJxosT90SogoE j1kCI+A+Rbw0XmKaxzQlCXjz2GpOXUBITPFDztiUYJsNPzAC8kQklpBDrpQ+sxNZL0MR020wZlaC P2cTSvBHzMAg/f6hCu6qNfaGrJRLNCSbOS8/uyyBfL5n8JFrJy7a7Solpk1DYrynTvWBKcMBsxhw 9nEZL8S2GNtzuJo6YFOG1oor7a28iOdI8gLb47sAAwCDFN6m03jgxgAAAABJRU5ErkJggg=="
transform="matrix(0.24 0 0 0.24 243.7749 216.5547)"
id="image170"></image><g
id="g172"><radialGradient
id="SVGID_10_"
cx="247.374"
cy="219.7041"
r="2.9995"
gradientTransform="matrix(1 0 0 0.75 0 54.926)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop175" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop177" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop179" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_10_)"
cx="247.374"
cy="219.704"
r="2.999"
id="circle181" /></g></g><g
id="g183"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAn9JREFUeNrsl+lrE0EYxvdKjSZW YxEPxBsVrNdHQTxA/KMFBRGPDwoVVIpoq3jUeJUG25qk2fVZ+A28WTabxG4lHzrwgxw78z7zzMw7 73reBDR/jOcCUREhn21LRCy6osfn0kT4BN0h9oiDoiGmTN8Efoum+CHWEBRvRoSbeZXgR8QZcVEc F7syfTcI/kq8Fgviu1jlv3hcET627xXHxFlxWZwXJ8RMxgmPIKkTn8UbMSdeinfiq1hnmUYS4QTs F5fENQSc4rfUgahgT7TFivgk5sVj8VQs4kqukGiAgCviDiKOijr/BUOWL7t/9uGaVyTEighYggsI uI79NQYfdY9FPF8x/WL2xiJLk9hOoelcJehtcYslqI8hYNDGrvP9G5t1PbtRQ+NIg/W/KWaxNNpk DnK5JZ35TzbuCq70ibAu3BBXxWHW1i8hGbpc0+akNLNuBDAtTopz4kBJAuxEC8cPzIlI88BpOoQl Xw1TuDtLsqvZkxbwUA2FjZxEVJYbdROj4mWOpVuzCMoWYGPlxggm4SrfFmFFJOTzDUi2KFY8KIYT sUoSWRadLRDSM0XPMgVPn4guOT0tSN6KVtHd/w8tYWJfqDHeM+m+jBkTeIEaoEmKTUp0oXD80Kjt kU4PkVSqJWTOhIDpFf5APBFLOOPliYhxZgYR00MKmVEEuKWeQ8Q8ruRe5Xb3po7s5CqvDSjnxhVw XzzjFu3k5XTbuuziNYLvZolCk+KHBU8n8QcBL8Rd8VB8yCto8kTEDNBCTIdBg4wQvyD4L6rsdOb3 xKNhhW44IKm4wZaghSAnoIdrHWhz/m3wlOfiI86OXPJPzMvPxLwG/tcX4u3m2l8BBgBQ/dU5d1Za tAAAAABJRU5ErkJggg=="
transform="matrix(0.24 0 0 0.24 199.0298 230.2217)"
id="image185"></image><g
id="g187"><radialGradient
id="SVGID_11_"
cx="202.6289"
cy="233.3711"
r="2.999"
gradientTransform="matrix(1 0 0 0.75 0 58.3428)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop190" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop192" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop194" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_11_)"
cx="202.629"
cy="233.37"
r="2.999"
id="circle196" /></g></g><g
id="g198"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAhCAYAAAC1ONkWAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAmlJREFUeNrsmM9r1EAUx3cz2XW1 il2wLLagIh5aeilUBC967EX/XA/1It5aUaiC2JNY/EWp0lZkG3c3id+Bz0AIaXayibKHDnzIJfPm s29eZl/Sas3paNeYZ0SHaz5OKmIx5pr+azF7fyh6oi+WxXURZGJZiUScim/iWERiUkWwXTFDlxG6 I1bFBnKd3P1jpPbEvviE4JlvBtueUl1xQ9wVa2ITsdtkzOTmxGTsALE34oP4KH6I0TS5tofUJXFT PBCPxToZ67OlZTUWkSmbsffipXglvos/ZXLGI1N2qx6Kp+KRuFcgVYRh/oJYEgNxle08EUNqsbJY SDAnZa8r1FlYoQzc02sFF5n/W/wskzMlAReopydkaoVtDWocL1bqGtv8Bblx0YSgJFt9xNbJXLfG uZctjQEx11gj9M2YDXCFiVviflmAGeQCYtlt/MxTOvbJmEFkFZqSyu9GNr7xEXNP4gbnVK/mFhZl rUdsd0B3fcQCDs3lcw7PJobJrRH4iE37g24qa6VrBK05HRdiTYjVbvI8xtQ1isSyTd4pE5secW6N xEdslGnyDmhd0oazFRF7j7VGPmIxPdQ+HNMWNzUmBfFj3+7C1YDtMG7RT3UaONMS+jErtC1e05tV EksyPdkAyToHbsqW2e51R7ygs42qNooJaU/oPF2TF8wgl2SkdsVz8Y5sJVXFUvryX6TfNXld5HwE U37cWUbqGdfDsto1njVxQjscQ8jc8+SckO25jqipHTK1i+Ro1peR7FM6pKH7StAhC7uam7CQI+J+ J7RNTb0lU7Vf3+b6hXeuPxH8948qF6Pq+CvAAGGezDColMK7AAAAAElFTkSuQmCC"
transform="matrix(0.24 0 0 0.24 213.9448 230.2217)"
id="image200"></image><g
id="g202"><radialGradient
id="SVGID_12_"
cx="217.5439"
cy="233.3711"
r="2.999"
gradientTransform="matrix(1 0 0 0.75 0 58.3428)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop205" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop207" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop209" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_12_)"
cx="217.544"
cy="233.37"
r="2.999"
id="circle211" /></g></g><g
id="g213"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAhCAYAAAC1ONkWAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAlRJREFUeNrsmM9LG0EUx5PdjTTW otDYWmoOQm2M/YGXnrxI/3IvnnoRW7TagocotqjQtLYp5pffgc/CECc7u+uGpuDAB2Y32Tff9+bN 7Jstlaa0lXM+E4gIAsd/BqIHpj+cpLBY0Ix4JBbhwYg4I+SvOIdf4jqrwHIOQUvihXgtVsWCQ9gP 8UV8El/Ft6wCyyl+DxH0XLwUb8UbxD0V1RE7ZtCO+I6oj2JPHIlTBPZ94sqe3yIi0hCb4h1Reibm iOK4HDPRuRJnRO+D2BGHRLSXJC7yRGpeNMV7sYXAeQSFCU6FRHIGB56IGveMI/uIGxu5JGFzTN0W wpqIijIsmpDFYZ55hah4xRpxP7MIM4NWWHEbTGGDKY1ybi8VKyVM/l2wYjtM+S1xrvww9x6KulgX K0QqvOOeGafGCnbrjOPScOtmnPA1Hm7Sr+TcjF2Rq2F3nb4zNVzCZsWyWMOr2XFe5WgB9urYX+ba KywkF1bJh8d4WWSrYLdhbdBhmohVrddNtYApLOUZI0jxgp6EMO8YQWlK272wuwobFlHkeVqqMVzC OlaR15mQMO8Yo8L6VpFnypNL0S1YWBe7h4wTVxneiP0RJ+KzaHE9KEjUAHst7J9wnWoqe7z9TVly QL9bwJQOsXOB3X36vbTVhfHqN16Zh49F2xXujK2PnWPsthhnkLYeiz0ziblrVZ55CkV7Ftrk1Q52 z5NmIkowdsUBIrIqz7SltR2la0vUNhxhP3PNP7RCf4CouPIs4jDS9p2U/svj21QfeKf6E8E/+ahy 37K2GwEGAJb/2mQI89WQAAAAAElFTkSuQmCC"
transform="matrix(0.24 0 0 0.24 228.8599 230.2217)"
id="image215"></image><g
id="g217"><radialGradient
id="SVGID_13_"
cx="232.459"
cy="233.3711"
r="2.999"
gradientTransform="matrix(1 0 0 0.75 0 58.3428)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop220" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop222" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop224" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_13_)"
cx="232.459"
cy="233.37"
r="2.999"
id="circle226" /></g></g><g
id="g228"><image
overflow="visible"
opacity="0.25"
a:adobe-blending-mode="multiply"
a:adobe-opacity-share="1"
width="30"
height="30"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAnpJREFUeNrsl2lrE1EUhmdLjSZ2 sYgL4lqsYN0+CuIC4o8WFERcPii0YEsQtYpL3cVgW7PMjO+F55ZhmMlMzATyoRceSDKZc957zplz zzjOBCz3P+/xRE34fE6uWESiJ0I+VybCxekeMSMOizkxlbATwx/xRXwXWwiKRhFhd17H+TFxVlwU J8W+lJ0+zlfFmngjvolNrkXDinAJ+6w4IRbFZXFenBLzqUg4ODGR+CheimXxQrwWn8U2aSolwgo4 KC6Jawg4w28mAsGAmuiI3+KDaInH4qlYJyo7QoISAq6IO4g4Lppc8wrSl66fA0TNSQvJE+GRggsI uE74GxgvW8gB/68l7ouojXVSE/s5N9dxelvcIgXNIQTkFXaT718pViMiyjIa8OiZ/N8US4Q0GLEf 2d5iauYHhWtqpu8PiMINcVUcJbduBY3R9poOT4rpJdteRi1Mi9PinDhUkQC7/Cz7aRH2iTB9YIEb /IqPiSmiu0Sza3gZf2qgcC6jEVUVjWbCR83LOR8CqFpAMu07PrxJOMp3ReSJiOnnfYjH5DdK+sgS sUkT+SW6YxASJoYe46OXFtGjp5uB5JVop8/+EVfMxj4xY7w1m/YywtRmGmqhtlNhNMIs+36O2pB2 fYSmUq+gc8ZsyBzhD8QTsWEikyciomjnETFdMMiUEWBTvYyIFlGJ/ILqNRHZy1HeyBnnhhVwXzzj FO06BSHuUcVbON9Piuy7hlvCudnEXwSsiLvioXhnB5oiEREG2ojpYtRLCXEHOP/JlG12fk88yhp0 /RJNxRrbgDaCrICQqHWhw/OfdG54Lt4T2dIj/8S8/EzMa+DYX4h3l13/BBgABM7SO70ZkkMAAAAA SUVORK5CYII="
transform="matrix(0.24 0 0 0.24 243.7749 230.2217)"
id="image230"></image><g
id="g232"><radialGradient
id="SVGID_14_"
cx="247.374"
cy="233.3711"
r="2.999"
gradientTransform="matrix(1 0 0 0.75 0 58.3428)"
gradientUnits="userSpaceOnUse"><stop
offset="0.0123"
style="stop-color:#FFFFFF"
id="stop235" /><stop
offset="0.4235"
style="stop-color:#FAFCF6"
id="stop237" /><stop
offset="1"
style="stop-color:#F2F7E8"
id="stop239" /><a:midPointStop
offset="0.0123"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="0.6235"
style="stop-color:#FFFFFF" /><a:midPointStop
offset="1"
style="stop-color:#F2F7E8" /></radialGradient><circle
fill="url(#SVGID_14_)"
cx="247.374"
cy="233.37"
r="2.999"
id="circle241" /></g></g></g></g><path
d="m 529.664,248.155 h 18.498 l -2.809,18.064 h 5.59 37.586 l 2.6,-17.718 c 4.98,-1.091 9.133,-3.455 12.512,-6.693 3.084,4.075 8.566,7.37 18.252,7.37 6.338,0 12.775,-1.807 17.174,-3.687 4.254,2.399 9.463,3.687 15.459,3.687 3.088,0 6.236,-0.355 9.426,-1.023 h 67.135 l 3.354,-24.827 -5.445,-0.764 1.879,-13.356 c 0.371,-2.386 0.449,-4.66 0.449,-6.156 l -0.008,-0.375 c -0.457,-12.191 -8.139,-19.765 -20.045,-19.765 -2.404,0 -4.623,0.314 -6.676,0.852 h -34.189 l -0.035,0.244 c -2.527,-0.701 -5.41,-1.096 -8.686,-1.096 -3.801,0 -7.406,0.555 -10.76,1.598 l 0.105,-0.746 h -12.467 l 1.826,-12.951 H 613.08 l -1.846,7.658 c -1.373,5.704 -2.213,5.793 -4.453,6.03 l -4.508,0.477 c -3.049,-1.424 -6.357,-2.065 -9.602,-2.065 -2.135,0 -4.275,0.284 -6.416,0.852 h -19.291 c 0.502,-1.772 0.775,-3.674 0.775,-5.678 0,-9.601 -6.846,-16.305 -16.646,-16.305 -11.055,0 -18.775,7.721 -18.775,18.776 0,0.951 0.082,1.869 0.219,2.764 -2.135,-0.288 -4.277,-0.409 -5.553,-0.409 -2.053,0 -4.072,0.288 -6.045,0.852 h -31.342 c -2.74,-0.553 -5.641,-0.852 -8.537,-0.852 -7.138,0 -13.492,1.674 -18.808,4.723 l -3.451,-1.461 c -3.711,-1.571 -11.232,-3.262 -18.979,-3.262 -8.933,0 -16.383,2.56 -21.576,7.016 -3.265,-4.473 -8.523,-7.016 -15.228,-7.016 -4.822,0 -9.021,1.477 -12.572,3.44 -2.996,-2.204 -6.796,-3.44 -11.115,-3.44 -2.327,0 -4.48,0.315 -6.476,0.852 h -33.963 l -0.035,0.245 c -2.526,-0.702 -5.41,-1.097 -8.687,-1.097 -20.458,0 -35.307,16.031 -35.307,38.117 0,17.363 10.785,28.149 28.148,28.149 3.087,0 6.236,-0.356 9.426,-1.023 h 88.816 c 3.706,0.676 7.669,1.023 11.154,1.023 8.907,0 16.278,-2.375 21.51,-6.593 4.872,4.252 11.585,6.593 19.728,6.593 3.053,0 6.206,-0.368 9.286,-1.023 h 44.664 2.069 z"
id="path243"
inkscape:connector-curvature="0"
style="fill:#f5f5f5" /><g
id="g245"
transform="translate(0,16)"><g
id="g247"><path
d="m 340.308,218.463 c -5.538,2.556 -11.588,4.26 -17.638,4.26 -13.377,0 -18.148,-7.839 -18.148,-18.148 0,-17.893 11.418,-28.117 25.307,-28.117 9.372,0 13.973,4.26 13.973,11.247 0,12.184 -12.865,15.763 -26.157,17.126 0.255,4.346 2.045,8.35 8.435,8.35 3.068,0 7.243,-0.937 12.355,-3.067 l 1.873,8.349 z m -8.095,-29.567 c 0,-2.045 -1.448,-3.237 -4.09,-3.237 -4.771,0 -8.69,4.175 -9.969,10.906 3.664,-0.511 14.059,-2.3 14.059,-7.669 z"
id="path249"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 394.07,221.7 -0.171,-0.255 1.789,-10.055 2.642,-18.063 c 0.512,-3.749 0.341,-5.623 -1.96,-5.623 -2.642,0 -5.794,2.727 -9.372,5.879 l -2.727,19.512 c -0.171,1.363 -0.171,1.534 1.022,1.704 l 4.26,0.597 -0.852,6.305 h -18.404 l -0.171,-0.341 1.875,-10.82 2.471,-17.212 c 0.512,-3.237 0.682,-5.453 -1.789,-5.453 -3.238,0 -7.413,3.664 -9.714,5.709 l -2.642,19.512 c -0.17,1.363 -0.17,1.534 1.108,1.704 l 4.26,0.597 -0.852,6.305 h -23.347 l 0.853,-6.39 3.749,-0.512 c 1.107,-0.17 1.363,-0.426 1.533,-1.704 l 3.579,-25.987 c 0.17,-0.938 0,-1.534 -0.767,-1.789 l -4.176,-1.534 0.938,-6.476 h 16.871 l -0.938,6.987 0.256,0.085 c 4.43,-3.749 9.116,-7.924 15.592,-7.924 4.687,0 7.839,2.641 8.18,7.753 l 0.256,0.086 c 4.175,-3.664 9.202,-7.839 15.252,-7.839 6.22,0 8.775,3.152 8.946,9.202 0,1.618 -0.171,3.493 -0.426,5.538 l -3.067,21.897 c -0.171,1.363 -0.171,1.534 1.107,1.704 l 4.175,0.597 -0.852,6.305 H 394.07 z"
id="path251"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 443.995,190.771 -0.17,-4.431 c 0,-0.682 -0.085,-1.108 -1.022,-1.363 -1.022,-0.256 -2.642,-0.427 -4.771,-0.427 -3.579,0 -6.391,1.108 -6.391,4.09 0,2.727 2.982,3.749 6.731,5.027 6.05,2.045 13.888,4.431 13.888,13.463 0,11.076 -9.372,15.592 -20.193,15.592 -8.009,0 -14.91,-1.959 -16.273,-2.981 l 1.618,-12.355 8.691,0.512 0.255,4.941 c 0,0.597 0.171,1.108 0.938,1.363 1.278,0.427 3.238,0.768 6.05,0.768 4.687,0 7.327,-1.79 7.327,-4.687 0,-3.408 -3.152,-4.175 -8.009,-5.624 -6.135,-1.874 -12.78,-4.26 -12.78,-13.206 0,-10.48 9.116,-14.996 19.597,-14.996 6.646,0 12.866,1.533 15.081,2.471 l -1.704,12.354 -8.863,-0.511 z"
id="path253"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 489.748,218.548 c -4.175,2.386 -10.395,4.175 -16.444,4.175 -13.036,0 -18.575,-7.583 -18.575,-18.574 0,-18.83 11.588,-27.691 25.988,-27.691 6.475,0 11.843,1.874 14.229,3.578 l -1.874,13.377 -8.691,-0.426 -0.255,-5.794 c 0,-0.597 -0.086,-0.938 -0.597,-1.192 -1.022,-0.427 -2.557,-0.597 -4.175,-0.597 -5.624,0 -11.418,4.601 -11.418,17.382 0,7.839 3.493,10.395 8.436,10.395 4.346,0 8.436,-1.448 11.247,-2.556 l 2.129,7.923 z"
id="path255"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 491.364,221.7 0.853,-6.39 3.919,-0.512 c 1.193,-0.17 1.363,-0.426 1.534,-1.704 l 3.578,-25.987 c 0.086,-0.938 -0.085,-1.534 -0.852,-1.789 l -4.261,-1.534 0.938,-6.476 h 16.87 l -1.107,7.669 0.256,0.17 c 3.323,-4.771 8.095,-8.69 13.548,-8.69 1.874,0 5.112,0.341 6.561,0.767 l -2.13,15.507 -9.969,-0.341 -0.256,-4.431 c -0.086,-0.767 -0.256,-1.022 -0.938,-1.022 -1.619,0 -4.26,1.96 -6.646,4.431 l -2.981,21.643 c -0.171,1.363 -0.085,1.619 1.192,1.704 l 8.095,0.682 -0.938,6.305 h -27.266 z"
id="path257"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 536.094,221.7 -0.17,-0.426 2.045,-11.503 3.152,-22.749 c 0.17,-0.938 -0.086,-1.534 -0.853,-1.79 l -4.175,-1.448 0.852,-6.476 h 18.149 l -5.027,35.786 c -0.171,1.363 -0.085,1.534 1.192,1.704 l 4.09,0.597 -0.852,6.305 h -18.403 z m 5.879,-57.598 c 0,-5.453 3.238,-8.775 8.776,-8.775 4.175,0 6.646,2.215 6.646,6.305 0,5.368 -3.322,8.861 -8.861,8.861 -4.176,-0.001 -6.561,-2.387 -6.561,-6.391 z"
id="path259"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 556.796,239.764 -0.17,-0.341 2.471,-14.229 5.282,-38.087 c 0.171,-1.022 -0.085,-1.534 -0.767,-1.789 l -4.175,-1.534 0.938,-6.476 h 17.041 l -1.022,6.816 0.255,0.085 c 5.027,-4.686 10.311,-7.753 15.678,-7.753 7.328,0 12.44,4.686 12.44,17.041 0,11.758 -4.601,29.225 -20.449,29.225 -5.538,0 -8.605,-2.13 -11.759,-4.345 l -1.874,12.78 c -0.085,0.938 0.085,1.278 1.192,1.363 l 8.606,0.853 -0.938,6.39 h -22.749 z m 17.041,-30.247 c 2.13,1.789 4.942,3.322 8.095,3.322 6.901,0 9.458,-9.713 9.458,-17.211 0,-5.027 -1.193,-8.351 -4.431,-8.351 -3.408,0 -7.754,3.664 -10.821,6.391 l -2.301,15.849 z"
id="path261"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 635.777,219.4 c -3.749,1.789 -9.458,3.322 -14.229,3.322 -8.521,0 -12.099,-2.981 -12.099,-9.969 0,-1.107 0.085,-2.386 0.256,-3.749 l 3.066,-22.323 c 0.086,-0.512 0.086,-0.853 -0.511,-0.853 h -5.879 l 1.107,-7.839 c 7.242,-0.767 10.906,-4.431 13.122,-13.633 h 7.924 l -1.704,12.1 c -0.085,0.596 -0.085,0.852 0.597,0.852 h 11.758 l -1.193,8.521 h -12.439 l -2.812,20.364 c -0.171,1.107 -0.256,1.96 -0.256,2.727 0,2.982 1.278,4.26 4.942,4.26 2.385,0 4.771,-0.596 6.816,-1.363 l 1.534,7.583 z"
id="path263"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 671.817,218.463 c -5.538,2.556 -11.588,4.26 -17.638,4.26 -13.377,0 -18.148,-7.839 -18.148,-18.148 0,-17.893 11.418,-28.117 25.307,-28.117 9.372,0 13.973,4.26 13.973,11.247 0,12.184 -12.865,15.763 -26.157,17.126 0.255,4.346 2.045,8.35 8.435,8.35 3.068,0 7.243,-0.937 12.355,-3.067 l 1.873,8.349 z m -8.094,-29.567 c 0,-2.045 -1.448,-3.237 -4.09,-3.237 -4.771,0 -8.69,4.175 -9.969,10.906 3.664,-0.511 14.059,-2.3 14.059,-7.669 z"
id="path265"
inkscape:connector-curvature="0"
style="fill:#383838" /><path
d="m 703.596,221.7 -0.17,-0.255 1.874,-10.396 2.471,-17.723 c 0.512,-3.578 0.341,-5.879 -2.215,-5.879 -3.664,0 -8.18,3.578 -11.077,6.135 l -2.641,19.512 c -0.171,1.363 -0.171,1.534 1.107,1.704 l 4.26,0.597 -0.852,6.305 h -23.347 l 0.853,-6.39 3.749,-0.512 c 1.107,-0.17 1.363,-0.426 1.533,-1.704 l 3.579,-25.987 c 0.17,-0.938 0,-1.534 -0.768,-1.789 l -4.175,-1.534 0.938,-6.476 h 16.87 l -0.937,6.987 0.255,0.085 c 4.771,-4.09 9.373,-7.924 16.02,-7.924 6.475,0 9.798,3.322 10.054,10.139 0,1.363 -0.085,3.067 -0.341,4.687 l -3.067,21.812 c -0.171,1.363 -0.171,1.534 1.022,1.704 l 4.26,0.597 L 722,221.7 h -18.404 z"
id="path267"
inkscape:connector-curvature="0"
style="fill:#383838" /></g><g
id="g269"><linearGradient
id="SVGID_15_"
gradientUnits="userSpaceOnUse"
x1="324.1611"
y1="239.7637"
x2="324.1611"
y2="155.3275"><stop
offset="0"
style="stop-color:#000000"
id="stop272" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop274" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 340.308,218.463 c -5.538,2.556 -11.588,4.26 -17.638,4.26 -13.377,0 -18.148,-7.839 -18.148,-18.148 0,-17.893 11.418,-28.117 25.307,-28.117 9.372,0 13.973,4.26 13.973,11.247 0,12.184 -12.865,15.763 -26.157,17.126 0.255,4.346 2.045,8.35 8.435,8.35 3.068,0 7.243,-0.937 12.355,-3.067 l 1.873,8.349 z m -8.095,-29.567 c 0,-2.045 -1.448,-3.237 -4.09,-3.237 -4.771,0 -8.69,4.175 -9.969,10.906 3.664,-0.511 14.059,-2.3 14.059,-7.669 z"
id="path276"
style="fill:url(#SVGID_15_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_16_"
gradientUnits="userSpaceOnUse"
x1="377.45459"
y1="239.7637"
x2="377.45459"
y2="155.3277"><stop
offset="0"
style="stop-color:#000000"
id="stop279" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop281" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 394.07,221.7 -0.171,-0.255 1.789,-10.055 2.642,-18.063 c 0.512,-3.749 0.341,-5.623 -1.96,-5.623 -2.642,0 -5.794,2.727 -9.372,5.879 l -2.727,19.512 c -0.171,1.363 -0.171,1.534 1.022,1.704 l 4.26,0.597 -0.852,6.305 h -18.404 l -0.171,-0.341 1.875,-10.82 2.471,-17.212 c 0.512,-3.237 0.682,-5.453 -1.789,-5.453 -3.238,0 -7.413,3.664 -9.714,5.709 l -2.642,19.512 c -0.17,1.363 -0.17,1.534 1.108,1.704 l 4.26,0.597 -0.852,6.305 h -23.347 l 0.853,-6.39 3.749,-0.512 c 1.107,-0.17 1.363,-0.426 1.533,-1.704 l 3.579,-25.987 c 0.17,-0.938 0,-1.534 -0.767,-1.789 l -4.176,-1.534 0.938,-6.476 h 16.871 l -0.938,6.987 0.256,0.085 c 4.43,-3.749 9.116,-7.924 15.592,-7.924 4.687,0 7.839,2.641 8.18,7.753 l 0.256,0.086 c 4.175,-3.664 9.202,-7.839 15.252,-7.839 6.22,0 8.775,3.152 8.946,9.202 0,1.618 -0.171,3.493 -0.426,5.538 l -3.067,21.897 c -0.171,1.363 -0.171,1.534 1.107,1.704 l 4.175,0.597 -0.852,6.305 H 394.07 z"
id="path283"
style="fill:url(#SVGID_16_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_17_"
gradientUnits="userSpaceOnUse"
x1="435.17719"
y1="239.7637"
x2="435.17719"
y2="155.3275"><stop
offset="0"
style="stop-color:#000000"
id="stop286" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop288" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 443.995,190.771 -0.17,-4.431 c 0,-0.682 -0.085,-1.108 -1.022,-1.363 -1.022,-0.256 -2.642,-0.427 -4.771,-0.427 -3.579,0 -6.391,1.108 -6.391,4.09 0,2.727 2.982,3.749 6.731,5.027 6.05,2.045 13.888,4.431 13.888,13.463 0,11.076 -9.372,15.592 -20.193,15.592 -8.009,0 -14.91,-1.959 -16.273,-2.981 l 1.618,-12.355 8.691,0.512 0.255,4.941 c 0,0.597 0.171,1.108 0.938,1.363 1.278,0.427 3.238,0.768 6.05,0.768 4.687,0 7.327,-1.79 7.327,-4.687 0,-3.408 -3.152,-4.175 -8.009,-5.624 -6.135,-1.874 -12.78,-4.26 -12.78,-13.206 0,-10.48 9.116,-14.996 19.597,-14.996 6.646,0 12.866,1.533 15.081,2.471 l -1.704,12.354 -8.863,-0.511 z"
id="path290"
style="fill:url(#SVGID_17_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_18_"
gradientUnits="userSpaceOnUse"
x1="474.83691"
y1="239.7637"
x2="474.83691"
y2="155.3275"><stop
offset="0"
style="stop-color:#000000"
id="stop293" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop295" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 489.748,218.548 c -4.175,2.386 -10.395,4.175 -16.444,4.175 -13.036,0 -18.575,-7.583 -18.575,-18.574 0,-18.83 11.588,-27.691 25.988,-27.691 6.475,0 11.843,1.874 14.229,3.578 l -1.874,13.377 -8.691,-0.426 -0.255,-5.794 c 0,-0.597 -0.086,-0.938 -0.597,-1.192 -1.022,-0.427 -2.557,-0.597 -4.175,-0.597 -5.624,0 -11.418,4.601 -11.418,17.382 0,7.839 3.493,10.395 8.436,10.395 4.346,0 8.436,-1.448 11.247,-2.556 l 2.129,7.923 z"
id="path297"
style="fill:url(#SVGID_18_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_19_"
gradientUnits="userSpaceOnUse"
x1="512.28223"
y1="239.7637"
x2="512.28223"
y2="155.3277"><stop
offset="0"
style="stop-color:#000000"
id="stop300" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop302" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 491.364,221.7 0.853,-6.39 3.919,-0.512 c 1.193,-0.17 1.363,-0.426 1.534,-1.704 l 3.578,-25.987 c 0.086,-0.938 -0.085,-1.534 -0.852,-1.789 l -4.261,-1.534 0.938,-6.476 h 16.87 l -1.107,7.669 0.256,0.17 c 3.323,-4.771 8.095,-8.69 13.548,-8.69 1.874,0 5.112,0.341 6.561,0.767 l -2.13,15.507 -9.969,-0.341 -0.256,-4.431 c -0.086,-0.767 -0.256,-1.022 -0.938,-1.022 -1.619,0 -4.26,1.96 -6.646,4.431 l -2.981,21.643 c -0.171,1.363 -0.085,1.619 1.192,1.704 l 8.095,0.682 -0.938,6.305 h -27.266 z"
id="path304"
style="fill:url(#SVGID_19_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_20_"
gradientUnits="userSpaceOnUse"
x1="546.65918"
y1="239.7637"
x2="546.65918"
y2="155.32719"><stop
offset="0"
style="stop-color:#000000"
id="stop307" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop309" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 536.094,221.7 -0.17,-0.426 2.045,-11.503 3.152,-22.749 c 0.17,-0.938 -0.086,-1.534 -0.853,-1.79 l -4.175,-1.448 0.852,-6.476 h 18.149 l -5.027,35.786 c -0.171,1.363 -0.085,1.534 1.192,1.704 l 4.09,0.597 -0.852,6.305 h -18.403 z m 5.879,-57.598 c 0,-5.453 3.238,-8.775 8.776,-8.775 4.175,0 6.646,2.215 6.646,6.305 0,5.368 -3.322,8.861 -8.861,8.861 -4.176,-0.001 -6.561,-2.387 -6.561,-6.391 z"
id="path311"
style="fill:url(#SVGID_20_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_21_"
gradientUnits="userSpaceOnUse"
x1="580.69629"
y1="239.7637"
x2="580.69629"
y2="155.32719"><stop
offset="0"
style="stop-color:#000000"
id="stop314" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop316" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 556.796,239.764 -0.17,-0.341 2.471,-14.229 5.282,-38.087 c 0.171,-1.022 -0.085,-1.534 -0.767,-1.789 l -4.175,-1.534 0.938,-6.476 h 17.041 l -1.022,6.816 0.255,0.085 c 5.027,-4.686 10.311,-7.753 15.678,-7.753 7.328,0 12.44,4.686 12.44,17.041 0,11.758 -4.601,29.225 -20.449,29.225 -5.538,0 -8.605,-2.13 -11.759,-4.345 l -1.874,12.78 c -0.085,0.938 0.085,1.278 1.192,1.363 l 8.606,0.853 -0.938,6.39 h -22.749 z m 17.041,-30.247 c 2.13,1.789 4.942,3.322 8.095,3.322 6.901,0 9.458,-9.713 9.458,-17.211 0,-5.027 -1.193,-8.351 -4.431,-8.351 -3.408,0 -7.754,3.664 -10.821,6.391 l -2.301,15.849 z"
id="path318"
style="fill:url(#SVGID_21_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_22_"
gradientUnits="userSpaceOnUse"
x1="622.7832"
y1="239.7637"
x2="622.7832"
y2="155.3268"><stop
offset="0"
style="stop-color:#000000"
id="stop321" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop323" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 635.777,219.4 c -3.749,1.789 -9.458,3.322 -14.229,3.322 -8.521,0 -12.099,-2.981 -12.099,-9.969 0,-1.107 0.085,-2.386 0.256,-3.749 l 3.066,-22.323 c 0.086,-0.512 0.086,-0.853 -0.511,-0.853 h -5.879 l 1.107,-7.839 c 7.242,-0.767 10.906,-4.431 13.122,-13.633 h 7.924 l -1.704,12.1 c -0.085,0.596 -0.085,0.852 0.597,0.852 h 11.758 l -1.193,8.521 h -12.439 l -2.812,20.364 c -0.171,1.107 -0.256,1.96 -0.256,2.727 0,2.982 1.278,4.26 4.942,4.26 2.385,0 4.771,-0.596 6.816,-1.363 l 1.534,7.583 z"
id="path325"
style="fill:url(#SVGID_22_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_23_"
gradientUnits="userSpaceOnUse"
x1="655.6709"
y1="239.7637"
x2="655.6709"
y2="155.3275"><stop
offset="0"
style="stop-color:#000000"
id="stop328" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop330" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 671.817,218.463 c -5.538,2.556 -11.588,4.26 -17.638,4.26 -13.377,0 -18.148,-7.839 -18.148,-18.148 0,-17.893 11.418,-28.117 25.307,-28.117 9.372,0 13.973,4.26 13.973,11.247 0,12.184 -12.865,15.763 -26.157,17.126 0.255,4.346 2.045,8.35 8.435,8.35 3.068,0 7.243,-0.937 12.355,-3.067 l 1.873,8.349 z m -8.094,-29.567 c 0,-2.045 -1.448,-3.237 -4.09,-3.237 -4.771,0 -8.69,4.175 -9.969,10.906 3.664,-0.511 14.059,-2.3 14.059,-7.669 z"
id="path332"
style="fill:url(#SVGID_23_)"
inkscape:connector-curvature="0" /><linearGradient
id="SVGID_24_"
gradientUnits="userSpaceOnUse"
x1="697.92969"
y1="239.7637"
x2="697.92969"
y2="155.3277"><stop
offset="0"
style="stop-color:#000000"
id="stop335" /><stop
offset="1"
style="stop-color:#000000;stop-opacity:0"
id="stop337" /><a:midPointStop
offset="0"
style="stop-color:#000000" /><a:midPointStop
offset="0.6933"
style="stop-color:#000000" /><a:midPointStop
offset="1"
style="stop-color:#000000;stop-opacity:0" /></linearGradient><path
d="m 703.596,221.7 -0.17,-0.255 1.874,-10.396 2.471,-17.723 c 0.512,-3.578 0.341,-5.879 -2.215,-5.879 -3.664,0 -8.18,3.578 -11.077,6.135 l -2.641,19.512 c -0.171,1.363 -0.171,1.534 1.107,1.704 l 4.26,0.597 -0.852,6.305 h -23.347 l 0.853,-6.39 3.749,-0.512 c 1.107,-0.17 1.363,-0.426 1.533,-1.704 l 3.579,-25.987 c 0.17,-0.938 0,-1.534 -0.768,-1.789 l -4.175,-1.534 0.938,-6.476 h 16.87 l -0.937,6.987 0.255,0.085 c 4.771,-4.09 9.373,-7.924 16.02,-7.924 6.475,0 9.798,3.322 10.054,10.139 0,1.363 -0.085,3.067 -0.341,4.687 l -3.067,21.812 c -0.171,1.363 -0.171,1.534 1.022,1.704 l 4.26,0.597 L 722,221.7 h -18.404 z"
id="path339"
style="fill:url(#SVGID_24_)"
inkscape:connector-curvature="0" /></g></g><g
id="g4141"
transform="matrix(0.81856441,0,0,0.81856441,79.234731,-94.128741)"><g
id="g4143"></g><g
id="g4165"><linearGradient
y2="155.3275"
x2="324.1611"
y1="239.7637"
x1="324.1611"
gradientUnits="userSpaceOnUse"
id="linearGradient4167"><stop
id="stop4169"
style="stop-color:#000000"
offset="0" /><stop
id="stop4171"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3277"
x2="377.45459"
y1="239.7637"
x1="377.45459"
gradientUnits="userSpaceOnUse"
id="linearGradient4175"><stop
id="stop4177"
style="stop-color:#000000"
offset="0" /><stop
id="stop4179"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3275"
x2="435.17719"
y1="239.7637"
x1="435.17719"
gradientUnits="userSpaceOnUse"
id="linearGradient4183"><stop
id="stop4185"
style="stop-color:#000000"
offset="0" /><stop
id="stop4187"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3275"
x2="474.83691"
y1="239.7637"
x1="474.83691"
gradientUnits="userSpaceOnUse"
id="linearGradient4191"><stop
id="stop4193"
style="stop-color:#000000"
offset="0" /><stop
id="stop4195"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3277"
x2="512.28223"
y1="239.7637"
x1="512.28223"
gradientUnits="userSpaceOnUse"
id="linearGradient4199"><stop
id="stop4201"
style="stop-color:#000000"
offset="0" /><stop
id="stop4203"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.32719"
x2="546.65918"
y1="239.7637"
x1="546.65918"
gradientUnits="userSpaceOnUse"
id="linearGradient4207"><stop
id="stop4209"
style="stop-color:#000000"
offset="0" /><stop
id="stop4211"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.32719"
x2="580.69629"
y1="239.7637"
x1="580.69629"
gradientUnits="userSpaceOnUse"
id="linearGradient4215"><stop
id="stop4217"
style="stop-color:#000000"
offset="0" /><stop
id="stop4219"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3268"
x2="622.7832"
y1="239.7637"
x1="622.7832"
gradientUnits="userSpaceOnUse"
id="linearGradient4223"><stop
id="stop4225"
style="stop-color:#000000"
offset="0" /><stop
id="stop4227"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3275"
x2="655.6709"
y1="239.7637"
x1="655.6709"
gradientUnits="userSpaceOnUse"
id="linearGradient4231"><stop
id="stop4233"
style="stop-color:#000000"
offset="0" /><stop
id="stop4235"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient><linearGradient
y2="155.3277"
x2="697.92969"
y1="239.7637"
x1="697.92969"
gradientUnits="userSpaceOnUse"
id="linearGradient4239"><stop
id="stop4241"
style="stop-color:#000000"
offset="0" /><stop
id="stop4243"
style="stop-color:#000000;stop-opacity:0"
offset="1" /><a:midPointStop
style="stop-color:#000000"
offset="0" /><a:midPointStop
style="stop-color:#000000"
offset="0.6933" /><a:midPointStop
style="stop-color:#000000;stop-opacity:0"
offset="1" /></linearGradient></g></g></svg>
</a>
<div class="spinner" id='spinner'></div>
<div class="emscripten" id="status">Downloading...</div>
<span id='controls'>
<span><input type="checkbox" id="resize">Resize canvas</span>
<span><input type="checkbox" id="pointerLock" checked>Lock/hide mouse pointer </span>
<span><input type="button" value="Fullscreen" onclick="Module.requestFullScreen(document.getElementById('pointerLock').checked,
document.getElementById('resize').checked)">
</span>
</span>
<div class="emscripten">
<progress value="0" max="100" id="progress" hidden=1></progress>
</div>
<div class="emscripten_border">
<canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas>
</div>
<textarea id="output" rows="8"></textarea>
<script type='text/javascript'>
var statusElement = document.getElementById('status');
var progressElement = document.getElementById('progress');
var spinnerElement = document.getElementById('spinner');
var Module = {
preRun: [],
postRun: [],
print: (function() {
var element = document.getElementById('output');
if (element) element.value = ''; // clear browser cache
return function(text) {
text = Array.prototype.slice.call(arguments).join(' ');
// These replacements are necessary if you render to raw HTML
//text = text.replace(/&/g, "&");
//text = text.replace(/</g, "<");
//text = text.replace(/>/g, ">");
//text = text.replace('\n', '<br>', 'g');
console.log(text);
if (element) {
element.value += text + "\n";
element.scrollTop = element.scrollHeight; // focus on bottom
}
};
})(),
printErr: function(text) {
text = Array.prototype.slice.call(arguments).join(' ');
if (0) { // XXX disabled for safety typeof dump == 'function') {
dump(text + '\n'); // fast, straight to the real console
} else {
console.error(text);
}
},
canvas: (function() {
var canvas = document.getElementById('canvas');
// As a default initial behavior, pop up an alert when webgl context is lost. To make your
// application robust, you may want to override this behavior before shipping!
// See http://www.khronos.org/registry/webgl/specs/latest/1.0/#5.15.2
canvas.addEventListener("webglcontextlost", function(e) { alert('WebGL context lost. You will need to reload the page.'); e.preventDefault(); }, false);
return canvas;
})(),
setStatus: function(text) {
if (!Module.setStatus.last) Module.setStatus.last = { time: Date.now(), text: '' };
if (text === Module.setStatus.text) return;
var m = text.match(/([^(]+)\((\d+(\.\d+)?)\/(\d+)\)/);
var now = Date.now();
if (m && now - Date.now() < 30) return; // if this is a progress update, skip it if too soon
if (m) {
text = m[1];
progressElement.value = parseInt(m[2])*100;
progressElement.max = parseInt(m[4])*100;
progressElement.hidden = false;
spinnerElement.hidden = false;
} else {
progressElement.value = null;
progressElement.max = null;
progressElement.hidden = true;
if (!text) spinnerElement.style.display = 'none';
}
statusElement.innerHTML = text;
},
totalDependencies: 0,
monitorRunDependencies: function(left) {
this.totalDependencies = Math.max(this.totalDependencies, left);
Module.setStatus(left ? 'Preparing... (' + (this.totalDependencies-left) + '/' + this.totalDependencies + ')' : 'All downloads complete.');
}
};
Module.setStatus('Downloading...');
window.onerror = function(event) {
// TODO: do not warn on ok events like simulating an infinite loop or exitStatus
Module.setStatus('Exception thrown, see JavaScript console');
spinnerElement.style.display = 'none';
Module.setStatus = function(text) {
if (text) Module.printErr('[post-exception status] ' + text);
};
};
</script>
<script async type="text/javascript" src="BOSS.js"></script>
</body>
</html>
================================================
FILE: BOSS/emscripten/BOSS2.html
================================================
<!doctype html>
<html lang="en-us">
<head>
<script async type="text/javascript" src="BOSS.js"></script>
<script type="text/javascript" src="jquery-1.11.2.min.js"></script>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>BOSS Test</title>
<style>
.emscripten { padding-right: 0; margin-left: auto; margin-right: auto; display: block; }
textarea.params { overflow: auto; }
textarea.emscripten { font-family: monospace; width: 1280px; background-color:#000000; color:#ffffff;}
iframe.params { display: none; }
div.emscripten { text-align: center; }
div.emscripten_border { border: 0px solid black; }
/* the canvas *must not* have any border or padding, or mouse coords will be wrong */
canvas.emscripten { border: 0px none; }
</style>
</head>
<body>
<center>
<div class="emscripten">
<button id='configbutton' onclick="jQuery('#configframe').toggle('show'); configShow=!configShow; $('#configbutton').text(configShow ? 'Hide Config' : 'Show Config');">Show Config</button>
<button onclick="Module.ccall('ResetExperiment', 'string', ['string'], [$('#configframe').contents().find('#textparams').val()]);">Run New Config</button>
<button onclick="jQuery('#canvas').toggle('show');">Toggle Canvas</button>
<button onclick="jQuery('#output').toggle('show');">Toggle Console</button>
<input type="checkbox" id="resize">Resize canvas
<input type="checkbox" id="pointerLock">Lock/hide mouse pointer
<input type="button" value="Fullscreen" onclick="Module.requestFullScreen(document.getElementById('pointerLock').checked,
document.getElementById('resize').checked)">
</div>
<br>
<iframe class="params" id="configframe" width="1280px" frameBorder="0" height="300" wrap='off' src="config.html"></iframe>
</center>
<div class="emscripten" id="status">Downloading...</div>
<div class="emscripten">
<progress value="0" max="100" id="progress" hidden=1></progress>
</div>
<div class="emscripten_border">
<canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas>
</div>
<br>
<textarea class="emscripten" id="output" rows="8"></textarea>
<script type='text/javascript'>
var configShow = false;
// connect to canvas
var Module = {
preRun: [],
postRun: [],
print: (function() {
var element = document.getElementById('output');
element.value = ''; // clear browser cache
return function(text) {
text = Array.prototype.slice.call(arguments).join(' ');
element.value += text + "\n";
element.scrollTop = element.scrollHeight; // focus on bottom
};
})(),
printErr: function(text) {
text = Array.prototype.slice.call(arguments).join(' ');
if (0) {
dump(text + '\n');
} else {
console.log(text);
}
},
canvas: document.getElementById('canvas'),
setStatus: function(text) {
if (!Module.setStatus.last) Module.setStatus.last = { time: Date.now(), text: '' };
if (text === Module.setStatus.text) return;
var m = text.match(/([^(]+)\((\d+(\.\d+)?)\/(\d+)\)/);
var now = Date.now();
if (m && now - Date.now() < 30) return; // if this is a progress update, skip it if too soon
var statusElement = document.getElementById('status');
var progressElement = document.getElementById('progress');
if (m) {
text = m[1];
progressElement.value = parseInt(m[2])*100;
progressElement.max = parseInt(m[4])*100;
progressElement.hidden = false;
} else {
progressElement.value = null;
progressElement.max = null;
progressElement.hidden = true;
}
statusElement.innerHTML = text;
},
totalDependencies: 0,
monitorRunDependencies: function(left) {
this.totalDependencies = Math.max(this.totalDependencies, left);
Module.setStatus(left ? 'Preparing... (' + (this.totalDependencies-left) + '/' + this.totalDependencies + ')' : 'All downloads complete.');
}
};
Module.setStatus('Downloading...');
jQuery.get('config.txt', function(data) { $("#paraminput").val(data);; });
</script>
</body>
</html>
================================================
FILE: BOSS/emscripten/config.html
================================================
<!doctype html>
<html lang="en-us">
<head>
<script type="text/javascript" src="jquery-1.11.2.min.js"></script>
<style>
body { }
</style>
<script type='text/javascript'>
jQuery.get('config.txt', function(data) { jQuery('#textparams').val(data); });
</script>
</head>
<body>
<textarea class="params" id="textparams" style="width: 100%; height: 280px; font-family: monospace; background-color:#dddddd; box-sizing: border-box;" wrap="off">Text</textarea>
</body>
</html>
================================================
FILE: BOSS/emscripten/config.txt
================================================
{
"Experiments" :
{
"Visualize Build Orders" :
{
"run" : true,
"type" : "BuildOrderVisualization",
"fps" : 1000,
"outputFile" : "UAB_Openers.txt",
"scenarios" :
[
{ "state":"Protoss Start State", "buildOrder" : "UAB DT Rush" },
{ "state":"Zerg Start State", "buildOrder" : "3 Hatch Muta" }
]
}
},
"States" :
{
"Protoss Start State" : { "race" : "Protoss", "minerals" : 50, "gas" : 0, "units" : [ ["Protoss_Probe", 4], ["Protoss_Nexus", 1] ] },
"Zerg Start State" : { "race" : "Zerg", "minerals" : 50, "gas" : 0, "units" : [ ["Zerg_Drone", 4], ["Zerg_Hatchery", 1], ["Zerg_Overlord", 1] ] },
"Terran Start State" : { "race" : "Terran", "minerals" : 50, "gas" : 0, "units" : [ ["Terran_SCV", 4], ["Terran_Command_Center", 1] ] }
},
"Build Orders" :
{
"3 Hatch Muta" : [ "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Overlord", "Zerg_Drone",
"Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Hatchery", "Zerg_Spawning_Pool", "Zerg_Drone",
"Zerg_Drone", "Zerg_Hatchery", "Zerg_Extractor", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Overlord",
"Zerg_Lair", "Zerg_Extractor", "Zerg_Drone", "Zerg_Drone", "Zerg_Zergling", "Zerg_Zergling", "Zerg_Zergling",
"Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Overlord", "Zerg_Drone", "Zerg_Overlord", "Zerg_Drone",
"Zerg_Overlord", "Zerg_Spire", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Drone", "Zerg_Mutalisk",
"Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk",
"Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk", "Zerg_Mutalisk" ],
"UAB Zealot Rush" : [ "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Pylon", "Protoss_Probe", "Protoss_Gateway",
"Protoss_Gateway", "Protoss_Probe", "Protoss_Probe", "Protoss_Zealot", "Protoss_Pylon", "Protoss_Zealot", "Protoss_Zealot",
"Protoss_Probe", "Protoss_Zealot", "Protoss_Zealot", "Protoss_Probe", "Protoss_Pylon", "Protoss_Zealot", "Protoss_Gateway",
"Protoss_Probe", "Protoss_Pylon", "Protoss_Probe", "Protoss_Zealot", "Protoss_Probe", "Protoss_Zealot", "Protoss_Zealot",
"Protoss_Zealot", "Protoss_Zealot", "Protoss_Pylon", "Protoss_Probe", "Protoss_Zealot", "Protoss_Zealot", "Protoss_Zealot" ],
"UAB DT Rush" : [ "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Pylon", "Protoss_Probe", "Protoss_Gateway",
"Protoss_Probe", "Protoss_Assimilator", "Protoss_Probe", "Protoss_Cybernetics_Core", "Protoss_Probe", "Protoss_Citadel_of_Adun",
"Protoss_Probe", "Protoss_Templar_Archives", "Protoss_Gateway", "Protoss_Dark_Templar", "Protoss_Dark_Templar", "Protoss_Pylon",
"Protoss_Dark_Templar", "Protoss_Dark_Templar", "Protoss_Probe", "Protoss_Pylon", "Protoss_Probe"],
"UAB Dragoon Rush" : [ "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Probe", "Protoss_Pylon", "Protoss_Probe", "Protoss_Probe",
"Protoss_Gateway", "Protoss_Probe", "Protoss_Assimilator", "Protoss_Probe", "Protoss_Probe", "Protoss_Cybernetics_Core",
"Protoss_Probe", "Protoss_Probe", "Protoss_Gateway", "Singularity_Charge", "Protoss_Dragoon", "Protoss_Gateway", "Protoss_Pylon",
"Protoss_Dragoon", "Protoss_Dragoon", "Protoss_Probe", "Protoss_Gateway", "Protoss_Pylon", "Protoss_Probe", "Protoss_Dragoon",
"Protoss_Dragoon", "Protoss_Dragoon"]
}
}
================================================
FILE: BOSS/make_windows.bat
================================================
@echo off
set original_dir=%CD%
echo.
echo *********************************************
echo * COMPILING BOSS WITH EMSCRIPTEN *
echo *********************************************
echo.
make -j 8
================================================
FILE: BOSS/source/ActionInProgress.cpp
================================================
#include "ActionInProgress.h"
using namespace BOSS;
ActionsInProgress::ActionsInProgress()
: _numProgress(Constants::MAX_ACTIONS, 0)
{
}
UnitCountType ActionsInProgress::numInProgress(const ActionType & a) const
{
return _numProgress[a.ID()];
}
void ActionsInProgress::addAction(const ActionType & action, FrameCountType time)
{
// deprecated, code below should be faster
//inProgress.push_back(ActionInProgress(a, (unsigned short)time));
//inProgress.sort();
// inProgress should always be sorted, so add the action in its place
_inProgress.addSorted(ActionInProgress(action, time));
// increase the specific count of a
_numProgress[action.ID()]++;
}
void ActionsInProgress::popNextAction()
{
BOSS_ASSERT(_inProgress.size() > 0, "Can't pop from empty set");
// there is one less of the last unit in progress
_numProgress[_inProgress[_inProgress.size()-1]._action.ID()]--;
// the number of things in progress goes down
_inProgress.pop_back();
}
bool ActionsInProgress::isEmpty() const
{
return _inProgress.size() == 0;
}
FrameCountType ActionsInProgress::nextActionFinishTime() const
{
BOSS_ASSERT(_inProgress.size() > 0, "Set is empty");
return _inProgress[_inProgress.size()-1]._time;
}
const UnitCountType ActionsInProgress::size() const
{
return _inProgress.size();
}
FrameCountType ActionsInProgress::getLastFinishTime() const
{
if (_inProgress.size() == 0)
{
return 0;
}
return _inProgress[0]._time;
}
FrameCountType ActionsInProgress::nextActionFinishTime(const ActionType & a) const
{
BOSS_ASSERT(numInProgress(a) > 0, "Tried to get next finish time from empty set");
for (size_t i=_inProgress.size()-1; i >=0; --i)
{
if (_inProgress[i]._action == a)
{
return _inProgress[i]._time;
}
}
BOSS_ASSERT(false, "Next Action Finish Time didn't find anything");
return -1;
}
FrameCountType ActionsInProgress::nextBuildingFinishTime() const
{
BOSS_ASSERT(_inProgress.size() > 0, "There are no buildings in progress");
for (size_t i(0); i<_inProgress.size(); ++i)
{
size_t ri = _inProgress.size()-1-i;
if (_inProgress[ri]._action.isBuilding() && !_inProgress[ri]._action.isAddon() && !_inProgress[ri]._action.isMorphed())
{
return _inProgress[ri]._time;
}
}
for (size_t i(0); i<_inProgress.size(); ++i)
{
size_t ri = _inProgress.size()-1-i;
std::cout << _inProgress[ri]._action.getName() << std::endl;
}
BOSS_ASSERT(false, "There were no buildings in progress");
return -1;
}
const ActionType & ActionsInProgress::getAction(const UnitCountType i) const
{
BOSS_ASSERT(i < (int)_inProgress.size(), "index out of bounds");
return _inProgress[i]._action;
}
FrameCountType ActionsInProgress::getTime(const UnitCountType i) const
{
BOSS_ASSERT(i < (int)_inProgress.size(), "index out of bounds");
return _inProgress[i]._time;
}
const ActionType & ActionsInProgress::nextAction() const
{
BOSS_ASSERT(_inProgress.size() > 0, "Tried to get nextAction() from empty set");
return _inProgress[_inProgress.size()-1]._action;
}
void ActionsInProgress::printActionsInProgress()
{
for (int i(0); i<Constants::MAX_ACTIONS; ++i)
{
if (_numProgress[i] > 0)
{
printf("Progress: %d %d %d\n", i, (int)_numProgress[i], (int)_inProgress[i]._time);
}
}
}
//bool ActionsInProgress::willBuildingFinsishBeforeRefinery()
//{
// int firstBuildingIndex = 100000;
// int lastRefineryIndex = 0;
//
// for (size_t i(0); i < _inProgress.size(); ++i)
// {
// if (_inProgress.)
// }
//}
FrameCountType ActionsInProgress::whenActionsFinished(const PrerequisiteSet & actions) const
{
BOSS_ASSERT(!actions.isEmpty(), "Action set is empty!");
// the maximum of the (minimums for each action)
int totalMax = 0;
// if there are actions still left
for (UnitCountType uc(0); uc < (int)actions.size(); ++uc)
{
// pop an action off the set
const ActionType & a = actions.getActionType(uc);
// define a new minimum
int actionMin = std::numeric_limits<int>::max();
// for each unit in our progress vector
for (size_t i(0); i<_inProgress.size(); ++i)
{
// if the action matches
if (_inProgress[i]._action == a)
{
// check to see if we have a new minimum
actionMin = (_inProgress[i]._time < actionMin) ? _inProgress[i]._time : actionMin;
}
}
// if we found a new minimum
if (actionMin < std::numeric_limits<int>::max())
{
// check to see if we have a new maximum
totalMax = (actionMin > totalMax) ? actionMin : totalMax;
}
}
// return the new maximum
return totalMax;
}
================================================
FILE: BOSS/source/ActionInProgress.h
================================================
#pragma once
#include "Common.h"
#include <string.h>
#include <queue>
#include <algorithm>
#include <limits>
#include "PrerequisiteSet.h"
#include <math.h>
#include "Array.hpp"
#include "ActionType.h"
namespace BOSS
{
class ActionInProgress
{
public:
ActionType _action;
FrameCountType _time;
ActionInProgress()
: _time(0)
{
}
ActionInProgress(const ActionType & action, FrameCountType t)
: _action(action)
, _time(t)
{
}
// we want to sort these in descending order in ActionsInProgress
const bool operator < (const ActionInProgress & rhs) const
{
return _time > rhs._time;
}
};
class ActionsInProgress
{
Vec<ActionInProgress, Constants::MAX_PROGRESS> _inProgress;
Vec<UnitCountType, Constants::MAX_ACTIONS> _numProgress; // how many of each unit are in progress
public:
ActionsInProgress();
UnitCountType operator [] (const ActionType & action) const;
UnitCountType numInProgress(const ActionType & action) const;
void addAction(const ActionType & a, int time);
void popNextAction();
bool isEmpty() const;
const UnitCountType size() const;
//bool willBuildingFinsishBeforeRefinery();
FrameCountType getLastFinishTime() const;
FrameCountType nextActionFinishTime(const ActionType & a) const;
FrameCountType getTime(const UnitCountType i) const;
FrameCountType nextActionFinishTime() const;
FrameCountType nextBuildingFinishTime() const;
FrameCountType whenActionsFinished(const PrerequisiteSet & actions) const;
const ActionType & getAction(const UnitCountType index) const;
const ActionType & nextAction() const;
void printActionsInProgress();
};
}
================================================
FILE: BOSS/source/ActionSet.cpp
================================================
#include "ActionSet.h"
using namespace BOSS;
ActionSet::ActionSet()
{
}
const size_t ActionSet::size() const
{
return _actionTypes.size();
}
const bool ActionSet::isEmpty() const
{
return size() == 0;
}
const ActionType & ActionSet::operator [] (const size_t & index) const
{
return _actionTypes[index];
}
ActionType & ActionSet::operator [] (const size_t & index)
{
return _actionTypes[index];
}
const bool ActionSet::contains(const ActionType & action) const
{
return _actionTypes.contains(action);
}
void ActionSet::add(const ActionType & action)
{
_actionTypes.push_back(action);
}
void ActionSet::remove(const ActionType & action)
{
for (size_t i(0); i<_actionTypes.size(); ++i)
{
if (_actionTypes[i] == action)
{
_actionTypes.removeByShift(i);
return;
}
}
}
void ActionSet::clear()
{
_action
gitextract_8ijeqeyy/
├── .gitignore
├── BOSS/
│ ├── .gitignore
│ ├── Makefile
│ ├── Qt/
│ │ ├── BOSSGUI.pro
│ │ ├── main.cpp
│ │ ├── mainwindow.cpp
│ │ ├── mainwindow.h
│ │ └── mainwindow.ui
│ ├── VisualStudio/
│ │ ├── BOSS.sln
│ │ ├── BOSS.vcxproj
│ │ ├── BOSS.vcxproj.filters
│ │ ├── BOSS_combatsearch.vcxproj
│ │ ├── BOSS_main.psess
│ │ ├── BOSS_main.vcxproj
│ │ └── BOSS_main.vcxproj.filters
│ ├── bin/
│ │ ├── buildorders/
│ │ │ ├── Protoss_DarkTemplarRush.txt
│ │ │ ├── Protoss_DragoonRange.txt
│ │ │ ├── Terran_TankPush.txt
│ │ │ ├── Zerg_2HatchHydra.txt
│ │ │ └── Zerg_3HatchMuta.txt
│ │ └── images/
│ │ ├── command_icons/
│ │ │ └── fix.bat
│ │ └── units/
│ │ └── fix.bat
│ ├── emscripten/
│ │ ├── BOSS.html
│ │ ├── BOSS2.html
│ │ ├── config.html
│ │ └── config.txt
│ ├── lib/
│ │ ├── SDL2.lib
│ │ ├── SDL2_image.lib
│ │ └── opengl32.lib
│ ├── make_windows.bat
│ └── source/
│ ├── ActionInProgress.cpp
│ ├── ActionInProgress.h
│ ├── ActionSet.cpp
│ ├── ActionSet.h
│ ├── ActionType.cpp
│ ├── ActionType.h
│ ├── ActionTypeData.cpp
│ ├── ActionTypeData.h
│ ├── Array.hpp
│ ├── BOSS.cpp
│ ├── BOSS.h
│ ├── BOSSAssert.cpp
│ ├── BOSSAssert.h
│ ├── BOSSException.cpp
│ ├── BOSSException.h
│ ├── BOSSExperiments.cpp
│ ├── BOSSExperiments.h
│ ├── BOSSLogger.cpp
│ ├── BOSSLogger.h
│ ├── BOSSParameters.cpp
│ ├── BOSSParameters.h
│ ├── BOSSPlotBuildOrders.cpp
│ ├── BOSSPlotBuildOrders.h
│ ├── BOSS_main.cpp
│ ├── BaseTypes.h
│ ├── BuildOrder.cpp
│ ├── BuildOrder.h
│ ├── BuildOrderPlot.cpp
│ ├── BuildOrderPlot.h
│ ├── BuildOrderSearchGoal.cpp
│ ├── BuildOrderSearchGoal.h
│ ├── BuildOrderTester.cpp
│ ├── BuildOrderTester.h
│ ├── BuildingData.cpp
│ ├── BuildingData.h
│ ├── CImg/
│ │ └── CImg.h
│ ├── CombatSearch.cpp
│ ├── CombatSearch.h
│ ├── CombatSearchExperiment.cpp
│ ├── CombatSearchExperiment.h
│ ├── CombatSearchParameters.cpp
│ ├── CombatSearchParameters.h
│ ├── CombatSearchResults.cpp
│ ├── CombatSearchResults.h
│ ├── CombatSearch_BestResponse.cpp
│ ├── CombatSearch_BestResponse.h
│ ├── CombatSearch_BestResponseData.cpp
│ ├── CombatSearch_BestResponseData.h
│ ├── CombatSearch_Bucket.cpp
│ ├── CombatSearch_Bucket.h
│ ├── CombatSearch_BucketData.cpp
│ ├── CombatSearch_BucketData.h
│ ├── CombatSearch_Integral.cpp
│ ├── CombatSearch_Integral.h
│ ├── CombatSearch_IntegralData.cpp
│ ├── CombatSearch_IntegralData.h
│ ├── Common.h
│ ├── Constants.cpp
│ ├── Constants.h
│ ├── DFBB_BuildOrderSearchParameters.cpp
│ ├── DFBB_BuildOrderSearchParameters.h
│ ├── DFBB_BuildOrderSearchResults.cpp
│ ├── DFBB_BuildOrderSearchResults.h
│ ├── DFBB_BuildOrderSearchSaveState.cpp
│ ├── DFBB_BuildOrderSearchSaveState.h
│ ├── DFBB_BuildOrderSmartSearch.cpp
│ ├── DFBB_BuildOrderSmartSearch.h
│ ├── DFBB_BuildOrderStackSearch.cpp
│ ├── DFBB_BuildOrderStackSearch.h
│ ├── Eval.cpp
│ ├── Eval.h
│ ├── GameState.cpp
│ ├── GameState.h
│ ├── GraphViz.hpp
│ ├── HatcheryData.cpp
│ ├── HatcheryData.h
│ ├── JSONTools.cpp
│ ├── JSONTools.h
│ ├── NaiveBuildOrderSearch.cpp
│ ├── NaiveBuildOrderSearch.h
│ ├── Position.hpp
│ ├── PrerequisiteSet.cpp
│ ├── PrerequisiteSet.h
│ ├── StarCraftGUI.cpp
│ ├── StarCraftGUI.h
│ ├── Timer.hpp
│ ├── Tools.cpp
│ ├── Tools.h
│ ├── UnitData.cpp
│ ├── UnitData.h
│ ├── deprecated/
│ │ ├── BOSSAssert.cpp
│ │ ├── BOSSAssert.h
│ │ ├── BOSSVisExperiment.cpp
│ │ ├── BOSSVisExperiment.h
│ │ ├── GUI.cpp
│ │ ├── GUI.h
│ │ ├── GUITools.cpp
│ │ ├── GUITools.h
│ │ └── bwapidata/
│ │ ├── README.txt
│ │ └── include/
│ │ ├── AIModule.cpp
│ │ ├── BWAPI/
│ │ │ ├── AIModule.h
│ │ │ ├── Bitmap.h
│ │ │ ├── Bullet.h
│ │ │ ├── BulletType.h
│ │ │ ├── Client/
│ │ │ │ ├── BulletData.h
│ │ │ │ ├── BulletImpl.h
│ │ │ │ ├── Client.h
│ │ │ │ ├── Command.h
│ │ │ │ ├── CommandType.h
│ │ │ │ ├── Event.h
│ │ │ │ ├── ForceData.h
│ │ │ │ ├── ForceImpl.h
│ │ │ │ ├── GameData.h
│ │ │ │ ├── GameImpl.h
│ │ │ │ ├── PlayerData.h
│ │ │ │ ├── PlayerImpl.h
│ │ │ │ ├── Shape.h
│ │ │ │ ├── ShapeType.h
│ │ │ │ ├── UnitCommand.h
│ │ │ │ ├── UnitData.h
│ │ │ │ └── UnitImpl.h
│ │ │ ├── Client.h
│ │ │ ├── Color.h
│ │ │ ├── Constants.h
│ │ │ ├── CoordinateType.h
│ │ │ ├── DamageType.h
│ │ │ ├── Error.h
│ │ │ ├── Event.h
│ │ │ ├── EventType.h
│ │ │ ├── ExplosionType.h
│ │ │ ├── Flag.h
│ │ │ ├── Force.h
│ │ │ ├── Game.h
│ │ │ ├── GameType.h
│ │ │ ├── Input.h
│ │ │ ├── Latency.h
│ │ │ ├── Order.h
│ │ │ ├── Player.h
│ │ │ ├── PlayerType.h
│ │ │ ├── Position.h
│ │ │ ├── Race.h
│ │ │ ├── TechType.h
│ │ │ ├── TilePosition.h
│ │ │ ├── Unit.h
│ │ │ ├── UnitCommand.h
│ │ │ ├── UnitCommandType.h
│ │ │ ├── UnitSizeType.h
│ │ │ ├── UnitType.h
│ │ │ ├── UpgradeType.h
│ │ │ └── WeaponType.h
│ │ ├── BWAPI.cpp
│ │ ├── BWAPI.h
│ │ ├── Bitmap.cpp
│ │ ├── BulletType.cpp
│ │ ├── Color.cpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── DamageType.cpp
│ │ ├── Error.cpp
│ │ ├── Event.cpp
│ │ ├── ExplosionType.cpp
│ │ ├── GameType.cpp
│ │ ├── Order.cpp
│ │ ├── PlayerType.cpp
│ │ ├── Position.cpp
│ │ ├── Race.cpp
│ │ ├── TechType.cpp
│ │ ├── TilePosition.cpp
│ │ ├── UnitCommandType.cpp
│ │ ├── UnitSizeType.cpp
│ │ ├── UnitType.cpp
│ │ ├── UpgradeType.cpp
│ │ ├── Util/
│ │ │ ├── Bitmask.h
│ │ │ ├── Exceptions.cpp
│ │ │ ├── Exceptions.h
│ │ │ ├── FileLogger.cpp
│ │ │ ├── FileLogger.h
│ │ │ ├── Foreach.h
│ │ │ ├── Gnu.h
│ │ │ ├── LogLevel.h
│ │ │ ├── Logger.cpp
│ │ │ ├── Logger.h
│ │ │ ├── RectangleArray.h
│ │ │ ├── RegionQuadTree.h
│ │ │ ├── Strings.cpp
│ │ │ ├── Strings.h
│ │ │ ├── Types.h
│ │ │ ├── sha1.cpp
│ │ │ └── sha1.h
│ │ └── WeaponType.cpp
│ └── rapidjson/
│ ├── document.h
│ ├── filestream.h
│ ├── internal/
│ │ ├── pow10.h
│ │ ├── stack.h
│ │ └── strfunc.h
│ ├── prettywriter.h
│ ├── rapidjson.h
│ ├── reader.h
│ ├── stringbuffer.h
│ └── writer.h
├── License.md
├── README.md
├── SparCraft/
│ ├── .gitignore
│ ├── LINUX_HOW_TO_COMPILE.txt
│ ├── Makefile
│ ├── README.txt
│ ├── VisualStudio/
│ │ ├── SparCraft.sln
│ │ ├── SparCraft.vcxproj
│ │ ├── SparCraft.vcxproj.filters
│ │ ├── SparCraft_main.vcxproj
│ │ ├── SparCraft_main.vcxproj.filters
│ │ ├── bwapidata.vcxproj
│ │ ├── bwapidata.vcxproj.filters
│ │ └── set_environment_variables.bat
│ ├── asset/
│ │ └── images/
│ │ ├── command_icons/
│ │ │ └── fix.bat
│ │ └── units/
│ │ └── fix.bat
│ ├── bin/
│ │ └── .gitkeep
│ ├── bwapidata/
│ │ ├── README.txt
│ │ └── include/
│ │ ├── AIModule.cpp
│ │ ├── BWAPI/
│ │ │ ├── AIModule.h
│ │ │ ├── Bitmap.h
│ │ │ ├── Bullet.h
│ │ │ ├── BulletType.h
│ │ │ ├── Client/
│ │ │ │ ├── BulletData.h
│ │ │ │ ├── BulletImpl.h
│ │ │ │ ├── Client.h
│ │ │ │ ├── Command.h
│ │ │ │ ├── CommandType.h
│ │ │ │ ├── Event.h
│ │ │ │ ├── ForceData.h
│ │ │ │ ├── ForceImpl.h
│ │ │ │ ├── GameData.h
│ │ │ │ ├── GameImpl.h
│ │ │ │ ├── PlayerData.h
│ │ │ │ ├── PlayerImpl.h
│ │ │ │ ├── Shape.h
│ │ │ │ ├── ShapeType.h
│ │ │ │ ├── UnitCommand.h
│ │ │ │ ├── UnitData.h
│ │ │ │ └── UnitImpl.h
│ │ │ ├── Client.h
│ │ │ ├── Color.h
│ │ │ ├── Constants.h
│ │ │ ├── CoordinateType.h
│ │ │ ├── DamageType.h
│ │ │ ├── Error.h
│ │ │ ├── Event.h
│ │ │ ├── EventType.h
│ │ │ ├── ExplosionType.h
│ │ │ ├── Flag.h
│ │ │ ├── Force.h
│ │ │ ├── Game.h
│ │ │ ├── GameType.h
│ │ │ ├── Input.h
│ │ │ ├── Latency.h
│ │ │ ├── Order.h
│ │ │ ├── Player.h
│ │ │ ├── PlayerType.h
│ │ │ ├── Position.h
│ │ │ ├── Race.h
│ │ │ ├── TechType.h
│ │ │ ├── TilePosition.h
│ │ │ ├── Unit.h
│ │ │ ├── UnitCommand.h
│ │ │ ├── UnitCommandType.h
│ │ │ ├── UnitSizeType.h
│ │ │ ├── UnitType.h
│ │ │ ├── UpgradeType.h
│ │ │ └── WeaponType.h
│ │ ├── BWAPI.cpp
│ │ ├── BWAPI.h
│ │ ├── Bitmap.cpp
│ │ ├── BulletType.cpp
│ │ ├── Color.cpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── DamageType.cpp
│ │ ├── Error.cpp
│ │ ├── Event.cpp
│ │ ├── ExplosionType.cpp
│ │ ├── GameType.cpp
│ │ ├── Order.cpp
│ │ ├── PlayerType.cpp
│ │ ├── Position.cpp
│ │ ├── Race.cpp
│ │ ├── TechType.cpp
│ │ ├── TilePosition.cpp
│ │ ├── UnitCommandType.cpp
│ │ ├── UnitSizeType.cpp
│ │ ├── UnitType.cpp
│ │ ├── UpgradeType.cpp
│ │ ├── Util/
│ │ │ ├── Bitmask.h
│ │ │ ├── Exceptions.cpp
│ │ │ ├── Exceptions.h
│ │ │ ├── FileLogger.cpp
│ │ │ ├── FileLogger.h
│ │ │ ├── Foreach.h
│ │ │ ├── Gnu.h
│ │ │ ├── LogLevel.h
│ │ │ ├── Logger.cpp
│ │ │ ├── Logger.h
│ │ │ ├── RectangleArray.h
│ │ │ ├── RegionQuadTree.h
│ │ │ ├── Strings.cpp
│ │ │ ├── Strings.h
│ │ │ ├── Types.h
│ │ │ ├── sha1.cpp
│ │ │ └── sha1.h
│ │ └── WeaponType.cpp
│ ├── external_binaries/
│ │ └── lib/
│ │ ├── SDL.lib
│ │ ├── SDL_gfx.lib
│ │ ├── SDL_image.lib
│ │ ├── SDLmain.lib
│ │ └── opengl32.lib
│ ├── lib/
│ │ ├── SDL2.lib
│ │ ├── SDL2_image.lib
│ │ └── opengl32.lib
│ ├── sample_experiment/
│ │ ├── sample_exp.txt
│ │ ├── sample_exp_linux.txt
│ │ ├── sample_map_files/
│ │ │ ├── destination.txt
│ │ │ └── map_file_format.txt
│ │ ├── sample_results/
│ │ │ ├── sample_exp_2013-03-22_17-49-13_config.txt
│ │ │ ├── sample_exp_2013-03-22_17-49-13_results_raw.txt
│ │ │ └── sample_exp_2013-03-22_17-49-13_results_summary.txt
│ │ └── sample_state.txt
│ ├── source/
│ │ ├── Action.cpp
│ │ ├── Action.h
│ │ ├── AllPlayers.cpp
│ │ ├── AllPlayers.h
│ │ ├── AlphaBetaMove.cpp
│ │ ├── AlphaBetaMove.h
│ │ ├── AlphaBetaSearch.cpp
│ │ ├── AlphaBetaSearch.h
│ │ ├── AlphaBetaSearchParameters.hpp
│ │ ├── AlphaBetaSearchResults.hpp
│ │ ├── AnimationFrameData.cpp
│ │ ├── AnimationFrameData.h
│ │ ├── Array.hpp
│ │ ├── BaseTypes.hpp
│ │ ├── Common.cpp
│ │ ├── Common.h
│ │ ├── ConfigFileGenerator.h
│ │ ├── EnumData.cpp
│ │ ├── EnumData.h
│ │ ├── Game.cpp
│ │ ├── Game.h
│ │ ├── GameState.cpp
│ │ ├── GameState.h
│ │ ├── GraphViz.hpp
│ │ ├── Hash.cpp
│ │ ├── Hash.h
│ │ ├── Logger.cpp
│ │ ├── Logger.h
│ │ ├── Map.hpp
│ │ ├── MoveArray.cpp
│ │ ├── MoveArray.h
│ │ ├── MoveSet.hpp
│ │ ├── Player.cpp
│ │ ├── Player.h
│ │ ├── PlayerProperties.cpp
│ │ ├── PlayerProperties.h
│ │ ├── Player_AlphaBeta.cpp
│ │ ├── Player_AlphaBeta.h
│ │ ├── Player_AttackClosest.cpp
│ │ ├── Player_AttackClosest.h
│ │ ├── Player_AttackDPS.cpp
│ │ ├── Player_AttackDPS.h
│ │ ├── Player_AttackWeakest.cpp
│ │ ├── Player_AttackWeakest.h
│ │ ├── Player_Cluster.cpp
│ │ ├── Player_Cluster.h
│ │ ├── Player_Kiter.cpp
│ │ ├── Player_Kiter.h
│ │ ├── Player_KiterDPS.cpp
│ │ ├── Player_KiterDPS.h
│ │ ├── Player_Kiter_NOKDPS.cpp
│ │ ├── Player_Kiter_NOKDPS.h
│ │ ├── Player_NOKDPS.cpp
│ │ ├── Player_NOKDPS.h
│ │ ├── Player_PortfolioGreedySearch.cpp
│ │ ├── Player_PortfolioGreedySearch.h
│ │ ├── Player_Random.cpp
│ │ ├── Player_Random.h
│ │ ├── Player_UCT.cpp
│ │ ├── Player_UCT.h
│ │ ├── PortfolioGreedySearch.cpp
│ │ ├── PortfolioGreedySearch.h
│ │ ├── Position.hpp
│ │ ├── Random.hpp
│ │ ├── SparCraft.cpp
│ │ ├── SparCraft.h
│ │ ├── SparCraftAssert.cpp
│ │ ├── SparCraftAssert.h
│ │ ├── SparCraftException.cpp
│ │ ├── SparCraftException.h
│ │ ├── Timer.cpp
│ │ ├── Timer.h
│ │ ├── TranspositionTable.cpp
│ │ ├── TranspositionTable.h
│ │ ├── TutorialCode.cpp
│ │ ├── UCTMemoryPool.hpp
│ │ ├── UCTNode.h
│ │ ├── UCTSearch.cpp
│ │ ├── UCTSearch.h
│ │ ├── UCTSearchParameters.hpp
│ │ ├── UCTSearchResults.hpp
│ │ ├── Unit.cpp
│ │ ├── Unit.h
│ │ ├── UnitAction.hpp
│ │ ├── UnitProperties.cpp
│ │ ├── UnitProperties.h
│ │ ├── UnitScriptData.cpp
│ │ ├── UnitScriptData.h
│ │ ├── UnitType.hpp
│ │ ├── WeaponProperties.cpp
│ │ ├── WeaponProperties.h
│ │ ├── glext/
│ │ │ ├── glext.h
│ │ │ └── wglext.h
│ │ ├── glfont2/
│ │ │ ├── glfont.cc
│ │ │ └── glfont.h
│ │ ├── gui/
│ │ │ ├── GUI.cpp
│ │ │ ├── GUI.h
│ │ │ ├── GUIGame.cpp
│ │ │ ├── GUIGame.h
│ │ │ ├── GUITools.cpp
│ │ │ └── GUITools.h
│ │ └── main/
│ │ ├── SearchExperiment.cpp
│ │ ├── SearchExperiment.h
│ │ └── main.cpp
│ └── starcraft_images/
│ └── fonts/
│ └── couriernew.glf
└── UAlbertaBot/
├── .gitignore
├── Source/
│ ├── AutoObserver.cpp
│ ├── AutoObserver.h
│ ├── BOSSManager.cpp
│ ├── BOSSManager.h
│ ├── BaseLocation.cpp
│ ├── BaseLocation.h
│ ├── BaseLocationManager.cpp
│ ├── BaseLocationManager.h
│ ├── BuildOrder.cpp
│ ├── BuildOrder.h
│ ├── BuildOrderQueue.cpp
│ ├── BuildOrderQueue.h
│ ├── BuildingData.cpp
│ ├── BuildingData.h
│ ├── BuildingManager.cpp
│ ├── BuildingManager.h
│ ├── BuildingPlacerManager.cpp
│ ├── BuildingPlacerManager.h
│ ├── CombatCommander.cpp
│ ├── CombatCommander.h
│ ├── CombatSimulation.cpp
│ ├── CombatSimulation.h
│ ├── Common.cpp
│ ├── Common.h
│ ├── Config.cpp
│ ├── Config.h
│ ├── DetectorManager.cpp
│ ├── DetectorManager.h
│ ├── DistanceMap.cpp
│ ├── DistanceMap.h
│ ├── GameCommander.cpp
│ ├── GameCommander.h
│ ├── Global.cpp
│ ├── Global.h
│ ├── Grid.hpp
│ ├── InformationManager.cpp
│ ├── InformationManager.h
│ ├── JSONTools.cpp
│ ├── JSONTools.h
│ ├── Logger.cpp
│ ├── Logger.h
│ ├── MapTools.cpp
│ ├── MapTools.h
│ ├── MedicManager.cpp
│ ├── MedicManager.h
│ ├── MeleeManager.cpp
│ ├── MeleeManager.h
│ ├── MetaType.cpp
│ ├── MetaType.h
│ ├── Micro.cpp
│ ├── Micro.h
│ ├── MicroManager.cpp
│ ├── MicroManager.h
│ ├── ParseUtils.cpp
│ ├── ParseUtils.h
│ ├── ProductionManager.cpp
│ ├── ProductionManager.h
│ ├── Profiler.hpp
│ ├── RangedManager.cpp
│ ├── RangedManager.h
│ ├── ScoutManager.cpp
│ ├── ScoutManager.h
│ ├── Squad.cpp
│ ├── Squad.h
│ ├── SquadData.cpp
│ ├── SquadData.h
│ ├── SquadOrder.h
│ ├── StarDraftMap.hpp
│ ├── StrategyManager.cpp
│ ├── StrategyManager.h
│ ├── TankManager.cpp
│ ├── TankManager.h
│ ├── TimerManager.cpp
│ ├── TimerManager.h
│ ├── TransportManager.cpp
│ ├── TransportManager.h
│ ├── UABAssert.cpp
│ ├── UABAssert.h
│ ├── UAlbertaBotModule.cpp
│ ├── UAlbertaBotModule.h
│ ├── UnitData.cpp
│ ├── UnitData.h
│ ├── UnitInfoManager.cpp
│ ├── UnitInfoManager.h
│ ├── UnitUtil.cpp
│ ├── UnitUtil.h
│ ├── WorkerData.cpp
│ ├── WorkerData.h
│ ├── WorkerManager.cpp
│ ├── WorkerManager.h
│ ├── main.cpp
│ ├── rapidjson/
│ │ ├── allocators.h
│ │ ├── document.h
│ │ ├── encodedstream.h
│ │ ├── encodings.h
│ │ ├── error/
│ │ │ ├── en.h
│ │ │ └── error.h
│ │ ├── filereadstream.h
│ │ ├── filewritestream.h
│ │ ├── internal/
│ │ │ ├── biginteger.h
│ │ │ ├── diyfp.h
│ │ │ ├── dtoa.h
│ │ │ ├── ieee754.h
│ │ │ ├── itoa.h
│ │ │ ├── meta.h
│ │ │ ├── pow10.h
│ │ │ ├── stack.h
│ │ │ ├── strfunc.h
│ │ │ └── strtod.h
│ │ ├── memorybuffer.h
│ │ ├── memorystream.h
│ │ ├── msinttypes/
│ │ │ ├── inttypes.h
│ │ │ └── stdint.h
│ │ ├── pointer.h
│ │ ├── prettywriter.h
│ │ ├── rapidjson.h
│ │ ├── reader.h
│ │ ├── stringbuffer.h
│ │ └── writer.h
│ ├── research/
│ │ ├── CombatData.cpp
│ │ ├── CombatData.h
│ │ ├── GameHistory.hpp
│ │ ├── HardCodedInfo.cpp
│ │ ├── HardCodedInfo.h
│ │ ├── MapGrid.cpp
│ │ ├── MapGrid.h
│ │ ├── combatpredictor/
│ │ │ ├── CombatPredictor.cpp
│ │ │ └── CombatPredictor.h
│ │ ├── hlsearch/
│ │ │ ├── HLCombatCommander.cpp
│ │ │ ├── HLCombatCommander.h
│ │ │ ├── HLManager.cpp
│ │ │ ├── HLManager.h
│ │ │ ├── HLSearch.cpp
│ │ │ ├── HLSearch.h
│ │ │ ├── HLSquad.cpp
│ │ │ ├── HLSquad.h
│ │ │ ├── HLState.cpp
│ │ │ ├── HLState.h
│ │ │ ├── HLStatistics.cpp
│ │ │ ├── HLStatistics.h
│ │ │ ├── HLStrategyManager.cpp
│ │ │ ├── HLStrategyManager.h
│ │ │ ├── HLTranspositionTable.cpp
│ │ │ ├── HLTranspositionTable.h
│ │ │ ├── HLUnitData.cpp
│ │ │ └── HLUnitData.h
│ │ ├── sparcraft/
│ │ │ ├── SparCraftManager.cpp
│ │ │ ├── SparCraftManager.h
│ │ │ ├── UnitCommandData.cpp
│ │ │ ├── UnitCommandData.h
│ │ │ ├── UnitCommandManager.cpp
│ │ │ └── UnitCommandManager.h
│ │ └── visualizer/
│ │ ├── Display.cpp
│ │ ├── Display.h
│ │ ├── EnhancedInterface.hpp
│ │ ├── ReplayVisualizer.cpp
│ │ ├── ReplayVisualizer.h
│ │ ├── Visualizer.cpp
│ │ └── Visualizer.h
│ └── stardraft/
│ ├── BaseBorderFinder.hpp
│ ├── Grid2D.hpp
│ ├── StarDraft.h
│ └── StarDraftMap.hpp
├── VisualStudio/
│ ├── StarterBot.vcxproj
│ ├── StarterBot.vcxproj.filters
│ ├── UAlbertaBot.sln
│ ├── UAlbertaBot.vcxproj
│ └── UAlbertaBot.vcxproj.filters
├── bin/
│ └── UAlbertaBot_Config.txt
├── starterbot/
│ ├── Grid.hpp
│ ├── MapTools.cpp
│ ├── MapTools.h
│ ├── StarterBot.cpp
│ ├── StarterBot.h
│ ├── Tools.cpp
│ ├── Tools.h
│ └── main.cpp
└── uml/
└── ualbertabot.dia
Showing preview only (204K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (2332 symbols across 491 files)
FILE: BOSS/Qt/main.cpp
function main (line 6) | int main(int argc, char *argv[])
FILE: BOSS/Qt/mainwindow.cpp
function QString (line 228) | QString MainWindow::getImageName(const BOSS::ActionType & type)
FILE: BOSS/Qt/mainwindow.h
function namespace (line 8) | namespace PlotTypes
function namespace (line 13) | namespace Ui
function class (line 18) | class MainWindow : public QMainWindow
FILE: BOSS/source/ActionInProgress.cpp
function UnitCountType (line 11) | UnitCountType ActionsInProgress::numInProgress(const ActionType & a) const
function FrameCountType (line 45) | FrameCountType ActionsInProgress::nextActionFinishTime() const
function UnitCountType (line 52) | const UnitCountType ActionsInProgress::size() const
function FrameCountType (line 57) | FrameCountType ActionsInProgress::getLastFinishTime() const
function FrameCountType (line 67) | FrameCountType ActionsInProgress::nextActionFinishTime(const ActionType ...
function FrameCountType (line 84) | FrameCountType ActionsInProgress::nextBuildingFinishTime() const
function ActionType (line 108) | const ActionType & ActionsInProgress::getAction(const UnitCountType i) c...
function FrameCountType (line 115) | FrameCountType ActionsInProgress::getTime(const UnitCountType i) const
function ActionType (line 122) | const ActionType & ActionsInProgress::nextAction() const
function FrameCountType (line 151) | FrameCountType ActionsInProgress::whenActionsFinished(const Prerequisite...
FILE: BOSS/source/ActionInProgress.h
function namespace (line 14) | namespace BOSS
FILE: BOSS/source/ActionSet.cpp
function ActionType (line 20) | const ActionType & ActionSet::operator [] (const size_t & index) const
function ActionType (line 25) | ActionType & ActionSet::operator [] (const size_t & index)
FILE: BOSS/source/ActionSet.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/ActionType.cpp
function ActionType (line 50) | ActionType & ActionType::operator = (const ActionType & rhs)
function ActionID (line 60) | const ActionID ActionType::ID() const { ...
function RaceID (line 61) | const RaceID ActionType::getRace() const { ...
function ActionType (line 68) | ActionType ActionType::whatBuildsActionType() const { retu...
function ActionID (line 69) | ActionID ActionType::whatBuildsAction() const { ...
function PrerequisiteSet (line 71) | const PrerequisiteSet & ActionType::getPrerequisites() const { ...
function PrerequisiteSet (line 72) | const PrerequisiteSet & ActionType::getRecursivePrerequisites() ...
function FrameCountType (line 79) | FrameCountType ActionType::buildTime() const { ...
function ResourceCountType (line 80) | ResourceCountType ActionType::mineralPrice() const { ...
function ResourceCountType (line 81) | ResourceCountType ActionType::mineralPriceScaled() const { ...
function ResourceCountType (line 82) | ResourceCountType ActionType::gasPrice() const { ...
function ResourceCountType (line 83) | ResourceCountType ActionType::gasPriceScaled() const { ...
function SupplyCountType (line 84) | SupplyCountType ActionType::supplyRequired() const { ...
function SupplyCountType (line 85) | SupplyCountType ActionType::supplyProvided() const { ...
function UnitCountType (line 86) | UnitCountType ActionType::numProduced() const { ...
function ActionType (line 145) | ActionType ActionType::requiredAddonType() const { ...
type BOSS (line 151) | namespace BOSS
type ActionTypes (line 153) | namespace ActionTypes
function init (line 163) | void init()
function ActionType (line 205) | const ActionType & GetWorker(const RaceID raceID)
function ActionType (line 210) | const ActionType & GetSupplyProvider(const RaceID raceID)
function ActionType (line 215) | const ActionType & GetRefinery(const RaceID raceID)
function ActionType (line 220) | const ActionType & GetResourceDepot(const RaceID raceID)
function ActionType (line 235) | const ActionType & GetActionType(const RaceID & race, const ActionID...
function ActionType (line 242) | const ActionType & GetActionType(const std::string & name)
function TypeExists (line 249) | const bool TypeExists(const std::string & name)
function TypeExists (line 261) | const bool TypeExists(const BWAPI::UnitType & type)
function TypeExists (line 282) | const bool TypeExists(const BWAPI::UpgradeType & type)
function TypeExists (line 303) | const bool TypeExists(const BWAPI::TechType & type)
FILE: BOSS/source/ActionType.h
function namespace (line 5) | namespace BOSS
FILE: BOSS/source/ActionTypeData.cpp
function RaceID (line 119) | RaceID ActionTypeData::getRaceID() const { re...
function ActionID (line 120) | ActionID ActionTypeData::getActionID() const { re...
function ActionID (line 127) | ActionID ActionTypeData::whatBuildsAction() const { return w...
function FrameCountType (line 134) | FrameCountType ActionTypeData::buildTime() const { return buildTime...
function ResourceCountType (line 135) | ResourceCountType ActionTypeData::mineralPrice() const { return minera...
function ResourceCountType (line 136) | ResourceCountType ActionTypeData::mineralPriceScaled() const { return mi...
function ResourceCountType (line 137) | ResourceCountType ActionTypeData::gasPrice() const { return gasPriceV...
function ResourceCountType (line 138) | ResourceCountType ActionTypeData::gasPriceScaled() const { return gasPr...
function SupplyCountType (line 139) | SupplyCountType ActionTypeData::supplyRequired() const { return suppl...
function SupplyCountType (line 140) | SupplyCountType ActionTypeData::supplyProvided() const { return suppl...
function UnitCountType (line 141) | UnitCountType ActionTypeData::numProduced() const { return numberPr...
function ActionID (line 154) | ActionID ActionTypeData::requiredAddonID() const { re...
function PrerequisiteSet (line 167) | const PrerequisiteSet & ActionTypeData::getPrerequisites() const { retu...
function PrerequisiteSet (line 168) | const PrerequisiteSet & ActionTypeData::getRecursivePrerequisites() con...
function RaceID (line 322) | const RaceID ActionTypeData::GetRaceID(BWAPI::Race r)
function ActionID (line 342) | const ActionID ActionTypeData::GetNumActionTypes(const RaceID race)
function ActionTypeData (line 347) | const ActionTypeData & ActionTypeData::GetActionTypeData(const RaceID ra...
function ActionID (line 354) | ActionID ActionTypeData::GetActionID(const BWAPI::UnitType & type)
function ActionID (line 373) | ActionID ActionTypeData::GetActionID(const BWAPI::TechType & type)
function ActionID (line 389) | ActionID ActionTypeData::GetActionID(const BWAPI::UpgradeType & type)
function ActionTypeData (line 405) | ActionTypeData ActionTypeData::GetActionTypeData(const BWAPI::UnitType & a)
function ActionTypeData (line 410) | ActionTypeData ActionTypeData::GetActionTypeData(const BWAPI::TechType & a)
function ActionTypeData (line 415) | ActionTypeData ActionTypeData::GetActionTypeData(const BWAPI::UpgradeTyp...
function PrerequisiteSet (line 488) | PrerequisiteSet ActionTypeData::CalculatePrerequisites(const ActionTypeD...
FILE: BOSS/source/ActionTypeData.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/Array.hpp
type BOSS (line 6) | namespace BOSS
class Vec (line 9) | class Vec
method resize (line 39) | void resize(const size_t & size)
method T (line 45) | T & get(const size_t & index)
method T (line 51) | const T & get(const size_t & index) const
method T (line 57) | T & operator [] (const size_t & index)
method T (line 62) | const T & operator [] (const size_t & index) const
method contains (line 67) | const bool contains(const T & e) const
method addSorted (line 80) | void addSorted(const T & e)
method addAtIndex (line 91) | void addAtIndex(const T & e, const size_t & index)
method copyShiftRight (line 100) | void copyShiftRight(const size_t & index)
method copyShiftLeft (line 111) | void copyShiftLeft(const size_t & index)
method push_back (line 127) | void push_back(const T & e)
method T (line 134) | const T & back() const
method remove (line 141) | void remove(const size_t & index)
method removeByShift (line 146) | void removeByShift(const size_t & index)
method remove_by_swap (line 151) | void remove_by_swap(const size_t & index)
method pop_back (line 159) | void pop_back()
method sort (line 166) | void sort()
method empty (line 171) | const bool empty() const
method clear (line 176) | void clear()
method fill (line 186) | inline void fill(const T & val)
class iterator (line 191) | class iterator
method iterator (line 195) | iterator(T * ptr) : _ptr(ptr) { }
method iterator (line 196) | iterator operator ++ () { iterator i = *th...
method iterator (line 197) | iterator operator ++ (int junk) { _ptr++; return *...
method T (line 198) | T & operator * () { return *_ptr; }
method T (line 199) | T * operator -> () { return _ptr; }
class const_iterator (line 204) | class const_iterator
method const_iterator (line 208) | const_iterator(T * ptr) : _ptr(ptr) { }
method const_iterator (line 209) | const_iterator operator ++ () { cons...
method const_iterator (line 210) | const_iterator operator ++ (int junk) { _ptr...
method T (line 211) | const T & operator * () { retu...
method T (line 212) | const T * operator -> () { retu...
method iterator (line 217) | iterator begin()
method iterator (line 195) | iterator(T * ptr) : _ptr(ptr) { }
method iterator (line 196) | iterator operator ++ () { iterator i = *th...
method iterator (line 197) | iterator operator ++ (int junk) { _ptr++; return *...
method T (line 198) | T & operator * () { return *_ptr; }
method T (line 199) | T * operator -> () { return _ptr; }
method iterator (line 222) | iterator end()
method iterator (line 195) | iterator(T * ptr) : _ptr(ptr) { }
method iterator (line 196) | iterator operator ++ () { iterator i = *th...
method iterator (line 197) | iterator operator ++ (int junk) { _ptr++; return *...
method T (line 198) | T & operator * () { return *_ptr; }
method T (line 199) | T * operator -> () { return _ptr; }
FILE: BOSS/source/BOSS.cpp
type BOSS (line 3) | namespace BOSS
function init (line 5) | void init()
function printData (line 11) | void printData()
FILE: BOSS/source/BOSS.h
function namespace (line 19) | namespace BOSS
FILE: BOSS/source/BOSSAssert.cpp
type BOSS (line 6) | namespace BOSS
type Assert (line 8) | namespace Assert
function currentDateTime (line 10) | const std::string currentDateTime()
function ReportFailure (line 29) | void ReportFailure(const GameState * state, const char * condition, ...
FILE: BOSS/source/BOSSAssert.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/BOSSException.h
function namespace (line 5) | namespace BOSS
FILE: BOSS/source/BOSSExperiments.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/BOSSLogger.cpp
type BOSS (line 3) | namespace BOSS
type Logger (line 5) | namespace Logger
function LogAppendToFile (line 7) | void LogAppendToFile(const std::string & logFile, const std::string ...
function LogOverwriteToFile (line 16) | void LogOverwriteToFile(const std::string & logFile, const std::stri...
FILE: BOSS/source/BOSSLogger.h
function namespace (line 7) | namespace BOSS
FILE: BOSS/source/BOSSParameters.cpp
function BOSSParameters (line 10) | BOSSParameters & BOSSParameters::Instance()
function GameState (line 61) | const GameState & BOSSParameters::GetState(const std::string & key)
function BuildOrder (line 68) | const BuildOrder & BOSSParameters::GetBuildOrder(const std::string & key)
function BuildOrderSearchGoal (line 75) | const BuildOrderSearchGoal & BOSSParameters::GetBuildOrderSearchGoalMap(...
FILE: BOSS/source/BOSSParameters.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/BOSSPlotBuildOrders.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/BOSS_main.cpp
function main2 (line 10) | int main2()
function main (line 38) | int main(int argc, char *argv[])
FILE: BOSS/source/BaseTypes.h
function namespace (line 3) | namespace BOSS
FILE: BOSS/source/BuildOrder.cpp
function ActionType (line 79) | const ActionType & BuildOrder::operator [] (const size_t & i) const
function ActionType (line 84) | ActionType & BuildOrder::operator [] (const size_t & i)
function FrameCountType (line 183) | const FrameCountType BuildOrder::getCompletionTime(const GameState & sta...
FILE: BOSS/source/BuildOrder.h
function namespace (line 7) | namespace BOSS
FILE: BOSS/source/BuildOrderPlot.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/BuildOrderSearchGoal.cpp
function UnitCountType (line 67) | UnitCountType BuildOrderSearchGoal::getGoal(const ActionType & a) const
function UnitCountType (line 75) | UnitCountType BuildOrderSearchGoal::getGoalMax(const ActionType & a) const
function SupplyCountType (line 83) | SupplyCountType BuildOrderSearchGoal::supplyRequired() const
FILE: BOSS/source/BuildOrderSearchGoal.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/BuildOrderTester.cpp
function BuildOrderSearchGoal (line 7) | BuildOrderSearchGoal BuildOrderTester::GetRandomGoal(const RaceID race)
function GameState (line 52) | GameState BuildOrderTester::GetStartState(const RaceID race, int randomA...
FILE: BOSS/source/BuildOrderTester.h
function namespace (line 5) | namespace BOSS
FILE: BOSS/source/BuildingData.cpp
function BuildingStatus (line 172) | const BuildingStatus & BuildingData::getBuilding(const UnitCountType i) ...
function FrameCountType (line 178) | const FrameCountType BuildingData::getTimeUntilCanBuild(const ActionType...
FILE: BOSS/source/BuildingData.h
function namespace (line 13) | namespace BOSS
FILE: BOSS/source/CImg/CImg.h
function namespace (line 2093) | namespace cimg_library_suffixed {
type CImgAbortException (line 2383) | struct CImgAbortException
function exception (line 2387) | CImgAbortException(const CImgAbortException& e):std::exception(e) {
function CImgException (line 2407) | struct CImgArgumentException : public CImgException {
function CImgException (line 2413) | struct CImgDisplayException : public CImgException {
function CImgException (line 2419) | struct CImgInstanceException : public CImgException {
function CImgException (line 2425) | struct CImgIOException : public CImgException {
function CImgException (line 2431) | struct CImgWarningException : public CImgException {
function namespace (line 2448) | namespace cimg {
function invert_endianness (line 4244) | void invert_endianness(T* const buffer, const cimg_ulong size) {
function float2uint (line 4277) | inline unsigned int float2uint(const float f) {
function uint2float (line 4287) | inline float uint2float(const unsigned int u) {
function cimg_ulong (line 4300) | inline cimg_ulong time() {
function cimg_ulong (line 4321) | inline cimg_ulong tic() {
function cimg_ulong (line 4329) | inline cimg_ulong toc() {
function sleep (line 4339) | inline void sleep(const unsigned int milliseconds) {
function _wait (line 4350) | inline unsigned int _wait(const unsigned int milliseconds, cimg_ulong& t...
function cimg_long (line 4367) | inline cimg_long wait(const unsigned int milliseconds) {
function srand (line 4393) | inline void srand() {
function srand (line 4404) | inline void srand(const unsigned int seed) {
function rand (line 4408) | inline double rand(const double val_min, const double val_max) {
function srand (line 4416) | inline void srand() {
function srand (line 4427) | inline void srand(const unsigned int seed) {
function rand (line 4434) | inline double rand(const double val_min, const double val_max) {
function grand (line 4450) | inline double grand() {
function prand (line 4463) | inline unsigned int prand(const double z) {
function T (line 4510) | T abs(const T& a) {
function abs (line 4513) | inline bool abs(const bool a) {
function abs (line 4516) | inline int abs(const unsigned char a) {
function abs (line 4519) | inline int abs(const unsigned short a) {
function abs (line 4522) | inline int abs(const unsigned int a) {
function abs (line 4525) | inline int abs(const int a) {
function cimg_int64 (line 4528) | inline cimg_int64 abs(const cimg_uint64 a) {
function abs (line 4531) | inline double abs(const double a) {
function abs (line 4534) | inline float abs(const float a) {
function T (line 4540) | T sqr(const T& val) {
function xln (line 4545) | inline int xln(const int x) {
function T (line 4593) | T sign(const T& x) {
function cimg_ulong (line 4599) | cimg_ulong nearest_pow2(const T& x) {
function sinc (line 4606) | inline double sinc(const double x) {
function T (line 4617) | T mod(const T& x, const T& m) {
function mod (line 4621) | inline int mod(const bool x, const bool m) {
function mod (line 4624) | inline int mod(const unsigned char x, const unsigned char m) {
function mod (line 4627) | inline int mod(const char x, const char m) {
function mod (line 4634) | inline int mod(const unsigned short x, const unsigned short m) {
function mod (line 4637) | inline int mod(const short x, const short m) {
function mod (line 4640) | inline int mod(const unsigned int x, const unsigned int m) {
function mod (line 4643) | inline int mod(const int x, const int m) {
function cimg_int64 (line 4646) | inline cimg_int64 mod(const cimg_uint64 x, const cimg_uint64 m) {
function cimg_int64 (line 4649) | inline cimg_int64 mod(const cimg_int64 x, const cimg_int64 m) {
function T (line 4660) | T minmod(const T& a, const T& b) {
function log2 (line 4665) | inline double log2(const double x) {
function _pythagore (line 4684) | inline double _pythagore(double a, double b) {
function hypot (line 4691) | inline double hypot(const double x, const double y) {
function uncase (line 4699) | inline char uncase(const char x) {
function uncase (line 4704) | inline void uncase(char *const str) {
function atof (line 4715) | inline double atof(const char *const str) {
function strncasecmp (line 4728) | inline int strncasecmp(const char *const str1, const char *const str2, c...
function strcasecmp (line 4743) | inline int strcasecmp(const char *const str1, const char *const str2) {
function strunescape (line 4837) | inline void strunescape(char *const str) {
function winformat_string (line 4916) | inline void winformat_string(char *const str) {
function std (line 4934) | inline std::FILE *fopen(const char *const path, const char *const mode) {
function fclose (line 4961) | inline int fclose(std::FILE *file) {
function fseek (line 4971) | inline int fseek(FILE *stream, cimg_long offset, int origin) {
function cimg_long (line 4980) | inline cimg_long ftell(FILE *stream) {
function is_directory (line 4992) | inline bool is_directory(const char *const path) {
function is_file (line 5007) | inline bool is_file(const char *const path) {
function fdate (line 5022) | inline int fdate(const char *const path, const unsigned int attr) {
function date (line 5054) | inline int date(const unsigned int attr) {
function fread (line 5146) | size_t fread(T *const ptr, const size_t nmemb, std::FILE *stream) {
function fwrite (line 5174) | size_t fwrite(const T *ptr, const size_t nmemb, std::FILE *stream) {
function fempty (line 5198) | inline void fempty(std::FILE *const file, const char *const filename) {
function info (line 5306) | inline void info() {
function getrs (line 5504) | inline void getrs(char &TRANS, int &N, float *lapA, int *IPIV, float *la...
function _cimg_create_ext_operators (line 5582) | _cimg_create_ext_operators(bool)
function CImgDisplay (line 5768) | struct CImgDisplay {
function CImgDisplay (line 6020) | static CImgDisplay& empty() {
function CImgDisplay (line 6026) | static const CImgDisplay& const_empty() {
function _fitscreen (line 6033) | static unsigned int _fitscreen(const unsigned int dx, const unsigned int...
function is_key (line 6192) | bool is_key(const unsigned int keycode) const {
function is_key (line 6236) | bool& is_key(const char *const keycode) {
function screen_width (line 6354) | static int screen_width() {
function screen_height (line 6362) | static int screen_height() {
function keycode (line 6579) | static unsigned int keycode(const char *const keycode) {
function frames_per_second (line 6614) | float frames_per_second() {
function wait (line 7068) | static void wait(CImgDisplay& disp1) {
function wait (line 7074) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2) {
function wait (line 7081) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7088) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7095) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7104) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7115) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7126) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7137) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait (line 7148) | static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& di...
function wait_all (line 7163) | static void wait_all() {
function screen_width (line 7215) | static int screen_width() {
function screen_height (line 7236) | static int screen_height() {
function wait_all (line 7257) | static void wait_all() {
function _handle_events (line 7264) | void _handle_events(const XEvent *const pevent) {
function _set_colormap (line 7386) | void _set_colormap(Colormap& _colormap, const unsigned int dim) {
function _map_window (line 7421) | void _map_window() {
function _init_fullscreen (line 7529) | void _init_fullscreen() {
function _desinit_fullscreen (line 7598) | void _desinit_fullscreen() {
function _assign_xshm (line 7616) | static int _assign_xshm(Display *dpy, XErrorEvent *error) {
function constant (line 17242) | unsigned int constant(const double val) {
function scalar (line 17257) | unsigned int scalar() { // Insert new scalar in memory.
function scalar0 (line 17262) | unsigned int scalar0(const mp_func op) {
function scalar1 (line 17268) | unsigned int scalar1(const mp_func op, const unsigned int arg1) {
function scalar2 (line 17275) | unsigned int scalar2(const mp_func op, const unsigned int arg1, const un...
function scalar3 (line 17283) | unsigned int scalar3(const mp_func op,
function scalar6 (line 17293) | unsigned int scalar6(const mp_func op,
function scalar7 (line 17307) | unsigned int scalar7(const mp_func op,
function is_varchar (line 17340) | bool is_varchar(const char c) const {
function is_tmp_vector (line 17345) | bool is_tmp_vector(const unsigned int arg) const {
function set_variable_vector (line 17354) | void set_variable_vector(const unsigned int arg) {
function vector (line 17360) | unsigned int vector(const unsigned int siz) { // Insert new vector of sp...
function vector (line 17372) | unsigned int vector(const unsigned int siz, const double value) { // Ins...
function vector_copy (line 17379) | unsigned int vector_copy(const unsigned int arg) { // Insert new copy of...
function self_vector_s (line 17387) | void self_vector_s(const unsigned int pos, const mp_func op, const unsig...
function self_vector_v (line 17397) | void self_vector_v(const unsigned int pos, const mp_func op, const unsig...
function vector1_v (line 17407) | unsigned int vector1_v(const mp_func op, const unsigned int arg1) {
function vector2_vv (line 17420) | unsigned int vector2_vv(const mp_func op, const unsigned int arg1, const...
function vector2_vs (line 17433) | unsigned int vector2_vs(const mp_func op, const unsigned int arg1, const...
function vector2_sv (line 17446) | unsigned int vector2_sv(const mp_func op, const unsigned int arg1, const...
function vector3_vss (line 17459) | unsigned int vector3_vss(const mp_func op, const unsigned int arg1, cons...
function check_constant (line 17474) | void check_constant(const unsigned int arg, const unsigned int n_arg,
function check_matrix_square (line 17496) | void check_matrix_square(const unsigned int arg, const unsigned int n_arg,
function check_type (line 17523) | void check_type(const unsigned int arg, const unsigned int n_arg,
function check_list (line 17561) | void check_list(const bool is_out,
function check_vector0 (line 17576) | void check_vector0(const unsigned int dim,
function mp_abs (line 17607) | static double mp_abs(_cimg_math_parser& mp) {
function mp_add (line 17611) | static double mp_add(_cimg_math_parser& mp) {
function mp_acos (line 17615) | static double mp_acos(_cimg_math_parser& mp) {
function mp_arg (line 17619) | static double mp_arg(_cimg_math_parser& mp) {
function mp_argmin (line 17626) | static double mp_argmin(_cimg_math_parser& mp) {
function mp_argmax (line 17636) | static double mp_argmax(_cimg_math_parser& mp) {
function mp_asin (line 17646) | static double mp_asin(_cimg_math_parser& mp) {
function mp_atan (line 17650) | static double mp_atan(_cimg_math_parser& mp) {
function mp_atan2 (line 17654) | static double mp_atan2(_cimg_math_parser& mp) {
function mp_bitwise_and (line 17658) | static double mp_bitwise_and(_cimg_math_parser& mp) {
function mp_bitwise_left_shift (line 17662) | static double mp_bitwise_left_shift(_cimg_math_parser& mp) {
function mp_bitwise_not (line 17666) | static double mp_bitwise_not(_cimg_math_parser& mp) {
function mp_bitwise_or (line 17670) | static double mp_bitwise_or(_cimg_math_parser& mp) {
function mp_bitwise_right_shift (line 17674) | static double mp_bitwise_right_shift(_cimg_math_parser& mp) {
function mp_cbrt (line 17678) | static double mp_cbrt(_cimg_math_parser& mp) {
function mp_complex_conj (line 17682) | static double mp_complex_conj(_cimg_math_parser& mp) {
function mp_complex_div_sv (line 17690) | static double mp_complex_div_sv(_cimg_math_parser& mp) {
function mp_complex_div_vv (line 17702) | static double mp_complex_div_vv(_cimg_math_parser& mp) {
function mp_complex_exp (line 17714) | static double mp_complex_exp(_cimg_math_parser& mp) {
function mp_complex_log (line 17722) | static double mp_complex_log(_cimg_math_parser& mp) {
function mp_complex_mul (line 17730) | static double mp_complex_mul(_cimg_math_parser& mp) {
function _mp_complex_pow (line 17741) | static void _mp_complex_pow(const double r1, const double i1,
function mp_complex_pow_sv (line 17772) | static double mp_complex_pow_sv(_cimg_math_parser& mp) {
function mp_complex_pow_vs (line 17779) | static double mp_complex_pow_vs(_cimg_math_parser& mp) {
function mp_complex_pow_vv (line 17786) | static double mp_complex_pow_vv(_cimg_math_parser& mp) {
function mp_cos (line 17793) | static double mp_cos(_cimg_math_parser& mp) {
function mp_cosh (line 17797) | static double mp_cosh(_cimg_math_parser& mp) {
function mp_crop (line 17801) | static double mp_crop(_cimg_math_parser& mp) {
function mp_cross (line 17821) | static double mp_cross(_cimg_math_parser& mp) {
function mp_cut (line 17830) | static double mp_cut(_cimg_math_parser& mp) {
function mp_debug (line 17835) | static double mp_debug(_cimg_math_parser& mp) {
function mp_decrement (line 17889) | static double mp_decrement(_cimg_math_parser& mp) {
function mp_det (line 17893) | static double mp_det(_cimg_math_parser& mp) {
function mp_diag (line 17899) | static double mp_diag(_cimg_math_parser& mp) {
function mp_div (line 17907) | static double mp_div(_cimg_math_parser& mp) {
function mp_dot (line 17911) | static double mp_dot(_cimg_math_parser& mp) {
function mp_dowhile (line 17917) | static double mp_dowhile(_cimg_math_parser& mp) {
function mp_draw (line 17936) | static double mp_draw(_cimg_math_parser& mp) {
function mp_eig (line 17957) | static double mp_eig(_cimg_math_parser& mp) {
function mp_eq (line 17968) | static double mp_eq(_cimg_math_parser& mp) {
function mp_exp (line 17972) | static double mp_exp(_cimg_math_parser& mp) {
function mp_eye (line 17976) | static double mp_eye(_cimg_math_parser& mp) {
function mp_g (line 17983) | static double mp_g(_cimg_math_parser& mp) {
function mp_gauss (line 17988) | static double mp_gauss(_cimg_math_parser& mp) {
function mp_gt (line 17993) | static double mp_gt(_cimg_math_parser& mp) {
function mp_gte (line 17997) | static double mp_gte(_cimg_math_parser& mp) {
function mp_hypot (line 18001) | static double mp_hypot(_cimg_math_parser& mp) {
function mp_i (line 18005) | static double mp_i(_cimg_math_parser& mp) {
function mp_if (line 18010) | static double mp_if(_cimg_math_parser& mp) {
function mp_increment (line 18041) | static double mp_increment(_cimg_math_parser& mp) {
function mp_int (line 18045) | static double mp_int(_cimg_math_parser& mp) {
function mp_inv (line 18049) | static double mp_inv(_cimg_math_parser& mp) {
function mp_ioff (line 18057) | static double mp_ioff(_cimg_math_parser& mp) {
function mp_isbool (line 18078) | static double mp_isbool(_cimg_math_parser& mp) {
function mp_isin (line 18083) | static double mp_isin(_cimg_math_parser& mp) {
function mp_isinf (line 18090) | static double mp_isinf(_cimg_math_parser& mp) {
function mp_isint (line 18094) | static double mp_isint(_cimg_math_parser& mp) {
function mp_isnan (line 18098) | static double mp_isnan(_cimg_math_parser& mp) {
function mp_ixyzc (line 18102) | static double mp_ixyzc(_cimg_math_parser& mp) {
function mp_joff (line 18131) | static double mp_joff(_cimg_math_parser& mp) {
function mp_jxyzc (line 18155) | static double mp_jxyzc(_cimg_math_parser& mp) {
function mp_kth (line 18186) | static double mp_kth(_cimg_math_parser& mp) {
function mp_list_depth (line 18196) | static double mp_list_depth(_cimg_math_parser& mp) {
function mp_list_height (line 18201) | static double mp_list_height(_cimg_math_parser& mp) {
function mp_list_ioff (line 18206) | static double mp_list_ioff(_cimg_math_parser& mp) {
function mp_list_is_shared (line 18228) | static double mp_list_is_shared(_cimg_math_parser& mp) {
function mp_list_ixyzc (line 18233) | static double mp_list_ixyzc(_cimg_math_parser& mp) {
function mp_list_joff (line 18263) | static double mp_list_joff(_cimg_math_parser& mp) {
function mp_list_jxyzc (line 18288) | static double mp_list_jxyzc(_cimg_math_parser& mp) {
function mp_list_median (line 18320) | static double mp_list_median(_cimg_math_parser& mp) {
function mp_list_set_ioff (line 18327) | static double mp_list_set_ioff(_cimg_math_parser& mp) {
function mp_list_set_ixyzc (line 18338) | static double mp_list_set_ixyzc(_cimg_math_parser& mp) {
function mp_list_set_joff (line 18351) | static double mp_list_set_joff(_cimg_math_parser& mp) {
function mp_list_set_jxyzc (line 18365) | static double mp_list_set_jxyzc(_cimg_math_parser& mp) {
function mp_list_set_Ioff_s (line 18381) | static double mp_list_set_Ioff_s(_cimg_math_parser& mp) {
function mp_list_set_Ioff_v (line 18395) | static double mp_list_set_Ioff_v(_cimg_math_parser& mp) {
function mp_list_set_Ixyz_s (line 18409) | static double mp_list_set_Ixyz_s(_cimg_math_parser& mp) {
function mp_list_set_Ixyz_v (line 18422) | static double mp_list_set_Ixyz_v(_cimg_math_parser& mp) {
function mp_list_set_Joff_s (line 18435) | static double mp_list_set_Joff_s(_cimg_math_parser& mp) {
function mp_list_set_Joff_v (line 18452) | static double mp_list_set_Joff_v(_cimg_math_parser& mp) {
function mp_list_set_Jxyz_s (line 18469) | static double mp_list_set_Jxyz_s(_cimg_math_parser& mp) {
function mp_list_set_Jxyz_v (line 18483) | static double mp_list_set_Jxyz_v(_cimg_math_parser& mp) {
function mp_list_spectrum (line 18497) | static double mp_list_spectrum(_cimg_math_parser& mp) {
function mp_list_stats (line 18502) | static double mp_list_stats(_cimg_math_parser& mp) {
function mp_list_wh (line 18511) | static double mp_list_wh(_cimg_math_parser& mp) {
function mp_list_whd (line 18516) | static double mp_list_whd(_cimg_math_parser& mp) {
function mp_list_whds (line 18521) | static double mp_list_whds(_cimg_math_parser& mp) {
function mp_list_width (line 18526) | static double mp_list_width(_cimg_math_parser& mp) {
function mp_list_Ioff (line 18531) | static double mp_list_Ioff(_cimg_math_parser& mp) {
function mp_list_Ixyz (line 18564) | static double mp_list_Ixyz(_cimg_math_parser& mp) {
function mp_list_Joff (line 18601) | static double mp_list_Joff(_cimg_math_parser& mp) {
function mp_list_Jxyz (line 18636) | static double mp_list_Jxyz(_cimg_math_parser& mp) {
function mp_log (line 18675) | static double mp_log(_cimg_math_parser& mp) {
function mp_log10 (line 18679) | static double mp_log10(_cimg_math_parser& mp) {
function mp_log2 (line 18683) | static double mp_log2(_cimg_math_parser& mp) {
function mp_logical_and (line 18687) | static double mp_logical_and(_cimg_math_parser& mp) {
function mp_logical_not (line 18702) | static double mp_logical_not(_cimg_math_parser& mp) {
function mp_logical_or (line 18706) | static double mp_logical_or(_cimg_math_parser& mp) {
function mp_lt (line 18722) | static double mp_lt(_cimg_math_parser& mp) {
function mp_lte (line 18726) | static double mp_lte(_cimg_math_parser& mp) {
function mp_matrix_mul (line 18730) | static double mp_matrix_mul(_cimg_math_parser& mp) {
function mp_max (line 18743) | static double mp_max(_cimg_math_parser& mp) {
function mp_memcopy (line 18795) | static double mp_memcopy(_cimg_math_parser& mp) {
function mp_min (line 18847) | static double mp_min(_cimg_math_parser& mp) {
function mp_minus (line 18853) | static double mp_minus(_cimg_math_parser& mp) {
function mp_mean (line 18857) | static double mp_mean(_cimg_math_parser& mp) {
function mp_med (line 18863) | static double mp_med(_cimg_math_parser& mp) {
function mp_modulo (line 18870) | static double mp_modulo(_cimg_math_parser& mp) {
function mp_mul (line 18874) | static double mp_mul(_cimg_math_parser& mp) {
function mp_neq (line 18878) | static double mp_neq(_cimg_math_parser& mp) {
function mp_norm0 (line 18882) | static double mp_norm0(_cimg_math_parser& mp) {
function mp_norm1 (line 18889) | static double mp_norm1(_cimg_math_parser& mp) {
function mp_norm2 (line 18896) | static double mp_norm2(_cimg_math_parser& mp) {
function mp_norminf (line 18903) | static double mp_norminf(_cimg_math_parser& mp) {
function mp_normp (line 18912) | static double mp_normp(_cimg_math_parser& mp) {
function mp_pow (line 18921) | static double mp_pow(_cimg_math_parser& mp) {
function mp_pow3 (line 18926) | static double mp_pow3(_cimg_math_parser& mp) {
function mp_pow4 (line 18931) | static double mp_pow4(_cimg_math_parser& mp) {
function mp_print (line 18936) | static double mp_print(_cimg_math_parser& mp) {
function mp_prod (line 18954) | static double mp_prod(_cimg_math_parser& mp) {
function mp_copy (line 18960) | static double mp_copy(_cimg_math_parser& mp) {
function mp_rol (line 18964) | static double mp_rol(_cimg_math_parser& mp) {
function mp_ror (line 18968) | static double mp_ror(_cimg_math_parser& mp) {
function mp_rot2d (line 18972) | static double mp_rot2d(_cimg_math_parser& mp) {
function mp_rot3d (line 18985) | static double mp_rot3d(_cimg_math_parser& mp) {
function mp_round (line 18992) | static double mp_round(_cimg_math_parser& mp) {
function mp_self_add (line 18996) | static double mp_self_add(_cimg_math_parser& mp) {
function mp_self_bitwise_and (line 19000) | static double mp_self_bitwise_and(_cimg_math_parser& mp) {
function mp_self_bitwise_left_shift (line 19005) | static double mp_self_bitwise_left_shift(_cimg_math_parser& mp) {
function mp_self_bitwise_or (line 19010) | static double mp_self_bitwise_or(_cimg_math_parser& mp) {
function mp_self_bitwise_right_shift (line 19015) | static double mp_self_bitwise_right_shift(_cimg_math_parser& mp) {
function mp_self_decrement (line 19020) | static double mp_self_decrement(_cimg_math_parser& mp) {
function mp_self_increment (line 19024) | static double mp_self_increment(_cimg_math_parser& mp) {
function mp_self_map_vector_s (line 19028) | static double mp_self_map_vector_s(_cimg_math_parser& mp) { // Vector +=...
function mp_self_map_vector_v (line 19042) | static double mp_self_map_vector_v(_cimg_math_parser& mp) { // Vector +=...
function mp_self_mul (line 19056) | static double mp_self_mul(_cimg_math_parser& mp) {
function mp_self_div (line 19060) | static double mp_self_div(_cimg_math_parser& mp) {
function mp_self_modulo (line 19064) | static double mp_self_modulo(_cimg_math_parser& mp) {
function mp_self_pow (line 19069) | static double mp_self_pow(_cimg_math_parser& mp) {
function mp_self_sub (line 19074) | static double mp_self_sub(_cimg_math_parser& mp) {
function mp_set_ioff (line 19078) | static double mp_set_ioff(_cimg_math_parser& mp) {
function mp_set_ixyzc (line 19088) | static double mp_set_ixyzc(_cimg_math_parser& mp) {
function mp_set_joff (line 19100) | static double mp_set_joff(_cimg_math_parser& mp) {
function mp_set_jxyzc (line 19113) | static double mp_set_jxyzc(_cimg_math_parser& mp) {
function mp_set_Ioff_s (line 19128) | static double mp_set_Ioff_s(_cimg_math_parser& mp) {
function mp_set_Ioff_v (line 19141) | static double mp_set_Ioff_v(_cimg_math_parser& mp) {
function mp_set_Ixyz_s (line 19154) | static double mp_set_Ixyz_s(_cimg_math_parser& mp) {
function mp_set_Ixyz_v (line 19166) | static double mp_set_Ixyz_v(_cimg_math_parser& mp) {
function mp_set_Joff_s (line 19178) | static double mp_set_Joff_s(_cimg_math_parser& mp) {
function mp_set_Joff_v (line 19194) | static double mp_set_Joff_v(_cimg_math_parser& mp) {
function mp_set_Jxyz_s (line 19210) | static double mp_set_Jxyz_s(_cimg_math_parser& mp) {
function mp_set_Jxyz_v (line 19223) | static double mp_set_Jxyz_v(_cimg_math_parser& mp) {
function mp_sign (line 19236) | static double mp_sign(_cimg_math_parser& mp) {
function mp_sin (line 19240) | static double mp_sin(_cimg_math_parser& mp) {
function mp_sinc (line 19244) | static double mp_sinc(_cimg_math_parser& mp) {
function mp_single (line 19248) | static double mp_single(_cimg_math_parser& mp) {
function mp_sinh (line 19266) | static double mp_sinh(_cimg_math_parser& mp) {
function mp_solve (line 19270) | static double mp_solve(_cimg_math_parser& mp) {
function mp_sort (line 19283) | static double mp_sort(_cimg_math_parser& mp) {
function mp_sqr (line 19295) | static double mp_sqr(_cimg_math_parser& mp) {
function mp_sqrt (line 19299) | static double mp_sqrt(_cimg_math_parser& mp) {
function mp_std (line 19303) | static double mp_std(_cimg_math_parser& mp) {
function mp_sub (line 19310) | static double mp_sub(_cimg_math_parser& mp) {
function mp_sum (line 19314) | static double mp_sum(_cimg_math_parser& mp) {
function mp_tan (line 19320) | static double mp_tan(_cimg_math_parser& mp) {
function mp_tanh (line 19324) | static double mp_tanh(_cimg_math_parser& mp) {
function mp_trace (line 19328) | static double mp_trace(_cimg_math_parser& mp) {
function mp_transp (line 19334) | static double mp_transp(_cimg_math_parser& mp) {
function mp_u (line 19344) | static double mp_u(_cimg_math_parser& mp) {
function mp_var (line 19348) | static double mp_var(_cimg_math_parser& mp) {
function mp_vector_copy (line 19355) | static double mp_vector_copy(_cimg_math_parser& mp) {
function mp_vector_crop (line 19360) | static double mp_vector_crop(_cimg_math_parser& mp) {
function mp_vector_init (line 19368) | static double mp_vector_init(_cimg_math_parser& mp) {
function mp_vector_map_sv (line 19381) | static double mp_vector_map_sv(_cimg_math_parser& mp) { // Operator(scal...
function mp_vector_map_v (line 19396) | static double mp_vector_map_v(_cimg_math_parser& mp) { // Operator(vector)
function mp_vector_map_vs (line 19410) | static double mp_vector_map_vs(_cimg_math_parser& mp) { // Operator(vect...
function mp_vector_map_vss (line 19425) | static double mp_vector_map_vss(_cimg_math_parser& mp) { // Operator(vec...
function mp_vector_map_vv (line 19441) | static double mp_vector_map_vv(_cimg_math_parser& mp) { // Operator(vect...
function mp_vector_off (line 19456) | static double mp_vector_off(_cimg_math_parser& mp) {
function mp_vector_set_off (line 19464) | static double mp_vector_set_off(_cimg_math_parser& mp) {
function mp_vector_print (line 19473) | static double mp_vector_print(_cimg_math_parser& mp) {
function mp_whiledo (line 19488) | static double mp_whiledo(_cimg_math_parser& mp) { // Used also by 'for()'
function mp_Ioff (line 19521) | static double mp_Ioff(_cimg_math_parser& mp) {
function mp_Ixyz (line 19553) | static double mp_Ixyz(_cimg_math_parser& mp) {
function mp_Joff (line 19589) | static double mp_Joff(_cimg_math_parser& mp) {
function mp_Jxyz (line 19622) | static double mp_Jxyz(_cimg_math_parser& mp) {
function T (line 20657) | T kth_smallest(const unsigned int k) const {
function sum (line 20716) | double sum() const {
function _eval (line 20934) | double _eval(CImg<T> *const img_output, const char *const expression,
type CImg (line 50506) | typedef CImg<T>* iterator;
type CImg (line 50514) | typedef const CImg<T>* const_iterator;
type T (line 50525) | typedef T value_type;
type typename (line 50528) | typedef typename cimg::superset<T,bool>::type Tbool;
type typename (line 50529) | typedef typename cimg::superset<T,unsigned char>::type Tuchar;
type typename (line 50530) | typedef typename cimg::superset<T,char>::type Tchar;
type typename (line 50531) | typedef typename cimg::superset<T,unsigned short>::type Tushort;
type typename (line 50532) | typedef typename cimg::superset<T,short>::type Tshort;
type typename (line 50533) | typedef typename cimg::superset<T,unsigned int>::type Tuint;
type typename (line 50534) | typedef typename cimg::superset<T,int>::type Tint;
type typename (line 50535) | typedef typename cimg::superset<T,cimg_ulong>::type Tulong;
type typename (line 50536) | typedef typename cimg::superset<T,cimg_long>::type Tlong;
type typename (line 50537) | typedef typename cimg::superset<T,float>::type Tfloat;
type typename (line 50538) | typedef typename cimg::superset<T,double>::type Tdouble;
type typename (line 50539) | typedef typename cimg::last<T,bool>::type boolT;
type typename (line 50540) | typedef typename cimg::last<T,unsigned char>::type ucharT;
type typename (line 50541) | typedef typename cimg::last<T,char>::type charT;
type typename (line 50542) | typedef typename cimg::last<T,unsigned short>::type ushortT;
type typename (line 50543) | typedef typename cimg::last<T,short>::type shortT;
type typename (line 50544) | typedef typename cimg::last<T,unsigned int>::type uintT;
type typename (line 50545) | typedef typename cimg::last<T,int>::type intT;
type typename (line 50546) | typedef typename cimg::last<T,cimg_ulong>::type ulongT;
type typename (line 50547) | typedef typename cimg::last<T,cimg_long>::type longT;
type typename (line 50548) | typedef typename cimg::last<T,cimg_uint64>::type uint64T;
type typename (line 50549) | typedef typename cimg::last<T,cimg_int64>::type int64T;
type typename (line 50550) | typedef typename cimg::last<T,float>::type floatT;
type typename (line 50551) | typedef typename cimg::last<T,double>::type doubleT;
function explicit (line 50624) | explicit CImgList(const unsigned int n):_width(n) {
function CImgList (line 53910) | static CImgList<T> get_load_ffmpeg_external(const char *const filename) {
function CImgList (line 53991) | static CImgList<T> get_load_gif_external(const char *const filename) {
function CImgList (line 54043) | static CImgList<T> get_load_gzip_external(const char *const filename) {
type dirent (line 56069) | struct dirent
type stat (line 56083) | struct stat
FILE: BOSS/source/CombatSearch.cpp
function CombatSearchResults (line 100) | const CombatSearchResults & CombatSearch::getResults() const
FILE: BOSS/source/CombatSearch.h
function namespace (line 10) | namespace BOSS
FILE: BOSS/source/CombatSearchExperiment.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/CombatSearchParameters.cpp
function ActionSet (line 42) | const ActionSet & CombatSearchParameters::getRelevantActions() const
function GameState (line 52) | const GameState & CombatSearchParameters::getInitialState() const
function GameState (line 62) | const GameState & CombatSearchParameters::getEnemyInitialState() const
function BuildOrder (line 77) | const BuildOrder & CombatSearchParameters::getOpeningBuildOrder() const
function BuildOrder (line 87) | const BuildOrder & CombatSearchParameters::getEnemyBuildOrder() const
function FrameCountType (line 122) | FrameCountType CombatSearchParameters::getFrameTimeLimit() const
FILE: BOSS/source/CombatSearchParameters.h
function namespace (line 7) | namespace BOSS
FILE: BOSS/source/CombatSearchResults.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/CombatSearch_BestResponse.h
function namespace (line 12) | namespace BOSS
FILE: BOSS/source/CombatSearch_BestResponseData.cpp
function BuildOrder (line 98) | const BuildOrder & CombatSearch_BestResponseData::getBestBuildOrder() const
FILE: BOSS/source/CombatSearch_BestResponseData.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/CombatSearch_Bucket.h
function namespace (line 12) | namespace BOSS
FILE: BOSS/source/CombatSearch_BucketData.cpp
function BucketData (line 68) | BucketData & CombatSearch_BucketData::getBucketData(const GameState & st...
function BucketData (line 96) | const BucketData & CombatSearch_BucketData::getBucket(const size_t index...
FILE: BOSS/source/CombatSearch_BucketData.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/CombatSearch_Integral.h
function namespace (line 12) | namespace BOSS
FILE: BOSS/source/CombatSearch_IntegralData.cpp
function BuildOrder (line 56) | const BuildOrder & CombatSearch_IntegralData::getBestBuildOrder() const
FILE: BOSS/source/CombatSearch_IntegralData.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/Constants.cpp
type BOSS (line 4) | namespace BOSS
type Races (line 6) | namespace Races
function RaceID (line 8) | RaceID GetRaceID(BWAPI::Race r)
function GetRace (line 28) | BWAPI::Race GetRace(RaceID id)
function RaceID (line 48) | RaceID GetRaceID(const std::string & race)
function GetRaceName (line 68) | std::string GetRaceName(RaceID race)
FILE: BOSS/source/Constants.h
function namespace (line 6) | namespace BOSS
FILE: BOSS/source/DFBB_BuildOrderSearchParameters.cpp
function UnitCountType (line 40) | const UnitCountType & DFBB_BuildOrderSearchParameters::getRepetitions(co...
function UnitCountType (line 48) | const UnitCountType & DFBB_BuildOrderSearchParameters::getRepetitionThre...
FILE: BOSS/source/DFBB_BuildOrderSearchParameters.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/DFBB_BuildOrderSearchResults.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/DFBB_BuildOrderSearchSaveState.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/DFBB_BuildOrderSmartSearch.cpp
function UnitCountType (line 92) | UnitCountType DFBB_BuildOrderSmartSearch::calculateRefineriesRequired()
function UnitCountType (line 230) | UnitCountType DFBB_BuildOrderSmartSearch::calculateSupplyProvidersRequir...
function RaceID (line 284) | const RaceID DFBB_BuildOrderSmartSearch::getRace() const
function DFBB_BuildOrderSearchResults (line 315) | const DFBB_BuildOrderSearchResults & DFBB_BuildOrderSmartSearch::getResu...
function DFBB_BuildOrderSearchParameters (line 320) | const DFBB_BuildOrderSearchParameters & DFBB_BuildOrderSmartSearch::getP...
FILE: BOSS/source/DFBB_BuildOrderSmartSearch.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/DFBB_BuildOrderStackSearch.cpp
function DFBB_BuildOrderSearchResults (line 62) | const DFBB_BuildOrderSearchResults & DFBB_BuildOrderStackSearch::getResu...
function UnitCountType (line 150) | UnitCountType DFBB_BuildOrderStackSearch::getRepetitions(const GameState...
FILE: BOSS/source/DFBB_BuildOrderStackSearch.h
function namespace (line 13) | namespace BOSS
FILE: BOSS/source/Eval.cpp
type BOSS (line 3) | namespace BOSS
type Eval (line 5) | namespace Eval
function ArmyCompletedResourceSum (line 7) | double ArmyCompletedResourceSum(const GameState & state)
function ArmyTotalResourceSum (line 25) | double ArmyTotalResourceSum(const GameState & state)
function BuildOrderBetter (line 43) | bool BuildOrderBetter(const BuildOrder & buildOrder, const BuildOrde...
function StateDominates (line 74) | bool StateDominates(const GameState & state, const GameState & other)
FILE: BOSS/source/Eval.h
function namespace (line 7) | namespace BOSS
FILE: BOSS/source/GameState.cpp
function RaceID (line 232) | const RaceID GameState::getRace() const
function FrameCountType (line 475) | const FrameCountType GameState::whenCanPerform(const ActionType & action...
function FrameCountType (line 518) | const FrameCountType GameState::raceSpecificWhenReady(const ActionType &...
function FrameCountType (line 539) | const FrameCountType GameState::whenWorkerReady(const ActionType & actio...
function FrameCountType (line 585) | const FrameCountType GameState::whenSupplyReady(const ActionType & actio...
function FrameCountType (line 618) | const FrameCountType GameState::whenPrerequisitesReady(const ActionType ...
function FrameCountType (line 649) | const FrameCountType GameState::whenBuildingPrereqReady(const ActionType...
function FrameCountType (line 710) | const FrameCountType GameState::whenMineralsReady(const ActionType & act...
function FrameCountType (line 805) | const FrameCountType GameState::whenGasReady(const ActionType & action) ...
function FrameCountType (line 897) | const FrameCountType GameState::getCurrentFrame() const
function FrameCountType (line 902) | const FrameCountType GameState::getLastActionFinishTime() const
function UnitCountType (line 933) | const UnitCountType GameState::getNumMineralWorkers() const
function UnitCountType (line 938) | const UnitCountType GameState::getNumBuildingWorkers() const
function UnitCountType (line 943) | const UnitCountType GameState::getNumGasWorkers() const
function ResourceCountType (line 948) | const ResourceCountType GameState::getMinerals() const
function ResourceCountType (line 954) | const ResourceCountType GameState::getGas() const
function ResourceCountType (line 959) | const ResourceCountType GameState::getMinerals(const int frame) const
function ResourceCountType (line 966) | const ResourceCountType GameState::getGas(const int frame) const
function ResourceCountType (line 973) | const ResourceCountType GameState::getFinishTimeMinerals() const
function ResourceCountType (line 978) | const ResourceCountType GameState::getFinishTimeGas() const
function UnitData (line 983) | const UnitData & GameState::getUnitData() const
function BuildingData (line 988) | const BuildingData & GameState::getBuildingData() const
function HatcheryData (line 993) | const HatcheryData & GameState::getHatcheryData() const
FILE: BOSS/source/GameState.h
function namespace (line 14) | namespace BOSS
FILE: BOSS/source/GraphViz.hpp
type BOSS (line 8) | namespace BOSS
type GraphViz (line 10) | namespace GraphViz
class Property (line 12) | class Property
method Property (line 17) | Property(std::string p, std::string val) : prop(p), value(val) { }
method print (line 18) | void print(std::ofstream & out) { out << prop << "=\"" << value <<...
class Node (line 21) | class Node
method Node (line 26) | Node(std::string n) : name(n) {}
method Node (line 27) | Node() {}
method set (line 29) | void set(std::string p, std::string v) { props.push_back(Property(...
method print (line 30) | void print(std::ofstream & out)
class Edge (line 38) | class Edge
method Edge (line 44) | Edge(std::string n1, std::string n2) : nodes(n1, n2) {}
method Edge (line 45) | Edge(Node & n1, Node & n2) : nodes(n1.name, n2.name) {}
method set (line 46) | void set(std::string p, std::string v) { props.push_back(Property(...
method print (line 47) | void print(std::ofstream & out)
class Graph (line 55) | class Graph
method Graph (line 64) | Graph(std::string n) : name(n) {}
method set (line 65) | void set(std::string p, std::string v) { props.push_back(Property(...
method addNode (line 66) | void addNode(Node & n) { nodes.push_back(n); }
method addEdge (line 67) | void addEdge(Edge & e) { edges.push_back(e); }
method print (line 69) | void print(std::ofstream & out)
method printToFile (line 78) | void printToFile(const std::string & filename)
FILE: BOSS/source/HatcheryData.cpp
function UnitCountType (line 36) | const UnitCountType & Hatchery::numLarva() const
function FrameCountType (line 88) | const FrameCountType HatcheryData::nextLarvaFrameAfter(const FrameCountT...
function UnitCountType (line 100) | const UnitCountType HatcheryData::numLarva() const
function UnitCountType (line 112) | const UnitCountType HatcheryData::size() const
function Hatchery (line 117) | const Hatchery & HatcheryData::getHatchery(const UnitCountType & index) ...
FILE: BOSS/source/HatcheryData.h
function namespace (line 13) | namespace BOSS
FILE: BOSS/source/JSONTools.cpp
function GameState (line 56) | GameState JSONTools::GetGameState(const std::string & jsonString)
function GameState (line 63) | GameState JSONTools::GetGameState(const rapidjson::Value & stateVal)
function BuildOrder (line 98) | BuildOrder JSONTools::GetBuildOrder(const std::string & jsonString)
function BuildOrder (line 105) | BuildOrder JSONTools::GetBuildOrder(const rapidjson::Value & stateVal)
function BuildOrderSearchGoal (line 121) | BuildOrderSearchGoal JSONTools::GetBuildOrderSearchGoal(const std::strin...
function BuildOrderSearchGoal (line 128) | BuildOrderSearchGoal JSONTools::GetBuildOrderSearchGoal(const rapidjson:...
FILE: BOSS/source/JSONTools.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/NaiveBuildOrderSearch.cpp
function BuildOrder (line 35) | const BuildOrder & NaiveBuildOrderSearch::solve()
FILE: BOSS/source/NaiveBuildOrderSearch.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/Position.hpp
type BOSS (line 8) | namespace BOSS
class Position (line 10) | class Position
method Position (line 18) | Position()
method Position (line 24) | Position(const PositionType & x, const PositionType & y)
method Position (line 41) | const Position operator + (const Position & rhs) const
method Position (line 46) | const Position operator - (const Position & rhs) const
method Position (line 51) | const Position operator / (const PositionType & d) const
method Position (line 56) | const Position operator * (const PositionType & d) const
method Position (line 61) | const Position scale(const float & f) const
method scalePosition (line 66) | void scalePosition(const float & f)
method add (line 72) | void add(const Position & rhs)
method subtract (line 78) | void subtract(const Position & rhs)
method moveTo (line 84) | void moveTo(const Position & pos)
method add (line 90) | void add(const PositionType & x, const PositionType & y)
method moveTo (line 96) | void moveTo(const PositionType & x, const PositionType & y)
method PositionType (line 102) | const PositionType x() const
method PositionType (line 107) | const PositionType y() const
method Position (line 112) | const Position flipX() const
method Position (line 117) | const Position flipY() const
method Q_rsqrt (line 122) | const float Q_rsqrt( float number ) const
method Position (line 139) | const Position flip() const
method PositionType (line 144) | inline const PositionType getDistance(const Position & p) const
method PositionType (line 163) | inline const PositionType getDistanceSq(const Position & p) const
method print (line 168) | void print() const
method getString (line 173) | const std::string getString() const
FILE: BOSS/source/PrerequisiteSet.cpp
function ActionType (line 17) | const ActionType & ActionCountPair::getAction() const
function UnitCountType (line 22) | const UnitCountType & ActionCountPair::getCount() const
function ActionType (line 55) | const ActionType & PrerequisiteSet::getActionType(const UnitCountType in...
function UnitCountType (line 60) | const UnitCountType & PrerequisiteSet::getActionTypeCount(const UnitCoun...
FILE: BOSS/source/PrerequisiteSet.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/StarCraftGUI.cpp
type stat (line 313) | struct stat
FILE: BOSS/source/StarCraftGUI.h
type TextureInfo (line 19) | struct TextureInfo
FILE: BOSS/source/Timer.hpp
type BOSS (line 24) | namespace BOSS
class Timer (line 26) | class Timer
method Timer (line 42) | Timer()
method start (line 62) | void start()
method stop (line 73) | void stop()
method getElapsedTimeInMicroSec (line 84) | double getElapsedTimeInMicroSec()
method getElapsedTimeInMilliSec (line 103) | double getElapsedTimeInMilliSec()
method getElapsedTimeInSec (line 109) | double getElapsedTimeInSec()
method getElapsedTime (line 116) | double getElapsedTime()
FILE: BOSS/source/Tools.cpp
function BuildOrder (line 9) | BuildOrder Tools::GetOptimizedNaiveBuildOrderOld(const GameState & state...
function BuildOrder (line 56) | BuildOrder Tools::GetNaiveBuildOrderAddWorkersOld(const GameState & stat...
function FrameCountType (line 335) | FrameCountType Tools::GetUpperBound(const GameState & state, const Build...
function FrameCountType (line 344) | FrameCountType Tools::GetLowerBound(const GameState & state, const Build...
function FrameCountType (line 406) | FrameCountType Tools::CalculatePrerequisitesLowerBound(const GameState &...
FILE: BOSS/source/Tools.h
function namespace (line 8) | namespace BOSS
FILE: BOSS/source/UnitData.cpp
function RaceID (line 17) | const RaceID UnitData::getRace() const
function UnitCountType (line 22) | const UnitCountType UnitData::getNumCompleted(const ActionType & action)...
function FrameCountType (line 32) | const FrameCountType UnitData::getWhenBuildingCanBuild(const ActionType ...
function SupplyCountType (line 189) | const SupplyCountType UnitData::getCurrentSupply() const
function SupplyCountType (line 194) | const SupplyCountType UnitData::getMaxSupply() const
function UnitCountType (line 253) | const UnitCountType UnitData::getNumMineralWorkers() const
function UnitCountType (line 258) | const UnitCountType UnitData::getNumGasWorkers() const
function UnitCountType (line 263) | const UnitCountType UnitData::getNumBuildingWorkers() const
function ActionType (line 268) | ActionType UnitData::finishNextActionInProgress()
function FrameCountType (line 296) | const FrameCountType UnitData::getNextActionFinishTime() const
function FrameCountType (line 301) | const FrameCountType UnitData::getNextBuildingFinishTime() const
function UnitCountType (line 311) | const UnitCountType UnitData::getNumTotal(const ActionType & action) const
function UnitCountType (line 357) | const UnitCountType UnitData::getSupplyInProgress() const
function UnitCountType (line 365) | const UnitCountType UnitData::getNumActionsInProgress() const
function UnitCountType (line 370) | const UnitCountType UnitData::getNumInProgress(const ActionType & action...
function ActionType (line 375) | const ActionType & UnitData::getActionInProgressByIndex(const UnitCountT...
function FrameCountType (line 380) | const FrameCountType UnitData::getActionInProgressFinishTimeByIndex(cons...
function FrameCountType (line 385) | const FrameCountType UnitData::getLastActionFinishTime() const
function FrameCountType (line 390) | const FrameCountType UnitData::getFinishTimeByIndex(const UnitCountType ...
function FrameCountType (line 395) | const FrameCountType UnitData::getFinishTime(const PrerequisiteSet & set...
function FrameCountType (line 405) | const FrameCountType UnitData::getFinishTime(const ActionType & action) ...
function PrerequisiteSet (line 410) | const PrerequisiteSet UnitData::getPrerequistesInProgress(const ActionTy...
function BuildingData (line 426) | const BuildingData & UnitData::getBuildingData() const
function HatcheryData (line 431) | HatcheryData & UnitData::getHatcheryData()
function HatcheryData (line 436) | const HatcheryData & UnitData::getHatcheryData() const
FILE: BOSS/source/UnitData.h
function namespace (line 10) | namespace BOSS
FILE: BOSS/source/deprecated/BOSSAssert.cpp
type BOSS (line 6) | namespace BOSS
type Assert (line 8) | namespace Assert
function currentDateTime (line 12) | const std::string currentDateTime()
function ReportFailure (line 24) | void ReportFailure(const char * condition, const char * file, int li...
FILE: BOSS/source/deprecated/BOSSAssert.h
function namespace (line 37) | namespace BOSS
FILE: BOSS/source/deprecated/BOSSVisExperiment.cpp
function Position (line 48) | const Position & BOSSVisExperiment::getLastDrawPosition() const
function PositionType (line 137) | PositionType BOSSVisExperiment::DrawScenario(const Position & pos, const...
FILE: BOSS/source/deprecated/BOSSVisExperiment.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/deprecated/GUI.cpp
function GUI (line 42) | GUI & GUI::Instance()
type stat (line 306) | struct stat
FILE: BOSS/source/deprecated/GUI.h
function namespace (line 17) | namespace BOSS
FILE: BOSS/source/deprecated/GUITools.cpp
type BOSS (line 4) | namespace BOSS
type GUITools (line 6) | namespace GUITools
function DrawString (line 8) | void DrawString(const Position & p, const std::string & text, const ...
function DrawChar (line 36) | void DrawChar(const Position & tl, const Position & br, char ch, con...
function DrawLine (line 55) | void DrawLine(const Position & p1, const Position & p2, const float ...
function DrawCircle (line 67) | void DrawCircle(const Position & pos, float r, int num_segments)
function DrawRect (line 90) | void DrawRect(const Position & tl, const Position & br, const GLfloa...
function DrawRectGradient (line 103) | void DrawRectGradient(const Position & tl, const Position & br, cons...
function DrawTexturedRect (line 115) | void DrawTexturedRect(const Position & tl, const Position & br, cons...
function DrawIconAndText (line 131) | void DrawIconAndText(const Position & tl, const Position & br, const...
FILE: BOSS/source/deprecated/GUITools.h
function namespace (line 9) | namespace BOSS
FILE: BOSS/source/deprecated/bwapidata/include/AIModule.cpp
type BWAPI (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI.cpp
type BWAPI (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI.h
function namespace (line 33) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/AIModule.h
function namespace (line 5) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Bitmap.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Bullet.h
function namespace (line 6) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/BulletType.h
function namespace (line 5) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/BulletData.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/BulletImpl.h
function namespace (line 7) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Client.h
function namespace (line 10) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Command.h
function namespace (line 4) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/CommandType.h
function namespace (line 6) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Event.h
function namespace (line 6) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ForceData.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ForceImpl.h
function namespace (line 7) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/GameData.h
function namespace (line 12) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/GameImpl.h
function namespace (line 17) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/PlayerData.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/PlayerImpl.h
function namespace (line 7) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Shape.h
function namespace (line 4) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ShapeType.h
function namespace (line 6) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitCommand.h
function namespace (line 9) | namespace BWAPIC
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitData.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitImpl.h
function namespace (line 7) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Color.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Constants.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/CoordinateType.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/DamageType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Error.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Event.h
function namespace (line 8) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/EventType.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/ExplosionType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Flag.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Force.h
function namespace (line 5) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Game.h
function namespace (line 22) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/GameType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Input.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Latency.h
function namespace (line 2) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Order.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Player.h
function namespace (line 13) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/PlayerType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Position.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Race.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/TechType.h
function namespace (line 6) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/TilePosition.h
function namespace (line 3) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/Unit.h
function namespace (line 13) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/UnitCommand.h
function namespace (line 10) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/UnitCommandType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/UnitSizeType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/UnitType.h
function namespace (line 8) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/UpgradeType.h
function namespace (line 5) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/BWAPI/WeaponType.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/Bitmap.cpp
type BWAPI (line 3) | namespace BWAPI
function Color (line 12) | Color BitmapProxy::operator[](int y)
function BitmapProxy (line 20) | BitmapProxy Bitmap::operator[](int x)
FILE: BOSS/source/deprecated/bwapidata/include/BulletType.cpp
type BWAPI (line 9) | namespace BWAPI
type BulletTypes (line 15) | namespace BulletTypes
function init (line 54) | void init()
function BulletType (line 154) | BulletType& BulletType::operator=(const BulletType& other)
function BulletType (line 179) | BulletType BulletTypes::getBulletType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Color.cpp
type BWAPI (line 4) | namespace BWAPI
type Colors (line 39) | namespace Colors
function init (line 56) | void init()
function min (line 67) | int min(int a, int b)
function max (line 71) | int max(int a, int b)
function foreach (line 106) | foreach(int id, Colors::cell[rc][gc][bc])
function Color (line 140) | Color& Color::operator=(const Color& other)
FILE: BOSS/source/deprecated/bwapidata/include/Common.cpp
type BWAPI (line 3) | namespace BWAPI
function fixName (line 5) | void fixName(std::string *name)
FILE: BOSS/source/deprecated/bwapidata/include/Common.h
function namespace (line 4) | namespace BWAPI
FILE: BOSS/source/deprecated/bwapidata/include/DamageType.cpp
type BWAPI (line 9) | namespace BWAPI
type DamageTypes (line 15) | namespace DamageTypes
function init (line 25) | void init()
function DamageType (line 66) | DamageType& DamageType::operator=(const DamageType& other)
function DamageType (line 92) | DamageType DamageTypes::getDamageType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Error.cpp
type BWAPI (line 9) | namespace BWAPI
type Errors (line 15) | namespace Errors
function init (line 43) | void init()
function Error (line 121) | Error& Error::operator=(const Error& other)
function Error (line 146) | Error Errors::getError(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Event.cpp
type BWAPI (line 2) | namespace BWAPI
function Event (line 16) | Event Event::MatchStart()
function Event (line 22) | Event Event::MatchEnd(bool isWinner)
function Event (line 29) | Event Event::MatchFrame()
function Event (line 35) | Event Event::MenuFrame()
function Event (line 41) | Event Event::SendText(std::string text)
function Event (line 48) | Event Event::ReceiveText(Player* player, std::string text)
function Event (line 56) | Event Event::PlayerLeft(Player* player)
function Event (line 63) | Event Event::NukeDetect(Position target)
function Event (line 70) | Event Event::UnitDiscover(Unit* unit)
function Event (line 77) | Event Event::UnitEvade(Unit* unit)
function Event (line 84) | Event Event::UnitShow(Unit* unit)
function Event (line 91) | Event Event::UnitHide(Unit* unit)
function Event (line 98) | Event Event::UnitCreate(Unit* unit)
function Event (line 105) | Event Event::UnitDestroy(Unit* unit)
function Event (line 112) | Event Event::UnitMorph(Unit* unit)
function Event (line 119) | Event Event::UnitRenegade(Unit* unit)
function Event (line 126) | Event Event::SaveGame(std::string gameName)
FILE: BOSS/source/deprecated/bwapidata/include/ExplosionType.cpp
type BWAPI (line 9) | namespace BWAPI
type ExplosionTypes (line 15) | namespace ExplosionTypes
function init (line 43) | void init()
function ExplosionType (line 120) | ExplosionType& ExplosionType::operator=(const ExplosionType& other)
function ExplosionType (line 146) | ExplosionType ExplosionTypes::getExplosionType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/GameType.cpp
type BWAPI (line 9) | namespace BWAPI
type GameTypes (line 15) | namespace GameTypes
function init (line 34) | void init()
function GameType (line 93) | GameType& GameType::operator=(const GameType& other)
function GameType (line 118) | GameType GameTypes::getGameType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Order.cpp
type BWAPI (line 9) | namespace BWAPI
type Orders (line 15) | namespace Orders
function init (line 174) | void init()
function Order (line 514) | Order& Order::operator=(const Order& other)
function Order (line 539) | Order Orders::getOrder(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/PlayerType.cpp
type BWAPI (line 9) | namespace BWAPI
type PlayerTypes (line 15) | namespace PlayerTypes
function init (line 29) | void init()
function PlayerType (line 78) | PlayerType& PlayerType::operator=(const PlayerType& other)
function PlayerType (line 103) | PlayerType PlayerTypes::getPlayerType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Position.cpp
type BWAPI (line 9) | namespace BWAPI
type Positions (line 11) | namespace Positions
function Position (line 59) | Position Position::operator+(const Position& position) const
function Position (line 64) | Position Position::operator-(const Position& position) const
function Position (line 69) | Position& Position::makeValid()
function Position (line 82) | Position& Position::operator+=(const Position& position)
function Position (line 89) | Position& Position::operator-=(const Position& position)
FILE: BOSS/source/deprecated/bwapidata/include/Race.cpp
type BWAPI (line 10) | namespace BWAPI
class RaceInternal (line 13) | class RaceInternal
method set (line 16) | void set(const char* name, UnitType worker, UnitType center, UnitTyp...
type Races (line 38) | namespace Races
function init (line 48) | void init()
function Race (line 88) | Race& Race::operator=(const Race& other)
function UnitType (line 113) | UnitType Race::getWorker() const
function UnitType (line 117) | UnitType Race::getCenter() const
function UnitType (line 121) | UnitType Race::getRefinery() const
function UnitType (line 125) | UnitType Race::getTransport() const
function UnitType (line 129) | UnitType Race::getSupplyProvider() const
function Race (line 133) | Race Races::getRace(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/TechType.cpp
type BWAPI (line 12) | namespace BWAPI
class TechTypeInternal (line 15) | class TechTypeInternal
method TechTypeInternal (line 18) | TechTypeInternal() {valid = false;}
method set (line 19) | void set(const char* name, int mineralPrice, int gasPrice, int resea...
type TechTypes (line 64) | namespace TechTypes
function init (line 103) | void init()
function TechType (line 202) | TechType& TechType::operator=(const TechType& other)
function Race (line 227) | Race TechType::getRace() const
function UnitType (line 247) | UnitType TechType::whatResearches() const
function WeaponType (line 251) | WeaponType TechType::getWeapon() const
function TechType (line 259) | TechType TechTypes::getTechType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/TilePosition.cpp
type BWAPI (line 8) | namespace BWAPI
type TilePositions (line 10) | namespace TilePositions
function TilePosition (line 58) | TilePosition TilePosition::operator+(const TilePosition& position) const
function TilePosition (line 63) | TilePosition TilePosition::operator-(const TilePosition& position) const
function TilePosition (line 68) | TilePosition& TilePosition::makeValid()
function TilePosition (line 81) | TilePosition& TilePosition::operator+=(const TilePosition& position)
function TilePosition (line 88) | TilePosition& TilePosition::operator-=(const TilePosition& position)
FILE: BOSS/source/deprecated/bwapidata/include/UnitCommandType.cpp
type BWAPI (line 9) | namespace BWAPI
type UnitCommandTypes (line 15) | namespace UnitCommandTypes
function init (line 63) | void init()
function UnitCommandType (line 180) | UnitCommandType& UnitCommandType::operator=(const UnitCommandType& other)
function UnitCommandType (line 205) | UnitCommandType UnitCommandTypes::getUnitCommandType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/UnitSizeType.cpp
type BWAPI (line 9) | namespace BWAPI
type UnitSizeTypes (line 15) | namespace UnitSizeTypes
function init (line 24) | void init()
function UnitSizeType (line 63) | UnitSizeType& UnitSizeType::operator=(const UnitSizeType& other)
function UnitSizeType (line 88) | UnitSizeType UnitSizeTypes::getUnitSizeType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/UnitType.cpp
type BWAPI (line 16) | namespace BWAPI
class UnitTypeInternal (line 19) | class UnitTypeInternal
method UnitTypeInternal (line 22) | UnitTypeInternal() {valid = false;}
method set (line 23) | void set(const char* name, Race race, bool isHero, UnitType whatBuil...
type UnitTypes (line 211) | namespace UnitTypes
function init (line 395) | void init()
function UnitType (line 790) | UnitType& UnitType::operator=(const UnitType& other)
function Race (line 815) | Race UnitType::getRace() const
function TechType (line 827) | TechType UnitType::requiredTech() const
function TechType (line 831) | TechType UnitType::cloakingTech() const
function UpgradeType (line 843) | UpgradeType UnitType::armorUpgrade() const
function UnitSizeType (line 899) | UnitSizeType UnitType::size() const
function WeaponType (line 935) | WeaponType UnitType::groundWeapon() const
function WeaponType (line 943) | WeaponType UnitType::airWeapon() const
function UnitType (line 1107) | UnitType UnitTypes::getUnitType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/UpgradeType.cpp
type BWAPI (line 11) | namespace BWAPI
class UpgradeTypeInternal (line 14) | class UpgradeTypeInternal
method UpgradeTypeInternal (line 17) | UpgradeTypeInternal() {valid = false;}
method set (line 18) | void set(const char* name, int mineralPriceBase, int mineralPriceFac...
type UpgradeTypes (line 54) | namespace UpgradeTypes
function init (line 109) | void init()
function UpgradeType (line 342) | UpgradeType& UpgradeType::operator=(const UpgradeType& other)
function Race (line 367) | Race UpgradeType::getRace() const
function UnitType (line 395) | UnitType UpgradeType::whatUpgrades() const
function UpgradeType (line 407) | UpgradeType UpgradeTypes::getUpgradeType(std::string name)
FILE: BOSS/source/deprecated/bwapidata/include/Util/Bitmask.h
function namespace (line 3) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Exceptions.h
function class (line 8) | class GeneralException
function class (line 26) | class ConfigException : public GeneralException
function class (line 33) | class FileException : public GeneralException
function class (line 40) | class XmlException : public GeneralException
function class (line 49) | class ParseException : public GeneralException
FILE: BOSS/source/deprecated/bwapidata/include/Util/FileLogger.cpp
type Util (line 5) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/FileLogger.h
function namespace (line 5) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Gnu.h
function strcpy_s (line 11) | inline void strcpy_s(char* dest, size_t size, char* src) {
FILE: BOSS/source/deprecated/bwapidata/include/Util/LogLevel.h
function namespace (line 2) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Logger.cpp
type Util (line 10) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Logger.h
function namespace (line 10) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/RectangleArray.h
function namespace (line 7) | namespace Util
function owner (line 116) | owner(true)
FILE: BOSS/source/deprecated/bwapidata/include/Util/RegionQuadTree.h
function namespace (line 5) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Strings.cpp
type Util (line 9) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Strings.h
function namespace (line 9) | namespace Util
FILE: BOSS/source/deprecated/bwapidata/include/Util/Types.h
type u8 (line 3) | typedef unsigned char u8;
type s8 (line 4) | typedef signed char s8;
type u16 (line 6) | typedef unsigned short u16;
type s16 (line 7) | typedef signed short s16;
type u32 (line 9) | typedef unsigned int u32;
type s32 (line 10) | typedef signed int s32;
type u64 (line 12) | typedef unsigned long long u64;
type s64 (line 13) | typedef signed long long s64;
type u8 (line 15) | typedef u8 _UNKNOWN;
type BYTE (line 17) | typedef unsigned char BYTE;
type WORD (line 18) | typedef unsigned short WORD;
type DWORD (line 19) | typedef unsigned long DWORD;
type BOOL (line 21) | typedef int BOOL;
FILE: BOSS/source/deprecated/bwapidata/include/Util/sha1.cpp
type sha1 (line 37) | namespace sha1
function rol (line 41) | inline const unsigned int rol(const unsigned int num, const unsigned i...
function innerHash (line 46) | void innerHash(unsigned int *result, unsigned int *w)
function calc (line 111) | void calc(const void *src, const int bytelength, unsigned char *hash)
function toHexString (line 154) | void toHexString(const unsigned char *hash, char *hexstring)
FILE: BOSS/source/deprecated/bwapidata/include/Util/sha1.h
function namespace (line 32) | namespace sha1
FILE: BOSS/source/deprecated/bwapidata/include/WeaponType.cpp
type BWAPI (line 14) | namespace BWAPI
class WeaponTypeInternal (line 17) | class WeaponTypeInternal
method WeaponTypeInternal (line 20) | WeaponTypeInternal() {valid = false;}
method set (line 21) | void set(const char* name, TechType techType, int damageAmount, int ...
type WeaponTypes (line 83) | namespace WeaponTypes
function init (line 184) | void init()
function WeaponType (line 504) | WeaponType& WeaponType::operator=(const WeaponType& other)
function TechType (line 529) | TechType WeaponType::getTech() const
function UnitType (line 533) | UnitType WeaponType::whatUses() const
function UpgradeType (line 553) | UpgradeType WeaponType::upgradeType() const
function DamageType (line 557) | DamageType WeaponType::damageType() const
function ExplosionType (line 561) | ExplosionType WeaponType::explosionType() const
function WeaponType (line 621) | WeaponType WeaponTypes::getWeaponType(std::string name)
FILE: BOSS/source/rapidjson/document.h
function namespace (line 18) | namespace rapidjson {
function GetBool (line 225) | bool GetBool() const { RAPIDJSON_ASSERT(IsBool()); return flags_ == kTru...
function GenericValue (line 245) | const GenericValue& operator[](const Ch* name) const { return const_cast...
function ConstMemberIterator (line 248) | ConstMemberIterator MemberBegin() const { RAPIDJSON_ASSERT(IsObject()); ...
function MemberIterator (line 250) | MemberIterator MemberBegin() { RAPIDJSON_ASSERT(IsObject()); return da...
function MemberIterator (line 251) | MemberIterator MemberEnd() { RAPIDJSON_ASSERT(IsObject()); return dat...
function HasMember (line 254) | bool HasMember(const Ch* name) const { return FindMember(name) != 0; }
function RemoveMember (line 306) | bool RemoveMember(const Ch* name) {
function SizeType (line 338) | SizeType Size() const { RAPIDJSON_ASSERT(IsArray()); return data_.a.size; }
function Empty (line 344) | bool Empty() const { RAPIDJSON_ASSERT(IsArray()); return data_.a.size ==...
function GenericValue (line 372) | const GenericValue& operator[](SizeType index) const { return const_cast...
function ValueIterator (line 375) | ValueIterator Begin() { RAPIDJSON_ASSERT(IsArray()); return data_.a.elem...
function ValueIterator (line 376) | ValueIterator End() { RAPIDJSON_ASSERT(IsArray()); return data_.a.elemen...
function GetDouble (line 432) | double GetDouble() const {
function Ch (line 452) | const Ch* GetString() const { RAPIDJSON_ASSERT(IsString()); return data_...
function SizeType (line 457) | SizeType GetStringLength() const { RAPIDJSON_ASSERT(IsString()); return ...
type String (line 571) | struct String {
type I (line 580) | struct I {
type U (line 584) | struct U {
type I (line 589) | struct I {
type U (line 593) | struct U {
type Object (line 603) | struct Object {
type Array (line 609) | struct Array {
function Member (line 623) | Member* FindMember(const Ch* name) {
function Member (line 636) | const Member* FindMember(const Ch* name) const { return const_cast<Gener...
function SetArrayRaw (line 639) | void SetArrayRaw(GenericValue* values, SizeType count, Allocator& alloct...
function SetObjectRaw (line 647) | void SetObjectRaw(Member* members, SizeType count, Allocator& alloctaor) {
function SetStringRaw (line 655) | void SetStringRaw(const Ch* s, SizeType length) {
function SetStringRaw (line 663) | void SetStringRaw(const Ch* s, SizeType length, Allocator& allocator) {
function RawAssign (line 673) | void RawAssign(GenericValue& rhs) {
type GenericValue (line 684) | typedef GenericValue<UTF8<> > Value;
type GenericValue (line 699) | typedef GenericValue<Encoding, Allocator> ValueType;
type Allocator (line 700) | typedef Allocator AllocatorType;
function Null (line 775) | void Null() { new (stack_.template Push<ValueType>()) ValueType(); }
function Bool (line 776) | void Bool(bool b) { new (stack_.template Push<ValueType>()) ValueType(b); }
function Int (line 777) | void Int(int i) { new (stack_.template Push<ValueType>()) ValueType(i); }
function Uint (line 778) | void Uint(unsigned i) { new (stack_.template Push<ValueType>()) ValueTyp...
function Int64 (line 779) | void Int64(int64_t i) { new (stack_.template Push<ValueType>()) ValueTyp...
function Uint64 (line 780) | void Uint64(uint64_t i) { new (stack_.template Push<ValueType>()) ValueT...
function Double (line 781) | void Double(double d) { new (stack_.template Push<ValueType>()) ValueTyp...
function String (line 783) | void String(const Ch* str, SizeType length, bool copy) {
function StartObject (line 790) | void StartObject() { new (stack_.template Push<ValueType>()) ValueType(k...
function EndObject (line 792) | void EndObject(SizeType memberCount) {
function StartArray (line 797) | void StartArray() { new (stack_.template Push<ValueType>()) ValueType(kA...
function EndArray (line 799) | void EndArray(SizeType elementCount) {
function ClearStack (line 804) | void ClearStack() {
type GenericDocument (line 818) | typedef GenericDocument<UTF8<> > Document;
FILE: BOSS/source/rapidjson/filestream.h
function namespace (line 6) | namespace rapidjson {
FILE: BOSS/source/rapidjson/internal/pow10.h
function namespace (line 4) | namespace rapidjson {
FILE: BOSS/source/rapidjson/internal/stack.h
function namespace (line 4) | namespace rapidjson {
FILE: BOSS/source/rapidjson/internal/strfunc.h
function namespace (line 4) | namespace rapidjson {
FILE: BOSS/source/rapidjson/prettywriter.h
function namespace (line 6) | namespace rapidjson {
FILE: BOSS/source/rapidjson/rapidjson.h
type __int64 (line 22) | typedef __int64 int64_t;
function namespace (line 68) | namespace rapidjson {
function namespace (line 95) | namespace rapidjson {
type CharType (line 341) | typedef CharType Ch;
function Ch (line 343) | static Ch* Encode(Ch *buffer, unsigned codepoint) {
type CharType (line 376) | typedef CharType Ch;
function Ch (line 378) | static Ch* Encode(Ch* buffer, unsigned codepoint) {
type CharType (line 403) | typedef CharType Ch;
function Ch (line 405) | static Ch *Encode(Ch* buffer, unsigned codepoint) {
type typename (line 466) | typedef typename Encoding::Ch Ch;
function Ch (line 471) | Ch Take() { return *src_++; }
function Ch (line 474) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function Put (line 475) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function PutEnd (line 476) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
type GenericStringStream (line 482) | typedef GenericStringStream<UTF8<> > StringStream;
type typename (line 493) | typedef typename Encoding::Ch Ch;
function Ch (line 498) | Ch Peek() { return *src_; }
function Ch (line 499) | Ch Take() { return *src_++; }
function Tell (line 500) | size_t Tell() { return src_ - head_; }
function Ch (line 503) | Ch* PutBegin() { return dst_ = src_; }
function Put (line 504) | void Put(Ch c) { RAPIDJSON_ASSERT(dst_ != 0); *dst_++ = c; }
function PutEnd (line 505) | size_t PutEnd(Ch* begin) { return dst_ - begin; }
type GenericInsituStringStream (line 512) | typedef GenericInsituStringStream<UTF8<> > InsituStringStream;
type Type (line 518) | enum Type {
FILE: BOSS/source/rapidjson/reader.h
function namespace (line 37) | namespace rapidjson {
type GenericReader (line 680) | typedef GenericReader<UTF8<> > Reader;
FILE: BOSS/source/rapidjson/stringbuffer.h
function namespace (line 7) | namespace rapidjson {
FILE: BOSS/source/rapidjson/writer.h
function namespace (line 20) | namespace rapidjson {
FILE: SparCraft/bwapidata/include/AIModule.cpp
type BWAPI (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI.cpp
type BWAPI (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI.h
function namespace (line 33) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/AIModule.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Bitmap.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Bullet.h
function namespace (line 6) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/BulletType.h
function namespace (line 5) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/BulletData.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/BulletImpl.h
function namespace (line 7) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/Client.h
function namespace (line 10) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/Command.h
function namespace (line 4) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/CommandType.h
function namespace (line 6) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/Event.h
function namespace (line 6) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/ForceData.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/ForceImpl.h
function namespace (line 7) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/GameData.h
function namespace (line 12) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/GameImpl.h
function namespace (line 17) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/PlayerData.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/PlayerImpl.h
function namespace (line 7) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/Shape.h
function namespace (line 4) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/ShapeType.h
function namespace (line 6) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/UnitCommand.h
function namespace (line 9) | namespace BWAPIC
FILE: SparCraft/bwapidata/include/BWAPI/Client/UnitData.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Client/UnitImpl.h
function namespace (line 7) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Color.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Constants.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/CoordinateType.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/DamageType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Error.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Event.h
function namespace (line 8) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/EventType.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/ExplosionType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Flag.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Force.h
function namespace (line 5) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Game.h
function namespace (line 22) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/GameType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Input.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Latency.h
function namespace (line 2) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Order.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Player.h
function namespace (line 13) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/PlayerType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Position.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Race.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/TechType.h
function namespace (line 6) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/TilePosition.h
function namespace (line 3) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/Unit.h
function namespace (line 13) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/UnitCommand.h
function namespace (line 10) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/UnitCommandType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/UnitSizeType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/UnitType.h
function namespace (line 8) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/UpgradeType.h
function namespace (line 5) | namespace BWAPI
FILE: SparCraft/bwapidata/include/BWAPI/WeaponType.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/Bitmap.cpp
type BWAPI (line 3) | namespace BWAPI
function Color (line 12) | Color BitmapProxy::operator[](int y)
function BitmapProxy (line 20) | BitmapProxy Bitmap::operator[](int x)
FILE: SparCraft/bwapidata/include/BulletType.cpp
type BWAPI (line 9) | namespace BWAPI
type BulletTypes (line 15) | namespace BulletTypes
function init (line 54) | void init()
function BulletType (line 154) | BulletType& BulletType::operator=(const BulletType& other)
function BulletType (line 179) | BulletType BulletTypes::getBulletType(std::string name)
FILE: SparCraft/bwapidata/include/Color.cpp
type BWAPI (line 4) | namespace BWAPI
type Colors (line 39) | namespace Colors
function init (line 56) | void init()
function min (line 67) | int min(int a, int b)
function max (line 71) | int max(int a, int b)
function foreach (line 106) | foreach(int id, Colors::cell[rc][gc][bc])
function Color (line 140) | Color& Color::operator=(const Color& other)
FILE: SparCraft/bwapidata/include/Common.cpp
type BWAPI (line 3) | namespace BWAPI
function fixName (line 5) | void fixName(std::string *name)
FILE: SparCraft/bwapidata/include/Common.h
function namespace (line 4) | namespace BWAPI
FILE: SparCraft/bwapidata/include/DamageType.cpp
type BWAPI (line 9) | namespace BWAPI
type DamageTypes (line 15) | namespace DamageTypes
function init (line 25) | void init()
function DamageType (line 66) | DamageType& DamageType::operator=(const DamageType& other)
function DamageType (line 92) | DamageType DamageTypes::getDamageType(std::string name)
FILE: SparCraft/bwapidata/include/Error.cpp
type BWAPI (line 9) | namespace BWAPI
type Errors (line 15) | namespace Errors
function init (line 43) | void init()
function Error (line 121) | Error& Error::operator=(const Error& other)
function Error (line 146) | Error Errors::getError(std::string name)
FILE: SparCraft/bwapidata/include/Event.cpp
type BWAPI (line 2) | namespace BWAPI
function Event (line 16) | Event Event::MatchStart()
function Event (line 22) | Event Event::MatchEnd(bool isWinner)
function Event (line 29) | Event Event::MatchFrame()
function Event (line 35) | Event Event::MenuFrame()
function Event (line 41) | Event Event::SendText(std::string text)
function Event (line 48) | Event Event::ReceiveText(Player* player, std::string text)
function Event (line 56) | Event Event::PlayerLeft(Player* player)
function Event (line 63) | Event Event::NukeDetect(Position target)
function Event (line 70) | Event Event::UnitDiscover(Unit* unit)
function Event (line 77) | Event Event::UnitEvade(Unit* unit)
function Event (line 84) | Event Event::UnitShow(Unit* unit)
function Event (line 91) | Event Event::UnitHide(Unit* unit)
function Event (line 98) | Event Event::UnitCreate(Unit* unit)
function Event (line 105) | Event Event::UnitDestroy(Unit* unit)
function Event (line 112) | Event Event::UnitMorph(Unit* unit)
function Event (line 119) | Event Event::UnitRenegade(Unit* unit)
function Event (line 126) | Event Event::SaveGame(std::string gameName)
FILE: SparCraft/bwapidata/include/ExplosionType.cpp
type BWAPI (line 9) | namespace BWAPI
type ExplosionTypes (line 15) | namespace ExplosionTypes
function init (line 43) | void init()
function ExplosionType (line 120) | ExplosionType& ExplosionType::operator=(const ExplosionType& other)
function ExplosionType (line 146) | ExplosionType ExplosionTypes::getExplosionType(std::string name)
FILE: SparCraft/bwapidata/include/GameType.cpp
type BWAPI (line 9) | namespace BWAPI
type GameTypes (line 15) | namespace GameTypes
function init (line 34) | void init()
function GameType (line 93) | GameType& GameType::operator=(const GameType& other)
function GameType (line 118) | GameType GameTypes::getGameType(std::string name)
FILE: SparCraft/bwapidata/include/Order.cpp
type BWAPI (line 9) | namespace BWAPI
type Orders (line 15) | namespace Orders
function init (line 174) | void init()
function Order (line 514) | Order& Order::operator=(const Order& other)
function Order (line 539) | Order Orders::getOrder(std::string name)
FILE: SparCraft/bwapidata/include/PlayerType.cpp
type BWAPI (line 9) | namespace BWAPI
type PlayerTypes (line 15) | namespace PlayerTypes
function init (line 29) | void init()
function PlayerType (line 78) | PlayerType& PlayerType::operator=(const PlayerType& other)
function PlayerType (line 103) | PlayerType PlayerTypes::getPlayerType(std::string name)
FILE: SparCraft/bwapidata/include/Position.cpp
type BWAPI (line 9) | namespace BWAPI
type Positions (line 11) | namespace Positions
function Position (line 59) | Position Position::operator+(const Position& position) const
function Position (line 64) | Position Position::operator-(const Position& position) const
function Position (line 69) | Position& Position::makeValid()
function Position (line 82) | Position& Position::operator+=(const Position& position)
function Position (line 89) | Position& Position::operator-=(const Position& position)
FILE: SparCraft/bwapidata/include/Race.cpp
type BWAPI (line 10) | namespace BWAPI
class RaceInternal (line 13) | class RaceInternal
method set (line 16) | void set(const char* name, UnitType worker, UnitType center, UnitTyp...
type Races (line 38) | namespace Races
function init (line 48) | void init()
function Race (line 88) | Race& Race::operator=(const Race& other)
function UnitType (line 113) | UnitType Race::getWorker() const
function UnitType (line 117) | UnitType Race::getCenter() const
function UnitType (line 121) | UnitType Race::getRefinery() const
function UnitType (line 125) | UnitType Race::getTransport() const
function UnitType (line 129) | UnitType Race::getSupplyProvider() const
function Race (line 133) | Race Races::getRace(std::string name)
FILE: SparCraft/bwapidata/include/TechType.cpp
type BWAPI (line 12) | namespace BWAPI
class TechTypeInternal (line 15) | class TechTypeInternal
method TechTypeInternal (line 18) | TechTypeInternal() {valid = false;}
method set (line 19) | void set(const char* name, int mineralPrice, int gasPrice, int resea...
type TechTypes (line 64) | namespace TechTypes
function init (line 103) | void init()
function TechType (line 202) | TechType& TechType::operator=(const TechType& other)
function Race (line 227) | Race TechType::getRace() const
function UnitType (line 247) | UnitType TechType::whatResearches() const
function WeaponType (line 251) | WeaponType TechType::getWeapon() const
function TechType (line 259) | TechType TechTypes::getTechType(std::string name)
FILE: SparCraft/bwapidata/include/TilePosition.cpp
type BWAPI (line 8) | namespace BWAPI
type TilePositions (line 10) | namespace TilePositions
function TilePosition (line 58) | TilePosition TilePosition::operator+(const TilePosition& position) const
function TilePosition (line 63) | TilePosition TilePosition::operator-(const TilePosition& position) const
function TilePosition (line 68) | TilePosition& TilePosition::makeValid()
function TilePosition (line 81) | TilePosition& TilePosition::operator+=(const TilePosition& position)
function TilePosition (line 88) | TilePosition& TilePosition::operator-=(const TilePosition& position)
FILE: SparCraft/bwapidata/include/UnitCommandType.cpp
type BWAPI (line 9) | namespace BWAPI
type UnitCommandTypes (line 15) | namespace UnitCommandTypes
function init (line 63) | void init()
function UnitCommandType (line 180) | UnitCommandType& UnitCommandType::operator=(const UnitCommandType& other)
function UnitCommandType (line 205) | UnitCommandType UnitCommandTypes::getUnitCommandType(std::string name)
FILE: SparCraft/bwapidata/include/UnitSizeType.cpp
type BWAPI (line 9) | namespace BWAPI
type UnitSizeTypes (line 15) | namespace UnitSizeTypes
function init (line 24) | void init()
function UnitSizeType (line 63) | UnitSizeType& UnitSizeType::operator=(const UnitSizeType& other)
function UnitSizeType (line 88) | UnitSizeType UnitSizeTypes::getUnitSizeType(std::string name)
FILE: SparCraft/bwapidata/include/UnitType.cpp
type BWAPI (line 16) | namespace BWAPI
class UnitTypeInternal (line 19) | class UnitTypeInternal
method UnitTypeInternal (line 22) | UnitTypeInternal() {valid = false;}
method set (line 23) | void set(const char* name, Race race, bool isHero, UnitType whatBuil...
type UnitTypes (line 211) | namespace UnitTypes
function init (line 395) | void init()
function UnitType (line 790) | UnitType& UnitType::operator=(const UnitType& other)
function Race (line 815) | Race UnitType::getRace() const
function TechType (line 827) | TechType UnitType::requiredTech() const
function TechType (line 831) | TechType UnitType::cloakingTech() const
function UpgradeType (line 843) | UpgradeType UnitType::armorUpgrade() const
function UnitSizeType (line 899) | UnitSizeType UnitType::size() const
function WeaponType (line 935) | WeaponType UnitType::groundWeapon() const
function WeaponType (line 943) | WeaponType UnitType::airWeapon() const
function UnitType (line 1107) | UnitType UnitTypes::getUnitType(std::string name)
FILE: SparCraft/bwapidata/include/UpgradeType.cpp
type BWAPI (line 11) | namespace BWAPI
class UpgradeTypeInternal (line 14) | class UpgradeTypeInternal
method UpgradeTypeInternal (line 17) | UpgradeTypeInternal() {valid = false;}
method set (line 18) | void set(const char* name, int mineralPriceBase, int mineralPriceFac...
type UpgradeTypes (line 54) | namespace UpgradeTypes
function init (line 109) | void init()
function UpgradeType (line 342) | UpgradeType& UpgradeType::operator=(const UpgradeType& other)
function Race (line 367) | Race UpgradeType::getRace() const
function UnitType (line 395) | UnitType UpgradeType::whatUpgrades() const
function UpgradeType (line 407) | UpgradeType UpgradeTypes::getUpgradeType(std::string name)
FILE: SparCraft/bwapidata/include/Util/Bitmask.h
function namespace (line 3) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Exceptions.h
function class (line 8) | class GeneralException
function class (line 26) | class ConfigException : public GeneralException
function class (line 33) | class FileException : public GeneralException
function class (line 40) | class XmlException : public GeneralException
function class (line 49) | class ParseException : public GeneralException
FILE: SparCraft/bwapidata/include/Util/FileLogger.cpp
type Util (line 5) | namespace Util
FILE: SparCraft/bwapidata/include/Util/FileLogger.h
function namespace (line 5) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Gnu.h
function strcpy_s (line 11) | inline void strcpy_s(char* dest, size_t size, char* src) {
FILE: SparCraft/bwapidata/include/Util/LogLevel.h
function namespace (line 2) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Logger.cpp
type Util (line 10) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Logger.h
function namespace (line 10) | namespace Util
FILE: SparCraft/bwapidata/include/Util/RectangleArray.h
function namespace (line 7) | namespace Util
function owner (line 116) | owner(true)
FILE: SparCraft/bwapidata/include/Util/RegionQuadTree.h
function namespace (line 5) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Strings.cpp
type Util (line 9) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Strings.h
function namespace (line 9) | namespace Util
FILE: SparCraft/bwapidata/include/Util/Types.h
type u8 (line 3) | typedef unsigned char u8;
type s8 (line 4) | typedef signed char s8;
type u16 (line 6) | typedef unsigned short u16;
type s16 (line 7) | typedef signed short s16;
type u32 (line 9) | typedef unsigned int u32;
type s32 (line 10) | typedef signed int s32;
type u64 (line 12) | typedef unsigned long long u64;
type s64 (line 13) | typedef signed long long s64;
type u8 (line 15) | typedef u8 _UNKNOWN;
type BYTE (line 17) | typedef unsigned char BYTE;
type WORD (line 18) | typedef unsigned short WORD;
type DWORD (line 19) | typedef unsigned long DWORD;
type BOOL (line 21) | typedef int BOOL;
FILE: SparCraft/bwapidata/include/Util/sha1.cpp
type sha1 (line 37) | namespace sha1
function rol (line 41) | inline const unsigned int rol(const unsigned int num, const unsigned i...
function innerHash (line 46) | void innerHash(unsigned int *result, unsigned int *w)
function calc (line 111) | void calc(const void *src, const int bytelength, unsigned char *hash)
function toHexString (line 154) | void toHexString(const unsigned char *hash, char *hexstring)
FILE: SparCraft/bwapidata/include/Util/sha1.h
function namespace (line 32) | namespace sha1
FILE: SparCraft/bwapidata/include/WeaponType.cpp
type BWAPI (line 14) | namespace BWAPI
class WeaponTypeInternal (line 17) | class WeaponTypeInternal
method WeaponTypeInternal (line 20) | WeaponTypeInternal() {valid = false;}
method set (line 21) | void set(const char* name, TechType techType, int damageAmount, int ...
type WeaponTypes (line 83) | namespace WeaponTypes
function init (line 184) | void init()
function WeaponType (line 504) | WeaponType& WeaponType::operator=(const WeaponType& other)
function TechType (line 529) | TechType WeaponType::getTech() const
function UnitType (line 533) | UnitType WeaponType::whatUses() const
function UpgradeType (line 553) | UpgradeType WeaponType::upgradeType() const
function DamageType (line 557) | DamageType WeaponType::damageType() const
function ExplosionType (line 561) | ExplosionType WeaponType::explosionType() const
function WeaponType (line 621) | WeaponType WeaponTypes::getWeaponType(std::string name)
FILE: SparCraft/source/Action.cpp
function Position (line 58) | const Position & Action::pos() const
function Position (line 89) | const Position Action::getDir() const
FILE: SparCraft/source/Action.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/AllPlayers.cpp
function Player (line 5) | Player * AllPlayers::getPlayer(const size_t & playerID, const size_t & t...
function PlayerPtr (line 19) | PlayerPtr AllPlayers::getPlayerPtr(const size_t & playerID, const size_t...
FILE: SparCraft/source/AllPlayers.h
function namespace (line 23) | namespace SparCraft
FILE: SparCraft/source/AlphaBetaMove.cpp
function AlphaBetaMove (line 36) | const AlphaBetaMove & TTBestMove::firstMove() const
function AlphaBetaMove (line 41) | const AlphaBetaMove & TTBestMove::secondMove() const
function StateEvalScore (line 56) | const StateEvalScore & AlphaBetaValue::score() const
function AlphaBetaMove (line 61) | const AlphaBetaMove & AlphaBetaValue::abMove() const
FILE: SparCraft/source/AlphaBetaMove.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/AlphaBetaSearch.cpp
function AlphaBetaValue (line 47) | AlphaBetaValue AlphaBetaSearch::IDAlphaBeta(GameState & initialState, co...
function TTLookupValue (line 125) | TTLookupValue AlphaBetaSearch::TTlookup(const GameState & state, StateEv...
function AlphaBetaMove (line 187) | const AlphaBetaMove & AlphaBetaSearch::getAlphaBetaMove(const TTLookupVa...
function AlphaBetaValue (line 367) | AlphaBetaValue AlphaBetaSearch::alphaBeta(GameState & state, size_t dept...
function AlphaBetaSearchResults (line 504) | AlphaBetaSearchResults & AlphaBetaSearch::getResults()
FILE: SparCraft/source/AlphaBetaSearch.h
function namespace (line 18) | namespace SparCraft
FILE: SparCraft/source/AlphaBetaSearchParameters.hpp
type SparCraft (line 5) | namespace SparCraft
class AlphaBetaSearchParameters (line 7) | class AlphaBetaSearchParameters
class SparCraft::AlphaBetaSearchParameters (line 10) | class SparCraft::AlphaBetaSearchParameters
method AlphaBetaSearchParameters (line 33) | AlphaBetaSearchParameters()
method setSearchMethod (line 61) | void setSearchMethod(const size_t & method) { ...
method setMaxPlayer (line 62) | void setMaxPlayer(const size_t & player) { _maxPlayer = pl...
method setMaxDepth (line 63) | void setMaxDepth(const size_t & depth) { ...
method setTimeLimit (line 65) | void setTimeLimit(const size_t & timeLimit) { _timeLimit =...
method setMaxChildren (line 66) | void setMaxChildren(const size_t & children) { ...
method setMoveOrderingMethod (line 67) | void setMoveOrderingMethod(const size_t & method) { ...
method setEvalMethod (line 68) | void setEvalMethod(const size_t & eval) { _evalMethod = e...
method setSimScripts (line 69) | void setSimScripts(const size_t & p1, const size_t & p2) { _simSc...
method setPlayerToMoveMethod (line 70) | void setPlayerToMoveMethod(const size_t & method) { _playerToMo...
method setGraphVizFilename (line 71) | void setGraphVizFilename(const std::string & filename) { ...
method addOrderedMoveScript (line 72) | void addOrderedMoveScript(const size_t & script) { ...
method setPlayerModel (line 73) | void setPlayerModel(const size_t & player, const size_t & model) { _pl...
FILE: SparCraft/source/AlphaBetaSearchResults.hpp
type SparCraft (line 6) | namespace SparCraft
class AlphaBetaSearchResults (line 8) | class AlphaBetaSearchResults
method AlphaBetaSearchResults (line 35) | AlphaBetaSearchResults()
FILE: SparCraft/source/AnimationFrameData.cpp
function AttackFrameData (line 49) | const AttackFrameData & AnimationFrameData::getAttackFrames(const BWAPI:...
FILE: SparCraft/source/AnimationFrameData.h
function namespace (line 5) | namespace SparCraft
FILE: SparCraft/source/Array.hpp
type SparCraft (line 3) | namespace SparCraft
class Array (line 6) | class Array
method T (line 27) | T & get(const size_t & index)
method T (line 32) | const T & get(const size_t & index) const
method T (line 37) | T & operator [] (const size_t & index)
method T (line 42) | const T & operator [] (const size_t & index) const
method contains (line 47) | const bool contains(const T & e) const
method capacity (line 60) | const size_t capacity() const
method containsSize (line 65) | const bool containsSize(const T & e) const
method inc (line 78) | void inc()
method add (line 83) | void add(const T & e)
method addUnique (line 90) | void addUnique(const T & e)
method T (line 98) | const T & back() const
method clear (line 104) | void clear()
method fill (line 114) | void fill(const T & e)
class Array2D (line 121) | class Array2D
method getRows (line 159) | const size_t getRows() const
method fill (line 176) | void fill(const T & e)
FILE: SparCraft/source/BaseTypes.hpp
type SparCraft (line 6) | namespace SparCraft
class StateEvalScore (line 17) | class StateEvalScore
method StateEvalScore (line 24) | StateEvalScore()
method StateEvalScore (line 30) | StateEvalScore(const ScoreType & val,const int & numMoves)
method ScoreType (line 105) | const ScoreType & val() const { return _val; }
method TimeType (line 106) | const TimeType & numMoves() const { return _numMoves; }
FILE: SparCraft/source/Common.cpp
type SparCraft (line 6) | namespace SparCraft
type System (line 8) | namespace System
function FatalError (line 10) | void FatalError(const std::string & errorMessage)
function checkSupportedUnitType (line 23) | void checkSupportedUnitType(const BWAPI::UnitType & type)
function isSupportedUnitType (line 61) | bool isSupportedUnitType(const BWAPI::UnitType & type)
FILE: SparCraft/source/Common.h
function namespace (line 20) | namespace SparCraft
FILE: SparCraft/source/ConfigFileGenerator.h
function generateExperimentFile (line 10) | void generateExperimentFile(int searchTimer, int maxChildren, int numSta...
function generateStateConfig (line 119) | void generateStateConfig(int numUnits, bool sep)
function generateExperimentFileLinux (line 144) | void generateExperimentFileLinux(int searchTimer, int maxChildren, int n...
function generate (line 217) | void generate()
FILE: SparCraft/source/EnumData.h
function namespace (line 5) | namespace SparCraft
function class (line 76) | class Players : public EnumData<Players>
function class (line 91) | class SearchMethods : public EnumData<SearchMethods>
function class (line 105) | class PlayerModels : public EnumData<PlayerModels>
function class (line 129) | class EvaluationMethods : public EnumData<EvaluationMethods>
function class (line 143) | class SearchNodeType : public EnumData<SearchNodeType>
function class (line 159) | class MoveOrderMethod : public EnumData<MoveOrderMethod>
function class (line 172) | class PlayerToMove : public EnumData<PlayerToMove>
FILE: SparCraft/source/Game.cpp
function PlayerPtr (line 148) | PlayerPtr Game::getPlayer(const size_t & player)
function GameState (line 169) | const GameState & Game::getState() const
function GameState (line 174) | GameState & Game::getState()
FILE: SparCraft/source/Game.h
function namespace (line 12) | namespace SparCraft
FILE: SparCraft/source/GameState.cpp
class UnitIndexCompare (line 9) | class UnitIndexCompare
method UnitIndexCompare (line 16) | UnitIndexCompare(const GameState & s, const int & p)
function HashType (line 96) | const HashType GameState::calculateHash(const size_t & hashNum) const
function Unit (line 333) | const Unit & GameState::getUnitByID(const size_t & unitID) const
function Unit (line 350) | const Unit & GameState::getUnitByID(const size_t & player, const size_t ...
function Unit (line 364) | Unit & GameState::getUnitByID(const size_t & player, const size_t & unitID)
function Unit (line 405) | const Unit & GameState::getClosestOurUnit(const size_t & player, const s...
function Unit (line 434) | const Unit & GameState::getClosestEnemyUnit(const size_t & player, const...
function Unit (line 622) | Unit & GameState::getUnit(const size_t & player, const size_t & unitIndex)
function Unit (line 627) | const Unit & GameState::getUnit(const size_t & player, const size_t & un...
function StateEvalScore (line 729) | const StateEvalScore GameState::eval(const size_t & player, const size_t...
function ScoreType (line 775) | const ScoreType GameState::evalLTD(const size_t & player) const
function ScoreType (line 783) | const ScoreType GameState::evalLTD2(const size_t & player) const
function StateEvalScore (line 790) | const StateEvalScore GameState::evalSim(const size_t & player, const siz...
function ScoreType (line 825) | const ScoreType GameState::LTD2(const size_t & player) const
function ScoreType (line 846) | const ScoreType GameState::LTD(const size_t & player) const
function Unit (line 896) | const Unit & GameState::getUnitDirect(const size_t & player, const size_...
function TimeType (line 916) | const TimeType GameState::getTime() const
function Map (line 992) | Map * GameState::getMap() const
function Unit (line 1002) | const Unit & GameState::getNeutralUnit(const size_t & u) const
FILE: SparCraft/source/GameState.h
type std (line 14) | typedef std::shared_ptr<SparCraft::Map> MapPtr;
function namespace (line 16) | namespace SparCraft
FILE: SparCraft/source/GraphViz.hpp
type SparCraft (line 5) | namespace SparCraft
type GraphViz (line 7) | namespace GraphViz
class Property (line 9) | class Property
method Property (line 14) | Property(std::string p, std::string val) : prop(p), value(val) { }
method print (line 15) | void print(std::ofstream & out) { out << prop << "=\"" << value <<...
class Node (line 18) | class Node
method Node (line 23) | Node(std::string n) : name(n) {}
method Node (line 24) | Node() {}
method set (line 26) | void set(std::string p, std::string v) { props.push_back(Property(...
method print (line 27) | void print(std::ofstream & out)
class Edge (line 35) | class Edge
method Edge (line 41) | Edge(std::string n1, std::string n2) : nodes(n1, n2) {}
method Edge (line 42) | Edge(Node & n1, Node & n2) : nodes(n1.name, n2.name) {}
method set (line 43) | void set(std::string p, std::string v) { props.push_back(Property(...
method print (line 44) | void print(std::ofstream & out)
class Graph (line 52) | class Graph
method Graph (line 61) | Graph(std::string n) : name(n) {}
method set (line 62) | void set(std::string p, std::string v) { props.push_back(Property(...
method addNode (line 63) | void addNode(Node & n) { nodes.push_back(n); }
method addEdge (line 64) | void addEdge(Edge & e) { edges.push_back(e); }
method print (line 66) | void print(std::ofstream & out)
FILE: SparCraft/source/Hash.cpp
type SparCraft (line 5) | namespace SparCraft
type Hash (line 7) | namespace Hash
function HashType (line 14) | const HashType Hash::HashValues::positionHash(const size_t & player, con...
function HashType (line 40) | const HashType Hash::HashValues::getAttackHash (const size_t & player, c...
function HashType (line 46) | const HashType Hash::HashValues::getMoveHash (const size_t & player, co...
function HashType (line 47) | const HashType Hash::HashValues::getUnitTypeHash (const size_t & player,...
function HashType (line 48) | const HashType Hash::HashValues::getCurrentHPHash (const size_t & player...
FILE: SparCraft/source/Hash.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/Logger.cpp
function Logger (line 11) | Logger & Logger::Instance()
FILE: SparCraft/source/Logger.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/Map.hpp
type SparCraft (line 7) | namespace SparCraft
class Map (line 12) | class Map
method Position (line 23) | const Position getWalkPosition(const Position & pixelPosition) const
method resetVectors (line 28) | void resetVectors()
method Map (line 37) | Map()
method Map (line 46) | Map(const size_t & bottomRightBuildTileX, const size_t & bottomRight...
method Map (line 55) | Map(BWAPI::GameWrapper & game)
method getPixelWidth (line 72) | const size_t getPixelWidth() const
method getPixelHeight (line 77) | const size_t getPixelHeight() const
method isWalkable (line 102) | const bool isWalkable(const SparCraft::Position & pixelPosition) const
method isFlyable (line 109) | const bool isFlyable(const SparCraft::Position & pixelPosition) const
method isWalkable (line 116) | const bool isWalkable(const size_t & walkTileX, const size_t & walkT...
method isFlyable (line 123) | const bool isFlyable(const size_t & walkTileX, const size_t & walkTi...
method getMapData (line 129) | const bool getMapData(const size_t & walkTileX, const size_t & walkT...
method getUnitData (line 134) | const bool getUnitData(const size_t & buildTileX, const size_t & bui...
method setMapData (line 139) | void setMapData(const size_t & walkTileX, const size_t & walkTileY, ...
method setUnitData (line 144) | void setUnitData(BWAPI::GameWrapper & game)
method canBuildHere (line 157) | const bool canBuildHere(BWAPI::TilePosition pos)
method setBuildingData (line 162) | void setBuildingData(BWAPI::GameWrapper & game)
method addUnit (line 175) | void addUnit(BWAPI::Unit & unit)
method write (line 229) | void write(const std::string & filename)
method load (line 247) | void load(const std::string & filename)
FILE: SparCraft/source/MoveArray.cpp
function Action (line 77) | const Action & MoveArray::getMove(const size_t & unit, const size_t & mo...
FILE: SparCraft/source/MoveArray.h
function namespace (line 8) | namespace SparCraft
FILE: SparCraft/source/MoveSet.hpp
class BitSet (line 37) | class BitSet {
method BitSet (line 43) | BitSet() : set(0) {}
method BitSet (line 44) | BitSet(long long unsigned s) : set(s) {}
method popAction (line 47) | int popAction()
method nextAction (line 64) | int nextAction()
method BitSet (line 78) | BitSet operator + (const int bit) const { return BitSet(set | SIN...
method BitSet (line 79) | BitSet operator - (const int bit) const { return BitSet(set & ~SI...
method BitSet (line 80) | BitSet operator | (const BitSet & a) const { return BitSet(set | ...
method BitSet (line 81) | BitSet operator + (const BitSet & a) const { return BitSet(set | ...
method BitSet (line 82) | BitSet operator - (const BitSet & a) const { return BitSet(set & ...
method BitSet (line 83) | BitSet operator & (const BitSet & a) const { return BitSet(set & ...
method BitSet (line 84) | BitSet operator ~ () const { return BitSet(~set); }
method isEmpty (line 86) | bool isEmpty () const { return set == __ZERO; }
method contains (line 87) | bool contains (const BitSet a) const { return (set & a.set) == a.s...
method contains (line 88) | bool contains (const int bit) const { return (set & SINGLE_BIT(bit)...
method containsAny (line 89) | bool containsAny (const BitSet a) const { return (set & ~a.set) != s...
method containsNone (line 90) | bool containsNone (const BitSet a) const { return (set & ~a.set) == ...
method isSubsetOf (line 91) | bool isSubsetOf (const BitSet a) const { return (a.set & set) == s...
method getBit (line 92) | int getBit (const int bit) const { return (set & SINGLE_BIT(bit))...
method add (line 93) | void add (const int bit) { set |= SINGLE_BIT(bit); }
method add (line 94) | void add (const BitSet a) { set |= a.set; }
method subtract (line 95) | void subtract (const int bit) { set &= ~SINGLE_BIT(bit); }
method subtract (line 96) | void subtract (const BitSet a) { set &= ~a.set; }
method countTrailingZeros (line 98) | int countTrailingZeros(unsigned long long s) const
method countLeadingZeros (line 111) | int countLeadingZeros(unsigned long long s) const
method numActions (line 125) | int numActions() const
method randomAction (line 139) | int randomAction() const
method print (line 160) | void print() const
FILE: SparCraft/source/Player.h
function namespace (line 9) | namespace SparCraft
FILE: SparCraft/source/PlayerProperties.cpp
function PlayerProperties (line 18) | PlayerProperties & PlayerProperties::Get(const size_t & playerID)
FILE: SparCraft/source/PlayerProperties.h
function namespace (line 5) | namespace SparCraft
FILE: SparCraft/source/Player_AlphaBeta.cpp
function AlphaBetaSearchResults (line 24) | AlphaBetaSearchResults & Player_AlphaBeta::results()
function AlphaBetaSearchParameters (line 29) | AlphaBetaSearchParameters & Player_AlphaBeta::getParams()
FILE: SparCraft/source/Player_AlphaBeta.h
function namespace (line 11) | namespace SparCraft
FILE: SparCraft/source/Player_AttackClosest.h
function namespace (line 6) | namespace SparCraft
function getType (line 25) | size_t getType() { return PlayerModels::AttackClosest; }
FILE: SparCraft/source/Player_AttackDPS.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_AttackWeakest.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_Cluster.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_Kiter.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_KiterDPS.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_Kiter_NOKDPS.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_NOKDPS.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Player_PortfolioGreedySearch.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/Player_Random.h
function namespace (line 8) | namespace SparCraft
FILE: SparCraft/source/Player_UCT.cpp
function UCTSearchParameters (line 21) | UCTSearchParameters & Player_UCT::getParams()
function UCTSearchResults (line 26) | UCTSearchResults & Player_UCT::getResults()
FILE: SparCraft/source/Player_UCT.h
function namespace (line 9) | namespace SparCraft
FILE: SparCraft/source/PortfolioGreedySearch.cpp
function StateEvalScore (line 146) | StateEvalScore PortfolioGreedySearch::eval(const size_t & player, const ...
FILE: SparCraft/source/PortfolioGreedySearch.h
function namespace (line 11) | namespace SparCraft
FILE: SparCraft/source/Position.hpp
type SparCraft (line 7) | namespace SparCraft
class Position (line 9) | class Position
method Position (line 17) | Position()
method Position (line 23) | Position(const PositionType & x, const PositionType & y)
method Position (line 29) | Position(const BWAPI::Position & p)
method Position (line 46) | const Position operator + (const Position & rhs) const
method Position (line 51) | const Position operator - (const Position & rhs) const
method Position (line 56) | const Position scale(const float & f) const
method scalePosition (line 61) | void scalePosition(const float & f)
method addPosition (line 67) | void addPosition(const Position & rhs)
method subtractPosition (line 73) | void subtractPosition(const Position & rhs)
method moveTo (line 79) | void moveTo(const Position & pos)
method addPosition (line 85) | void addPosition(const PositionType & x, const PositionType & y)
method moveTo (line 91) | void moveTo(const PositionType & x, const PositionType & y)
method PositionType (line 97) | const PositionType x() const
method PositionType (line 102) | const PositionType y() const
method Position (line 107) | const Position flipX() const
method Position (line 112) | const Position flipY() const
method Q_rsqrt (line 117) | const float Q_rsqrt( float number ) const
method Position (line 134) | const Position flip() const
method PositionType (line 139) | inline const PositionType getDistance(const Position & p) const
method PositionType (line 158) | inline const PositionType getDistanceSq(const Position & p) const
method print (line 163) | void print() const
method getString (line 168) | const std::string getString() const
FILE: SparCraft/source/Random.hpp
type SparCraft (line 6) | namespace SparCraft
class RandomInt (line 8) | class RandomInt
class SparCraft::RandomInt (line 11) | class SparCraft::RandomInt
method RandomInt (line 19) | RandomInt(int min, int max, int seed)
method nextInt (line 27) | int nextInt()
FILE: SparCraft/source/SparCraft.cpp
type SparCraft (line 3) | namespace SparCraft
function init (line 5) | void init()
FILE: SparCraft/source/SparCraft.h
function namespace (line 17) | namespace SparCraft
FILE: SparCraft/source/SparCraftAssert.cpp
type SparCraft (line 8) | namespace SparCraft
type Assert (line 10) | namespace Assert
function currentDateTime (line 12) | const std::string currentDateTime()
function ReportFailure (line 31) | void ReportFailure(const GameState * state, const char * condition, ...
FILE: SparCraft/source/SparCraftAssert.h
function namespace (line 8) | namespace SparCraft
FILE: SparCraft/source/SparCraftException.cpp
function GameState (line 36) | const GameState & SparCraftException::getState() const
FILE: SparCraft/source/SparCraftException.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/Timer.h
function namespace (line 28) | namespace SparCraft
FILE: SparCraft/source/TranspositionTable.cpp
function HashType (line 33) | const HashType & TTEntry::getHash() const { return _hash2; }
function StateEvalScore (line 34) | const StateEvalScore & TTEntry::getScore() const { return _score; }
function TTBestMove (line 37) | const TTBestMove & TTEntry::getBestMove(const size_t & player) const { r...
function TTEntry (line 59) | const TTEntry & TranspositionTable::operator [] (const size_t & hash) const
function TTEntry (line 64) | const TTEntry & TranspositionTable::get(const size_t & hash) const
function TTEntry (line 132) | TTEntry * TranspositionTable::lookupScan(const HashType & hash1, const H...
function TTEntry (line 156) | TTEntry * TranspositionTable::lookup(const size_t & index, const HashTyp...
FILE: SparCraft/source/TranspositionTable.h
function namespace (line 10) | namespace SparCraft
function class (line 79) | class TranspositionTable
FILE: SparCraft/source/TutorialCode.cpp
function Unit (line 9) | Unit getSampleUnit()
function GameState (line 31) | GameState getSampleState()
function Map (line 59) | Map getSampleMap()
function PlayerPtr (line 98) | PlayerPtr getSamplePlayer(const IDType playerID)
function getSamplePlayerActionsFromState (line 110) | std::vector<Action> getSamplePlayerActionsFromState()
function runSampleGame (line 134) | void runSampleGame()
FILE: SparCraft/source/UCTMemoryPool.hpp
type SparCraft (line 6) | namespace SparCraft
class UCTMemoryPool (line 8) | class UCTMemoryPool
class SparCraft::UCTMemoryPool (line 11) | class SparCraft::UCTMemoryPool
method UCTMemoryPool (line 22) | UCTMemoryPool(const size_t & poolSize, const size_t & maxChildren)
method clearPool (line 46) | void clearPool()
FILE: SparCraft/source/UCTNode.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/UCTSearch.cpp
function UCTNode (line 239) | UCTNode & UCTSearch::UCTNodeSelect(UCTNode & parent)
function StateEvalScore (line 304) | StateEvalScore UCTSearch::traverse(UCTNode & node, GameState & currentSt...
function StateEvalScore (line 382) | StateEvalScore UCTSearch::performPlayout(GameState & state)
function UCTSearchResults (line 496) | UCTSearchResults & UCTSearch::getResults()
FILE: SparCraft/source/UCTSearch.h
function namespace (line 20) | namespace SparCraft
FILE: SparCraft/source/UCTSearchParameters.hpp
type SparCraft (line 5) | namespace SparCraft
class UCTSearchParameters (line 7) | class UCTSearchParameters
type UCTMoveSelect (line 9) | namespace UCTMoveSelect
class SparCraft::UCTSearchParameters (line 15) | class SparCraft::UCTSearchParameters
method UCTSearchParameters (line 39) | UCTSearchParameters()
method setMaxPlayer (line 69) | void setMaxPlayer(const size_t & player) { _maxPlayer = pl...
method setTimeLimit (line 70) | void setTimeLimit(const size_t & timeLimit) { _timeLimit =...
method setCValue (line 71) | void setCValue(const double & c) { _cValue = c; }
method setMaxTraversals (line 72) | void setMaxTraversals(const size_t & traversals) { ...
method setMaxChildren (line 73) | void setMaxChildren(const size_t & children) { ...
method setMoveOrderingMethod (line 74) | void setMoveOrderingMethod(const size_t & method) { ...
method setEvalMethod (line 75) | void setEvalMethod(const size_t & eval) { _evalMethod = e...
method setPlayerToMoveMethod (line 76) | void setPlayerToMoveMethod(const size_t & method) { _playerToMo...
method setSimScripts (line 77) | void setSimScripts(const size_t & p1, const size_t & p2) { _simSc...
method setRootMoveSelectionMethod (line 78) | void setRootMoveSelectionMethod(const size_t & method) { ...
method setGraphVizFilename (line 79) | void setGraphVizFilename(const std::string & filename) { ...
method addOrderedMoveScript (line 80) | void addOrderedMoveScript(const size_t & script) { ...
method setPlayerModel (line 81) | void setPlayerModel(const size_t & player, const size_t & model) { _pl...
FILE: SparCraft/source/UCTSearchResults.hpp
type SparCraft (line 6) | namespace SparCraft
class UCTSearchResults (line 8) | class UCTSearchResults
method UCTSearchResults (line 27) | UCTSearchResults()
FILE: SparCraft/source/Unit.cpp
function Position (line 151) | const Position & Unit::position() const
function PositionType (line 276) | const PositionType Unit::getDistanceSqToUnit(const Unit & u, const TimeT...
function PositionType (line 281) | const PositionType Unit::getDistanceSqToPosition(const Position & p, con...
function Position (line 287) | const Position & Unit::currentPosition(const TimeType & gameTime) const
function HealthType (line 339) | const HealthType Unit::damage() const
function HealthType (line 346) | const HealthType Unit::healAmount() const
function Position (line 433) | const Position & Unit::pos() const
function PositionType (line 438) | const PositionType Unit::x() const
function PositionType (line 443) | const PositionType Unit::y() const
function PositionType (line 448) | const PositionType Unit::range() const
function PositionType (line 453) | const PositionType Unit::healRange() const
function HealthType (line 458) | const HealthType Unit::maxHP() const
function HealthType (line 463) | const HealthType Unit::currentHP() const
function HealthType (line 468) | const HealthType Unit::currentEnergy() const
function HealthType (line 473) | const HealthType Unit::maxEnergy() const
function HealthType (line 478) | const HealthType Unit::healCost() const
function TimeType (line 488) | const TimeType Unit::moveCooldown() const
function TimeType (line 493) | const TimeType Unit::attackCooldown() const
function TimeType (line 498) | const TimeType Unit::healCooldown() const
function TimeType (line 503) | const TimeType Unit::nextAttackActionTime() const
function TimeType (line 508) | const TimeType Unit::nextMoveActionTime() const
function TimeType (line 513) | const TimeType Unit::previousActionTime() const
function TimeType (line 518) | const TimeType Unit::firstTimeFree() const
function TimeType (line 523) | const TimeType Unit::attackInitFrameTime() const
function TimeType (line 528) | const TimeType Unit::attackRepeatFrameTime() const
function Action (line 548) | const Action & Unit::previousAction() const
function PlayerWeapon (line 558) | const PlayerWeapon Unit::getWeapon(const Unit & target) const
function HealthType (line 563) | const HealthType Unit::getArmor() const
function HashType (line 581) | const HashType Unit::calculateHash(const size_t & hashNum, const TimeTyp...
FILE: SparCraft/source/Unit.h
function namespace (line 13) | namespace SparCraft
FILE: SparCraft/source/UnitAction.hpp
type SparCraft (line 6) | namespace SparCraft
type UnitActionTypes (line 9) | namespace UnitActionTypes
class UnitAction (line 14) | class UnitAction
method UnitAction (line 26) | UnitAction()
method UnitAction (line 35) | UnitAction( const IDType & unitIndex, const IDType & player, const I...
method UnitAction (line 45) | UnitAction( const IDType & unitIndex, const IDType & player, const I...
method IDType (line 59) | const IDType & unit() const { return _unit; }
method IDType (line 60) | const IDType & player() const { return _player; }
method IDType (line 61) | const IDType & type() const { return _moveType; }
method IDType (line 62) | const IDType & index() const { return _moveIndex; }
method Position (line 63) | const Position & pos() const { return _p; }
method moveString (line 65) | const std::string moveString() const
method Position (line 91) | const Position getDir() const
method debugString (line 96) | const std::string debugString() const
class AlphaBetaMove (line 105) | class AlphaBetaMove
method AlphaBetaMove (line 112) | AlphaBetaMove()
method AlphaBetaMove (line 117) | AlphaBetaMove(const std::vector<UnitAction> & move, const bool & isV...
method isValid (line 123) | const bool isValid() const { return _isValid; }
class TTBestMove (line 127) | class TTBestMove
method TTBestMove (line 134) | TTBestMove()
method TTBestMove (line 138) | TTBestMove(const AlphaBetaMove & first, const AlphaBetaMove & second)
method AlphaBetaMove (line 144) | const AlphaBetaMove & firstMove() const { return _firstMove; }
method AlphaBetaMove (line 145) | const AlphaBetaMove & secondMove() const { return _secondMove; }
class AlphaBetaValue (line 149) | class AlphaBetaValue
method AlphaBetaValue (line 156) | AlphaBetaValue()
method AlphaBetaValue (line 160) | AlphaBetaValue(const StateEvalScore & score, const AlphaBetaMove & a...
method StateEvalScore (line 166) | const StateEvalScore & score() const { return _score; }
method AlphaBetaMove (line 167) | const AlphaBetaMove & abMove() const { return _move; }
FILE: SparCraft/source/UnitProperties.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/UnitScriptData.cpp
function Action (line 14) | Action & UnitScriptData::getMove(const size_t & player, const size_t & u...
function PlayerPtr (line 64) | const PlayerPtr & UnitScriptData::getPlayerPtr(const size_t & player, co...
FILE: SparCraft/source/UnitScriptData.h
function namespace (line 11) | namespace SparCraft
FILE: SparCraft/source/UnitType.hpp
class Unit (line 5) | class Unit
method Unit (line 18) | Unit()
method Unit (line 31) | Unit(const int & damage, const int & maxHP, const int & currentHP,
method damage (line 45) | const int damage() const { return _damage; }
method maxHP (line 46) | const int maxHP() const { return _maxHP; }
method currentHP (line 47) | const int currentHP() const { return _currentHP; }
method range (line 48) | const int range() const { return _range; }
method moveCooldown (line 49) | const int moveCooldown() const { return _moveCooldown; }
method weaponCooldown (line 50) | const int weaponCooldown() const { return _weaponCooldown; }
method lastMove (line 51) | const int lastMove() const { return _lastMove; }
method lastAttack (line 52) | const int lastAttack() const { return _lastAttack; }
FILE: SparCraft/source/WeaponProperties.cpp
type SparCraft (line 7) | namespace SparCraft
function WeaponProperties (line 92) | const WeaponProperties & WeaponProperties::Get(BWAPI::WeaponType type)
FILE: SparCraft/source/WeaponProperties.h
function namespace (line 6) | namespace SparCraft
FILE: SparCraft/source/glext/glext.h
type GLchar (line 3047) | typedef char GLchar;
type GLintptr (line 3052) | typedef ptrdiff_t GLintptr;
type GLsizeiptr (line 3053) | typedef ptrdiff_t GLsizeiptr;
type GLintptrARB (line 3058) | typedef ptrdiff_t GLintptrARB;
type GLsizeiptrARB (line 3059) | typedef ptrdiff_t GLsizeiptrARB;
type GLcharARB (line 3064) | typedef char GLcharARB;
type GLhandleARB (line 3065) | typedef unsigned int GLhandleARB;
type GLhalfARB (line 3070) | typedef unsigned short GLhalfARB;
type GLhalfNV (line 3074) | typedef unsigned short GLhalfNV;
type GLvoid (line 3391) | typedef GLvoid* (APIENTRYP PFNGLMAPBUFFERPROC) (GLenum target, GLenum ac...
type GLvoid (line 3992) | typedef GLvoid* (APIENTRYP PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum...
type GLuint (line 4374) | typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n...
type GLuint (line 5660) | typedef GLboolean (APIENTRYP PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n,...
type GLvoid (line 5824) | typedef GLuint (APIENTRYP PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, co...
type GLvoid (line 6364) | typedef GLvoid* (APIENTRYP PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer);
FILE: SparCraft/source/glext/wglext.h
type const (line 365) | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, in...
type const (line 366) | typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, in...
type const (line 367) | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const i...
type const (line 389) | typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int ...
type const (line 453) | typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int ...
type const (line 469) | typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const i...
type const (line 529) | typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC,...
type const (line 541) | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, i...
type USHORT (line 543) | typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntrie...
type HANDLE (line 586) | typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC...
type LPVOID (line 587) | typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, ...
FILE: SparCraft/source/glfont2/glfont.h
function namespace (line 28) | namespace GLFontError {
function class (line 33) | class GLFontBase {
function class (line 70) | class GLFont : public GLFontBase {
function class (line 77) | class PixelPerfectGLFont : public GLFontBase {
FILE: SparCraft/source/gui/GUI.cpp
type stat (line 321) | struct stat
function Game (line 419) | const Game & GUI::getGame() const
FILE: SparCraft/source/gui/GUI.h
function namespace (line 19) | namespace SparCraft
FILE: SparCraft/source/gui/GUIGame.cpp
function Game (line 251) | const Game & GUIGame::getGame() const
FILE: SparCraft/source/gui/GUIGame.h
function namespace (line 5) | namespace SparCraft
FILE: SparCraft/source/gui/GUITools.cpp
type SparCraft (line 4) | namespace SparCraft
type GUITools (line 6) | namespace GUITools
function DrawString (line 8) | void DrawString(const Position & p, const std::string & text, const ...
function DrawChar (line 36) | void DrawChar(const Position & tl, const Position & br, char ch, con...
function DrawLine (line 55) | void DrawLine(const Position & p1, const Position & p2, const float ...
function DrawCircle (line 67) | void DrawCircle(const Position & pos, float r, int num_segments)
function DrawRect (line 90) | void DrawRect(const Position & tl, const Position & br, const GLfloa...
function DrawRectGradient (line 103) | void DrawRectGradient(const Position & tl, const Position & br, cons...
function DrawTexturedRect (line 115) | void DrawTexturedRect(const Position & tl, const Position & br, cons...
function DrawIconAndText (line 131) | void DrawIconAndText(const Position & tl, const Position & br, const...
FILE: SparCraft/source/gui/GUITools.h
function namespace (line 7) | namespace SparCraft
FILE: SparCraft/source/main/SearchExperiment.cpp
type tm (line 143) | struct tm
function Position (line 655) | Position SearchExperiment::getRandomPosition(const PositionType & xlimit...
function GameState (line 663) | GameState SearchExperiment::getSymmetricState( std::vector<std::string> ...
function svv (line 743) | svv SearchExperiment::getExpDescription(const size_t & p1Ind, const size...
FILE: SparCraft/source/main/SearchExperiment.h
function namespace (line 7) | namespace SparCraft
type std (line 12) | typedef std::vector<std::string> sv;
type std (line 13) | typedef std::vector<sv> svv;
type std (line 14) | typedef std::vector<int> iv;
type std (line 15) | typedef std::vector<iv> ivv;
type std (line 16) | typedef std::vector<ivv> ivvv;
type std (line 17) | typedef std::vector<double> dv;
type std (line 18) | typedef std::vector<dv> dvv;
type std (line 19) | typedef std::vector<dvv> dvvv;
function namespace (line 23) | namespace SparCraft
FILE: SparCraft/source/main/main.cpp
function main (line 9) | int main(int argc, char *argv[])
FILE: UAlbertaBot/Source/AutoObserver.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BOSSManager.cpp
function BuildOrder (line 300) | BuildOrder BOSSManager::getBuildOrder()
function MetaType (line 328) | MetaType BOSSManager::GetMetaType(const BOSS::ActionType & a)
FILE: UAlbertaBot/Source/BOSSManager.h
function namespace (line 8) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BaseLocation.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BaseLocationManager.cpp
function BaseLocation (line 244) | BaseLocation * BaseLocationManager::getBaseLocation(const BWAPI::Positio...
function BaseLocation (line 275) | const BaseLocation * BaseLocationManager::getPlayerStartingBaseLocation(...
FILE: UAlbertaBot/Source/BaseLocationManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BuildOrder.cpp
function MetaType (line 40) | const MetaType & BuildOrder::operator [] (const size_t & index) const
function MetaType (line 45) | MetaType & BuildOrder::operator [] (const size_t & index)
FILE: UAlbertaBot/Source/BuildOrder.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BuildOrderQueue.cpp
function BuildOrderItem (line 20) | BuildOrderItem & BuildOrderQueue::getHighestPriorityItem()
function BuildOrderItem (line 29) | BuildOrderItem & BuildOrderQueue::getNextHighestPriorityItem()
function BuildOrderItem (line 144) | BuildOrderItem BuildOrderQueue::operator [] (int i)
FILE: UAlbertaBot/Source/BuildOrderQueue.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BuildingData.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BuildingManager.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/BuildingPlacerManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/CombatCommander.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/CombatSimulation.h
function namespace (line 14) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Config.cpp
type Bot (line 4) | namespace Bot
type Config (line 9) | namespace Config
type ConfigFile (line 11) | namespace ConfigFile
type Strategy (line 18) | namespace Strategy
type Modules (line 32) | namespace Modules
type BotInfo (line 47) | namespace BotInfo
type BWAPIOptions (line 54) | namespace BWAPIOptions
type Tournament (line 62) | namespace Tournament
type Debug (line 67) | namespace Debug
type Micro (line 100) | namespace Micro
type Macro (line 113) | namespace Macro
type Tools (line 122) | namespace Tools
FILE: UAlbertaBot/Source/Config.h
function namespace (line 7) | namespace Config
FILE: UAlbertaBot/Source/DetectorManager.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/DistanceMap.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/GameCommander.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Global.cpp
function Global (line 21) | Global & Global::Instance()
function MapTools (line 43) | MapTools & Global::Map() { return *get(Instance(...
function BaseLocationManager (line 44) | BaseLocationManager & Global::Bases() { return *get(Instance(...
function InformationManager (line 45) | InformationManager & Global::Info() { return *get(Instance(...
function StrategyManager (line 46) | StrategyManager & Global::Strategy() { return *get(Instance(...
function WorkerManager (line 47) | WorkerManager & Global::Workers() { return *get(Instance(...
function ProductionManager (line 48) | ProductionManager & Global::Production() { return *get(Instance(...
function ScoutManager (line 49) | ScoutManager & Global::Scout() { return *get(Instance(...
FILE: UAlbertaBot/Source/Global.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Grid.hpp
type UAlbertaBot (line 7) | namespace UAlbertaBot
class Grid (line 11) | class Grid
method Grid (line 20) | Grid() {}
method Grid (line 22) | Grid(size_t width, size_t height, T val)
method T (line 30) | inline T get(size_t x, size_t y)
method T (line 35) | inline const T get(size_t x, size_t y) const
method set (line 40) | inline void set(size_t x, size_t y, T val)
method width (line 45) | inline size_t width() const
method height (line 50) | inline size_t height() const
FILE: UAlbertaBot/Source/InformationManager.cpp
function UIMap (line 36) | const UIMap & InformationManager::getUnitInfo(BWAPI::Player player) const
function UnitData (line 359) | const UnitData & InformationManager::getUnitData(BWAPI::Player player) c...
FILE: UAlbertaBot/Source/InformationManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/JSONTools.cpp
type UAlbertaBot (line 4) | namespace UAlbertaBot
type JSONTools (line 6) | namespace JSONTools
function ReadBool (line 8) | void ReadBool(const char * key, const rapidjson::Value & value, bool...
function ReadString (line 17) | void ReadString(const char * key, const rapidjson::Value & value, st...
FILE: UAlbertaBot/Source/JSONTools.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Logger.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/MapTools.cpp
function DistanceMap (line 244) | const DistanceMap & MapTools::getDistanceMap(const BWAPI::Position & pos...
function DistanceMap (line 249) | const DistanceMap & MapTools::getDistanceMap(const BWAPI::TilePosition &...
function StarDraftMap (line 523) | const StarDraftMap & MapTools::getStarDraftMap() const
FILE: UAlbertaBot/Source/MapTools.h
function namespace (line 9) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/MedicManager.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/MeleeManager.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/MetaType.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Micro.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/MicroManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/ParseUtils.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/ProductionManager.h
function namespace (line 8) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Profiler.hpp
type UAlbertaBot (line 20) | namespace UAlbertaBot
type ProfileResult (line 24) | struct ProfileResult
class Profiler (line 32) | class Profiler
method Profiler (line 39) | Profiler()
method writeHeader (line 45) | void writeHeader() { m_outputStream << "{\"otherData\": {},\"traceEv...
method writeFooter (line 46) | void writeFooter() { m_outputStream << "]}"; }
method Profiler (line 50) | static Profiler& Instance()
method writeProfile (line 61) | void writeProfile(const ProfileResult& result)
class ProfileTimer (line 82) | class ProfileTimer
method ProfileTimer (line 91) | ProfileTimer(const std::string & name)
method stop (line 102) | void stop()
FILE: UAlbertaBot/Source/RangedManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/ScoutManager.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/Squad.cpp
function SquadOrder (line 445) | const SquadOrder & Squad::getSquadOrder() const
FILE: UAlbertaBot/Source/Squad.h
function namespace (line 12) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/SquadData.cpp
function Squad (line 143) | const Squad * SquadData::getUnitSquad(BWAPI::Unit unit) const
function Squad (line 156) | Squad * SquadData::getUnitSquad(BWAPI::Unit unit)
function Squad (line 191) | Squad & SquadData::getSquad(const std::string & squadName)
FILE: UAlbertaBot/Source/SquadData.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/SquadOrder.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/StarDraftMap.hpp
type UAlbertaBot (line 7) | namespace UAlbertaBot
type TileType (line 10) | namespace TileType
type Tile (line 24) | struct Tile { size_t x = 0, y = 0; }
class StarDraftMap (line 26) | class StarDraftMap
method isWalkable (line 34) | inline bool isWalkable(char tile) const noexcept
method canBuild (line 39) | inline bool canBuild(char tile) const noexcept
method canBuildDepot (line 44) | inline bool canBuildDepot(char tile) const noexcept
method StarDraftMap (line 52) | StarDraftMap() {}
method StarDraftMap (line 54) | StarDraftMap(const std::string & path)
method StarDraftMap (line 59) | StarDraftMap(size_t width, size_t height)
method set (line 66) | inline void set(size_t x, size_t y, char val)
method setWalk (line 74) | inline void setWalk(size_t x, size_t y, bool val)
method addStartTile (line 79) | inline void addStartTile(size_t x, size_t y)
method width (line 84) | inline size_t width() const
method height (line 89) | inline size_t height() const
method get (line 94) | inline char get(size_t x, size_t y) const
method getWalk (line 99) | inline char getWalk(size_t x, size_t y) const
method isWalkable (line 104) | inline bool isWalkable(size_t x, size_t y) const
method canBuild (line 109) | inline bool canBuild(size_t x, size_t y) const
method canBuildDepot (line 114) | inline bool canBuildDepot(size_t x, size_t y) const
method load (line 124) | inline void load(const std::string & path)
method save (line 165) | inline void save(const std::string & path) const
FILE: UAlbertaBot/Source/StrategyManager.cpp
function BuildOrder (line 28) | const BuildOrder & StrategyManager::getOpeningBookBuildOrder() const
function MetaPairVector (line 92) | const MetaPairVector StrategyManager::getBuildOrderGoal()
function MetaPairVector (line 112) | const MetaPairVector StrategyManager::getProtossBuildOrderGoal() const
function MetaPairVector (line 200) | const MetaPairVector StrategyManager::getTerranBuildOrderGoal() const
function MetaPairVector (line 261) | const MetaPairVector StrategyManager::getZergBuildOrderGoal() const
FILE: UAlbertaBot/Source/StrategyManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/TankManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/TimerManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/TransportManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/UABAssert.cpp
type UAlbertaBot (line 8) | namespace UAlbertaBot
type Assert (line 10) | namespace Assert
function currentDateTime (line 14) | const std::string currentDateTime()
function ReportFailure (line 26) | void ReportFailure(const char * condition, const char * file, int li...
FILE: UAlbertaBot/Source/UABAssert.h
function namespace (line 39) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/UAlbertaBotModule.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/UnitData.h
function namespace (line 5) | namespace UAlbertaBot
type std (line 42) | typedef std::vector<UnitInfo> UnitInfoVector;
type std (line 43) | typedef std::map<BWAPI::Unit,UnitInfo> UIMap;
function class (line 45) | class UnitData
FILE: UAlbertaBot/Source/UnitInfoManager.cpp
function UnitData (line 273) | const UnitData & UnitInfoManager::getUnitData(CCPlayer player) const
FILE: UAlbertaBot/Source/UnitInfoManager.h
function class (line 9) | class UnitInfoManager
FILE: UAlbertaBot/Source/UnitUtil.cpp
function Rect (line 55) | Rect UnitUtil::GetRect(BWAPI::Unit unit)
FILE: UAlbertaBot/Source/UnitUtil.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/WorkerData.cpp
type WorkerJob (line 43) | enum WorkerJob
type WorkerJob (line 91) | enum WorkerJob
type WorkerJob (line 148) | enum WorkerJob
type WorkerJob (line 161) | enum WorkerJob
type WorkerData::WorkerJob (line 264) | enum WorkerData::WorkerJob
type WorkerJob (line 268) | enum WorkerJob
function WorkerMoveData (line 484) | WorkerMoveData WorkerData::getWorkerMoveData(BWAPI::Unit unit)
FILE: UAlbertaBot/Source/WorkerData.h
function namespace (line 5) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/WorkerManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/main.cpp
function UAlbertaBot_BWAPIReconnect (line 14) | void UAlbertaBot_BWAPIReconnect()
function UAlbertaBot_PlayGame (line 22) | void UAlbertaBot_PlayGame()
function main (line 62) | int main(int argc, char * argv[])
FILE: UAlbertaBot/Source/rapidjson/allocators.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
function Clear (line 145) | void Clear() {
function Capacity (line 158) | size_t Capacity() const {
function Free (line 220) | static void Free(void *ptr) { (void)ptr; }
function AddChunk (line 231) | void AddChunk(size_t capacity) {
type ChunkHeader (line 246) | struct ChunkHeader {
FILE: UAlbertaBot/Source/rapidjson/document.h
type GenericMember (line 116) | typedef GenericMember<Encoding,Allocator> PlainType;
type typename (line 117) | typedef typename internal::MaybeAddConst<Const,PlainType>::Type ValueType;
type std (line 118) | typedef std::iterator<std::random_access_iterator_tag,ValueType> BaseType;
type typename (line 129) | typedef typename BaseType::pointer Pointer;
type typename (line 131) | typedef typename BaseType::reference Reference;
type typename (line 133) | typedef typename BaseType::difference_type DifferenceType;
function ptr_ (line 157) | GenericMemberIterator(const NonConstIterator & it) : ptr_(it.ptr_) {}
function ConstIterator (line 178) | bool operator==(ConstIterator that) const { return ptr_ == that.ptr_; }
function ConstIterator (line 179) | bool operator!=(ConstIterator that) const { return ptr_ != that.ptr_; }
function ConstIterator (line 180) | bool operator<=(ConstIterator that) const { return ptr_ <= that.ptr_; }
function ConstIterator (line 181) | bool operator>=(ConstIterator that) const { return ptr_ >= that.ptr_; }
function operator (line 182) | bool operator< (ConstIterator that) const { return ptr_ < that.ptr_; }
function operator (line 183) | bool operator> (ConstIterator that) const { return ptr_ > that.ptr_; }
function Reference (line 188) | Reference operator*() const { return *ptr_; }
function Pointer (line 189) | Pointer operator->() const { return ptr_; }
function Reference (line 190) | Reference operator[](DifferenceType n) const { return ptr_[n]; }
type CharType (line 257) | typedef CharType Ch;
function explicit (line 305) | explicit GenericStringRef(const CharType* str)
function operator (line 319) | operator const Ch *() const { return s; }
function namespace (line 390) | namespace internal {
type Encoding (line 422) | typedef Encoding EncodingType;
type Allocator (line 423) | typedef Allocator AllocatorType;
type typename (line 424) | typedef typename Encoding::Ch Ch;
type GenericStringRef (line 425) | typedef GenericStringRef<Ch> StringRefType;
type typename (line 426) | typedef typename GenericMemberIterator<false,Encoding,Allocator>::Iterat...
type typename (line 427) | typedef typename GenericMemberIterator<true,Encoding,Allocator>::Iterato...
type GenericValue (line 428) | typedef GenericValue* ValueIterator;
type GenericValue (line 429) | typedef const GenericValue* ConstValueIterator;
type GenericValue (line 430) | typedef GenericValue<Encoding, Allocator> ValueType;
function explicit (line 489) | explicit GenericValue(bool b) RAPIDJSON_NOEXCEPT
function explicit (line 497) | explicit GenericValue(int i) RAPIDJSON_NOEXCEPT : data_(), flags_(kNumbe...
function explicit (line 504) | explicit GenericValue(unsigned u) RAPIDJSON_NOEXCEPT : data_(), flags_(k...
function explicit (line 511) | explicit GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT : data_(), flags_(...
function explicit (line 525) | explicit GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT : data_(), flags_...
function explicit (line 536) | explicit GenericValue(double d) RAPIDJSON_NOEXCEPT : data_(), flags_(kNu...
function explicit (line 542) | explicit GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT : data_(), fla...
type GenericValue (line 677) | typedef GenericValue<Encoding, SourceAllocator> RhsType;
function rhs (line 724) | bool operator==(const std::basic_string<Ch>& rhs) const { return *this =...
function GetBool (line 787) | bool GetBool() const { RAPIDJSON_ASSERT(IsBool()); return flags_ == kTru...
function SizeType (line 802) | SizeType MemberCount() const { RAPIDJSON_ASSERT(IsObject()); return data...
function GenericValue (line 850) | const GenericValue& operator[](const std::basic_string<Ch>& name) const ...
function ConstMemberIterator (line 855) | ConstMemberIterator MemberBegin() const { RAPIDJSON_ASSERT(IsObject()); ...
function MemberIterator (line 861) | MemberIterator MemberBegin() { RAPIDJSON_ASSERT(IsObject()); ...
function MemberIterator (line 864) | MemberIterator MemberEnd() { RAPIDJSON_ASSERT(IsObject()); ...
function HasMember (line 874) | bool HasMember(const Ch* name) const { return FindMember(name) != Member...
function HasMember (line 885) | bool HasMember(const std::basic_string<Ch>& name) const { return FindMem...
function MemberIterator (line 912) | MemberIterator FindMember(const Ch* name) {
function ConstMemberIterator (line 917) | ConstMemberIterator FindMember(const Ch* name) const { return const_cast...
function MemberIterator (line 952) | MemberIterator FindMember(const std::basic_string<Ch>& name) { return Fi...
function ConstMemberIterator (line 953) | ConstMemberIterator FindMember(const std::basic_string<Ch>& name) const ...
function RemoveAllMembers (line 1116) | void RemoveAllMembers() {
function RemoveMember (line 1131) | bool RemoveMember(const Ch* name) {
function MemberIterator (line 1159) | MemberIterator RemoveMember(MemberIterator m) {
function MemberIterator (line 1187) | MemberIterator EraseMember(ConstMemberIterator pos) {
function MemberIterator (line 1200) | MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterato...
function EraseMember (line 1221) | bool EraseMember(const Ch* name) {
function SizeType (line 1251) | SizeType Size() const { RAPIDJSON_ASSERT(IsArray()); return data_.a.size; }
function Empty (line 1257) | bool Empty() const { RAPIDJSON_ASSERT(IsArray()); return data_.a.size ==...
function GenericValue (line 1280) | const GenericValue& operator[](SizeType index) const { return const_cast...
function ValueIterator (line 1284) | ValueIterator Begin() { RAPIDJSON_ASSERT(IsArray()); return data_.a.elem...
function ValueIterator (line 1287) | ValueIterator End() { RAPIDJSON_ASSERT(IsArray()); return data_.a.elemen...
function ValueIterator (line 1389) | ValueIterator Erase(ConstValueIterator pos) {
function ValueIterator (line 1401) | ValueIterator Erase(ConstValueIterator first, ConstValueIterator last) {
function GetDouble (line 1426) | double GetDouble() const {
function Ch (line 1446) | const Ch* GetString() const { RAPIDJSON_ASSERT(IsString()); return ((fla...
function SizeType (line 1451) | SizeType GetStringLength() const { RAPIDJSON_ASSERT(IsString()); return ...
type String (line 1586) | struct String {
function SetLength (line 1600) | struct ShortString {
type I (line 1612) | struct I {
type U (line 1616) | struct U {
type I (line 1621) | struct I {
type U (line 1625) | struct U {
type Object (line 1635) | struct Object {
type Array (line 1641) | struct Array {
function SetArrayRaw (line 1656) | void SetArrayRaw(GenericValue* values, SizeType count, Allocator& alloca...
function SetObjectRaw (line 1668) | void SetObjectRaw(Member* members, SizeType count, Allocator& allocator) {
function SetStringRaw (line 1680) | void SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT {
function SetStringRaw (line 1687) | void SetStringRaw(StringRefType s, Allocator& allocator) {
function RawAssign (line 1704) | void RawAssign(GenericValue& rhs) RAPIDJSON_NOEXCEPT {
type GenericValue (line 1731) | typedef GenericValue<UTF8<> > Value;
type GenericValue (line 1748) | typedef GenericValue<Encoding, Allocator> ValueType;
type Allocator (line 1749) | typedef Allocator AllocatorType;
type ClearStackOnExit (line 1943) | struct ClearStackOnExit {
function Null (line 1957) | bool Null() { new (stack_.template Push<ValueType>()) ValueType(); retur...
function Bool (line 1958) | bool Bool(bool b) { new (stack_.template Push<ValueType>()) ValueType(b)...
function Int (line 1959) | bool Int(int i) { new (stack_.template Push<ValueType>()) ValueType(i); ...
function Uint (line 1960) | bool Uint(unsigned i) { new (stack_.template Push<ValueType>()) ValueTyp...
function Int64 (line 1961) | bool Int64(int64_t i) { new (stack_.template Push<ValueType>()) ValueTyp...
function Uint64 (line 1962) | bool Uint64(uint64_t i) { new (stack_.template Push<ValueType>()) ValueT...
function Double (line 1963) | bool Double(double d) { new (stack_.template Push<ValueType>()) ValueTyp...
function String (line 1965) | bool String(const Ch* str, SizeType length, bool copy) {
function StartObject (line 1973) | bool StartObject() { new (stack_.template Push<ValueType>()) ValueType(k...
function Key (line 1975) | bool Key(const Ch* str, SizeType length, bool copy) { return String(str,...
function EndObject (line 1977) | bool EndObject(SizeType memberCount) {
function StartArray (line 1983) | bool StartArray() { new (stack_.template Push<ValueType>()) ValueType(kA...
function EndArray (line 1985) | bool EndArray(SizeType elementCount) {
function ClearStack (line 1997) | void ClearStack() {
function Destroy (line 2006) | void Destroy() {
type GenericDocument (line 2018) | typedef GenericDocument<UTF8<> > Document;
FILE: UAlbertaBot/Source/rapidjson/encodedstream.h
function RAPIDJSON_DIAG_PUSH (line 21) | RAPIDJSON_DIAG_PUSH
function Ch (line 43) | Ch Take() { Ch c = current_; current_ = Encoding::Take(is_); return c; }
function Put (line 47) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function Flush (line 48) | void Flush() { RAPIDJSON_ASSERT(false); }
function Ch (line 49) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function PutEnd (line 50) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
function os_ (line 71) | os_(os) {
function Put (line 76) | void Put(Ch c) { Encoding::Put(os_, c); }
function Flush (line 77) | void Flush() { os_.Flush(); }
function Ch (line 81) | Ch Take() { RAPIDJSON_ASSERT(false); }
function Tell (line 82) | size_t Tell() const { RAPIDJSON_ASSERT(false); return 0; }
function Ch (line 123) | Ch Take() { Ch c = current_; current_ = takeFunc_(*is_); return c; }
function Put (line 127) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function Flush (line 128) | void Flush() { RAPIDJSON_ASSERT(false); }
function Ch (line 129) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function PutEnd (line 130) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
function DetectType (line 137) | void DetectType() {
type Ch (line 185) | typedef Ch (*TakeFunc)(InputByteStream& is);
function Put (line 226) | void Put(Ch c) { putFunc_(*os_, c); }
function Flush (line 227) | void Flush() { os_->Flush(); }
function Ch (line 231) | Ch Take() { RAPIDJSON_ASSERT(false); }
function Tell (line 232) | size_t Tell() const { RAPIDJSON_ASSERT(false); return 0; }
function PutBOM (line 240) | void PutBOM() {
FILE: UAlbertaBot/Source/rapidjson/encodings.h
function RAPIDJSON_DIAG_PUSH (line 25) | RAPIDJSON_DIAG_PUSH
function GetRange (line 178) | static unsigned char GetRange(unsigned char c) {
type CharType (line 242) | typedef CharType Ch;
type CharType (line 373) | typedef CharType Ch;
type CharType (line 484) | typedef CharType Ch;
type UTFType (line 538) | enum UTFType {
type CharType (line 551) | typedef CharType Ch;
function Encode (line 558) | static void Encode(OutputStream& os, unsigned codepoint) {
function Decode (line 565) | static bool Decode(InputStream& is, unsigned* codepoint) {
function Validate (line 572) | static bool Validate(InputStream& is, OutputStream& os) {
function Transcode (line 589) | static bool Transcode(InputStream& is, OutputStream& os) {
function Validate (line 599) | static bool Validate(InputStream& is, OutputStream& os) {
function Transcode (line 608) | static bool Transcode(InputStream& is, OutputStream& os) {
function Validate (line 614) | static bool Validate(InputStream& is, OutputStream& os) {
FILE: UAlbertaBot/Source/rapidjson/error/en.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/error/error.h
function RAPIDJSON_NAMESPACE_BEGIN (line 50) | RAPIDJSON_NAMESPACE_BEGIN
type RAPIDJSON_ERROR_CHARTYPE (line 142) | typedef const RAPIDJSON_ERROR_CHARTYPE* (*GetParseErrorFunc)(ParseErrorC...
FILE: UAlbertaBot/Source/rapidjson/filereadstream.h
function RAPIDJSON_NAMESPACE_BEGIN (line 21) | RAPIDJSON_NAMESPACE_BEGIN
function Ch (line 44) | Ch Take() { Ch c = *current_; Read(); return c; }
function Put (line 48) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function Flush (line 49) | void Flush() { RAPIDJSON_ASSERT(false); }
function Ch (line 50) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function PutEnd (line 51) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
function Ch (line 54) | const Ch* Peek4() const {
FILE: UAlbertaBot/Source/rapidjson/filewritestream.h
function RAPIDJSON_NAMESPACE_BEGIN (line 21) | RAPIDJSON_NAMESPACE_BEGIN
function Put (line 35) | void Put(char c) {
function PutN (line 42) | void PutN(char c, size_t n) {
function Flush (line 58) | void Flush() {
function Peek (line 66) | char Peek() const { RAPIDJSON_ASSERT(false); return 0; }
function Tell (line 68) | size_t Tell() const { RAPIDJSON_ASSERT(false); return 0; }
function PutEnd (line 70) | size_t PutEnd(char*) { RAPIDJSON_ASSERT(false); return 0; }
function PutN (line 85) | inline void PutN(FileWriteStream& stream, char c, size_t n) {
FILE: UAlbertaBot/Source/rapidjson/internal/biginteger.h
function RAPIDJSON_NAMESPACE_BEGIN (line 24) | RAPIDJSON_NAMESPACE_BEGIN
function Difference (line 176) | bool Difference(const BigInteger& rhs, BigInteger* out) const {
function Compare (line 198) | int Compare(const BigInteger& rhs) const {
function Type (line 210) | Type GetDigit(size_t index) const { RAPIDJSON_ASSERT(index < count_); re...
function PushBack (line 224) | void PushBack(Type digit) {
function ParseUint64 (line 229) | static uint64_t ParseUint64(const char* begin, const char* end) {
function MulAdd64 (line 239) | static uint64_t MulAdd64(uint64_t a, uint64_t b, uint64_t k, uint64_t* o...
FILE: UAlbertaBot/Source/rapidjson/internal/diyfp.h
function RAPIDJSON_DIAG_PUSH (line 33) | RAPIDJSON_DIAG_PUSH
type uint128 (line 72) | __extension__ typedef unsigned __int128 uint128;
function DiyFp (line 113) | DiyFp NormalizeBoundary() const {
function NormalizedBoundaries (line 124) | void NormalizedBoundaries(DiyFp* minus, DiyFp* plus) const {
function ToDouble (line 133) | double ToDouble() const {
function DiyFp (line 220) | inline DiyFp GetCachedPower(int e, int* K) {
function DiyFp (line 234) | inline DiyFp GetCachedPower10(int exp, int *outExp) {
FILE: UAlbertaBot/Source/rapidjson/internal/dtoa.h
function RAPIDJSON_DIAG_PUSH (line 30) | RAPIDJSON_DIAG_PUSH
function DigitGen (line 59) | inline void DigitGen(const DiyFp& W, const DiyFp& Mp, uint64_t delta, ch...
function Grisu2 (line 110) | inline void Grisu2(double value, char* buffer, int* length, int* K) {
FILE: UAlbertaBot/Source/rapidjson/internal/ieee754.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/itoa.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/meta.h
function RAPIDJSON_NAMESPACE_BEGIN (line 34) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/pow10.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/stack.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/strfunc.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/internal/strtod.h
function RAPIDJSON_NAMESPACE_BEGIN (line 24) | RAPIDJSON_NAMESPACE_BEGIN
FILE: UAlbertaBot/Source/rapidjson/memorystream.h
function RAPIDJSON_NAMESPACE_BEGIN (line 20) | RAPIDJSON_NAMESPACE_BEGIN
function Ch (line 40) | Ch Take() { return (src_ == end_) ? '\0' : *src_++; }
function Ch (line 43) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function Put (line 44) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function Flush (line 45) | void Flush() { RAPIDJSON_ASSERT(false); }
function PutEnd (line 46) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
function Ch (line 49) | const Ch* Peek4() const {
FILE: UAlbertaBot/Source/rapidjson/msinttypes/inttypes.h
type imaxdiv_t (line 57) | typedef struct {
function _inline (line 286) | static
FILE: UAlbertaBot/Source/rapidjson/msinttypes/stdint.h
type int_least8_t (line 140) | typedef int8_t int_least8_t;
type int_least16_t (line 141) | typedef int16_t int_least16_t;
type int_least32_t (line 142) | typedef int32_t int_least32_t;
type int_least64_t (line 143) | typedef int64_t int_least64_t;
type uint_least8_t (line 144) | typedef uint8_t uint_least8_t;
type uint_least16_t (line 145) | typedef uint16_t uint_least16_t;
type uint_least32_t (line 146) | typedef uint32_t uint_least32_t;
type uint_least64_t (line 147) | typedef uint64_t uint_least64_t;
type int_fast8_t (line 150) | typedef int8_t int_fast8_t;
type int_fast16_t (line 151) | typedef int16_t int_fast16_t;
type int_fast32_t (line 152) | typedef int32_t int_fast32_t;
type int_fast64_t (line 153) | typedef int64_t int_fast64_t;
type uint_fast8_t (line 154) | typedef uint8_t uint_fast8_t;
type uint_fast16_t (line 155) | typedef uint16_t uint_fast16_t;
type uint_fast32_t (line 156) | typedef uint32_t uint_fast32_t;
type uint_fast64_t (line 157) | typedef uint64_t uint_fast64_t;
type intmax_t (line 169) | typedef int64_t intmax_t;
type uintmax_t (line 170) | typedef uint64_t uintmax_t;
FILE: UAlbertaBot/Source/rapidjson/pointer.h
type PointerParseErrorCode (line 29) | enum PointerParseErrorCode {
type typename (line 74) | typedef typename EncodingType::Ch Ch;
type Token (line 89) | struct Token {
function Token (line 306) | const Token* GetTokens() const { return tokens_; }
function ValueType (line 487) | const ValueType* Get(const ValueType& root) const { return Get(const_cas...
function Erase (line 682) | bool Erase(ValueType& root) const {
function NeedPercentEncode (line 757) | bool NeedPercentEncode(Ch c) const {
function Parse (line 767) | void Parse(const Ch* source, size_t length) {
function class (line 945) | class PercentDecodeStream {
function Put (line 991) | void Put(char c) { // UTF-8 must be byte
type GenericPointer (line 1012) | typedef GenericPointer<Value> Pointer;
function typename (line 1049) | typename T::ValueType* GetValueByPointer(const T& root, const GenericPoi...
function typename (line 1059) | typename T::ValueType* GetValueByPointer(const T& root, const CharType(&...
FILE: UAlbertaBot/Source/rapidjson/prettywriter.h
function Null (line 65) | bool Null() { PrettyPrefix(kNullType); return Base::Wr...
function Bool (line 66) | bool Bool(bool b) { PrettyPrefix(b ? kTrueType : kFalseType); ...
function Int (line 67) | bool Int(int i) { PrettyPrefix(kNumberType); return Base::Wr...
function Uint (line 68) | bool Uint(unsigned u) { PrettyPrefix(kNumberType); return Base::Wr...
function Int64 (line 69) | bool Int64(int64_t i64) { PrettyPrefix(kNumberType); return Base::Wr...
function Uint64 (line 70) | bool Uint64(uint64_t u64) { PrettyPrefix(kNumberType); return Base::Wr...
function Double (line 71) | bool Double(double d) { PrettyPrefix(kNumberType); return Base::Wr...
function StartObject (line 85) | bool StartObject() {
function StartArray (line 111) | bool StartArray() {
function String (line 141) | bool String(const Ch* str) { return String(str, internal::StrLen(str)); }
function Key (line 142) | bool Key(const Ch* str) { return Key(str, internal::StrLen(str)); }
function WriteIndent (line 187) | void WriteIndent() {
FILE: UAlbertaBot/Source/rapidjson/rapidjson.h
type STATIC_ASSERTION_FAILURE (line 355) | struct STATIC_ASSERTION_FAILURE
function RAPIDJSON_NAMESPACE_BEGIN (line 497) | RAPIDJSON_NAMESPACE_BEGIN
type typename (line 572) | typedef typename Encoding::Ch Ch;
function Ch (line 577) | Ch Take() { return *src_++; }
function Ch (line 580) | Ch* PutBegin() { RAPIDJSON_ASSERT(false); return 0; }
function Put (line 581) | void Put(Ch) { RAPIDJSON_ASSERT(false); }
function Flush (line 582) | void Flush() { RAPIDJSON_ASSERT(false); }
function PutEnd (line 583) | size_t PutEnd(Ch*) { RAPIDJSON_ASSERT(false); return 0; }
type GenericStringStream (line 595) | typedef GenericStringStream<UTF8<> > StringStream;
type typename (line 606) | typedef typename Encoding::Ch Ch;
function Ch (line 611) | Ch Peek() { return *src_; }
function Ch (line 612) | Ch Take() { return *src_++; }
function Tell (line 613) | size_t Tell() { return static_cast<size_t>(src_ - head_); }
function Put (line 616) | void Put(Ch c) { RAPIDJSON_ASSERT(dst_ != 0); *dst_++ = c; }
function Ch (line 618) | Ch* PutBegin() { return dst_ = src_; }
function PutEnd (line 619) | size_t PutEnd(Ch* begin) { return static_cast<size_t>(dst_ - begin); }
function Flush (line 620) | void Flush() {}
function Ch (line 622) | Ch* Push(size_t count) { Ch* begin = dst_; dst_ += count; return begin; }
function Pop (line 623) | void Pop(size_t count) { dst_ -= count; }
type GenericInsituStringStream (line 636) | typedef GenericInsituStringStream<UTF8<> > InsituStringStream;
type Type (line 642) | enum Type {
FILE: UAlbertaBot/Source/rapidjson/reader.h
function RAPIDJSON_DIAG_PUSH (line 37) | RAPIDJSON_DIAG_PUSH
type ParseFlag (line 136) | enum ParseFlag {
type typename (line 182) | typedef typename Encoding::Ch Ch;
type typename (line 184) | typedef typename internal::SelectIf<internal::IsSame<Derived, void>, Bas...
function Default (line 186) | bool Default() { return true; }
function Null (line 187) | bool Null() { return static_cast<Override&>(*this).Default(); }
function Bool (line 188) | bool Bool(bool) { return static_cast<Override&>(*this).Default(); }
function Int (line 189) | bool Int(int) { return static_cast<Override&>(*this).Default(); }
function Uint (line 190) | bool Uint(unsigned) { return static_cast<Override&>(*this).Default(); }
function Int64 (line 191) | bool Int64(int64_t) { return static_cast<Override&>(*this).Default(); }
function Uint64 (line 192) | bool Uint64(uint64_t) { return static_cast<Override&>(*this).Default(); }
function Double (line 193) | bool Double(double) { return static_cast<Override&>(*this).Default(); }
function String (line 194) | bool String(const Ch*, SizeType, bool) { return static_cast<Override&>(*...
function StartObject (line 195) | bool StartObject() { return static_cast<Override&>(*this).Default(); }
function Key (line 196) | bool Key(const Ch* str, SizeType len, bool copy) { return static_cast<Ov...
function EndObject (line 197) | bool EndObject(SizeType) { return static_cast<Override&>(*this).Default(...
function StartArray (line 198) | bool StartArray() { return static_cast<Override&>(*this).Default(); }
function EndArray (line 199) | bool EndArray(SizeType) { return static_cast<Override&>(*this).Default(); }
function namespace (line 205) | namespace internal {
function SkipWhitespace (line 344) | inline void SkipWhitespace(InsituStringStream& is) {
function SkipWhitespace (line 349) | inline void SkipWhitespace(StringStream& is) {
function ClearStack (line 453) | void ClearStack() { stack_.Clear(); }
type ClearStackOnExit (line 456) | struct ClearStackOnExit {
function RAPIDJSON_FORCEINLINE (line 618) | RAPIDJSON_FORCEINLINE void Put(Ch c) {
function Ch (line 623) | Ch* Pop() {
function RAPIDJSON_FORCEINLINE (line 736) | RAPIDJSON_FORCEINLINE Ch TakePush() { return is.Take(); }
function RAPIDJSON_FORCEINLINE (line 737) | RAPIDJSON_FORCEINLINE Ch Take() { return is.Take(); }
function Tell (line 738) | size_t Tell() { return is.Tell(); }
function Length (line 739) | size_t Length() { return 0; }
function RAPIDJSON_FORCEINLINE (line 755) | RAPIDJSON_FORCEINLINE Ch TakePush() {
function Length (line 760) | size_t Length() { return stackStream.Length(); }
type IterativeParsingState (line 1002) | enum IterativeParsingState {
type Token (line 1028) | enum Token {
function RAPIDJSON_FORCEINLINE (line 1047) | RAPIDJSON_FORCEINLINE Token Tokenize(Ch c) {
function RAPIDJSON_FORCEINLINE (line 1074) | RAPIDJSON_FORCEINLINE IterativeParsingState Predict(IterativeParsingStat...
function IterativeParsingState (line 1241) | IterativeParsingState Transit(IterativeParsingState src, Token token, It...
type GenericReader (line 1440) | typedef GenericReader<UTF8<>, UTF8<> > Reader;
FILE: UAlbertaBot/Source/rapidjson/writer.h
function RAPIDJSON_DIAG_PUSH (line 31) | RAPIDJSON_DIAG_PUSH
function Null (line 108) | bool Null() { Prefix(kNullType); return WriteNull(); }
function Bool (line 109) | bool Bool(bool b) { Prefix(b ? kTrueType : kFalseType); return...
function Int (line 110) | bool Int(int i) { Prefix(kNumberType); return WriteInt(i); }
function Uint (line 111) | bool Uint(unsigned u) { Prefix(kNumberType); return WriteUint(u); }
function Int64 (line 112) | bool Int64(int64_t i64) { Prefix(kNumberType); return WriteInt64(i64...
function Uint64 (line 113) | bool Uint64(uint64_t u64) { Prefix(kNumberType); return WriteUint64(u6...
function Double (line 120) | bool Double(double d) { Prefix(kNumberType); return WriteDouble(d); }
function StartObject (line 134) | bool StartObject() {
function StartArray (line 153) | bool StartArray() {
function String (line 175) | bool String(const Ch* str) { return String(str, internal::StrLen(str)); }
function Key (line 176) | bool Key(const Ch* str) { return Key(str, internal::StrLen(str)); }
type Level (line 182) | struct Level {
function WriteNull (line 190) | bool WriteNull() {
function WriteBool (line 194) | bool WriteBool(bool b) {
function WriteInt (line 204) | bool WriteInt(int i) {
function WriteUint (line 212) | bool WriteUint(unsigned u) {
function WriteInt64 (line 220) | bool WriteInt64(int64_t i64) {
function WriteUint64 (line 228) | bool WriteUint64(uint64_t u64) {
function WriteDouble (line 236) | bool WriteDouble(double d) {
function WriteString (line 244) | bool WriteString(const Ch* str, SizeType length) {
function WriteStartObject (line 312) | bool WriteStartObject() { os_->Put('{'); return true; }
function WriteEndObject (line 313) | bool WriteEndObject() { os_->Put('}'); return true; }
function WriteStartArray (line 314) | bool WriteStartArray() { os_->Put('['); return true; }
function WriteEndArray (line 315) | bool WriteEndArray() { os_->Put(']'); return true; }
function Prefix (line 317) | void Prefix(Type type) {
function WriteInt (line 350) | bool Writer<StringBuffer>::WriteInt(int i) {
function WriteUint (line 358) | inline bool Writer<StringBuffer>::WriteUint(unsigned u) {
function WriteInt64 (line 366) | inline bool Writer<StringBuffer>::WriteInt64(int64_t i64) {
function WriteUint64 (line 374) | inline bool Writer<StringBuffer>::WriteUint64(uint64_t u) {
function WriteDouble (line 382) | inline bool Writer<StringBuffer>::WriteDouble(double d) {
FILE: UAlbertaBot/Source/research/CombatData.cpp
function CombatUnitData (line 89) | CombatUnitData & CombatData::getUnitData(BWAPI::Unit * unit)
FILE: UAlbertaBot/Source/research/GameHistory.hpp
class UnitFrameData (line 8) | class UnitFrameData
method UnitFrameData (line 24) | UnitFrameData(BWAPI::Unit unit)
method writeToFile (line 39) | void writeToFile(std::ofstream & fout) const
class GameFrame (line 51) | class GameFrame
method GameFrame (line 58) | GameFrame()
method getFrame (line 70) | int getFrame() const
method writeToFile (line 75) | void writeToFile(std::ofstream & fout) const
class GameMap (line 86) | class GameMap
method GameMap (line 94) | GameMap()
method writeToFile (line 108) | void writeToFile(std::ofstream & fout) const
class GameHistory (line 114) | class GameHistory
method GameHistory (line 122) | GameHistory()
method setFrameSkip (line 126) | void setFrameSkip(int frames)
method onFrame (line 131) | void onFrame()
method writeToFile (line 139) | void writeToFile(const std::string & filename) const
FILE: UAlbertaBot/Source/research/MapGrid.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/combatpredictor/CombatPredictor.cpp
function CombatPredictor (line 383) | CombatPredictor & CombatPredictor::Instance()
FILE: UAlbertaBot/Source/research/combatpredictor/CombatPredictor.h
function namespace (line 18) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLCombatCommander.h
function namespace (line 8) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLManager.cpp
function HLManager (line 17) | HLManager & HLManager::Instance()
FILE: UAlbertaBot/Source/research/hlsearch/HLManager.h
function namespace (line 6) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLSearch.cpp
function HLMove (line 232) | HLMove HLSearch::getBestMove()
FILE: UAlbertaBot/Source/research/hlsearch/HLSearch.h
function namespace (line 8) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLSquad.cpp
type NodeComp (line 150) | struct NodeComp{
method NodeComp (line 152) | NodeComp(const std::unordered_map<BWTA::Region *, int> &g_score, const...
function reconstruct_path (line 166) | std::list<BWTA::Region*> reconstruct_path(const std::unordered_map<BWTA:...
FILE: UAlbertaBot/Source/research/hlsearch/HLSquad.h
function namespace (line 6) | namespace UAlbertaBot{
FILE: UAlbertaBot/Source/research/hlsearch/HLState.cpp
function HLSquad (line 769) | HLSquad & HLState::getUnassignedSquad(int playerId)
FILE: UAlbertaBot/Source/research/hlsearch/HLState.h
function namespace (line 10) | namespace UAlbertaBot{
function class (line 48) | class HLState
function getHash (line 107) | unsigned int getHash(int depth, const std::array < HLMove, 2 > &moves) ...
function getHash (line 120) | unsigned int getHash(int depth, const HLMove &move) const
FILE: UAlbertaBot/Source/research/hlsearch/HLStatistics.h
function namespace (line 5) | namespace UAlbertaBot{
FILE: UAlbertaBot/Source/research/hlsearch/HLStrategyManager.cpp
function StrategyManager (line 19) | StrategyManager & StrategyManager::Instance()
type stat (line 86) | struct stat
function MetaPairVector (line 427) | const MetaPairVector StrategyManager::getBuildOrderGoal()
function MetaPairVector (line 460) | MetaPairVector StrategyManager::getBuildOrderGoal(
function MetaPairVector (line 518) | const MetaPairVector StrategyManager::getProtossDragoonsBuildOrderGoal()...
function MetaPairVector (line 527) | MetaPairVector StrategyManager::getProtossDragoonsBuildOrderGoal(
function MetaPairVector (line 584) | const MetaPairVector StrategyManager::getProtossDarkTemplarBuildOrderGoa...
function MetaPairVector (line 593) | MetaPairVector StrategyManager::getProtossDarkTemplarBuildOrderGoal(
function MetaPairVector (line 660) | const MetaPairVector StrategyManager::getProtossZealotRushBuildOrderGoal...
function MetaPairVector (line 669) | MetaPairVector StrategyManager::getProtossZealotRushBuildOrderGoal(
function MetaPairVector (line 732) | const MetaPairVector StrategyManager::getProtossHighLevelSearchBuildOrde...
function MetaPairVector (line 743) | MetaPairVector StrategyManager::getProtossHighLevelSearchBuildOrderGoal(
function MetaPairVector (line 895) | const MetaPairVector StrategyManager::getTerranBuildOrderGoal() const
function MetaPairVector (line 904) | MetaPairVector StrategyManager::getTerranBuildOrderGoal(
function MetaPairVector (line 926) | const MetaPairVector StrategyManager::getZergBuildOrderGoal() const
function MetaPairVector (line 935) | MetaPairVector StrategyManager::getZergBuildOrderGoal(const HLUnitData &...
FILE: UAlbertaBot/Source/research/hlsearch/HLStrategyManager.h
function namespace (line 13) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLTranspositionTable.cpp
function HLEntry (line 55) | const HLEntry& HLTranspositionTable::lookup(const HLState &state, int de...
function HLEntry (line 59) | const HLEntry& HLTranspositionTable::lookup(const HLState &state)
function HLCacheEntry (line 78) | const HLCacheEntry& HLCacheTable::lookup(const HLState &state, int depth...
FILE: UAlbertaBot/Source/research/hlsearch/HLTranspositionTable.h
function namespace (line 4) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/hlsearch/HLUnitData.h
function namespace (line 4) | namespace UAlbertaBot{
FILE: UAlbertaBot/Source/research/sparcraft/SparCraftManager.h
function namespace (line 9) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/sparcraft/UnitCommandData.h
function namespace (line 8) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/sparcraft/UnitCommandManager.cpp
function UnitCommandManager (line 8) | UnitCommandManager & UnitCommandManager::Instance()
function UnitCommandData (line 25) | UnitCommandData & UnitCommandManager::getUnitData(BWAPI::UnitInterface* ...
FILE: UAlbertaBot/Source/research/sparcraft/UnitCommandManager.h
function namespace (line 7) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/visualizer/Display.cpp
function BOOST_FOREACH (line 188) | BOOST_FOREACH(BWTA::Region * region, BWTA::getRegions())
function BOOST_FOREACH (line 202) | BOOST_FOREACH(BWTA::Region * region, BWTA::getRegions())
function float3 (line 243) | float3 Display::GetWalkTileColor(int x, int y) const
FILE: UAlbertaBot/Source/research/visualizer/Display.h
type float3 (line 4) | struct float3
function float3 (line 14) | float3 operator - (const float3 & v) const { return float3(x-v.x,y-v.y,z...
function float3 (line 15) | float3 operator * (const float3 & v) const { return float3(x*v.x,y*v.y,z...
function float3 (line 16) | float3 operator / (const float3 & v) const { return float3(x/v.x,y/v.y,z...
function operator (line 18) | operator float * () { return &x; }
function class (line 25) | class Display
FILE: UAlbertaBot/Source/research/visualizer/EnhancedInterface.hpp
type UAlbertaBot (line 7) | namespace UAlbertaBot
class ControlGroupData (line 9) | class ControlGroupData
method ControlGroupData (line 15) | ControlGroupData() {}
method update (line 18) | void update()
method onUnitDestroy (line 24) | void onUnitDestroy(BWAPI::UnitInterface* unit)
method newControlGroup (line 34) | void newControlGroup(BWAPI::Key k)
method addToControlGroup (line 49) | void addToControlGroup(BWAPI::Key k)
method controlGroupExists (line 67) | bool controlGroupExists(BWAPI::Key k)
class EnhancedInterface (line 83) | class EnhancedInterface
method EnhancedInterface (line 95) | EnhancedInterface()
method onUnitDestroy (line 143) | void onUnitDestroy(BWAPI::UnitInterface* unit)
method update (line 148) | void update()
method processKeyboardEvents (line 160) | void processKeyboardEvents()
method processMouseEvents (line 171) | void processMouseEvents()
method mouseEvent (line 179) | void mouseEvent(BWAPI::MouseButton m)
method keyboardEvent (line 196) | void keyboardEvent(BWAPI::Key k)
method validKeyEvent (line 241) | bool validKeyEvent()
method drawSelectedUnits (line 246) | void drawSelectedUnits(int x, int y)
method drawUnit (line 281) | void drawUnit(BWAPI::UnitInterface* unit, int x, int y)
method getUnitColor (line 317) | BWAPI::Color getUnitColor(BWAPI::UnitInterface* unit)
method getBoxWidth (line 350) | double getBoxWidth(BWAPI::UnitInterface* unit)
FILE: UAlbertaBot/Source/research/visualizer/ReplayVisualizer.h
function namespace (line 12) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/research/visualizer/Visualizer.cpp
function Visualizer (line 5) | Visualizer & Visualizer::Instance()
function IDType (line 57) | const IDType Visualizer::getPlayer(BWAPI::UnitInterface* unit) const
function IDType (line 62) | const IDType Visualizer::getPlayer(BWAPI::PlayerInterface * player) const
FILE: UAlbertaBot/Source/research/visualizer/Visualizer.h
function namespace (line 9) | namespace UAlbertaBot
FILE: UAlbertaBot/Source/stardraft/BaseBorderFinder.hpp
type BaseBorder (line 11) | struct BaseBorder
method contains (line 18) | bool contains(int x, int y) const
type Cluster (line 24) | struct Cluster
class BaseBorderFinder (line 31) | class BaseBorderFinder
type Direction (line 33) | struct Direction { char x = 0,
Condensed preview — 639 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (6,787K chars).
[
{
"path": ".gitignore",
"chars": 258,
"preview": "*.sdf\n*.suo\n*.opensdf\n*.user\n*.dll\n*.exe\n*.o\nUAlbertaBot/UAB_ErrorLog.txt\nUAlbertaBot/UAB_ErrorLog.txt\n*.pd_\nUAlbertaBot"
},
{
"path": "BOSS/.gitignore",
"chars": 351,
"preview": "VisualStudio/Release\nVisualStudio/Debug\nVisualStudio/ipch\nVisualStudio/*.txt\nVisualStudio/*.vsp\nemscripten/*.js\nemscript"
},
{
"path": "BOSS/Makefile",
"chars": 644,
"preview": "SHELL=C:/Windows/System32/cmd.exe\nCC=em++\nCFLAGS=-O3 -Wno-tautological-constant-out-of-range-compare\nLDFLAGS=-O3 -s ALLO"
},
{
"path": "BOSS/Qt/BOSSGUI.pro",
"chars": 601,
"preview": "#-------------------------------------------------\n#\n# Project created by QtCreator 2016-04-20T14:07:30\n#\n#-------------"
},
{
"path": "BOSS/Qt/main.cpp",
"chars": 339,
"preview": "#include \"mainwindow.h\"\n#include <QApplication>\n\n#include \"BOSS.h\"\n\nint main(int argc, char *argv[])\n{\n srand(time(NU"
},
{
"path": "BOSS/Qt/mainwindow.cpp",
"chars": 18941,
"preview": "#include \"mainwindow.h\"\n#include \"ui_mainwindow.h\"\n#include <QMessageBox>\n#include <QFileDialog>\n\n#include \"BOSS.h\"\n#inc"
},
{
"path": "BOSS/Qt/mainwindow.h",
"chars": 1702,
"preview": "#ifndef MAINWINDOW_H\n#define MAINWINDOW_H\n\n#include <QMainWindow>\n#include <QListWidget>\n#include \"BOSS.h\"\n\nnamespace Pl"
},
{
"path": "BOSS/Qt/mainwindow.ui",
"chars": 14101,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ui version=\"4.0\">\n <class>MainWindow</class>\n <widget class=\"QMainWindow\" name=\""
},
{
"path": "BOSS/VisualStudio/BOSS.sln",
"chars": 1891,
"preview": "\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 2013\nVisualStudioVersion = 12.0.40629.0\nMi"
},
{
"path": "BOSS/VisualStudio/BOSS.vcxproj",
"chars": 9512,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"12.0\" xmlns=\"http://schemas.micros"
},
{
"path": "BOSS/VisualStudio/BOSS.vcxproj.filters",
"chars": 9206,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "BOSS/VisualStudio/BOSS_combatsearch.vcxproj",
"chars": 5810,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microso"
},
{
"path": "BOSS/VisualStudio/BOSS_main.psess",
"chars": 3083,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<VSPerformanceSession Version=\"1.00\">\n <Options>\n <Solution>BOSS.sln</Soluti"
},
{
"path": "BOSS/VisualStudio/BOSS_main.vcxproj",
"chars": 5778,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microso"
},
{
"path": "BOSS/VisualStudio/BOSS_main.vcxproj.filters",
"chars": 1620,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "BOSS/bin/buildorders/Protoss_DarkTemplarRush.txt",
"chars": 413,
"preview": "Protoss\nProtoss_Probe\nProtoss_Probe\nProtoss_Probe\nProtoss_Probe\nProtoss_Pylon\nProtoss_Probe\nProtoss_Gateway\nProtoss_Prob"
},
{
"path": "BOSS/bin/buildorders/Protoss_DragoonRange.txt",
"chars": 455,
"preview": "Protoss\nProtoss_Probe\nProtoss_Probe\nProtoss_Probe\nProtoss_Probe\nProtoss_Pylon\nProtoss_Probe\nProtoss_Probe\nProtoss_Gatewa"
},
{
"path": "BOSS/bin/buildorders/Terran_TankPush.txt",
"chars": 430,
"preview": "Terran\nTerran_SCV\nTerran_SCV\nTerran_SCV\nTerran_SCV\nTerran_SCV\nTerran_Supply_Depot\nTerran_SCV\nTerran_Barracks\nTerran_Refi"
},
{
"path": "BOSS/bin/buildorders/Zerg_2HatchHydra.txt",
"chars": 531,
"preview": "Zerg\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Overlord\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Hatchery"
},
{
"path": "BOSS/bin/buildorders/Zerg_3HatchMuta.txt",
"chars": 668,
"preview": "Zerg\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Overlord\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Drone\nZerg_Hatchery"
},
{
"path": "BOSS/bin/images/command_icons/fix.bat",
"chars": 68,
"preview": "for %%f in (*.png) DO ( convert \"%%f\" -strip -resize 32x32! \"%%f\" )\n"
},
{
"path": "BOSS/bin/images/units/fix.bat",
"chars": 53,
"preview": "for %%f in (*.png) DO ( convert \"%%f\" -strip \"%%f\" )\n"
},
{
"path": "BOSS/emscripten/BOSS.html",
"chars": 102595,
"preview": "<!doctype html>\n<html lang=\"en-us\">\n <head>\n <meta charset=\"utf-8\">\n <meta http-equiv=\"Content-Type\" content=\"tex"
},
{
"path": "BOSS/emscripten/BOSS2.html",
"chars": 4652,
"preview": "<!doctype html>\n<html lang=\"en-us\">\n <head>\n <script async type=\"text/javascript\" src=\"BOSS.js\"></script>\n <scrip"
},
{
"path": "BOSS/emscripten/config.html",
"chars": 528,
"preview": "<!doctype html>\n<html lang=\"en-us\">\n <head>\n <script type=\"text/javascript\" src=\"jquery-1.11.2.min.js\"></script>\n "
},
{
"path": "BOSS/emscripten/config.txt",
"chars": 4268,
"preview": "{\n \"Experiments\" : \n { \n \"Visualize Build Orders\" : \n { \n \"run\" : true, \n "
},
{
"path": "BOSS/make_windows.bat",
"chars": 209,
"preview": "@echo off\n\nset original_dir=%CD%\n\necho.\necho *********************************************\necho * COMPILING BOSS WITH EM"
},
{
"path": "BOSS/source/ActionInProgress.cpp",
"chars": 4615,
"preview": "#include \"ActionInProgress.h\"\n\nusing namespace BOSS;\n\nActionsInProgress::ActionsInProgress() \n : _numProgress(Constan"
},
{
"path": "BOSS/source/ActionInProgress.h",
"chars": 1698,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include <string.h>\n#include <queue>\n#include <algorithm>\n#include <limits>\n\n#include "
},
{
"path": "BOSS/source/ActionSet.cpp",
"chars": 912,
"preview": "#include \"ActionSet.h\"\n\nusing namespace BOSS;\n\nActionSet::ActionSet()\n{\n\n}\n\nconst size_t ActionSet::size() const\n{\n r"
},
{
"path": "BOSS/source/ActionSet.h",
"chars": 616,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Constants.h\"\n#include \"Array.hpp\"\n#include \"ActionType.h\"\n\nnamespace BOSS\n{\n"
},
{
"path": "BOSS/source/ActionType.cpp",
"chars": 19295,
"preview": "#include \"ActionType.h\"\n\n#include \"ActionTypeData.h\"\n#include \"ActionSet.h\"\n\nusing namespace BOSS;\n\nActionType::ActionTy"
},
{
"path": "BOSS/source/ActionType.h",
"chars": 3870,
"preview": "#pragma once\n\n#include \"Common.h\"\n\nnamespace BOSS\n{\n\nclass PrerequisiteSet;\n\nclass ActionType\n{\n const ActionID\t _"
},
{
"path": "BOSS/source/ActionTypeData.cpp",
"chars": 21849,
"preview": "#include \"ActionTypeData.h\"\n#include \"ActionType.h\"\n\nusing namespace BOSS;\n\n// default constructor, should never be call"
},
{
"path": "BOSS/source/ActionTypeData.h",
"chars": 5743,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Array.hpp\"\n#include \"PrerequisiteSet.h\"\n#include <set>\n\nnamespace BOSS\n{\n "
},
{
"path": "BOSS/source/Array.hpp",
"chars": 5569,
"preview": "#pragma once\n#include \"BOSSAssert.h\"\n#include \"Common.h\"\n#include <algorithm>\n\nnamespace BOSS\n{\ntemplate <class T,size_t"
},
{
"path": "BOSS/source/BOSS.cpp",
"chars": 913,
"preview": "#include \"BOSS.h\"\n\nnamespace BOSS\n{\n void init()\n {\n ActionTypeData::Init();\n ActionTypes::init();\n "
},
{
"path": "BOSS/source/BOSS.h",
"chars": 497,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"CombatSearch.h\"\n#include \"CombatSearch_Integral.h\"\n#i"
},
{
"path": "BOSS/source/BOSSAssert.cpp",
"chars": 1546,
"preview": "#include \"BOSSAssert.h\"\n#include \"BOSSException.h\"\n\nusing namespace BOSS;\n\nnamespace BOSS\n{\nnamespace Assert\n{\n const"
},
{
"path": "BOSS/source/BOSSAssert.h",
"chars": 1031,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include <cstdarg>\n#include \"BOSSException.h\"\n\n#include <ctime>\n\nnamespace BOSS\n{\n\ncla"
},
{
"path": "BOSS/source/BOSSException.cpp",
"chars": 638,
"preview": "#include \"BOSSException.h\"\n\nusing namespace BOSS;\n\nBOSSException::BOSSException(std::string ss) \n : _s(ss) \n , _ha"
},
{
"path": "BOSS/source/BOSSException.h",
"chars": 391,
"preview": "#pragma once\n\n#include \"Common.h\"\n\nnamespace BOSS\n{\nclass BOSSException : public std::exception\n{\n std::string _s;\n "
},
{
"path": "BOSS/source/BOSSExperiments.cpp",
"chars": 1766,
"preview": "#include \"BOSSExperiments.h\"\n\n#include \"CombatSearchExperiment.h\"\n#include \"BOSSPlotBuildOrders.h\"\n\nusing namespace BOSS"
},
{
"path": "BOSS/source/BOSSExperiments.h",
"chars": 405,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"JSONTools.h\"\n#include \"rapidjson/rapidjson.h\"\n#include \"rapidjson/document.h"
},
{
"path": "BOSS/source/BOSSLogger.cpp",
"chars": 554,
"preview": "#include \"BOSSLogger.h\"\n\nnamespace BOSS\n{\nnamespace Logger\n{\n void LogAppendToFile(const std::string & logFile, const"
},
{
"path": "BOSS/source/BOSSLogger.h",
"chars": 276,
"preview": "#pragma once\n\n#include <string>\n#include <iostream>\n#include <fstream>\n\nnamespace BOSS\n{\nnamespace Logger \n{\n void Lo"
},
{
"path": "BOSS/source/BOSSParameters.cpp",
"chars": 2761,
"preview": "#include \"BOSSParameters.h\"\n\nusing namespace BOSS;\n\nBOSSParameters::BOSSParameters()\n{\n\n}\n\nBOSSParameters & BOSSParamete"
},
{
"path": "BOSS/source/BOSSParameters.h",
"chars": 834,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n#include \"JSONTools.h\"\n#include \"rapidjson/rapidjson.h\"\n#include \"rapidjson/document.h\"\n"
},
{
"path": "BOSS/source/BOSSPlotBuildOrders.cpp",
"chars": 1884,
"preview": "#include \"BOSSPlotBuildOrders.h\"\n#include \"BuildOrderPlot.h\"\n#include \"BOSSParameters.h\"\n\nusing namespace BOSS;\n\nBOSSPlo"
},
{
"path": "BOSS/source/BOSSPlotBuildOrders.h",
"chars": 479,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n#include \"JSONTools.h\"\n#include \"rapidjson/rapidjson.h\"\n#include \"rapidjson/document.h\"\n"
},
{
"path": "BOSS/source/BOSS_main.cpp",
"chars": 1423,
"preview": "#include \"BOSS.h\"\n#include \"BOSSParameters.h\"\n#include \"BOSSExperiments.h\"\n\n#include \"CImg/CImg.h\"\n\nusing namespace BOSS"
},
{
"path": "BOSS/source/BaseTypes.h",
"chars": 250,
"preview": "#pragma once\n\nnamespace BOSS\n{\n typedef\t\tint ResourceCountType;\n typedef \tint SupplyCountType;\n typedef"
},
{
"path": "BOSS/source/BuildOrder.cpp",
"chars": 5404,
"preview": "#include \"BuildOrder.h\"\n\nusing namespace BOSS;\n\nBuildOrder::BuildOrder()\n : _typeCount(128, 0)\n{\n\n}\n\nvoid BuildOrder:"
},
{
"path": "BOSS/source/BuildOrder.h",
"chars": 1683,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n#include \"GameState.h\"\n\nnamespace BOSS\n{\n\nclass BuildOrder\n{\n "
},
{
"path": "BOSS/source/BuildOrderPlot.cpp",
"chars": 10343,
"preview": "#include \"BuildOrderPlot.h\"\n#include \"Eval.h\"\n\nusing namespace BOSS;\n\nBuildOrderPlot::BuildOrderPlot(const GameState & i"
},
{
"path": "BOSS/source/BuildOrderPlot.h",
"chars": 1706,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n#include \"GameState.h\"\n#include \"BuildOrder.h\"\n#include \"Posit"
},
{
"path": "BOSS/source/BuildOrderSearchGoal.cpp",
"chars": 4483,
"preview": "#include \"BuildOrderSearchGoal.h\"\n\nusing namespace BOSS;\n\nBuildOrderSearchGoal::BuildOrderSearchGoal(const RaceID race)\n"
},
{
"path": "BOSS/source/BuildOrderSearchGoal.h",
"chars": 1331,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n#include \"ActionSet.h\"\n#include \"GameState.h\"\n\nnamespace BOSS\n"
},
{
"path": "BOSS/source/BuildOrderTester.cpp",
"chars": 5221,
"preview": "#include \"BuildOrderTester.h\"\n#include \"JSONTools.h\"\n#include \"NaiveBuildOrderSearch.h\"\n\nusing namespace BOSS;\n\nBuildOrd"
},
{
"path": "BOSS/source/BuildOrderTester.h",
"chars": 345,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n\nnamespace BOSS\n{\n\nnamespace BuildOrderTester\n{\n GameState GetStartState(const RaceID"
},
{
"path": "BOSS/source/BuildingData.cpp",
"chars": 6918,
"preview": "#include \"BuildingData.h\"\n\nusing namespace BOSS;\n\nBuildingStatus::BuildingStatus() \n: _type(ActionTypes::None)\n, _timeRe"
},
{
"path": "BOSS/source/BuildingData.h",
"chars": 2074,
"preview": "#pragma once\n\n#include \"Common.h\"\n\n#include <string.h>\n#include <queue>\n#include <algorithm>\n\n#include \"PrerequisiteSet."
},
{
"path": "BOSS/source/CImg/CImg.h",
"chars": 2720181,
"preview": "/*\n #\n # File : CImg.h\n # ( C++ header file )\n #\n # Description : The C++ Template I"
},
{
"path": "BOSS/source/CombatSearch.cpp",
"chars": 4587,
"preview": "#include \"CombatSearch.h\"\n\nusing namespace BOSS;\n\n\n// function which is called to do the actual search\nvoid CombatSearch"
},
{
"path": "BOSS/source/CombatSearch.h",
"chars": 1388,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Timer.hpp\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n#include \"CombatSearchP"
},
{
"path": "BOSS/source/CombatSearchExperiment.cpp",
"chars": 6063,
"preview": "#include \"CombatSearchExperiment.h\"\n#include \"BOSSParameters.h\"\n\nusing namespace BOSS;\n\nCombatSearchExperiment::CombatSe"
},
{
"path": "BOSS/source/CombatSearchExperiment.h",
"chars": 604,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n#include \"JSONTools.h\"\n#include <memory>\n#include \"rapidjson/rapidjson.h\"\n#include \"rapi"
},
{
"path": "BOSS/source/CombatSearchParameters.cpp",
"chars": 4311,
"preview": "#include \"CombatSearchParameters.h\"\n\nusing namespace BOSS;\n\n// alternate constructor\nCombatSearchParameters::CombatSearc"
},
{
"path": "BOSS/source/CombatSearchParameters.h",
"chars": 6098,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"BuildOrder.h\"\n\nnamespace BOSS\n{\n\nclass CombatSearchPa"
},
{
"path": "BOSS/source/CombatSearchResults.cpp",
"chars": 847,
"preview": "#include \"CombatSearchResults.h\"\n\nusing namespace BOSS;\n\nCombatSearchResults::CombatSearchResults()\n : solved(false)\n"
},
{
"path": "BOSS/source/CombatSearchResults.h",
"chars": 1227,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"PrerequisiteSet.h\"\n#include \"GameState.h\"\n#include \"ActionType.h\"\n#include \""
},
{
"path": "BOSS/source/CombatSearch_BestResponse.cpp",
"chars": 1682,
"preview": "#include \"CombatSearch_BestResponse.h\"\n\nusing namespace BOSS;\n\nCombatSearch_BestResponse::CombatSearch_BestResponse(cons"
},
{
"path": "BOSS/source/CombatSearch_BestResponse.h",
"chars": 888,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Timer.hpp\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n#include \"CombatSearch."
},
{
"path": "BOSS/source/CombatSearch_BestResponseData.cpp",
"chars": 2969,
"preview": "#include \"CombatSearch_BestResponseData.h\"\n\nusing namespace BOSS;\n\nCombatSearch_BestResponseData::CombatSearch_BestRespo"
},
{
"path": "BOSS/source/CombatSearch_BestResponseData.h",
"chars": 1113,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n\nnamespace BOSS\n{\n "
},
{
"path": "BOSS/source/CombatSearch_Bucket.cpp",
"chars": 1585,
"preview": "#include \"CombatSearch_Bucket.h\"\n\nusing namespace BOSS;\n\nCombatSearch_Bucket::CombatSearch_Bucket(const CombatSearchPara"
},
{
"path": "BOSS/source/CombatSearch_Bucket.h",
"chars": 610,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Timer.hpp\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n#include \"CombatSearch."
},
{
"path": "BOSS/source/CombatSearch_BucketData.cpp",
"chars": 3591,
"preview": "#include \"CombatSearch_BucketData.h\"\n\nusing namespace BOSS;\n\n\n// Combat Search Bucketing\n// \n// Computes and stores the "
},
{
"path": "BOSS/source/CombatSearch_BucketData.h",
"chars": 957,
"preview": "#pragma once\n\n#include \"BuildOrder.h\"\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"Eval.h\"\n\nnamespace BOSS\n{\n\ncl"
},
{
"path": "BOSS/source/CombatSearch_Integral.cpp",
"chars": 1446,
"preview": "#include \"CombatSearch_Integral.h\"\n\nusing namespace BOSS;\n\nCombatSearch_Integral::CombatSearch_Integral(const CombatSear"
},
{
"path": "BOSS/source/CombatSearch_Integral.h",
"chars": 619,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Timer.hpp\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n#include \"CombatSearch."
},
{
"path": "BOSS/source/CombatSearch_IntegralData.cpp",
"chars": 2124,
"preview": "#include \"CombatSearch_IntegralData.h\"\n\nusing namespace BOSS;\n\nCombatSearch_IntegralData::CombatSearch_IntegralData()\n "
},
{
"path": "BOSS/source/CombatSearch_IntegralData.h",
"chars": 1023,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"Eval.h\"\n#include \"BuildOrder.h\"\n\nnamespace BOSS\n{\n "
},
{
"path": "BOSS/source/Common.h",
"chars": 253,
"preview": "#pragma once\n\n#include \"BWAPI.h\"\n#include <stdio.h>\n#include <math.h>\n#include <fstream>\n#include <fstream>\n#include <io"
},
{
"path": "BOSS/source/Constants.cpp",
"chars": 1829,
"preview": "#include \"Constants.h\"\n#include \"Common.h\"\n\nnamespace BOSS\n{\n namespace Races\n {\n RaceID GetRaceID(BWAPI::R"
},
{
"path": "BOSS/source/Constants.h",
"chars": 1460,
"preview": "#pragma once\n\n#include \"BWAPI.h\"\n#include \"BaseTypes.h\"\n\nnamespace BOSS\n{\n namespace Constants\n {\n \n "
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchParameters.cpp",
"chars": 3526,
"preview": "#include \"DFBB_BuildOrderSearchParameters.h\"\n\nusing namespace BOSS;\n\n// alternate constructor\nDFBB_BuildOrderSearchParam"
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchParameters.h",
"chars": 4766,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"BuildOrderSearchGoal.h\"\n#include \"GameState.h\"\n#include \"DFBB_BuildOrderSear"
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchResults.cpp",
"chars": 647,
"preview": "#include \"DFBB_BuildOrderSearchResults.h\"\n\nusing namespace BOSS;\n\nDFBB_BuildOrderSearchResults::DFBB_BuildOrderSearchRes"
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchResults.h",
"chars": 931,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n#include \"GameState.h\"\n#include \"BuildOrder.h\"\n\nnamespace BOSS"
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchSaveState.cpp",
"chars": 1277,
"preview": "//#include \"DFBB_BuildOrderSearchSaveState.h\"\n//\n//using namespace BOSS;\n//\n//DFBBSearchSaveState::DFBBSearchSaveState()"
},
{
"path": "BOSS/source/DFBB_BuildOrderSearchSaveState.h",
"chars": 504,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n\n#define MAX_SAVE_ACTIONS 100\n\nnamespace BOSS\n{\nclass DFBB_Bui"
},
{
"path": "BOSS/source/DFBB_BuildOrderSmartSearch.cpp",
"chars": 12013,
"preview": "#include \"DFBB_BuildOrderSmartSearch.h\"\n\nusing namespace BOSS;\n\nDFBB_BuildOrderSmartSearch::DFBB_BuildOrderSmartSearch(c"
},
{
"path": "BOSS/source/DFBB_BuildOrderSmartSearch.h",
"chars": 1305,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"DFBB_BuildOrderStackSearch.h\"\n#include \"Timer.hpp\"\n\nn"
},
{
"path": "BOSS/source/DFBB_BuildOrderStackSearch.cpp",
"chars": 8728,
"preview": "#include \"DFBB_BuildOrderStackSearch.h\"\n\nusing namespace BOSS;\n\nDFBB_BuildOrderStackSearch::DFBB_BuildOrderStackSearch(c"
},
{
"path": "BOSS/source/DFBB_BuildOrderStackSearch.h",
"chars": 2070,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"ActionType.h\"\n#include \"DFBB_BuildOrderSearchResults.h\"\n#include \"DFBB_Build"
},
{
"path": "BOSS/source/Eval.cpp",
"chars": 3073,
"preview": "#include \"Eval.h\"\n\nnamespace BOSS\n{\nnamespace Eval\n{\n double ArmyCompletedResourceSum(const GameState & state)\n {\n"
},
{
"path": "BOSS/source/Eval.h",
"chars": 410,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"BuildOrder.h\"\n\nnamespace BOSS\n{\nnamespace Eval\n{\n "
},
{
"path": "BOSS/source/GameState.cpp",
"chars": 42949,
"preview": "#include \"GameState.h\"\n\nusing namespace BOSS;\n\n\nGameState::GameState(const RaceID r)\n : _race (r)\n "
},
{
"path": "BOSS/source/GameState.h",
"chars": 5341,
"preview": "#pragma once\n\n#include \"Common.h\"\n\n#include \"ActionInProgress.h\"\n#include \"BuildingData.h\"\n#include \"UnitData.h\"\n#includ"
},
{
"path": "BOSS/source/GraphViz.hpp",
"chars": 3244,
"preview": "#pragma once\n\n#include <iostream>\n#include <vector>\n#include <fstream>\n#include <sstream>\n\nnamespace BOSS\n{\nnamespace Gr"
},
{
"path": "BOSS/source/HatcheryData.cpp",
"chars": 2498,
"preview": "#include \"HatcheryData.h\"\n\nusing namespace BOSS;\n\nHatchery::Hatchery(const UnitCountType & numLarva) \n\t: _numLarva(numLa"
},
{
"path": "BOSS/source/HatcheryData.h",
"chars": 1160,
"preview": "#pragma once\n\n#include \"Common.h\"\n\n#include <string.h>\n#include <queue>\n#include <algorithm>\n\n#include \"PrerequisiteSet."
},
{
"path": "BOSS/source/JSONTools.cpp",
"chars": 5478,
"preview": "#include \"JSONTools.h\"\n\nusing namespace BOSS;\n\nstd::string JSONTools::ReadJsonFile(const std::string & filename)\n{\n\n "
},
{
"path": "BOSS/source/JSONTools.h",
"chars": 917,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n#include \"Common.h\"\n#include \"BuildOrder.h\"\n#include \"rapidjson/rapidjson.h\"\n#include \"r"
},
{
"path": "BOSS/source/NaiveBuildOrderSearch.cpp",
"chars": 12487,
"preview": "#include \"NaiveBuildOrderSearch.h\"\n\nusing namespace BOSS;\n\nNaiveBuildOrderSearch::NaiveBuildOrderSearch(const GameState "
},
{
"path": "BOSS/source/NaiveBuildOrderSearch.h",
"chars": 541,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"BuildOrderSearchGoal.h\"\n#include \"GameState.h\"\n#include \"BuildOrder.h\"\n#incl"
},
{
"path": "BOSS/source/Position.hpp",
"chars": 3558,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include <sstream>\n\ntypedef int PositionType;\n\nnamespace BOSS\n{\nclass Position\n{\n\n "
},
{
"path": "BOSS/source/PrerequisiteSet.cpp",
"chars": 2336,
"preview": "#include \"PrerequisiteSet.h\"\n\nusing namespace BOSS;\n\nActionCountPair::ActionCountPair()\n : _count(0)\n{\n\n}\n\nActionCoun"
},
{
"path": "BOSS/source/PrerequisiteSet.h",
"chars": 1135,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Constants.h\"\n#include \"Array.hpp\"\n#include \"ActionType.h\"\n\nnamespace BOSS\n{\n"
},
{
"path": "BOSS/source/StarCraftGUI.cpp",
"chars": 9882,
"preview": "#include \"StarCraftGUI.h\"\n#include \"BWAPI.h\"\n#include <cassert>\n#include <iostream>\n\nusing namespace BOSS;\n\nconst size_t"
},
{
"path": "BOSS/source/StarCraftGUI.h",
"chars": 2195,
"preview": "#pragma once\n\n#include \"BWAPI.h\"\n#include \"GUITools.h\"\n#include \"Timer.hpp\"\n#include \"Position.hpp\"\n#include <vector>\n\n#"
},
{
"path": "BOSS/source/Timer.hpp",
"chars": 2758,
"preview": "//////////////////////////////////////////////////////////////////////////////\n// Timer.hpp\n// =======\n// High Resolutio"
},
{
"path": "BOSS/source/Tools.cpp",
"chars": 15338,
"preview": "#include \"Tools.h\"\n#include \"BuildOrderSearchGoal.h\"\n#include \"NaiveBuildOrderSearch.h\"\n\nusing namespace BOSS;\n\n#include"
},
{
"path": "BOSS/source/Tools.h",
"chars": 1142,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"GameState.h\"\n#include \"BuildOrderSearchGoal.h\"\n#include \"BuildOrder.h\"\n\nname"
},
{
"path": "BOSS/source/UnitData.cpp",
"chars": 11389,
"preview": "#include \"UnitData.h\"\n\nusing namespace BOSS;\n\nUnitData::UnitData(const RaceID race)\n : _race(race)\n , _numUnits(Co"
},
{
"path": "BOSS/source/UnitData.h",
"chars": 4219,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"Array.hpp\"\n#include \"BuildingData.h\"\n#include \"ActionType.h\"\n#include \"Actio"
},
{
"path": "BOSS/source/deprecated/BOSSAssert.cpp",
"chars": 1417,
"preview": "#include \"BOSSAssert.h\"\n\nusing namespace BOSS;\nchar BOSS_LOGFILE[100] { \"BOSS_error_log.txt\" };\n\nnamespace BOSS\n{\nnamesp"
},
{
"path": "BOSS/source/deprecated/BOSSAssert.h",
"chars": 1220,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include <cstdio>\n#include <cstdarg>\n#include \"BOSSLogger.h\"\n#include <sstream>\n#inclu"
},
{
"path": "BOSS/source/deprecated/BOSSVisExperiment.cpp",
"chars": 16327,
"preview": "#include \"BOSSVisExperiment.h\"\n\n#include \"GUI.h\"\n\nusing namespace BOSS;\n\nBOSSVisExperiment::BOSSVisExperiment()\n : _f"
},
{
"path": "BOSS/source/deprecated/BOSSVisExperiment.h",
"chars": 1216,
"preview": "#pragma once\n\n#include \"BOSS.h\"\n#include \"GUITools.h\"\n#include \"JSONTools.h\"\n#include \"rapidjson/rapidjson.h\"\n#include \""
},
{
"path": "BOSS/source/deprecated/GUI.cpp",
"chars": 9193,
"preview": "#include \"GUI.h\"\n\nusing namespace BOSS;\n\n#define GUI_INITIAL_WIDTH 1920 \n#define GUI_INITIAL_HEIGHT 1080\n\n#define BOSS_"
},
{
"path": "BOSS/source/deprecated/GUI.h",
"chars": 2646,
"preview": "#pragma once\n\n#include \"Common.h\"\n#include \"BOSS.h\"\n#include \"GUITools.h\"\n\n#include <SDL.h>\n#undef main\n\n#include <SDL_o"
},
{
"path": "BOSS/source/deprecated/GUITools.cpp",
"chars": 4966,
"preview": "#include \"GUITools.h\"\n#include \"StarCraftGUI.h\"\n\nnamespace BOSS\n{\nnamespace GUITools\n{\n void DrawString(const Positio"
},
{
"path": "BOSS/source/deprecated/GUITools.h",
"chars": 1057,
"preview": "#pragma once\n\n#include \"Common.h\"\n\n#include \"Position.hpp\"\n#include <SDL.h>\n#include <SDL_opengl.h>\n\nnamespace BOSS\n{\n "
},
{
"path": "BOSS/source/deprecated/bwapidata/README.txt",
"chars": 332,
"preview": "bwapidata\n----------------\n\nThis is used to compile SparCraft in a linux environment without having to worry about recon"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/AIModule.cpp",
"chars": 940,
"preview": "#include <BWAPI/AIModule.h>\nnamespace BWAPI\n{\n AIModule::AIModule()\n { }\n AIModule::~AIModule()\n { }\n void AIModule"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/AIModule.h",
"chars": 4422,
"preview": "#pragma once\n#include <iostream>\n#include <string>\n#include <BWAPI/Position.h>\nnamespace BWAPI\n{\n class Unit;\n class P"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Bitmap.h",
"chars": 551,
"preview": "#include <BWAPI/Color.h>\n#pragma once\n\nnamespace BWAPI\n{\n class BitmapProxy\n {\n public:\n BitmapProxy(unsigned char"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Bullet.h",
"chars": 794,
"preview": "#pragma once\n\n#include <BWAPI/BulletType.h>\n#include <BWAPI/Position.h>\n\nnamespace BWAPI\n{\n class Player;\n class Unit;"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/BulletType.h",
"chars": 2539,
"preview": "#pragma once\n#include <string>\n#include <set>\n\nnamespace BWAPI\n{\n class BulletType\n {\n public:\n BulletType();\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/BulletData.h",
"chars": 348,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n struct BulletData\n {\n int id;\n int player;\n int type;\n int source;\n in"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/BulletImpl.h",
"chars": 866,
"preview": "#pragma once\n#include <BWAPI.h>\n#include \"BulletData.h\"\n#include <set>\n#include <string>\n\nnamespace BWAPI\n{\n class Play"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Client.h",
"chars": 456,
"preview": "#pragma once\n#include <windows.h>\n#include \"GameData.h\"\n#include \"GameImpl.h\"\n#include \"ForceImpl.h\"\n#include \"PlayerImp"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Command.h",
"chars": 301,
"preview": "#pragma once\n#include \"CommandType.h\"\n\nnamespace BWAPIC\n{\n struct Command\n {\n Command(CommandType::Enum _commandTyp"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/CommandType.h",
"chars": 405,
"preview": "#pragma once\n/**\n * Used in UnitCommand\n */\n\nnamespace BWAPIC\n{\n namespace CommandType\n {\n enum Enum\n {\n N"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Event.h",
"chars": 171,
"preview": "#pragma once\n\n#include <BWAPI\\Event.h>\n#include <BWAPI\\EventType.h>\n\nnamespace BWAPIC\n{ \n struct Event\n {\n BWAPI::E"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ForceData.h",
"chars": 81,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n struct ForceData\n {\n char name[32];\n };\n}\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ForceImpl.h",
"chars": 415,
"preview": "#pragma once\n#include <BWAPI.h>\n#include \"ForceData.h\"\n#include <set>\n#include <string>\n\nnamespace BWAPI\n{\n class Game;"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/GameData.h",
"chars": 2456,
"preview": "#pragma once\n\n#include \"UnitCommand.h\"\n#include \"ForceData.h\"\n#include \"PlayerData.h\"\n#include \"UnitData.h\"\n#include \"Bu"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/GameImpl.h",
"chars": 8755,
"preview": "#pragma once\n#include <BWAPI.h>\n#include \"GameData.h\"\n#include \"Client.h\"\n#include \"Shape.h\"\n#include \"Command.h\"\n#inclu"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/PlayerData.h",
"chars": 698,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n struct PlayerData\n {\n char name[25];\n int race;\n int type;\n int force;"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/PlayerImpl.h",
"chars": 1858,
"preview": "#pragma once\n#include <BWAPI.h>\n#include \"PlayerData.h\"\n#include <set>\n#include <string>\n\nnamespace BWAPI\n{\n class Unit"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/Shape.h",
"chars": 574,
"preview": "#pragma once\n#include \"ShapeType.h\"\n\nnamespace BWAPIC\n{\n struct Shape\n {\n Shape(ShapeType::Enum _shapeType, int _ct"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/ShapeType.h",
"chars": 225,
"preview": "#pragma once\n/**\n * Used in UnitCommand\n */\n\nnamespace BWAPIC\n{\n namespace ShapeType\n {\n enum Enum\n {\n Non"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitCommand.h",
"chars": 246,
"preview": "#pragma once\n\n#include <BWAPI.h>\n\n/**\n * UnitOrder contains a single whole order\n */\n\nnamespace BWAPIC\n{\n struct UnitCo"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitData.h",
"chars": 1898,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n struct UnitData\n {\n int clearanceLevel;\n int id;\n int player;\n int type;\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client/UnitImpl.h",
"chars": 7732,
"preview": "#pragma once\n#include <BWAPI.h>\n#include \"UnitData.h\"\n#include <set>\n#include <string>\n\nnamespace BWAPI\n{\n class Player"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Client.h",
"chars": 541,
"preview": "#pragma once\n#include <BWAPI/Client/Client.h>\n#include <BWAPI/Client/Command.h>\n#include <BWAPI/Client/CommandType.h>\n#i"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Color.h",
"chars": 1690,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n // TODO: Add color palette image and info about text c"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Constants.h",
"chars": 205,
"preview": "#pragma once\nnamespace BWAPI\n{\n /** Used for converting between TilePosition coordinates and Position coordinates. */\n "
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/CoordinateType.h",
"chars": 335,
"preview": "#pragma once\nnamespace BWAPI\n{\n namespace CoordinateType\n {\n enum Enum\n {\n Screen = 1, /**< (0,0) corres"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/DamageType.h",
"chars": 1354,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class DamageType\n {\n public:\n DamageType();\n "
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Error.h",
"chars": 5617,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class UnitType;\n\n /** Functions in BWAPI may set an e"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Event.h",
"chars": 1133,
"preview": "#pragma once\n#include <BWAPI/EventType.h>\n#include <BWAPI/Player.h>\n#include <BWAPI/Unit.h>\n#include <BWAPI/Position.h>\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/EventType.h",
"chars": 400,
"preview": "#pragma once\nnamespace BWAPI\n{\n namespace EventType\n {\n enum Enum\n {\n MatchStart,\n MatchEnd,\n Mat"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/ExplosionType.h",
"chars": 2026,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class ExplosionType\n {\n public:\n ExplosionTyp"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Flag.h",
"chars": 384,
"preview": "#pragma once\nnamespace BWAPI\n{\n namespace Flag\n {\n enum Enum\n {\n /** Enable to get information about all un"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Force.h",
"chars": 563,
"preview": "#pragma once\n#include <set>\n#include <string>\n\nnamespace BWAPI\n{\n class Player;\n\n /** The Force class is used to get i"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Game.h",
"chars": 20028,
"preview": "#pragma once\n\n#include <list>\n#include <map>\n#include <set>\n#include <vector>\n\n#include <BWAPI/Color.h>\n#include <BWAPI/"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/GameType.h",
"chars": 1670,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class GameType\n {\n public:\n GameType();\n "
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Input.h",
"chars": 6798,
"preview": "#pragma once\nnamespace BWAPI\n{\n enum MouseButton\n {\n M_LEFT = 0,\n M_RIGHT = 1,\n M_MIDDLE = 2,\n };\n\n enum"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Latency.h",
"chars": 279,
"preview": "#pragma once\nnamespace BWAPI\n{\n namespace Latency\n {\n enum Enum\n {\n SinglePlayer = 2,\n LanLow "
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Order.h",
"chars": 6928,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n /** To get detailed information about what a unit is d"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Player.h",
"chars": 5624,
"preview": "#pragma once\n#include <set>\n#include <string>\n\n#include <BWAPI/TilePosition.h>\n#include <BWAPI/Race.h>\n#include <BWAPI/T"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/PlayerType.h",
"chars": 1524,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class PlayerType\n {\n public:\n PlayerType();\n "
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Position.h",
"chars": 1092,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n class TilePosition;\n\n // TODO: Add doxygen documentation\n class Position\n {\n pub"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Race.h",
"chars": 2448,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class UnitType;\n class Race\n {\n public:\n Rac"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/TechType.h",
"chars": 3634,
"preview": "#pragma once\n\n#include <string>\n#include <set>\n#include <BWAPI/Race.h>\nnamespace BWAPI\n{\n class UnitType;\n class Weapo"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/TilePosition.h",
"chars": 1116,
"preview": "#pragma once\n\nnamespace BWAPI\n{\n class Position;\n\n // TODO: Add doxygen documentation\n class TilePosition\n {\n pub"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/Unit.h",
"chars": 31525,
"preview": "#pragma once\n\n#include <list>\n\n#include <BWAPI/Order.h>\n#include <BWAPI/TechType.h>\n#include <BWAPI/UpgradeType.h>\n#incl"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/UnitCommand.h",
"chars": 3078,
"preview": "#pragma once\n\n#include <BWAPI/UnitCommandType.h>\n#include <BWAPI/Position.h>\n#include <BWAPI/TilePosition.h>\n#include <B"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/UnitCommandType.h",
"chars": 3244,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class UnitCommandType\n {\n public:\n UnitComman"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/UnitSizeType.h",
"chars": 1350,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class UnitSizeType\n {\n public:\n UnitSizeType("
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/UnitType.h",
"chars": 20351,
"preview": "#pragma once\n#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/Race.h>\n#include <BWAPI/UnitSizeType.h>\n\nna"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/UpgradeType.h",
"chars": 4584,
"preview": "#pragma once\n#include <string>\n#include <set>\n#include <BWAPI/Race.h>\nnamespace BWAPI\n{\n class UnitType;\n class Upgrad"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI/WeaponType.h",
"chars": 7980,
"preview": "#pragma once\n#include <string>\n#include <set>\nnamespace BWAPI\n{\n class TechType;\n class UpgradeType;\n class DamageTyp"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI.cpp",
"chars": 525,
"preview": "#include <BWAPI.h>\n\nnamespace BWAPI\n{\n Game * Broodwar;\n}\n\nvoid BWAPI::BWAPI_init()\n{\n BWAPI::Races::init();\n BWAPI"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BWAPI.h",
"chars": 1327,
"preview": "#include <BWAPI/AIModule.h>\n#include <BWAPI/Bullet.h>\n#include <BWAPI/BulletType.h>\n#include <BWAPI/Color.h>\n#include <B"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Bitmap.cpp",
"chars": 671,
"preview": "#include <BWAPI/Bitmap.h>\n\nnamespace BWAPI\n{\n BitmapProxy::BitmapProxy(unsigned char *data, unsigned short width, unsig"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/BulletType.cpp",
"chars": 7770,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/BulletType.h>\n#include <Util/Foreach.h>\n\n#include \"Commo"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Color.cpp",
"chars": 6755,
"preview": "#include <BWAPI/Color.h>\n#include <list>\n#include <Util/Foreach.h>\nnamespace BWAPI\n{\n int palette[256] = {0x000000, 0x0"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Common.cpp",
"chars": 286,
"preview": "#include \"Common.h\"\n\nnamespace BWAPI\n{\n void fixName(std::string *name)\n {\n for(unsigned int j = 0; j < name->lengt"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Common.h",
"chars": 88,
"preview": "#pragma once\n#include <string>\n\nnamespace BWAPI\n{\n void fixName(std::string *name);\n\n}\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/DamageType.cpp",
"chars": 2722,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/DamageType.h>\n#include <Util/Foreach.h>\n\n#include \"Commo"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Error.cpp",
"chars": 5297,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/Error.h>\n#include <Util/Foreach.h>\n\n#include \"Common.h\"\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Event.cpp",
"chars": 2647,
"preview": "#include <BWAPI/Event.h>\nnamespace BWAPI\n{\n Event::Event() : type(EventType::None), position(Positions::None), text(\"\")"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/ExplosionType.cpp",
"chars": 5631,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/ExplosionType.h>\n#include <Util/Foreach.h>\n\n#include \"Co"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/GameType.cpp",
"chars": 4022,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/GameType.h>\n#include <Util/Foreach.h>\n\n#include \"Common."
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Order.cpp",
"chars": 22762,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/Order.h>\n#include <Util/Foreach.h>\n\n#include \"Common.h\"\n"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/PlayerType.cpp",
"chars": 3424,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/PlayerType.h>\n#include <Util/Foreach.h>\n\n#include \"Commo"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Position.cpp",
"chars": 5077,
"preview": "#include <BWAPI/Constants.h>\n#include <BWAPI/TilePosition.h>\n#include <BWAPI/Position.h>\n#include <BWAPI/Game.h>\n\n#inclu"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Race.cpp",
"chars": 4346,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/Race.h>\n#include <BWAPI/UnitType.h>\n#include <Util/Forea"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/TechType.cpp",
"chars": 15201,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/TechType.h>\n#include <BWAPI/Race.h>\n#include <BWAPI/Unit"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/TilePosition.cpp",
"chars": 4785,
"preview": "#include <BWAPI/Constants.h>\n#include <BWAPI/TilePosition.h>\n#include <BWAPI/Position.h>\n#include <BWAPI/Game.h>\n\n#inclu"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/UnitCommandType.cpp",
"chars": 9152,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/UnitCommandType.h>\n#include <Util/Foreach.h>\n\n#include \""
},
{
"path": "BOSS/source/deprecated/bwapidata/include/UnitSizeType.cpp",
"chars": 2674,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/UnitSizeType.h>\n#include <Util/Foreach.h>\n\n#include \"Com"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/UnitType.cpp",
"chars": 119135,
"preview": "#include <string>\n#include <map>\n#include <set>\n\n#include <Util/Foreach.h>\n\n#include <BWAPI/UnitType.h>\n#include <BWAPI/"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/UpgradeType.cpp",
"chars": 29953,
"preview": "#include <string>\n#include <map>\n#include <set>\n#include <BWAPI/UpgradeType.h>\n#include <BWAPI/Race.h>\n#include <BWAPI/U"
},
{
"path": "BOSS/source/deprecated/bwapidata/include/Util/Bitmask.h",
"chars": 941,
"preview": "#pragma once\n/** Custom help classes not connected with the project */\nnamespace Util\n{\n /** \n * Representation of li"
}
]
// ... and 439 more files (download for full content)
About this extraction
This page contains the full source code of the davechurchill/ualbertabot GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 639 files (6.2 MB), approximately 1.7M tokens, and a symbol index with 2332 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.