diff --git a/.gitattributes b/.gitattributes index 55b43e4ba7..2037909dbd 100644 --- a/.gitattributes +++ b/.gitattributes @@ -116,3 +116,11 @@ *.webm filter=lfs diff=lfs merge=lfs -text *.wem filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text +*.tbscene filter=lfs diff=lfs merge=lfs -text +*.spp filter=lfs diff=lfs merge=lfs -text +Gems/Atom/Tools/MaterialEditor/Assets/MaterialEditor/ViewportModels/Hermanubis.fbx filter=lfs diff=lfs merge=lfs -text +Gems/AtomLyIntegration/CommonFeatures/Assets/Objects/Lucy/Lucy_High.fbx filter=lfs diff=lfs merge=lfs -text +Gems/AtomLyIntegration/CommonFeatures/Assets/Objects/Lucy/Lucy_low.fbx filter=lfs diff=lfs merge=lfs -text +Gems/AtomLyIntegration/CommonFeatures/Assets/Objects/Lucy/.wip/marmoset_bake.tbscene filter=lfs diff=lfs merge=lfs -text +Gems/AtomLyIntegration/CommonFeatures/Assets/Objects/Lucy/.wip/Brass/brass_bake.spp filter=lfs diff=lfs merge=lfs -text +Gems/AtomLyIntegration/CommonFeatures/Assets/Objects/Lucy/.wip/stone/stone_bake.spp filter=lfs diff=lfs merge=lfs -text diff --git a/AutomatedTesting/Gem/PythonTests/CMakeLists.txt b/AutomatedTesting/Gem/PythonTests/CMakeLists.txt index a0d0bf29db..6f72d45893 100644 --- a/AutomatedTesting/Gem/PythonTests/CMakeLists.txt +++ b/AutomatedTesting/Gem/PythonTests/CMakeLists.txt @@ -400,3 +400,21 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED AND PAL_TRAIT_BUILD_HOST_TOOLS) #) endif() +## Smoke ## +if(PAL_TRAIT_BUILD_TESTS_SUPPORTED AND PAL_TRAIT_BUILD_HOST_TOOLS) + ly_add_pytest( + NAME AutomatedTesting::SmokeTest + TEST_SUITE smoke + TEST_SERIAL + PATH ${CMAKE_CURRENT_LIST_DIR}/smoke + TIMEOUT 1500 + RUNTIME_DEPENDENCIES + AZ::AssetProcessor + AZ::PythonBindingsExample + Legacy::Editor + AutomatedTesting.GameLauncher + AutomatedTesting.Assets + COMPONENT + Smoke + ) +endif() diff --git a/AutomatedTesting/Gem/PythonTests/smoke/Editor_NewExistingLevels_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/Editor_NewExistingLevels_Works.py new file mode 100644 index 0000000000..db0284f14c --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/Editor_NewExistingLevels_Works.py @@ -0,0 +1,147 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +Test Case Title: Create Test for UI apps- Editor +""" + + +class Tests(): + level_created = ("Level created", "Failed to create level") + entity_found = ("New Entity created in level", "Failed to create New Entity in level") + mesh_added = ("Mesh Component added", "Failed to add Mesh Component") + enter_game_mode = ("Game Mode successfully entered", "Failed to enter in Game Mode") + exit_game_mode = ("Game Mode successfully exited", "Failed to exit in Game Mode") + level_opened = ("Level opened successfully", "Failed to open level") + level_exported = ("Level exported successfully", "Failed to export level") + mesh_removed = ("Mesh Component removed", "Failed to remove Mesh Component") + entity_deleted = ("Entity deleted", "Failed to delete Entity") + level_edits_present = ("Level edits persist after saving", "Failed to save level edits after saving") + + +def Editor_NewExistingLevels_Works(): + """ + Summary: Perform the below operations on Editor + + 1) Launch & Close editor + 2) Create new level + 3) Saving and loading levels + 4) Level edits persist after saving + 5) Export Level + 6) Can switch to play mode (ctrl+g) and exit that + 7) Run editor python bindings test + 8) Create an Entity + 9) Delete an Entity + 10) Add a component to an Entity + + Expected Behavior: + All operations succeed and do not cause a crash + + Test Steps: + 1) Launch editor and Create a new level + 2) Create a new entity + 3) Add Mesh component + 4) Verify enter/exit game mode + 5) Save, Load and Export level + 6) Remove Mesh component + 7) Delete entity + 8) Open an existing level + 9) Create a new entity in an existing level + 10) Save, Load and Export an existing level and close editor + + Note: + - This test file must be called from the Lumberyard Editor command terminal + - Any passed and failed tests are written to the Editor.log file. + Parsing the file or running a log_monitor are required to observe the test results. + + :return: None + """ + + import os + import editor_python_test_tools.hydra_editor_utils as hydra + from editor_python_test_tools.utils import TestHelper as helper + from editor_python_test_tools.utils import Report + import azlmbr.bus as bus + import azlmbr.editor as editor + import azlmbr.legacy.general as general + import azlmbr.math as math + + # 1) Launch editor and Create a new level + helper.init_idle() + test_level_name = "temp_level" + general.create_level_no_prompt(test_level_name, 128, 1, 128, False) + helper.wait_for_condition(lambda: general.get_current_level_name() == test_level_name, 2.0) + Report.result(Tests.level_created, general.get_current_level_name() == test_level_name) + + # 2) Create a new entity + entity_position = math.Vector3(200.0, 200.0, 38.0) + new_entity = hydra.Entity("Entity1") + new_entity.create_entity(entity_position, []) + test_entity = hydra.find_entity_by_name("Entity1") + Report.result(Tests.entity_found, test_entity.IsValid()) + + # 3) Add Mesh component + new_entity.add_component("Mesh") + Report.result(Tests.mesh_added, hydra.has_components(new_entity.id, ["Mesh"])) + + # 4) Verify enter/exit game mode + helper.enter_game_mode(Tests.enter_game_mode) + helper.exit_game_mode(Tests.exit_game_mode) + + # 5) Save, Load and Export level + # Save Level + general.save_level() + # Open Level + general.open_level(test_level_name) + Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name) + # Export Level + general.export_to_engine() + level_pak_file = os.path.join("AutomatedTesting", "Levels", test_level_name, "level.pak") + Report.result(Tests.level_exported, os.path.exists(level_pak_file)) + + # 6) Remove Mesh component + new_entity.remove_component("Mesh") + Report.result(Tests.mesh_removed, not hydra.has_components(new_entity.id, ["Mesh"])) + + # 7) Delete entity + editor.ToolsApplicationRequestBus(bus.Broadcast, "DeleteEntityById", new_entity.id) + test_entity = hydra.find_entity_by_name("Entity1") + Report.result(Tests.entity_deleted, len(test_entity) == 0) + + # 8) Open an existing level + general.open_level(test_level_name) + Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name) + + # 9) Create a new entity in an existing level + entity_position = math.Vector3(200.0, 200.0, 38.0) + new_entity_2 = hydra.Entity("Entity2") + new_entity_2.create_entity(entity_position, []) + test_entity = hydra.find_entity_by_name("Entity2") + Report.result(Tests.entity_found, test_entity.IsValid()) + + # 10) Save, Load and Export an existing level + # Save Level + general.save_level() + # Open Level + general.open_level(test_level_name) + Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name) + entity_id = hydra.find_entity_by_name(new_entity_2.name) + Report.result(Tests.level_edits_present, entity_id == new_entity_2.id) + # Export Level + general.export_to_engine() + level_pak_file = os.path.join("AutomatedTesting", "Levels", test_level_name, "level.pak") + Report.result(Tests.level_exported, os.path.exists(level_pak_file)) + + +if __name__ == "__main__": + + from editor_python_test_tools.utils import Report + + Report.start_test(Editor_NewExistingLevels_Works) diff --git a/AutomatedTesting/Gem/PythonTests/smoke/__init__.py b/AutomatedTesting/Gem/PythonTests/smoke/__init__.py new file mode 100644 index 0000000000..79f8fa4422 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/__init__.py @@ -0,0 +1,10 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +""" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBuilder_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBuilder_Works.py new file mode 100644 index 0000000000..5381fd9fd8 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBuilder_Works.py @@ -0,0 +1,32 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - AssetBuilder +Launch AssetBuilder and Verify the help message +""" + +import os +import pytest +import subprocess + + +@pytest.mark.SUITE_smoke +class TestCLIToolAssetBuilderWorks(object): + def test_CLITool_AssetBuilder_Works(self, build_directory): + file_path = os.path.join(build_directory, "AssetBuilder") + help_message = "AssetBuilder is part of the Asset Processor" + # Launch AssetBuilder + output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10) + assert ( + len(output.stderr) == 0 and output.returncode == 0 + ), f"Error occurred while launching {file_path}: {output.stderr}" + # Verify help message + assert help_message in str(output.stdout), f"Help Message: {help_message} is not present" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBundlerBatch_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBundlerBatch_Works.py new file mode 100644 index 0000000000..fd69bb973f --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetBundlerBatch_Works.py @@ -0,0 +1,32 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - AssetBundlerBatch +Launch AssetBundlerBatch and Verify the help message +""" + +import os +import pytest +import subprocess + + +@pytest.mark.SUITE_smoke +class TestCLIToolAssetBundlerBatchWorks(object): + def test_CLITool_AssetBundlerBatch_Works(self, build_directory): + file_path = os.path.join(build_directory, "AssetBundlerBatch") + help_message = "Specifies the Seed List file to operate on by path" + # Launch AssetBundlerBatch + output = subprocess.run([file_path, "--help"], capture_output=True, timeout=10) + assert ( + len(output.stderr) == 0 and output.returncode == 0 + ), f"Error occurred while launching {file_path}: {output.stderr}" + # Verify help message + assert help_message in str(output.stdout), f"Help Message: {help_message} is not present" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetProcessorBatch_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetProcessorBatch_Works.py new file mode 100644 index 0000000000..c828800639 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AssetProcessorBatch_Works.py @@ -0,0 +1,26 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - AssetProcessorBatch +Launch AssetProcessorBatch and Shutdown AssetProcessorBatch without any crash +""" + +import pytest + + +@pytest.mark.parametrize("project", ["AutomatedTesting"]) +@pytest.mark.SUITE_smoke +class TestsCLIToolAssetProcessorBatchWorks(object): + def test_CLITool_AssetProcessorBatch_Works(self, workspace): + """ + Test Launching AssetProcessorBatch and verifies that is shuts down without issue + """ + workspace.asset_processor.batch_process() diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AzTestRunner_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AzTestRunner_Works.py new file mode 100644 index 0000000000..fd15c7701d --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_AzTestRunner_Works.py @@ -0,0 +1,34 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - AzTestRunner +Launch AzTestRunner and Verify the help message +""" + +import os +import pytest +import subprocess + + +@pytest.mark.SUITE_smoke +class TestCLIToolAzTestRunnerWorks(object): + def test_CLITool_AzTestRunner_Works(self, build_directory): + file_path = os.path.join(build_directory, "AzTestRunner") + help_message = "OKAY Symbol found: AzRunUnitTests" + # Launch AzTestRunner + output = subprocess.run( + [file_path, "AzTestRunner.Tests", "AzRunUnitTests", "--gtest_list_tests"], capture_output=True, timeout=10 + ) + assert ( + len(output.stderr) == 0 and output.returncode == 0 + ), f"Error occurred while launching {file_path}: {output.stderr}" + # Verify help message + assert help_message in str(output.stdout), f"Help Message: {help_message} is not present" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_PythonBindingsExample_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_PythonBindingsExample_Works.py new file mode 100644 index 0000000000..bef683537e --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_PythonBindingsExample_Works.py @@ -0,0 +1,32 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - PythonBindingsExample +Launch PythonBindingsExample and Verify the help message +""" + +import os +import pytest +import subprocess + + +@pytest.mark.SUITE_smoke +class TestCLIToolPythonBindingsExampleWorks(object): + def test_CLITool_PythonBindingsExample_Works(self, build_directory): + file_path = os.path.join(build_directory, "PythonBindingsExample") + help_message = "--help Prints the help text" + # Launch PythonBindingsExample + output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10) + assert ( + len(output.stderr) == 0 and output.returncode == 1 + ), f"Error occurred while launching {file_path}: {output.stderr}" + # Verify help message + assert help_message in str(output.stdout), f"Help Message: {help_message} is not present" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_SerializeContextTools_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_SerializeContextTools_Works.py new file mode 100644 index 0000000000..e63a00acf1 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_CLITool_SerializeContextTools_Works.py @@ -0,0 +1,32 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +CLI tool - SerializeContextTools +Launch SerializeContextTools and Verify the help message +""" + +import os +import pytest +import subprocess + + +@pytest.mark.SUITE_smoke +class TestCLIToolSerializeContextToolsWorks(object): + def test_CLITool_SerializeContextTools_Works(self, build_directory): + file_path = os.path.join(build_directory, "SerializeContextTools") + help_message = "Converts a file with an ObjectStream to the new JSON" + # Launch SerializeContextTools + output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10) + assert ( + len(output.stderr) == 0 and output.returncode == 0 + ), f"Error occurred while launching {file_path}: {output.stderr}" + # Verify help message + assert help_message in str(output.stdout), f"Help Message: {help_message} is not present" diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_Editor_NewExistingLevels_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_Editor_NewExistingLevels_Works.py new file mode 100644 index 0000000000..985740307f --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_Editor_NewExistingLevels_Works.py @@ -0,0 +1,32 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +""" + +import pytest +import os +from automatedtesting_shared.base import TestAutomationBase +import ly_test_tools.environment.file_system as file_system + + +@pytest.mark.SUITE_smoke +@pytest.mark.parametrize("launcher_platform", ["windows_editor"]) +@pytest.mark.parametrize("project", ["AutomatedTesting"]) +@pytest.mark.parametrize("level", ["temp_level"]) +class TestAutomation(TestAutomationBase): + def test_Editor_NewExistingLevels_Works(self, request, workspace, editor, level, project, launcher_platform): + def teardown(): + file_system.delete([os.path.join(workspace.paths.engine_root(), project, "Levels", level)], True, True) + + request.addfinalizer(teardown) + file_system.delete([os.path.join(workspace.paths.engine_root(), project, "Levels", level)], True, True) + + from . import Editor_NewExistingLevels_Works as test_module + + self._run_test(request, workspace, editor, test_module) diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_StaticTools_GenPakShaders_Works.py b/AutomatedTesting/Gem/PythonTests/smoke/test_StaticTools_GenPakShaders_Works.py new file mode 100644 index 0000000000..42cb3afb00 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_StaticTools_GenPakShaders_Works.py @@ -0,0 +1,44 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +Static tool scripts +Launch Static tool and Verify the help message +""" + +import os +import pytest +import subprocess +import sys + + +def verify_help_message(static_tool): + help_message = ["--help", "show this help message and exit"] + output = subprocess.run([sys.executable, static_tool, "-h"], capture_output=True) + assert ( + len(output.stderr) == 0 and output.returncode == 0 + ), f"Error occurred while launching {static_tool}: {output.stderr}" + # verify help message + for message in help_message: + assert message in str(output.stdout), f"Help Message: {message} is not present" + + +@pytest.mark.parametrize("project", ["AutomatedTesting"]) +@pytest.mark.SUITE_smoke +class TestStaticToolsGenPakShadersWorks(object): + def test_StaticTools_GenPakShaders_Works(self, editor): + static_tools = [ + os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "gen_shaders.py"), + os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "get_shader_list.py"), + os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "pak_shaders.py"), + ] + + for tool in static_tools: + verify_help_message(tool) diff --git a/AutomatedTesting/Gem/PythonTests/smoke/test_UIApps_AssetProcessor_CheckIdle.py b/AutomatedTesting/Gem/PythonTests/smoke/test_UIApps_AssetProcessor_CheckIdle.py new file mode 100644 index 0000000000..4b039adea8 --- /dev/null +++ b/AutomatedTesting/Gem/PythonTests/smoke/test_UIApps_AssetProcessor_CheckIdle.py @@ -0,0 +1,39 @@ +""" +All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or +its licensors. + +For complete copyright and license terms please see the LICENSE at the root of this +distribution (the "License"). All use of this software is governed by the License, +or, if provided, by the license below or the license accompanying this file. Do not +remove or modify any license notices. This file is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + +UI Apps: AssetProcessor +Open AssetProcessor, Wait until AssetProcessor is Idle +Close AssetProcessor. +""" + + +import pytest +from ly_test_tools.o3de.asset_processor import AssetProcessor + + +@pytest.mark.parametrize("project", ["AutomatedTesting"]) +@pytest.mark.SUITE_smoke +class TestsUIAppsAssetProcessorCheckIdle(object): + @pytest.fixture(autouse=True) + def setup_teardown(self, request): + self.asset_processor = None + + def teardown(): + self.asset_processor.stop() + + request.addfinalizer(teardown) + + def test_UIApps_AssetProcessor_CheckIdle(self, workspace): + """ + Test Launching AssetProcessorBatch and verifies that is shuts down without issue + """ + self.asset_processor = AssetProcessor(workspace) + self.asset_processor.gui_process() diff --git a/AutomatedTesting/Levels/AI/NavigationComponentTest/leveldata/Heightmap.dat b/AutomatedTesting/Levels/AI/NavigationComponentTest/leveldata/Heightmap.dat deleted file mode 100644 index 8c1a4881a8..0000000000 --- a/AutomatedTesting/Levels/AI/NavigationComponentTest/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e1218e785966cba2973af5fcc2adeea81399ef4b9ceee9713e430d14090317bd -size 272849 diff --git a/AutomatedTesting/Levels/AI/NavigationComponentTest/terrain/cover.ctc b/AutomatedTesting/Levels/AI/NavigationComponentTest/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/AI/NavigationComponentTest/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/leveldata/Heightmap.dat deleted file mode 100644 index c57f97afb8..0000000000 --- a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:259892d63259cdc7b0cbee64c979d917820ea2bb402397ef63a3383ea5146b0a -size 132288 diff --git a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/terrain/cover.ctc b/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterCollision/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/LevelData/Heightmap.dat b/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/LevelData/Heightmap.dat deleted file mode 100644 index c57f97afb8..0000000000 --- a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:259892d63259cdc7b0cbee64c979d917820ea2bb402397ef63a3383ea5146b0a -size 132288 diff --git a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/terrain/cover.ctc b/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Blast/Blast_ActorSplitsAfterDamage/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/LevelData/Heightmap.dat b/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/LevelData/Heightmap.dat deleted file mode 100644 index e3cfc6487c..0000000000 --- a/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6f5b950e0dcd47ada8f34dc9f64976ebe156aeedb92d7e6d3467efbeddb3baa2 -size 17407674 diff --git a/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/terrain/cover.ctc b/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/NvCloth/C18977329_NvCloth_AddClothSimulationToMesh/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/LevelData/Heightmap.dat b/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/LevelData/Heightmap.dat deleted file mode 100644 index 80f0296fd4..0000000000 --- a/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae30a71535b7283f4b19a0dee09ad98afc2d23e127d3da53c4da76650c0d9698 -size 17407642 diff --git a/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/terrain/cover.ctc b/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/NvCloth/C18977330_NvCloth_AddClothSimulationToActor/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/Base/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/Base/leveldata/Heightmap.dat deleted file mode 100644 index 2619d881d2..0000000000 --- a/AutomatedTesting/Levels/Physics/Base/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5080ffd65c2c76fbd5db96f75496dae7d4992dfc2f6a5e9514345e1d74422143 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/Base/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/Base/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/Base/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/leveldata/Heightmap.dat deleted file mode 100644 index 43bea299f4..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e9018429c312bced4975ab9e4d5cd6420a2fc8605b7d0929334dfd7dff50a79b -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712452_ScriptCanvas_CollisionEvents/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/leveldata/Heightmap.dat deleted file mode 100644 index 8772b96c9f..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2a53b3ffe745f824431028cc36d1990f55e9303bff99542f8ee3b85cd4417636 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712453_ScriptCanvas_MultipleRaycastNode/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/leveldata/Heightmap.dat deleted file mode 100644 index 8dba2c114b..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:35fa1fc96e3092de7200533183d875fe19585ca292e01af24dcc82497c8d400a -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712454_ScriptCanvas_OverlapNodeVerification/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/leveldata/Heightmap.dat deleted file mode 100644 index b3f394b89e..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:93c2de86abea5c70845480f09dd86e9aebf2084c8e26444eee846ad9a3b18fe0 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C12712455_ScriptCanvas_ShapeCastVerification/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/leveldata/Heightmap.dat deleted file mode 100644 index 5f407d9252..0000000000 --- a/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:65464a758912e1dc2cdd39606fe86d05315336635a42a659734b3755f6e4ad4c -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C12868578_ForceRegion_DirectionHasNoAffectOnMagnitude/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/leveldata/Heightmap.dat deleted file mode 100644 index ea30699f94..0000000000 --- a/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5517e2cd05060859a9e010f9df1f410a7fc9739a8ec6adbc0e214b894a7eef21 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C12868580_ForceRegion_SplineModifiedTransform/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/leveldata/Heightmap.dat deleted file mode 100644 index bdce2c873d..0000000000 --- a/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55f771fb360a8b7a6d12e9b0e5f8824f9567d1869cb2757b7a3263539d03db1f -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C12905527_ForceRegion_MagnitudeDeviation/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/leveldata/Heightmap.dat deleted file mode 100644 index f1d48b1ccd..0000000000 --- a/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b7718b09645345926ac1f59513114f64c6e146a49fac69f2835ce20c831953d7 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C13351703_COM_NotIncludeTriggerShapes/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/leveldata/Heightmap.dat deleted file mode 100644 index 0c1cfb6e1c..0000000000 --- a/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3b10f68c7f64dd775e6abc3250c019c1efdf498822b77bd98efb8f8c19513c0e -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C13352089_RigidBodies_MaxAngularVelocity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/leveldata/Heightmap.dat deleted file mode 100644 index 1f85094c91..0000000000 --- a/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:646140ed507ea073e2472196661b204694d686142536e1912b173376324b302a -size 274291 diff --git a/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C13508019_Terrain_TerrainTexturePainterWorks/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/leveldata/Heightmap.dat deleted file mode 100644 index a84b83c152..0000000000 --- a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:965f0dd885e93c25183390a87675b5aef1d24d374ededc5e073a98e15318858e -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_NoRagdoll/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/leveldata/Heightmap.dat deleted file mode 100644 index 54c23454f9..0000000000 --- a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e9487342e768620c77288e3b8019ade03cd12eb1c19067b5d6408a185a62203e -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C13895144_Ragdoll_WithRagdoll/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/leveldata/Heightmap.dat deleted file mode 100644 index e461c4f629..0000000000 --- a/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:54b2dc4c443ea1e9b9aaed9d2aef1227ddeeac7db728b699cacd08811c81db8f -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14195074_ScriptCanvas_PostUpdateEvent/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/leveldata/Heightmap.dat deleted file mode 100644 index d290b022fe..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae84e1cb4cc4d54cb4cccb361663f8a4bb214e95ad0023cdd068657ef4705e43 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevels/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/leveldata/Heightmap.dat deleted file mode 100644 index c8eabe5621..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a5c76ddb855bd123944e9582f289298091e6dc9089d877e1175079df72a251d9 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654881_CharacterController_SwitchLevelsEmpty/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/leveldata/Heightmap.dat deleted file mode 100644 index 1ab498d3da..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2913bdf321ee6cbe2bf148444554ce0135b41ac5ddac42d62a32d8af4cf7ae1c -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/terrain/cover.ctc deleted file mode 100644 index 5df79a372b..0000000000 --- a/AutomatedTesting/Levels/Physics/C14654882_Ragdoll_ragdollAPTest/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eee27982bfd7ad92814e2287d5fae32f943a470120550e2ac93d2299a4969876 -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/leveldata/Heightmap.dat deleted file mode 100644 index ed4d2f4efc..0000000000 --- a/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:52834b00e1392b055902d9bc93c52c145e75f758250049e71dc2d6b40a377279 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C14861498_ConfirmError_NoPxMesh/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/leveldata/Heightmap.dat deleted file mode 100644 index 9fa09123de..0000000000 --- a/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fb391ba2b3a7631e00b067610f1fa541bfd74d1d64e11aee72741cca5c2b7d90 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14902097_ScriptCanvas_PreUpdateEvent/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/leveldata/Heightmap.dat deleted file mode 100644 index 46e1443632..0000000000 --- a/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1802389900e2a041717f05ea9f05ae344edd8ce49b5332204a87d2124459561f -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14902098_ScriptCanvas_PostPhysicsUpdate/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/leveldata/Heightmap.dat deleted file mode 100644 index 00187ffd24..0000000000 --- a/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3461c62fd0a988d4f3369116f9447d392cac1f4b1f259dc65aabe2fabbfafb37 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C14976307_Gravity_SetGravityWorks/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/leveldata/Heightmap.dat deleted file mode 100644 index b62e36aef5..0000000000 --- a/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d7d878cdef5de9038df845b5ef5709cc3afe2a5a3a606f3f5ac4575a733ffc5e -size 273095 diff --git a/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C14976308_ScriptCanvas_SetKinematicTargetTransform/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/0/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/0/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/0/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/1/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/1/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096732_Material_DefaultLibraryUpdatedAcrossLevels/1/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/leveldata/Heightmap.dat deleted file mode 100644 index 45e1bc7290..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6931308387c56833dcfa8887cc91cdf3ec2c8dcf47803118892b9734751f86c9 -size 274584 diff --git a/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096735_Materials_DefaultLibraryConsistency/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/leveldata/Heightmap.dat deleted file mode 100644 index 929371d5ba..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:75c123551336f3ff33d1e7b7a35609e1e5dc70cc360b59a23c11c8650ccf19a6 -size 17409393 diff --git a/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15096737_Materials_DefaultMaterialLibraryChanges/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/leveldata/Heightmap.dat deleted file mode 100644 index 2650c4e5cb..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5b3d4971af97025075197da8cb357d488ca899e3da8fb1e6f56082d6aace7101 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithOutTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/leveldata/Heightmap.dat deleted file mode 100644 index e32db0bdff..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b79f9dec3428d224041ff2404c503c9df1a7fc8fb0e84bfec30374a918710b2a -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308217_NoCrash_LevelSwitchWithTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/leveldata/Heightmap.dat deleted file mode 100644 index 2521b77547..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4adb1fccd94b0bcf444b4a6dc6f387b20bf22f0d83fefe1d938ffa6672e83a13 -size 17408454 diff --git a/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15308221_Material_ComponentsInSyncWithLibrary/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/leveldata/Heightmap.dat deleted file mode 100644 index 6798b7f0c0..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd1588965564e750d4d5d56771d983dbd27cf36a072ad2a4bc00478d3cb4629b -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425929_Undo_Redo/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/leveldata/Heightmap.dat deleted file mode 100644 index 66b1d441b9..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:179f70d479b1090b16dfbfc92e5354d69751ee0288b831b51840a936e279b2d1 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_0/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/leveldata/Heightmap.dat deleted file mode 100644 index 66b1d441b9..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:179f70d479b1090b16dfbfc92e5354d69751ee0288b831b51840a936e279b2d1 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15425935_Material_LibraryUpdatedAcrossLevels/C15425935_Material_LibraryUpdatedAcrossLevels_1/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/leveldata/Heightmap.dat deleted file mode 100644 index e5479ac90e..0000000000 --- a/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:709cb703dd55024d7863d8b64ffe74e9e02560e2faefb18e28f23e18a7186f52 -size 17409642 diff --git a/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15556261_PhysXMaterials_CharacterControllerMaterialAssignment/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/leveldata/Heightmap.dat deleted file mode 100644 index 6a27041aba..0000000000 --- a/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2ac95dd40dd51f41fdbf06528e47f2675d888da0c09fe516a5d78c90ed025f5d -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15563573_Material_AddModifyDeleteOnCharacterController/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/leveldata/Heightmap.dat deleted file mode 100644 index 95bc38ca3b..0000000000 --- a/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:336249a60fe83032f9cad84b9e5cfe53e4fbc95d8bbeb27e7376629a6899622e -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C15845879_ForceRegion_HighLinearDampingForce/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/LevelData/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/LevelData/Heightmap.dat deleted file mode 100644 index 11f4d421fd..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d831766ab559a54fa77535c1debb710cda545ae2c34e37cf4456b90769abe33a -size 8389548 diff --git a/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243580_Joints_Fixed2BodiesConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243581_Joints_FixedBreakable/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243582_Joints_FixedLeadFollowerCollide/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243583_Joints_Hinge2BodiesConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243584_Joints_HingeSoftLimitsConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243585_Joints_HingeNoLimitsConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243586_Joints_HingeLeadFollowerCollide/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243587_Joints_HingeBreakable/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 5218205cc2..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cb33993ffc810014adbb3c2054980e4e6523919a690b6271a218b17b1f537262 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243588_Joints_Ball2BodiesConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243589_Joints_BallSoftLimitsConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243590_Joints_BallNoLimitsConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243591_Joints_BallLeadFollowerCollide/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/leveldata/Heightmap.dat deleted file mode 100644 index 1081404c7a..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195 -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243592_Joints_BallBreakable/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/leveldata/Heightmap.dat deleted file mode 100644 index 3fbf3cb79d..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4e640b0c7396ba078c2d591b84d3e9289f391635e0f2db0d84de824634247cae -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18243593_Joints_GlobalFrameConstrained/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18977601_Material_FrictionCombinePriority/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C18981526_Material_RestitutionCombinePriority/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/leveldata/Heightmap.dat deleted file mode 100644 index d0f31986ba..0000000000 --- a/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8faedf8853c5e96edc68089af22243c7cbd0ba27aa76b1b065e72693c9140eb -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C24308873_CylinderShapeCollider_CollidesWithPhysXTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/LevelData/Heightmap.dat b/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/LevelData/Heightmap.dat deleted file mode 100644 index c319bfdc1b..0000000000 --- a/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0e1bd3cb02be966cfd15ff9c44605c778058a2b06899c1934762f4fe770e73d -size 8389740 diff --git a/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C28978033_Ragdoll_WorldBodyBusTests/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/leveldata/Heightmap.dat deleted file mode 100644 index 5b841792c2..0000000000 --- a/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c2714d5fcf2c87ae5b149ec68e0df1dc66d451e219e050d11609b0e3e41f1c71 -size 8389548 diff --git a/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C29032500_EditorComponents_WorldBodyBusWorks/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/leveldata/Heightmap.dat deleted file mode 100644 index 67c08472c3..0000000000 --- a/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e7bcb9526a0f20e01f1f263f4853b6630a93c8eeeca9b65506064fccfeac4e40 -size 273000 diff --git a/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C3510642_Terrain_NotCollideWithTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/leveldata/Heightmap.dat deleted file mode 100644 index 2bf6b30add..0000000000 --- a/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:57d336a6e26bc0c55b8dbd27fb3e0947d3d2cfc49f18142a8fa88430f4b615b0 -size 272909 diff --git a/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C3510644_Collider_CollisionGroups/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/leveldata/Heightmap.dat deleted file mode 100644 index 6f46e7ab93..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1e90a489a4042a27b564b0edf3ba32258bccf25e6b45a949737da9d7209f30e4 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044455_Material_LibraryChangesInstantly/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044456_Material_FrictionCombine/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044457_Material_RestitutionCombine/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044459_Material_DynamicFriction/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044460_Material_StaticFriction/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/leveldata/Heightmap.dat deleted file mode 100644 index 35dd269a45..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c8448b0e7a0a336c44743b3031226572cfbc5d0dd118c7214c2255434d46c070 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044461_Material_Restitution/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/leveldata/Heightmap.dat deleted file mode 100644 index b7a01eb918..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3fa70d03516a287419a32ffb59178c302ba10687e5439fe131305d63dd51e0ca -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044694_Material_EmptyLibraryUsesDefault/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/leveldata/Heightmap.dat deleted file mode 100644 index f1d0bf3b16..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:04ef00ec40ec80a43b39ab898e5ee99810eccf8d3f50278054f52c6e54667f0f -size 17407590 diff --git a/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4044697_Material_PerfaceMaterialValidation/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/leveldata/Heightmap.dat deleted file mode 100644 index d9ce7a6ec4..0000000000 --- a/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:af292927784263e86581009389f9c9d322e85b3d2208a72286dbe860d8995d2f -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4888315_Material_AddModifyDeleteOnCollider/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/leveldata/Heightmap.dat deleted file mode 100644 index 6555bbb47c..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8849aaa3261772f0a4286acb64cf2c5af15f76cbd8e42bd96ce5532df3ed64f4 -size 274401 diff --git a/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925577_PhysXMaterials_MaterialAssignedToTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/leveldata/Heightmap.dat deleted file mode 100644 index 755ba49dc0..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4bc0fd79ecccd25461096a9f716f21552d3a0b9650a7d1567060d70f93579afd -size 273771 diff --git a/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925579_Material_AddModifyDeleteOnTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/leveldata/Heightmap.dat deleted file mode 100644 index e08359de1c..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:91d4f2760734ec798785956e7873186d2ac45935068011167d4a594f490c0bf4 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925580_Material_RagdollBonesMaterial/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/leveldata/Heightmap.dat deleted file mode 100644 index 0b7e8da583..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b1a9ad65c4a46f5bd1f67ac3350688549b6048620467c7b54cb30102a08c88ad -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4925582_Material_AddModifyDeleteOnRagdollBones/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/leveldata/Heightmap.dat deleted file mode 100644 index b5814e3003..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5fd1899decf59ab5cf0990a24a7c8f3ab383f8739d1d2b558f081e64787d1e9c -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976194_RigidBody_PhysXComponentIsValid/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/leveldata/Heightmap.dat deleted file mode 100644 index c7321f0771..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9ae9eaf24bd5a1348e1a2f867b26408fbcc3275d3d3e45e65ce8fdafc3ceecdb -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976195_RigidBodies_InitialLinearVelocity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/leveldata/Heightmap.dat deleted file mode 100644 index fb081369d8..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4cfdf881e642d5ac20411a85164991d7ca8a4428324ad36224675680633fb64b -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976197_RigidBodies_InitialAngularVelocity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/leveldata/Heightmap.dat deleted file mode 100644 index 1705042d2a..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4ebba3e4761448e928c02417fe0732d7af9dde3fa954a74aaa56c7abbdd6c829 -size 17408234 diff --git a/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976199_RigidBodies_LinearDampingObjectMotion/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/leveldata/Heightmap.dat deleted file mode 100644 index 6422240323..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6476315967452f205596689e576e4b4bb834b3122bb3976e84fc1a42abf8e9cd -size 17408330 diff --git a/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976200_RigidBody_AngularDampingObjectRotation/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/leveldata/Heightmap.dat deleted file mode 100644 index eb4935beb0..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fff150891e6035904d35d3821aa2df85af7ed0bc3d9c8780e4bd186dc1ab7216 -size 273031 diff --git a/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976201_RigidBody_MassIsAssigned/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/leveldata/Heightmap.dat deleted file mode 100644 index 47884d0c4e..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:95f16f7ae156afe5d252b95c9b5bfd2ad5f8c0f918888bd1fbc48407708723ab -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976202_RigidBody_StopsWhenBelowKineticThreshold/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/leveldata/Heightmap.dat deleted file mode 100644 index 44e7c48c98..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ebda4f2e5bcf223ba1bc6273c49cc641e433c15a343fdbcdb3cab20bbd98c10 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976204_Verify_Start_Asleep_Condition/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/leveldata/Heightmap.dat deleted file mode 100644 index 1853f40c9d..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f488c4b02efeebb8528a42b2259cb96a40e29d366fa629bae625dff6666621d7 -size 17407721 diff --git a/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976206_RigidBodies_VerifyGravity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/leveldata/Heightmap.dat deleted file mode 100644 index 536deab727..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:97b22d6b0f426fd22f68f1cd08a2a39bae75644f2f54003a1191f7273e69734a -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976207_PhysXRigidBodies_KinematicBehavior/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/leveldata/Heightmap.dat deleted file mode 100644 index 4581d9bcb6..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f2a85cc698d064f0701bef963afde2908c31d837e6d25afd3d5d4b08838ad47f -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976209_RigidBody_ComputesCOM/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/leveldata/Heightmap.dat deleted file mode 100644 index b1bbb93cdb..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6d7a8b0e93ea230fe46642f392a3836a95651802f1b23ecff4741d5037bba6db -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976210_COM_ManualSetting/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/leveldata/Heightmap.dat deleted file mode 100644 index 228cdbb6ec..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0b43531ceeb4f2119b4978b2501038e0106a17694b051de49f829349f8f49eb3 -size 17407561 diff --git a/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976218_RigidBodies_InertiaObjectNotComputed/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/leveldata/Heightmap.dat deleted file mode 100644 index 90757c597e..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f9ee507c0b37dc5c007afee8524e49ae223727847d075b416a9420c99d7b1c15 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976227_Collider_NewGroup/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/leveldata/Heightmap.dat deleted file mode 100644 index 77636050c1..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae5c2fde61764e3f6150ff2b2d15dfaa38c3b0dfe76f0a6ae50f76f85912f781 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976242_Collision_SameCollisionlayerSameCollisiongroup/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/leveldata/Heightmap.dat deleted file mode 100644 index 4247db13e0..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a1886608dca8428ea53e4d2ea0a749072bde8baab935f593657264fd08a7b924 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976243_Collision_SameCollisionGroupDiffCollisionLayers/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/leveldata/Heightmap.dat deleted file mode 100644 index 2ec404ff7b..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6dc09aa3d8bcf65faa42043a975b0dce7af7450fe466d297b3b1f803ea8e9a9a -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976244_Collider_SameGroupSameLayerCollision/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat deleted file mode 100644 index c4f8a2a863..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:664ed8be7bd6521f1d98f373087b1f44f18ae5d7cd2da53325e5a3f588b15e43 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4976245_PhysxCollider_CollisionLayerTest/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat deleted file mode 100644 index 298e654e19..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c2430de76e2e824323072e80c7e7194e803e49639facfbf8293d48e832ae3b8 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982593_PhysxCollider_CollisionLayerTest/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/leveldata/Heightmap.dat deleted file mode 100644 index 1bc58fdb62..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:885772e6d2bbe859c4de728888970ce003dde3a6b658cf716242a92c0be81f08 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982595_Collider_TriggerDisablesCollision/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/leveldata/Heightmap.dat deleted file mode 100644 index e238bc5a3d..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7917bcdcbb3a788e1596b65a47df0efa79d872456775555a478d8d68e104ed5a -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982797_Collider_ColliderOffset/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/leveldata/Heightmap.dat deleted file mode 100644 index 710bb396f3..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3af891c31ed9b4023548f6aa65fa224a5af379f27432bd11808479ef678ddd25 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C4982798_Collider_ColliderRotationOffset/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/leveldata/Heightmap.dat deleted file mode 100644 index 47184c77dc..0000000000 --- a/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9ad9563ce944d8ce37af3e7300c5647de79331dfb002fe274e3aef0bf0736956 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5296614_PhysXMaterial_ColliderShape/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/leveldata/Heightmap.dat deleted file mode 100644 index 75be3478ff..0000000000 --- a/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:243cd3b6a776732db1093147d5482a458d65603e74fc09058ed5b03ee6e04720 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5340400_RigidBody_ManualMomentOfInertia/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/leveldata/Heightmap.dat deleted file mode 100644 index b1d62c11ff..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7c25f6b8480b95ce5ff101e66d829215fe9efc2fca07b474ef11e8062d95ff50 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689517_Verify_Terrain_Component/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/leveldata/Heightmap.dat deleted file mode 100644 index 5454b28cd5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:185c7b71d452c9d7cfaa28d6c9b782179708b82ab09387919d8ecd1b96df4337 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689518_PhysXEntity_collides_with_PhysXTerrain/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/leveldata/Heightmap.dat deleted file mode 100644 index d2da463d29..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9f0e21daaaead505664b5cab3e131e7f0e01de76362cc8b304aef908b842b99d -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689521_Terrain_NoCollisionAfterTerrainDeletion/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/leveldata/Heightmap.dat deleted file mode 100644 index bf01f8b4b9..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bf77a5ddfd8ff9a9443e551cebb2eadade3b056db8539a81a38f00c3e448882c -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689522_Physxterrain_AddPhysxterrainNoEditorCrash/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/leveldata/Heightmap.dat deleted file mode 100644 index 38834c6ffc..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43364efffb1278e1986537f612899e5ed7777d0a2da624827eb478e3290d3e15 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689524_MultipleTerrains_CheckWarningInConsole/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/leveldata/Heightmap.dat deleted file mode 100644 index 2b02b6f32c..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b6ad16faf3d9c08e9fc26cf57f6ccfee4870be0b681302499cfcba1b48ed2450 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689528_Terrain_MultipleTerrainComponents/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/leveldata/Heightmap.dat deleted file mode 100644 index e0bb0dca29..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:957582ad1f2df72a7d8569d15ad5b7d00b711f97a7b85a62af14b45f1e505b83 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689529_Verify_Terrain_RigidBody_Collider_Mesh/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/leveldata/Heightmap.dat deleted file mode 100644 index 250572b0e2..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f97dab20304bc260b744a92a880f99e78ec720796b99910b566bf59b0a1fc96f -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5689531_Warning_TerrainSliceTerrainComponent/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/leveldata/Heightmap.dat deleted file mode 100644 index 9c45acebe4..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8067bc2add439a73dc9e2f1971e084e7193359b2b1f48883ced366814dccee53 -size 272968 diff --git a/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932040_ForceRegion_CubeExertsWorldForce/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/leveldata/Heightmap.dat deleted file mode 100644 index b01cafea8e..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6401692e054f1c4e98be464da6ba46602a54cffa87dedbe7f93f04e5f4c73b38 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932041_PhysXForceRegion_LocalSpaceForceOnRigidBodies/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/leveldata/Heightmap.dat deleted file mode 100644 index fd12b3bcf3..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:505c3eb789d6033663199730a13290bb5e6c8a64997612bedcf468611b1db84c -size 1088935 diff --git a/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932042_PhysxForceRegion_LinearDamping/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/leveldata/Heightmap.dat deleted file mode 100644 index de654e5c66..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9094ed2eb22b00e83d2b38400295a1b0499a73f7ce69f08c91476aa53f52d55f -size 1088936 diff --git a/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932043_ForceRegion_SimpleDragOnRigidBody/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/leveldata/Heightmap.dat deleted file mode 100644 index cd96b125c5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bdfb853736f89ba7370e1d84d14fbdf2bcd0e7947c8ac1d8ef5c974d174805c5 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932044_PhysX_ForceRegion_PointForceOnRigidBodies/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5932045_ForceRegion_Spline/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5932045_ForceRegion_Spline/leveldata/Heightmap.dat deleted file mode 100644 index 88230ecde3..0000000000 --- a/AutomatedTesting/Levels/Physics/C5932045_ForceRegion_Spline/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:89c8b97f06c2022d93cd6e8998230dc4e4c984bf915f901c64494c31f43ce361 -size 8389601 diff --git a/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/leveldata/Heightmap.dat deleted file mode 100644 index f1203cbb38..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b1859b510aefeeef4b56773cb6b9534a8fe9822da42dace360e1275774a4b015 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959759_RigidBody_ForceRegionSpherePointForce/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/leveldata/Heightmap.dat deleted file mode 100644 index c38fc24151..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd1933b2146650738286a96252a373272fa193ad584cc3fcef1fb63e563f69d5 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959760_PhysxForceRegion_PointForceExertion/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/leveldata/Heightmap.dat deleted file mode 100644 index f4d421c60f..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c1423ef445819bd6fc431636a33c134c6c233cbe0f691590ff51f25a72a4e65 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959761_ForceRegion_ExertsPointForce_Sedan/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/leveldata/Heightmap.dat deleted file mode 100644 index 8c77677ddc..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:41e755a0673feebe74637cb21c48f57cd3f4ddd0bbfe1db56bb0ab425e47e9d7 -size 17407818 diff --git a/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/terrain/cover.ctc deleted file mode 100644 index 3b21b4fd38..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959763_ForceRegion_ForceRegionImpulsesCube/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c312bc0963da8a266a385bc912f0e6549b3cf6e6c7c45b04ae7cd17cdebcbb35 -size 89393864 diff --git a/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/leveldata/Heightmap.dat deleted file mode 100644 index 8c77677ddc..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:41e755a0673feebe74637cb21c48f57cd3f4ddd0bbfe1db56bb0ab425e47e9d7 -size 17407818 diff --git a/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/terrain/cover.ctc deleted file mode 100644 index 3b21b4fd38..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959764_ForceRegion_ForceRegionImpulsesCapsule/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c312bc0963da8a266a385bc912f0e6549b3cf6e6c7c45b04ae7cd17cdebcbb35 -size 89393864 diff --git a/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/leveldata/Heightmap.dat deleted file mode 100644 index 24e3dc92aa..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1e38ef80eb942863c2d7c449da1cb94e5e6c3ccf42efed74f51f5d2bf3927410 -size 1088936 diff --git a/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959765_ForceRegion_AssetGetsImpulsed/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/leveldata/Heightmap.dat deleted file mode 100644 index c93a3463c5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:978fdf9b771a3e0ca49fedeeb8c40efddb65d0f84bdf5cd93dfe07fcf9f5c2ba -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959808_ForceRegion_PositionOffset/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/leveldata/Heightmap.dat deleted file mode 100644 index 7bea75cd29..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3f82438d7e79d1c519bc46520a138b262358a3b2f930fa85335ba8123cbeac64 -size 272903 diff --git a/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959809_ForceRegion_RotationalOffset/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/leveldata/Heightmap.dat deleted file mode 100644 index 8656f8dc82..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:887a277eb6c0394aebf2c1b45bb97c308fdae9b77d5a2d4c435459226ea43315 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5959810_ForceRegion_ForceRegionCombinesForces/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/leveldata/Heightmap.dat deleted file mode 100644 index a28794f59b..0000000000 --- a/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bd2bb7c49590bdcb95a536e6bb307a6ce4f3290d5575074c71af9929bd815d4b -size 273032 diff --git a/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C5968759_ForceRegion_ExertsSeveralForcesOnRigidBody/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/leveldata/Heightmap.dat deleted file mode 100644 index 4cc409be9e..0000000000 --- a/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0a0ae4b840bc786cde6baaa104b4cd307559ae669191c1193dcc16e1900345f4 -size 17401625 diff --git a/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C5968760_ForceRegion_CheckNetForceChange/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/leveldata/Heightmap.dat deleted file mode 100644 index f6a994dfc8..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8fc79df6e76e7a1b78e868a1b38270a20c4f6f01bf75d8f041ed31b54bcd0f18 -size 17407883 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/terrain/cover.ctc deleted file mode 100644 index 3b21b4fd38..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_1024x1024_32m/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c312bc0963da8a266a385bc912f0e6549b3cf6e6c7c45b04ae7cd17cdebcbb35 -size 89393864 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/leveldata/Heightmap.dat deleted file mode 100644 index bd76461f43..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:82ff0215eec3b56e30c98552229873f9c8171780f064514904fc9c2dc6a06ec5 -size 272968 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_128x128_1m/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/leveldata/Heightmap.dat deleted file mode 100644 index fc4176f1d7..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1d05be295505fac28ccf838b2693cb8d9728831b7ff755e39f924b3d553c0d33 -size 278507435 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/terrain/cover.ctc deleted file mode 100644 index 3b21b4fd38..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_4096x4096_16m/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c312bc0963da8a266a385bc912f0e6549b3cf6e6c7c45b04ae7cd17cdebcbb35 -size 89393864 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/leveldata/Heightmap.dat deleted file mode 100644 index e300eeda72..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:01b31f5b7a47a98458a8bc41564ca044e1290aaaf03aab45930cbb3665cdcdb2 -size 4352744 diff --git a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6032082_Terrain_MultipleResolutionsValid_512x512_2m/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/leveldata/Heightmap.dat deleted file mode 100644 index 758aa5bc34..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2e8e198c676660fb0ee41dc26a819a446d22e8191b656c5cf1938c8e84662eb5 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090546_ForceRegion_SliceFileInstantiates/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/leveldata/Heightmap.dat deleted file mode 100644 index 46362b012e..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8f3e14eb70dd43e5de38f7bf7f6289662a5cec5e3a9b0f4491c9885cf7794b4f -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090547_ForceRegion_ParentChildForceRegions/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/leveldata/Heightmap.dat deleted file mode 100644 index bb848da4ed..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:37ea00154e4dcab65e12ee8ca194cb66838bb82529431f4d091cd9c2c79156ed -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090550_ForceRegion_WorldSpaceForceNegative/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/leveldata/Heightmap.dat deleted file mode 100644 index b9ccb9a4d9..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f5bd283a1f7d6773603be60d0f68b5dd638ad67af600b77a34ce0c0313c2a9ea -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090551_ForceRegion_LocalSpaceForceNegative/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/leveldata/Heightmap.dat deleted file mode 100644 index adc6d8cd8a..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43ca971f0dc9e3a742df0c9b3823ba91893509d46cd58394a44b0cdb23398a7f -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090552_ForceRegion_LinearDampingNegative/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/leveldata/Heightmap.dat deleted file mode 100644 index 2819a15ca8..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d6da98fed444511cfbf7c816f58644647997ffae6ad95e00fc047be7d2e091aa -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090553_ForceRegion_SimpleDragForceOnRigidBodies/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/leveldata/Heightmap.dat deleted file mode 100644 index d4569021f5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:111764017407ee2fd7e2be64cd121f8347dc9d706a7964f381f9bcd351a33e30 -size 272967 diff --git a/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090554_ForceRegion_PointForceNegative/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/Physics/C6090555_ForceRegion_SplineFollowOnRigidBodies/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6090555_ForceRegion_SplineFollowOnRigidBodies/leveldata/Heightmap.dat deleted file mode 100644 index 88230ecde3..0000000000 --- a/AutomatedTesting/Levels/Physics/C6090555_ForceRegion_SplineFollowOnRigidBodies/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:89c8b97f06c2022d93cd6e8998230dc4e4c984bf915f901c64494c31f43ce361 -size 8389601 diff --git a/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/leveldata/Heightmap.dat deleted file mode 100644 index 5b2f135a91..0000000000 --- a/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c9729210c30daa9177bd8457f2780ed77bae8de6cd15a62bff3a07c52bb603b4 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6131473_StaticSlice_OnDynamicSliceSpawn/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/leveldata/Heightmap.dat deleted file mode 100644 index f54f95b8d2..0000000000 --- a/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f5f28abec553b0e796914564800808ea83c15373b89a72e77c06beb1b79118c3 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6224408_ScriptCanvas_EntitySpawn/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/leveldata/Heightmap.dat deleted file mode 100644 index edf807fd0c..0000000000 --- a/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0dba21e478e2062ae68a2309889fa847df1c93306fa92e23989ab99d1a402bee -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6274125_ScriptCanvas_TriggerEvents/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/leveldata/Heightmap.dat deleted file mode 100644 index 1b7661ff99..0000000000 --- a/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a01c0912336c4a1484231d245e4f8d49189e9f6295f1644672bd2443c2504d75 -size 17408042 diff --git a/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/C6321601_Force_HighValuesDirectionAxes/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/EnablingGravityWorks/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/EnablingGravityWorks/leveldata/Heightmap.dat deleted file mode 100644 index 29cd5e7a62..0000000000 --- a/AutomatedTesting/Levels/Physics/EnablingGravityWorks/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:296d54a50af0194ce6cfc2dbfc20b45f6ca0b22e131fbbc7efb2fa71819e0125 -size 17407722 diff --git a/AutomatedTesting/Levels/Physics/EnablingGravityWorks/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/EnablingGravityWorks/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/EnablingGravityWorks/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Physics/NameNode_Prints/LevelData/Heightmap.dat b/AutomatedTesting/Levels/Physics/NameNode_Prints/LevelData/Heightmap.dat deleted file mode 100644 index f3e0ef3b30..0000000000 --- a/AutomatedTesting/Levels/Physics/NameNode_Prints/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bc68622cb0490202b77ef121e6477cba595563fe48b388e3656e5f83d75326ab -size 17407508 diff --git a/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/leveldata/Heightmap.dat deleted file mode 100644 index d3415a29e8..0000000000 --- a/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:02166a294304ad1b49e0657612066fad67f8c6a534ff29391e096d5f7f02a530 -size 17407562 diff --git a/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/terrain/cover.ctc b/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Physics/Physmaterial_Editor_Test/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Simple/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Simple/leveldata/Heightmap.dat deleted file mode 100644 index a115a949ea..0000000000 --- a/AutomatedTesting/Levels/Simple/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4f5bed6147984ab47380f219627d57d0d81fee47240ee4f9f22eb36ad891cca8 -size 17407722 diff --git a/AutomatedTesting/Levels/Simple/terrain/cover.ctc b/AutomatedTesting/Levels/Simple/terrain/cover.ctc deleted file mode 100644 index 758d8ecc7c..0000000000 --- a/AutomatedTesting/Levels/Simple/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:56ababffe6020616ccd87fff0cc5968fc5b15d6f7812ef1f71457544deda53e5 -size 1310792 diff --git a/AutomatedTesting/Levels/TestDependenciesLevel/LevelData/Heightmap.dat b/AutomatedTesting/Levels/TestDependenciesLevel/LevelData/Heightmap.dat deleted file mode 100644 index f4b5b6a7ec..0000000000 --- a/AutomatedTesting/Levels/TestDependenciesLevel/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:33755cbdc3e12d51ebaff02a97ff83632b59d04e15c935e72c819f97a85313ee -size 17407849 diff --git a/AutomatedTesting/Levels/TestDependenciesLevel/terrain/cover.ctc b/AutomatedTesting/Levels/TestDependenciesLevel/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/TestDependenciesLevel/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/leveldata/Heightmap.dat deleted file mode 100644 index 92979fc15b..0000000000 --- a/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1ec97cba81a1332d3ddbf7e792a037b481f98890351ff997eb4c14df608063bf -size 17407612 diff --git a/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/terrain/cover.ctc b/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Utils/Tracer_ErrorEntity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/leveldata/Heightmap.dat b/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/leveldata/Heightmap.dat deleted file mode 100644 index d08880d3f7..0000000000 --- a/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a4a511fb77ac358234d93b9504d7c4fab728d703599e565c11de82423b6861d7 -size 17407562 diff --git a/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/terrain/cover.ctc b/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/Utils/Tracer_WarningEntity/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/WaterSample/leveldata/Heightmap.dat b/AutomatedTesting/Levels/WaterSample/leveldata/Heightmap.dat deleted file mode 100644 index faa167e7b9..0000000000 --- a/AutomatedTesting/Levels/WaterSample/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2d279ddb3735d78930a121c8ee861608feadc5d808ec816bf3dc5d577a7f80e6 -size 17409012 diff --git a/AutomatedTesting/Levels/WaterSample/terrain/cover.ctc b/AutomatedTesting/Levels/WaterSample/terrain/cover.ctc deleted file mode 100644 index 0823b8a456..0000000000 --- a/AutomatedTesting/Levels/WaterSample/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:442fe75f06b84d877259b986b69f17f8bb3719f95e87c100ef136a12440706c0 -size 1310792 diff --git a/AutomatedTesting/Levels/WhiteBox/EmptyLevel/LevelData/Heightmap.dat b/AutomatedTesting/Levels/WhiteBox/EmptyLevel/LevelData/Heightmap.dat deleted file mode 100644 index 29e3419f1f..0000000000 --- a/AutomatedTesting/Levels/WhiteBox/EmptyLevel/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:516a3c2be23cd39ece7cab752845008d2b0940327338667d99f8a9dc934955e7 -size 8389548 diff --git a/AutomatedTesting/Levels/auto_test/LevelData/Heightmap.dat b/AutomatedTesting/Levels/auto_test/LevelData/Heightmap.dat deleted file mode 100644 index c45e9c55d6..0000000000 --- a/AutomatedTesting/Levels/auto_test/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:11035ee2ffa8b8e05694d1e9911bc187ce8d11d44ec21d2e85256348208888cd -size 17407568 diff --git a/AutomatedTesting/Levels/auto_test/terrain/cover.ctc b/AutomatedTesting/Levels/auto_test/terrain/cover.ctc deleted file mode 100644 index 5c869c6533..0000000000 --- a/AutomatedTesting/Levels/auto_test/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c -size 1310792 diff --git a/AutomatedTesting/Levels/ocean_component/LevelData/Heightmap.dat b/AutomatedTesting/Levels/ocean_component/LevelData/Heightmap.dat deleted file mode 100644 index d8cc5b2c0d..0000000000 --- a/AutomatedTesting/Levels/ocean_component/LevelData/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dd639fcd1ed23c191ac037b33dc3b592a5a2350d940851ec2206d391b1988a8c -size 272966 diff --git a/AutomatedTesting/Levels/ocean_component/terrain/cover.ctc b/AutomatedTesting/Levels/ocean_component/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/ocean_component/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/AutomatedTesting/Levels/ocean_trackview/leveldata/Heightmap.dat b/AutomatedTesting/Levels/ocean_trackview/leveldata/Heightmap.dat deleted file mode 100644 index 6e54935add..0000000000 --- a/AutomatedTesting/Levels/ocean_trackview/leveldata/Heightmap.dat +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a5a13103dc7a070193a74e362daea1d152b8c50031db93f9a7689a9a5c8137c2 -size 272903 diff --git a/AutomatedTesting/Levels/ocean_trackview/terrain/cover.ctc b/AutomatedTesting/Levels/ocean_trackview/terrain/cover.ctc deleted file mode 100644 index 78c2ab6ed5..0000000000 --- a/AutomatedTesting/Levels/ocean_trackview/terrain/cover.ctc +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be -size 262184 diff --git a/Code/CryEngine/CryCommon/CryArray2d.h b/Code/CryEngine/CryCommon/CryArray2d.h deleted file mode 100644 index 531b23c7f6..0000000000 --- a/Code/CryEngine/CryCommon/CryArray2d.h +++ /dev/null @@ -1,84 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_ARRAY2D_H -#define CRYINCLUDE_CRYCOMMON_ARRAY2D_H -#pragma once - -// Dynamic replacement for static 2d array -template -struct Array2d -{ - Array2d() - { - m_nSize = 0; - m_pData = 0; - } - - int GetSize() const { return m_nSize; } - int GetDataSize() const { return m_nSize * m_nSize * sizeof(T); } - - T* GetData() { return m_pData; } - - T* GetDataEnd() { return &m_pData[m_nSize * m_nSize]; } - - void SetData(T* pData, int nSize) - { - Allocate(nSize); - memcpy(m_pData, pData, nSize * nSize * sizeof(T)); - } - - void Allocate(int nSize) - { - if (m_nSize == nSize) - { - return; - } - - delete [] m_pData; - - m_nSize = nSize; - m_pData = new T [nSize * nSize]; - memset(m_pData, 0, nSize * nSize * sizeof(T)); - } - - ~Array2d() - { - delete [] m_pData; - } - - void Reset() - { - delete [] m_pData; - m_pData = 0; - m_nSize = 0; - } - - T* m_pData; - int m_nSize; - - T* operator [] (const int& nPos) const - { - assert(nPos >= 0 && nPos < m_nSize); - return &m_pData[nPos * m_nSize]; - } - - Array2d& operator = (const Array2d& other) - { - Allocate(other.m_nSize); - memcpy(m_pData, other.m_pData, m_nSize * m_nSize * sizeof(T)); - return *this; - } -}; - -#endif // CRYINCLUDE_CRYCOMMON_ARRAY2D_H diff --git a/Code/CryEngine/CryCommon/CryPhysicsDeprecation.h b/Code/CryEngine/CryCommon/CryPhysicsDeprecation.h deleted file mode 100644 index d2523f2a5c..0000000000 --- a/Code/CryEngine/CryCommon/CryPhysicsDeprecation.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -// Description: Utilities and functions used when cryphysics is disabled - -#pragma once - -// Assert if CryPhysics is disabled and no functionality replacement has been implemented -// 1: Runtime AZ_Error -// 2: Runtime Assertion -// 3: Compilation error -// Other: Do nothing -#define ENABLE_CRY_PHYSICS_REPLACEMENT_ASSERT 0 - -#if (ENABLE_CRY_PHYSICS_REPLACEMENT_ASSERT == 1) -#define CRY_PHYSICS_REPLACEMENT_ASSERT() AZ_Error("CryPhysics", false, __FUNCTION__ " - CRYPHYSICS REPLACEMENT NOT IMPLEMENTED") -#elif (ENABLE_CRY_PHYSICS_REPLACEMENT_ASSERT == 2) -#define CRY_PHYSICS_REPLACEMENT_ASSERT() AZ_Assert(false, "CRYPHYSICS REPLACEMENT NOT IMPLEMENTED") -#elif (ENABLE_CRY_PHYSICS_REPLACEMENT_ASSERT == 3) -#define CRY_PHYSICS_REPLACEMENT_ASSERT() static_assert(false, __FUNCTION__ " - CRYPHYSICS REPLACEMENT NOT IMPLEMENTED") -#else -#define CRY_PHYSICS_REPLACEMENT_ASSERT() -#endif diff --git a/Code/CryEngine/CryCommon/CryPtrArray.h b/Code/CryEngine/CryCommon/CryPtrArray.h deleted file mode 100644 index 55fd0bcec6..0000000000 --- a/Code/CryEngine/CryCommon/CryPtrArray.h +++ /dev/null @@ -1,100 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_CRYPTRARRAY_H -#define CRYINCLUDE_CRYCOMMON_CRYPTRARRAY_H -#pragma once - -#include "CryArray.h" -#include "CrySizer.h" - -//--------------------------------------------------------------------------- -template -struct PtrArray - : DynArray

-{ - typedef DynArray

super; - - // Overrides. - typedef T value_type; - - ILINE ~PtrArray(){} - - inline T& operator [](int i) const - { return *super::operator[](i); } - - // Iterators. - struct iterator - { - iterator(P* p) - : _ptr(p) - {} - - operator P* () const - { - return _ptr; - } - void operator++() - { _ptr++; } - void operator--() - { _ptr--; } - T& operator*() const - { assert(_ptr); return **_ptr; } - T* operator->() const - { assert(_ptr); return *_ptr; } - - protected: - P* _ptr; - }; - - struct const_iterator - { - const_iterator(const P* p) - : _ptr(p) - {} - - operator const P* () const - { - return _ptr; - } - void operator++() - { _ptr++; } - void operator--() - { _ptr--; } - T& operator*() const - { assert(_ptr); return **_ptr; } - T* operator->() const - { assert(_ptr); return *_ptr; } - - protected: - const P* _ptr; - }; - - void GetMemoryUsage(ICrySizer* pSizer) const - { - pSizer->AddObject(this->begin(), this->get_alloc_size()); - for (int i = 0; i < this->size(); ++i) - { - pSizer->AddObject(this->super::operator [](i)); - } - } -}; - -//--------------------------------------------------------------------------- -template -struct SmartPtrArray - : PtrArray< T, _smart_ptr > -{ -}; - -#endif // CRYINCLUDE_CRYCOMMON_CRYPTRARRAY_H diff --git a/Code/CryEngine/CryCommon/CrySizer.h b/Code/CryEngine/CryCommon/CrySizer.h index 62b1acf489..7a6f6cf962 100644 --- a/Code/CryEngine/CryCommon/CrySizer.h +++ b/Code/CryEngine/CryCommon/CrySizer.h @@ -33,7 +33,6 @@ #include #include #include -#include #include // forward declarations for overloads @@ -249,12 +248,6 @@ public: void AddObject([[maybe_unused]] const AZ::Vector3& rObj) {} void AddObject(void*) {} - template - void AddObject(const Array2d& array2d) - { - this->AddObject(array2d.m_pData, array2d.GetDataSize()); - } - // overloads for container, will automaticly traverse the content template void AddObject(const std::list& rList) diff --git a/Code/CryEngine/CryCommon/CryUtils.h b/Code/CryEngine/CryCommon/CryUtils.h deleted file mode 100644 index 314ee7bc5f..0000000000 --- a/Code/CryEngine/CryCommon/CryUtils.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#pragma once - -#include // size_t - -namespace Detail -{ - template - char (&ArrayCountHelper(T(&)[size]))[size]; -} - -#define CRY_ARRAY_COUNT(arr) sizeof(::Detail::ArrayCountHelper(arr)) diff --git a/Code/CryEngine/CryCommon/CryZlib.h b/Code/CryEngine/CryCommon/CryZlib.h deleted file mode 100644 index 8abb0d010a..0000000000 --- a/Code/CryEngine/CryCommon/CryZlib.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#pragma once - -// Include this file instead of including zlib.h directly -// because zconf.h (included by zlib.h) defines WINDOWS and WIN32 - those -// definitions conflict with CryEngine's definitions. - -#if defined(CRY_TMP_DEFINED_WINDOWS) || defined(CRY_TMP_DEFINED_WIN32) -# error CRY_TMP_DEFINED_WINDOWS and/or CRY_TMP_DEFINED_WIN32 already defined -#endif - -#if defined(WINDOWS) -# define CRY_TMP_DEFINED_WINDOWS 1 -#endif -#if defined(WIN32) -# define CRY_TMP_DEFINED_WIN32 1 -#endif - -#include - -#if !defined(CRY_TMP_DEFINED_WINDOWS) -# undef WINDOWS -#endif -#undef CRY_TMP_DEFINED_WINDOWS -#if !defined(CRY_TMP_DEFINED_WIN32) -# undef WIN32 -#endif -#undef CRY_TMP_DEFINED_WIN32 diff --git a/Code/CryEngine/CryCommon/FinalizingSpline.h b/Code/CryEngine/CryCommon/FinalizingSpline.h deleted file mode 100644 index 1fb644eae9..0000000000 --- a/Code/CryEngine/CryCommon/FinalizingSpline.h +++ /dev/null @@ -1,1043 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_FINALIZINGSPLINE_H -#define CRYINCLUDE_CRYCOMMON_FINALIZINGSPLINE_H -#pragma once - - -#include // <> required for Interfuscator -#include -#include "CryCustomTypes.h" - -inline bool IsEquivalent(float a, float b, float eps) -{ - return abs(a - b) <= eps; -} - -// change this value to 1 run spline verification code; this was previously enabled in debug and -// was causing issues because triggering the assert would steal the focus from the editor -// and cause the user to put a control point in the wrong spot. we don't understand this code -// enough to triage the asserts yet, but things seem to be functioning properly. -#define VERIFY_SPLINE_CONVERSION 0 - -namespace spline -{ - ////////////////////////////////////////////////////////////////////////// - // FinalizingSpline - ////////////////////////////////////////////////////////////////////////// - - template - class FinalizingSpline - : public CBaseSplineInterpolator - { - public: - using_type(Source, value_type); - using_type(Source, key_type); - using_type(ISplineInterpolator, ValueType); - - FinalizingSpline() - : m_pFinal(0) - {} - - void SetFinal(Final* pFinal) - { - m_pFinal = pFinal; - m_pFinal->to_source(*this); - } - - // Most spline functions use source spline (base class). - // interpolate() uses dest, for fidelity. - virtual void Interpolate(float time, ValueType& value) - { - Source::update(); - assert(m_pFinal); - m_pFinal->interpolate(time, *(value_type*)&value); - } - - virtual void EvalInTangent(float time, ValueType& value) - { - Source::update(); - assert(m_pFinal); - m_pFinal->evalInTangent(time, *(value_type*)&value); - - } - - virtual void EvalOutTangent(float time, ValueType& value) - { - Source::update(); - assert(m_pFinal); - m_pFinal->evalOutTangent(time, *(value_type*)&value); - - } - - virtual void eval(float time, ValueType& value) - { - Source::update(); - assert(m_pFinal); - m_pFinal->interpolate(time, *(value_type*)&value); - } - - // Update dest when source modified. - // Should be called for every update to source spline. - virtual void SetModified(bool bOn, bool bSort = false) - { - Source::SetModified(bOn, bSort); - assert(m_pFinal); - m_pFinal->from_source(*this); - } - - virtual bool GetKeyTangents(int k, ValueType& tin, ValueType& tout) - { - if (k >= 0 && k < this->num_keys()) - { - this->ToValueType(Source::ds(k), tin); - this->ToValueType(Source::dd(k), tout); - return true; - } - else - { - return false; - } - } - - virtual int GetKeyFlags(int k) - { - return Source::flags(k); - } - - /////////////////////////////////////////// - - virtual void SerializeSpline([[maybe_unused]] XmlNodeRef& node, [[maybe_unused]] bool bLoading) - {} - - protected: - - Final* m_pFinal; - }; - -#if 0 - - ////////////////////////////////////////////////////////////////////////// - // LookupTableSpline - ////////////////////////////////////////////////////////////////////////// - - template - class LookupTableSplineInterpolater - { - public: - ILINE static void fast_interpolate(float t, value_type& val, S* m_table) - { - t *= nMAX_ENTRIES - 1.0f; - float frac = t - floorf(t); - int idx = int(t); - val = value_type(m_table[idx]) * (1.f - frac); - val += value_type(m_table[idx + 1]) * frac; - } - }; - - template - class LookupTableSplineInterpolater - { - enum - { - SHIFT_AMOUNT = 24 - }; - - public: - ILINE static void fast_interpolate(float t, value_type& val, UnitFloat8* m_table) - { - const float scale = (float)(1 << SHIFT_AMOUNT); - uint32 ti = uint32(t * scale * (nMAX_ENTRIES - 1.0f)); - uint32 idx = ti >> SHIFT_AMOUNT; - uint32 frac = ti - (idx << SHIFT_AMOUNT); - uint32 vali = (uint32)m_table[idx + 1].GetStore() * frac; - frac = (1 << SHIFT_AMOUNT) - frac; - vali += (uint32)m_table[idx].GetStore() * frac; - val = (value_type)vali * (1.0f / (255.0f * scale)); - } - }; - - - template - class LookupTableSpline - : public FinalizingSpline - { - typedef FinalizingSpline super_type; - using super_type::m_pSource; - using super_type::is_updated; - - enum - { - nSTORE_SIZE = 128 - }; - enum - { - nMAX_ENTRIES = nSTORE_SIZE - 1 - }; - enum - { - nMIN_VALUE = nMAX_ENTRIES - }; - - public: - - using_type(super_type, value_type); - - LookupTableSpline() - { - init(); - } - - LookupTableSpline(const LookupTableSpline& other) - : super_type(other) - { - init(); - update(); - } - void operator=(const LookupTableSpline& other) - { - super_type::operator=(other); - update(); - } - - ~LookupTableSpline() - { - delete[] m_table; - } - - void interpolate(float t, value_type& val) - { - if (!is_updated()) - { - update(); - } - fast_interpolate(clamp_tpl(t, 0.0f, 1.0f), val); - } - - void fast_interpolate(float t, value_type& val) const - { - LookupTableSplineInterpolater::fast_interpolate(t, val, m_table); - } - - ILINE void min_value(value_type& val) const - { - val = value_type(m_table[nMIN_VALUE]); - } - - void finalize() - { - if (!is_updated()) - { - update(); - } - super_type::finalize(); - } - - void GetMemoryUsage(ICrySizer* pSizer, bool bSelf = false) const - { - if (bSelf && !pSizer->AddObjectSize(this)) - { - return; - } - super_type::GetMemoryUsage(pSizer); - if (m_table) - { - pSizer->AddObject(m_table, nSTORE_SIZE * sizeof(S)); - } - } - - protected: - - void update() - { - value_type minVal(1.0f); - if (!m_table) - { - m_table = new S[nSTORE_SIZE]; - } - if (!m_pSource || m_pSource->empty()) - { - for (int i = 0; i < nMAX_ENTRIES; i++) - { - m_table[i] = value_type(1.f); - } - } - else - { - m_pSource->update(); - for (int i = 0; i < nMAX_ENTRIES; i++) - { - value_type val; - float t = float(i) * (1.0f / (float)(nMAX_ENTRIES - 1)); - m_pSource->interpolate(t, val); - minVal = min(minVal, val); - m_table[i] = val; - } - } - m_table[nMIN_VALUE] = minVal; - } - - void init() - { - m_table = NULL; - } - - bool is_updated() const - { - return super_type::is_updated() && m_table; - } - - S* m_table; - }; - -#endif // LookupTableSpline - - ////////////////////////////////////////////////////////////////////////// - // OptSpline - // Minimises memory for key-based storage. Uses 8-bit compressed key values. - ////////////////////////////////////////////////////////////////////////// - - /* - Choose basis vars t, u = 1-t, ttu, uut. - This produces exact values at t = 0 and 1, even with compressed coefficients. - For end points and slopes v0, v1, s0, s1, - solve for coefficients a, b, c, d: - - v(t) = a u + b t + c uut + d utt - s(t) = v'(t) = -a + b + c (1-4t+3t^2) + d (2t-3t^2) - - v(0) = a - v(1) = b - s(0) = -a + b + c - s(1) = -a + b - d - - So - - a = v0 - b = v1 - c = s0 + v0 - v1 - d = -s1 - v0 + v1 - - s0 = c + v1 - v0 - s1 = -d + v1 - v0 - - For compression, all values of v and t are limited to [0..1]. - Find the max possible slope values, such that values never exceed this range. - - If v0 = v1 = 0, then max slopes would have - - c = d - v(1/2) = 1 - c/8 + d/8 = 1 - c = 4 - - If v0 = 0 and v1 = 1, then max slopes would have - - c = d - v(1/3) = 1 - 1/3 + c 4/9 + d 2/9 = 1 - c = 1 - */ - - template - class OptSpline - { - typedef OptSpline self_type; - - public: - - typedef T value_type; - typedef SplineKey key_type; - typedef TSplineSlopes source_spline; - - protected: - - static const int DIM = sizeof(value_type) / sizeof(float); - - template - struct array - { - S elems[DIM]; - - ILINE array() - { - for (int i = 0; i < DIM; i++) - { - elems[i] = 0; - } - } - ILINE array(value_type const& val) - { - const float* aVal = reinterpret_cast(&val); - for (int i = 0; i < DIM; i++) - { - elems[i] = aVal[i]; - } - } - ILINE array& operator=(value_type const& val) - { - new(this)array(val); - return *this; - } - - ILINE operator value_type() const - { - PREFAST_SUPPRESS_WARNING(6001) - value_type val; - float* aVal = reinterpret_cast(&val); - for (int i = 0; i < DIM; i++) - { - aVal[i] = elems[i]; - } - return val; - } - - ILINE bool operator !() const - { - for (int i = 0; i < DIM; i++) - { - if (elems[i]) - { - return false; - } - } - return true; - } - ILINE bool operator ==(array const& o) const - { - for (int i = 0; i < DIM; i++) - { - if (!(elems[i] == o.elems[i])) - { - return false; - } - } - return true; - } - ILINE S& operator [](int i) - { - assert(i >= 0 && i < DIM); - return elems[i]; - } - ILINE const S& operator [](int i) const - { - assert(i >= 0 && i < DIM); - return elems[i]; - } - }; - - typedef UnitFloat8 TStore; - typedef array< UnitFloat8 > VStore; - typedef array< float> FStore; - typedef array< TFixed > SStore; - - // - // Element storage - // - struct Point - { - TStore st; // Time of this point. - VStore sv; // Value at this point. - FStore dd; // Out tangent - FStore ds; // In tangent - int flags; // key type flags - - void set_key(float t, value_type v) - { - st = t; - sv = v; - } - void set_flags(int f) - { - flags = f; - } - - void set_tangent(value_type _dd, value_type _ds) - { - dd = _dd; - ds = _ds; - } - - }; - - struct Elem - : Point - { - using Point::st; // Total BS required for idiotic gcc. - using Point::sv; - - SStore sc, sd; // Coefficients for uut and utt. - - // Compute coeffs based on 2 endpoints & slopes. - void set_slopes(value_type s0, value_type s1) - { - value_type dv = value_type((this)[1].sv) - value_type(sv); - sc = s0 - dv; - sd = dv - s1; - } - - ILINE void eval(value_type& val, float t) const - { - float u = 1.f - t, - tu = t * u; - - float* aF = reinterpret_cast(&val); - for (int i = 0; i < DIM; i++) - { - float elem = float(sv[i]) * u + float(this[1].sv[i]) * t; - elem += (float(sc[i]) * u + float(sd[i]) * t) * tu; - elem = elem < 0.f ? 0.f : elem; - elem = elem > 1.f ? 1.f : elem; - aF[i] = elem; - } - } - - // Use the derivative of eval formular to caculate the tangent of t - ILINE void dev_eval(value_type& val, float t, value_type value) const - { - float u = 1.f - t, - tu = t * u; - - float* aF = reinterpret_cast(&val); - float* currentValue = reinterpret_cast(&value); - for (int i = 0; i < DIM; i++) - { - float elem = -float(sv[i]) + float(currentValue[i]); - elem += float(sc[i]) * (1 - 4 * t + 3 * t * t) - + float(sd[i]) * (2 * t - 3 * t * t); - aF[i] = elem; - } - } - - value_type value() const - { - return sv; - } - - // Slopes - // v(t) = v0 u + v1 t + (c u + d t) t u - // v\t(t) = v1 - v0 + (d - c) t u + (d t + c u) (u-t) - // v\t(0) = v1 - v0 + c - // v\t(1) = v1 - v0 - d - value_type start_slope() const - { - return value_type((this)[1].sv) - value_type(sv) + value_type(sc); - } - value_type end_slope() const - { - return value_type((this)[1].sv) - value_type(sv) - value_type(sd); - } - }; - - struct Spline - { - uint8 nKeys; // Total number of keys. - Elem aElems[1]; // Points and slopes. Last element is just Point without slopes. - - Spline() - : nKeys(0) - { - // Empty spline sets dummy values to max, for consistency. - aElems[0].st = TStore(1); - aElems[0].sv = value_type(1); - aElems[0].flags = 0; - aElems[0].dd = FStore(0); - aElems[0].ds = FStore(0); - } - - Spline(int keys) - : nKeys(aznumeric_caster(keys)) - { - #ifdef _DEBUG - if (nKeys) - { - ((char*)this)[alloc_size()] = 77; - } - #endif - } - - static size_t alloc_size(int keys) - { - assert(keys > 0); - return sizeof(Spline) + max(keys - 1, 0) * sizeof(Elem); - } - size_t alloc_size() const - { - return alloc_size(nKeys); - } - - key_type key(int n) const - { - key_type key; - if (n < nKeys) - { - key.time = aElems[n].st; - key.value = aElems[n].sv; - - // Infer slope flags from slopes. - if (n >= 0) // bezier curve inTangent and outtangent will be asigned by user - { - key.flags = aElems[n].flags; - key.dd = aElems[n].dd; - key.ds = aElems[n].ds; - } - } - return key; - } - - void interpolate(float t, value_type& val) const - { - float prev_t = aElems[0].st; - if (t <= prev_t) - { - val = aElems[0].sv; - } - else - { - // Find spline segment. - const Elem* pEnd = aElems + nKeys - 1; - const Elem* pElem = aElems; - for (; pElem < pEnd; ++pElem) - { - float cur_t = pElem[1].st; - if (t <= cur_t) - { - // Eval - pElem->eval(val, (t - prev_t) / (cur_t - prev_t)); - return; - } - prev_t = cur_t; - } - - // Last point value. - val = pElem->sv; - } - } - - - void EvalInTangent(float t, value_type& val) const - { - // Compute coeffs dynamically. - - float prev_t = aElems[0].st; - value_type prev_v = aElems[0].sv; - if (t <= prev_t) - { - val = 0; - } - else - { - // Find spline segment. - const Elem* pEnd = aElems + nKeys - 1; - const Elem* pElem = aElems; - for (; pElem < pEnd; ++pElem) - { - float cur_t = pElem[1].st; - value_type cur_v = pElem[1].sv; - value_type Tvalue = value_type(0); - interpolate(t, Tvalue); - - if (t <= cur_t) - { - - Elem newElement; - newElement.set_key(prev_t, prev_v); - value_type dd = Tvalue - prev_v; - - value_type ds = aElems[0].ds; - - newElement.set_tangent(dd, ds); - - - value_type tds = Tvalue - prev_v; - if (pElem[0].dd == FStore(0)) - { - tds = 2 * tds; - } - - newElement.sc = dd - dd; - newElement.sd = dd - value_type(tds); - - newElement.dev_eval(val, 1, Tvalue); - return; - } - prev_t = cur_t; - prev_v = cur_v; - } - - // Last point value. - val = 0.0f; - } - - } - - - void EvalOutTangent(float t, value_type& val) const - { - // Compute coeffs dynamically. - - float prev_t = aElems[0].st; - value_type prev_v = aElems[0].sv; - if (t <= prev_t) - { - val = 0; - } - else - { - // Find spline segment. - const Elem* pEnd = aElems + nKeys - 1; - const Elem* pElem = aElems; - for (; pElem < pEnd; ++pElem) - { - float cur_t = pElem[1].st; - value_type cur_v = pElem[1].sv; - value_type Tvalue = value_type(0); - interpolate(t, Tvalue); - - if (t <= cur_t) - { - // Create a temporary Elem to hold the info of the inserted key. - // Since we will insert a key between pre_key and curr_key, the - // slop and in/out tangent need to be recaculated. - Elem newElement; - // Set value and time for new key - newElement.set_key(t, Tvalue); - - //Caculate out tangent of new key. - value_type dd = cur_v - Tvalue; - if (pElem[1].ds == FStore(0)) - { - dd = 2 * dd; - } - //Caculate in tangent of new key - value_type ds = Tvalue - prev_v; - if (pElem[0].dd == FStore(0)) - { - ds = 2 * ds; - } - newElement.set_tangent(dd,ds); - - value_type dv = cur_v - Tvalue; - newElement.sc = dd - dv; - newElement.sd = dv - value_type(pElem[1].ds); - - newElement.dev_eval(val, 0, cur_v); - return; - } - prev_t = cur_t; - prev_v = cur_v; - } - - // Last point value. - val = 0.0f; - } - } - - void min_value(value_type& val) const - { - VStore sval = aElems[0].sv; - for (int n = 1; n < nKeys; n++) - { - for (int i = 0; i < DIM; i++) - { - sval[i] = min(sval[i], aElems[n].sv[i]); - } - } - val = sval; - } - - void max_value(value_type& val) const - { - VStore sval = aElems[0].sv; - for (int n = 1; n < nKeys; n++) - { - for (int i = 0; i < DIM; i++) - { - sval[i] = max(sval[i], aElems[n].sv[i]); - } - } - val = sval; - } - - value_type default_slope(int n) const - { - return n > 0 && n < nKeys - 1 ? - minmag(aElems[n].value() - aElems[n - 1].value(), aElems[n + 1].value() - aElems[n].value()) - : value_type(0.f); - } - - void validate() const - { - #ifdef _DEBUG - if (nKeys) - { - assert(((char const*)this)[alloc_size()] == 77); - } - #endif - } - }; - - Spline* m_pSpline; - - void alloc(int nKeys) - { - if (nKeys) - { - size_t nAlloc = Spline::alloc_size(nKeys) - #ifdef _DEBUG - + 1 - #endif - ; - - //set the memory to 0 since the comparison between two splines are comparing memory directly. - //And set functions won't set the memory because of alignment. - m_pSpline = new(CryModuleCalloc(1, nAlloc))Spline(nKeys); - } - else - { - m_pSpline = NULL; - } - } - - void dealloc() - { - CryModuleFree(m_pSpline); - m_pSpline = nullptr; - } - - public: - - ~OptSpline() - { - dealloc(); - } - - OptSpline() - { - m_pSpline = NULL; - } - - OptSpline(const self_type& in) - { - if (!in.empty() && in.num_keys() != 0) - { - alloc(in.num_keys()); - memcpy(m_pSpline, in.m_pSpline, in.m_pSpline->alloc_size()); - m_pSpline->validate(); - } - else - { - m_pSpline = NULL; - } - } - - self_type& operator=(const self_type& in) - { - dealloc(); - new(this)self_type(in); - return *this; - } - - bool operator == (const self_type& o) const - { - if (empty() && o.empty()) - { - return true; - } - if (num_keys() != o.num_keys()) - { - return false; - } - return !memcmp(m_pSpline, o.m_pSpline, m_pSpline->alloc_size()); - } - - // - // Adaptors for CBaseSplineInterpolator - // - bool empty() const - { - return !m_pSpline; - } - void clear() - { - dealloc(); - m_pSpline = NULL; - } - ILINE int num_keys() const - { - return m_pSpline ? m_pSpline->nKeys : 0; - } - - ILINE key_type key(int n) const - { - assert(n < num_keys()); - return m_pSpline->key(n); - } - - ILINE void interpolate(float t, value_type& val) const - { - if (!empty()) - { - m_pSpline->interpolate(t, val); - } - else - { - val = value_type(1.f); - } - } - - - ILINE void evalInTangent(float t, value_type& val) const - { - if (!empty()) - { - m_pSpline->EvalInTangent(t, val); - } - else - { - val = value_type(0.f); - } - } - - ILINE void evalOutTangent(float t, value_type& val) const - { - if (!empty()) - { - m_pSpline->EvalOutTangent(t, val); - } - else - { - val = value_type(0.f); - } - } - - void GetMemoryUsage(ICrySizer* pSizer) const - { - if (!empty()) - { - pSizer->AddObject(m_pSpline, m_pSpline->alloc_size()); - } - } - - // - // Additional methods. - // - void min_value(value_type& val) const - { - if (!empty()) - { - m_pSpline->min_value(val); - } - else - { - val = value_type(1.f); - } - } - void max_value(value_type& val) const - { - if (!empty()) - { - m_pSpline->max_value(val); - } - else - { - val = value_type(1.f); - } - } - - void from_source(source_spline& source) - { - dealloc(); - source.update(); - int nKeys = source.num_keys(); - - // Check for trivial spline. - bool is_default = true; - for (int i = 0; i < nKeys; i++) - { - if (source.value(i) != value_type(1)) - { - is_default = false; - break; - } - } - if (is_default) - { - nKeys = 0; - } - - alloc(nKeys); - if (nKeys) - { - // First set key values, then compute slope coefficients. - for (int i = 0; i < nKeys; i++) - { - m_pSpline->aElems[i].set_key(source.time(i), source.value(i)); - m_pSpline->aElems[i].set_flags(source.flags(i)); - m_pSpline->aElems[i].set_tangent(source.dd(i), source.ds(i)); - - } - for (int i = 0; i < nKeys - 1; i++) - { - m_pSpline->aElems[i].set_slopes(source.dd(i), source.ds(i + 1)); - } - -#if VERIFY_SPLINE_CONVERSION - // Verify accurate conversion to OptSpline. - for (int i = 0; i < nKeys; i++) - { - key_type ks = source.key(i); - key_type kf = key(i); - - assert(TStore(ks.time) == TStore(kf.time)); - assert(VStore(ks.value) == VStore(kf.value)); - - static const float fSlopeEquivalence = 1.f / 60.f; - assert(IsEquivalent(ks.ds, kf.ds, fSlopeEquivalence)); - assert(IsEquivalent(ks.dd, kf.dd, fSlopeEquivalence)); - - // Verify accurate reconstruction of slope flags. - ks.flags &= (SPLINE_KEY_TANGENT_IN_MASK | SPLINE_KEY_TANGENT_OUT_MASK); - - value_type default_slope = i > 0 && i < nKeys - 1 ? - minmag(ks.value - source.key(i - 1).value, source.key(i + 1).value - ks.value) - : value_type(0.f); - if (i == 0 || IsEquivalent(ks.ds, default_slope, fSlopeEquivalence)) - { - ks.flags &= ~SPLINE_KEY_TANGENT_IN_MASK; - } - if (i == nKeys - 1 || IsEquivalent(ks.dd, default_slope, fSlopeEquivalence)) - { - ks.flags &= ~SPLINE_KEY_TANGENT_OUT_MASK; - } - assert(ks.flags == kf.flags); - } -#endif //VERIFY_SPLINE_CONVERSION - } - } - - void to_source(source_spline& source) const - { - int nKeys = num_keys(); - source.resize(nKeys); - for (int i = 0; i < nKeys; i++) - { - source.key(i) = key(i); - } - source.update(); - } - }; -}; - -#endif // CRYINCLUDE_CRYCOMMON_FINALIZINGSPLINE_H diff --git a/Code/CryEngine/CryCommon/GeomQuery.h b/Code/CryEngine/CryCommon/GeomQuery.h deleted file mode 100644 index 6b59f92dce..0000000000 --- a/Code/CryEngine/CryCommon/GeomQuery.h +++ /dev/null @@ -1,469 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Description : Facility for efficiently generating random positions on geometry - -#ifndef CRYINCLUDE_CRYCOMMON_GEOMQUERY_H -#define CRYINCLUDE_CRYCOMMON_GEOMQUERY_H -#pragma once - - -#include "Cry_Geo.h" -#include "CryArray.h" -#include "Random.h" - -////////////////////////////////////////////////////////////////////// -// Extents cache - -class CGeomExtent -{ -public: - - CGeomExtent() - : m_nEmptyEndParts(0) {} - - ILINE operator bool() const - { - return m_afCumExtents.capacity() + m_nEmptyEndParts != 0; - } - ILINE int NumParts() const - { - return m_afCumExtents.size(); - } - ILINE float TotalExtent() const - { - return !m_afCumExtents.empty() ? m_afCumExtents.back() : 0.f; - } - - void Clear() - { - m_afCumExtents.clear(); - m_nEmptyEndParts = 0; - } - void AddPart(float fExtent) - { - // Defer empty parts until a non-empty part is added. - if (fExtent <= 0.f) - { - m_nEmptyEndParts++; - } - else - { - float fTotal = TotalExtent(); - for (; m_nEmptyEndParts; m_nEmptyEndParts--) - { - m_afCumExtents.push_back(fTotal); - } - m_afCumExtents.push_back(fTotal + fExtent); - } - } - void ReserveParts(int nCount) - { - m_afCumExtents.reserve(nCount); - } - - // Find element in sorted array <= index (normalized 0 to 1) - int GetPart(float fIndex) const - { - int last = m_afCumExtents.size() - 1; - if (last <= 0) - { - return last; - } - - fIndex *= m_afCumExtents[last]; - - // Binary search thru array. - int lo = 0, hi = last; - while (lo < hi) - { - int i = (lo + hi) >> 1; - if (fIndex < m_afCumExtents[i]) - { - hi = i; - } - else - { - lo = i + 1; - } - } - - assert(lo == 0 || m_afCumExtents[lo] > m_afCumExtents[lo - 1]); - return lo; - } - - int RandomPart() const - { - return GetPart(cry_random(0.0f, 1.0f)); - } - -protected: - - DynArray m_afCumExtents; - int m_nEmptyEndParts; -}; - -class CGeomExtents -{ -public: - - ILINE CGeomExtents() - : m_aExtents(0) {} - ~CGeomExtents() - { delete[] m_aExtents; } - - void Clear() - { - delete[] m_aExtents; - m_aExtents = 0; - } - - ILINE CGeomExtent const& operator [](EGeomForm eForm) const - { - assert(eForm >= 0 && eForm < MaxGeomForm); - if (m_aExtents) - { - return m_aExtents[eForm]; - } - - static CGeomExtent s_empty; - return s_empty; - } - - ILINE CGeomExtent& Make(EGeomForm eForm) - { - assert(eForm >= 0 && eForm < MaxGeomForm); - if (!m_aExtents) - { - m_aExtents = new CGeomExtent[4]; - } - return m_aExtents[eForm]; - } - -protected: - CGeomExtent* m_aExtents; -}; - - -// Other random/extent functions - -inline float ScaleExtent(EGeomForm eForm, float fScale) -{ - switch (eForm) - { - default: - return 1; - case GeomForm_Edges: - return fScale; - case GeomForm_Surface: - return fScale * fScale; - case GeomForm_Volume: - return fScale * fScale * fScale; - } -} - -inline float BoxExtent(EGeomForm eForm, Vec3 const& vSize) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: - return 8.f; - case GeomForm_Edges: - return (vSize.x + vSize.y + vSize.z) * 8.f; - case GeomForm_Surface: - return (vSize.x * vSize.y + vSize.x * vSize.z + vSize.y * vSize.z) * 8.f; - case GeomForm_Volume: - return vSize.x * vSize.y * vSize.z * 8.f; - } -} - -// Utility functions. - -template -inline -const typename T::value_type& RandomElem(const T& array) -{ - int n = cry_random(0U, array.size() - 1); - return array[n]; -} - -// Geometric primitive randomizing functions. -ILINE void BoxRandomPos(PosNorm& ran, EGeomForm eForm, Vec3 const& vSize) -{ - ran.vPos = cry_random_componentwise(-vSize, vSize); - ran.vNorm = ran.vPos; - - if (eForm != GeomForm_Volume) - { - // Generate a random corner, for collapsing random point. - int nCorner = cry_random(0, 7); - ran.vNorm.x = (((nCorner & 1) << 1) - 1) * vSize.x; - ran.vNorm.y = (((nCorner & 2)) - 1) * vSize.y; - ran.vNorm.z = (((nCorner & 4) >> 1) - 1) * vSize.z; - - if (eForm == GeomForm_Vertices) - { - ran.vPos = ran.vNorm; - } - else if (eForm == GeomForm_Surface) - { - // Collapse one axis. - float fAxis = cry_random(0.0f, vSize.x * vSize.y + vSize.y * vSize.z + vSize.z * vSize.x); - if ((fAxis -= vSize.y * vSize.z) < 0.f) - { - ran.vPos.x = ran.vNorm.x; - ran.vNorm.y = ran.vNorm.z = 0.f; - } - else if ((fAxis -= vSize.z * vSize.x) < 0.f) - { - ran.vPos.y = ran.vNorm.y; - ran.vNorm.x = ran.vNorm.z = 0.f; - } - else - { - ran.vPos.z = ran.vNorm.z; - ran.vNorm.x = ran.vNorm.y = 0.f; - } - } - else if (eForm == GeomForm_Edges) - { - // Collapse 2 axes. - float fAxis = cry_random(0.0f, vSize.x + vSize.y + vSize.z); - if ((fAxis -= vSize.x) < 0.f) - { - ran.vPos.y = ran.vNorm.y; - ran.vPos.z = ran.vNorm.z; - ran.vNorm.x = 0.f; - } - else if ((fAxis -= vSize.y) < 0.f) - { - ran.vPos.x = ran.vNorm.x; - ran.vPos.z = ran.vNorm.z; - ran.vNorm.y = 0.f; - } - else - { - ran.vPos.x = ran.vNorm.x; - ran.vPos.y = ran.vNorm.y; - ran.vNorm.z = 0.f; - } - } - } - - ran.vNorm.Normalize(); -} - -inline float CircleExtent(EGeomForm eForm, float fRadius) -{ - switch (eForm) - { - case GeomForm_Edges: - return gf_PI2 * fRadius; - case GeomForm_Surface: - return gf_PI * square(fRadius); - default: - return 1.f; - } -} - -inline Vec2 CircleRandomPoint(EGeomForm eForm, float fRadius) -{ - Vec2 vPt; - switch (eForm) - { - case GeomForm_Edges: - // Generate random angle. - sincos_tpl(cry_random(0.0f, gf_PI2), &vPt.y, &vPt.x); - vPt *= fRadius; - break; - case GeomForm_Surface: - // Generate random angle, and radius, adjusted for even distribution. - sincos_tpl(cry_random(0.0f, gf_PI2), &vPt.y, &vPt.x); - vPt *= sqrt(cry_random(0.0f, 1.0f)) * fRadius; - break; - default: - vPt.x = vPt.y = 0.f; - } - return vPt; -} - -inline float SphereExtent(EGeomForm eForm, float fRadius) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: - case GeomForm_Edges: - return 0.f; - case GeomForm_Surface: - return gf_PI * 4.f * sqr(fRadius); - case GeomForm_Volume: - return gf_PI * 4.f / 3.f * cube(fRadius); - } -} - -inline void SphereRandomPos(PosNorm& ran, EGeomForm eForm, float fRadius) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: - case GeomForm_Edges: - ran.vPos.zero(); - ran.vNorm.zero(); - return; - case GeomForm_Surface: - case GeomForm_Volume: - { - // Generate point on surface, as normal. - float fPhi = cry_random(0.0f, gf_PI2); - float fZ = cry_random(-1.f, 1.f); - float fH = sqrt_tpl(1.f - fZ * fZ); - sincos_tpl(fPhi, &ran.vNorm.y, &ran.vNorm.x); - ran.vNorm.x *= fH; - ran.vNorm.y *= fH; - ran.vNorm.z = fZ; - - ran.vPos = ran.vNorm; - if (eForm == GeomForm_Volume) - { - float fV = cry_random(0.0f, 1.0f); - float fR = pow_tpl(fV, 0.333333f); - ran.vPos *= fR; - } - ran.vPos *= fRadius; - break; - } - } -} - -// Triangle randomisation functions - -inline float TriExtent(EGeomForm eForm, Vec3 const aPos[3]) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Edges: - return (aPos[1] - aPos[0]).GetLengthFast(); - case GeomForm_Surface: - return ((aPos[1] - aPos[0]) % (aPos[2] - aPos[0])).GetLengthFast() * 0.5f; - case GeomForm_Volume: - // Generate signed volume of pyramid by computing triple product of vertices. - return ((aPos[0] ^ aPos[1]) | aPos[2]) / 6.0f; - } -} - -inline void TriRandomPos(PosNorm& ran, EGeomForm eForm, PosNorm const aRan[3], bool bDoNormals) -{ - // Generate interpolators for verts. - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: - ran = aRan[0]; - return; - case GeomForm_Edges: - { - float t = cry_random(0.0f, 1.0f); - ran.vPos = aRan[0].vPos * (1.f - t) + aRan[1].vPos * t; - if (bDoNormals) - { - ran.vNorm = aRan[0].vNorm * (1.f - t) + aRan[1].vNorm * t; - } - break; - } - case GeomForm_Surface: - { - float t0 = cry_random(0.0f, 1.0f); - float t1 = cry_random(0.0f, 1.0f); - float t2 = cry_random(0.0f, 1.0f); - float fSum = t0 + t1 + t2; - ran.vPos = (aRan[0].vPos * t0 + aRan[1].vPos * t1 + aRan[2].vPos * t2) * (1.f / fSum); - if (bDoNormals) - { - ran.vNorm = aRan[0].vNorm * t0 + aRan[1].vNorm * t1 + aRan[2].vNorm * t2; - } - break; - } - case GeomForm_Volume: - { - float t0 = cry_random(0.0f, 1.0f); - float t1 = cry_random(0.0f, 1.0f); - float t2 = cry_random(0.0f, 1.0f); - float t3 = cry_random(0.0f, 1.0f); - float fSum = t0 + t1 + t2 + t3; - ran.vPos = (aRan[0].vPos * t0 + aRan[1].vPos * t1 + aRan[2].vPos * t2) * (1.f / fSum); - if (bDoNormals) - { - ran.vNorm = (aRan[0].vNorm * t0 + aRan[1].vNorm * t1 + aRan[2].vNorm * t2) * (1.f - t3) + ran.vPos.GetNormalizedFast() * t3; - } - break; - } - } - if (bDoNormals) - { - ran.vNorm.Normalize(); - } -} - -// Mesh random pos functions - -inline int TriMeshPartCount(EGeomForm eForm, int nIndices) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: - case GeomForm_Edges: - // Number of edges = verts. - return nIndices; - case GeomForm_Surface: - case GeomForm_Volume: - // Number of tris. - assert(nIndices % 3 == 0); - return nIndices / 3; - } -} - -inline int TriIndices(int aIndices[3], int nPart, EGeomForm eForm) -{ - switch (eForm) - { - default: - assert(0); - case GeomForm_Vertices: // Part is vert index - aIndices[0] = nPart; - return 1; - case GeomForm_Edges: // Part is vert index - aIndices[0] = nPart; - aIndices[1] = nPart % 3 < 2 ? nPart + 1 : nPart - 2; - return 2; - case GeomForm_Surface: // Part is tri index - case GeomForm_Volume: - aIndices[0] = nPart * 3; - aIndices[1] = aIndices[0] + 1; - aIndices[2] = aIndices[0] + 2; - return 3; - } -} - - -#endif // CRYINCLUDE_CRYCOMMON_GEOMQUERY_H diff --git a/Code/CryEngine/CryCommon/HashGrid.h b/Code/CryEngine/CryCommon/HashGrid.h deleted file mode 100644 index 31534e9654..0000000000 --- a/Code/CryEngine/CryCommon/HashGrid.h +++ /dev/null @@ -1,617 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_HASHGRID_H -#define CRYINCLUDE_CRYCOMMON_HASHGRID_H -#pragma once - - - -template -struct hash_grid_2d -{ - typedef Key key_type; - typedef typename key_type::value_type key_value; - - typedef DiscreetKey discreet_type; - typedef typename discreet_type::value_type discreet_value; - - typedef hash_grid_2d type; - - hash_grid_2d(const key_value& cellSizeX, const key_value& cellSizeY, const key_value& cellSizeZ) - : scaleFactorX(1 / cellSizeX) - , scaleFactorY(1 / cellSizeY) - { - } - - inline discreet_type discreet(const key_type& key) const - { - return discreet_type(static_cast(key[0] * scaleFactorX), - static_cast(key[1] * scaleFactorY), - static_cast(0)); - } - - inline size_t hash(const key_type& key) const - { - return hash(discreet(key)); - } - - inline size_t hash(const discreet_type& discreet) const - { - return static_cast( - (discreet[0] ^ 920129341) + - (discreet[1] ^ 1926129311)); - } - - inline void swap(type& other) - { - std::swap(scaleFactorX, other.scaleFactorX); - std::swap(scaleFactorY, other.scaleFactorY); - } - -private: - key_value scaleFactorX; - key_value scaleFactorY; -}; - - -template -struct hash_grid_3d -{ - typedef Key key_type; - typedef typename key_type::value_type key_value; - - typedef DiscreetKey discreet_type; - typedef typename discreet_type::value_type discreet_value; - - typedef hash_grid_3d type; - - hash_grid_3d(const key_value& cellSizeX, const key_value& cellSizeY, const key_value& cellSizeZ) - : scaleFactorX(1 / cellSizeX) - , scaleFactorY(1 / cellSizeY) - , scaleFactorZ(1 / cellSizeZ) - { - } - - inline discreet_type discreet(const key_type& key) const - { - return discreet_type(static_cast(key[0] * scaleFactorX), - static_cast(key[1] * scaleFactorY), - static_cast(key[2] * scaleFactorZ)); - } - - inline size_t hash(const key_type& key) const - { - return hash(discreet(key)); - } - - inline size_t hash(const discreet_type& discreet) const - { - return static_cast( - (discreet[0] ^ 920129341ul) + - (discreet[1] ^ 1926129311ul) + - (discreet[2] ^ 3926129401ul)); - } - - inline void swap(type& other) - { - std::swap(scaleFactorX, other.scaleFactorX); - std::swap(scaleFactorY, other.scaleFactorY); - std::swap(scaleFactorZ, other.scaleFactorZ); - } - -private: - key_value scaleFactorX; - key_value scaleFactorY; - key_value scaleFactorZ; -}; - - -template -struct hash_grid_no_position -{ - KeyType operator()(const ValueType&) const - { - switch (0) - { - case 0: - "hash_grid query performed without a valid position-retriever implementation"; - } - ; - - return KeyType(); - } -}; - - -template > -class hash_grid - : protected KeyHash -{ -public: - enum - { - CellCount = NumberOfCells, - }; - - typedef ValueType value_type; - typedef KeyHash key_hash; - - typedef typename key_hash::key_type key_type; - typedef typename key_type::value_type key_value; - typedef typename key_hash::discreet_type discreet_type; - typedef typename discreet_type::value_type discreet_value; - - - typedef PositionRetriever position_retriever_type; - - typedef hash_grid type; - - typedef std::vector items_type; - - struct cell_type - { - cell_type() - : query(0) - { - } - - mutable uint32 query; - items_type items; - }; - typedef std::vector cells_type; - - inline hash_grid(float cellSizeX = 20.0f, float cellSizeY = 20.0f, float cellSizeZ = 20.0f, - const position_retriever_type& _position = position_retriever_type()) - : key_hash(cellSizeX, cellSizeY, cellSizeZ) - , position(_position) - , m_cells(CellCount) - , m_count(0) - , m_query(0) - { - } - - inline void clear() - { - m_cells.clear(); - m_cells.resize(CellCount); - m_count = 0; - m_query = 0; - } - - inline void swap(type& other) - { - m_cells.swap(other); - - std::swap(m_count, other.m_count); - key_hash::swap(other); - } - - inline size_t size() const - { - return m_count; - } - - inline bool empty() const - { - return m_count == 0; - } - - struct iterator - { - iterator() - : cell(~0u) - , item(~0u) - , grid(0) - { - } - - value_type& operator*() - { - return grid->m_cells[cell][item]; - } - - const value_type& operator*() const - { - return grid->m_cells[cell][item]; - } - - value_type* operator->() const - { - return (&**this); - } - - iterator& operator++() - { - assert(cell < grid_type::CellCount); - cell_type& items = grid->m_cells[cell]; - - if (!items.empty() && (item < items.size() - 1)) - { - ++item; - } - else - { - item = 0; - ++cell; - - while ((cell < type::CellCount) && grid->m_cells[cell].empty()) - { - ++cell; - } - } - - return *this; - } - - iterator operator++(int) - { - iterator tmp = *this; - ++*this; - return tmp; - } - - iterator& operator--() - { - if (item > 0) - { - --item; - } - else - { - --cell; - while ((cell > 0) && grid->m_cells[cell].empty()) - { - --cell; - } - - assert(cell < type::CellCount); - cell_type& items = grid->m_cells[cell]; - item = items.size() - 1; - } - - return *this; - } - - iterator operator--(int) - { - iterator tmp = *this; - ++*this; - return tmp; - } - - bool operator==(const iterator& other) const - { - return (cell == other.cell) && (item == other.item) && (grid == other.grid); - } - - bool operator!=(const iterator& other) const - { - return !(*this == other); - } - - private: - friend class hash_grid; - typedef hash_grid grid_type; - - iterator(size_t _cell, size_t _item, grid_type* _grid) - : grid(_grid) - , item(_item) - , cell(_cell) - { - } - - grid_type* grid; - size_t cell; - size_t item; - }; - - inline iterator begin() - { - uint32 item = 0; - uint32 cell = 0; - - while ((cell < type::CellCount) && m_cells[cell].empty()) - { - ++cell; - } - - return iterator(cell, item, this); - } - - inline iterator end() - { - return iterator(CellCount, 0, this); - } - - inline iterator insert(const key_type& key, const value_type& value) - { - size_t hash_value = KeyHash::hash(key); - size_t index = hash_value % CellCount; - - cell_type& cell = m_cells[index]; - items_type& items = cell.items; - - items.push_back(value); - ++m_count; - - return iterator(index, items.size() - 1, this); - } - - inline void erase(const key_type& key, const value_type& value) - { - size_t hash_value = KeyHash::hash(key); - size_t index = hash_value % CellCount; - - cell_type& cell = m_cells[index]; - items_type& items = cell.items; - - typename items_type::iterator it = items.begin(); - typename items_type::iterator end = items.end(); - - for (; it != end; ++it) - { - if (*it == value) - { - std::swap(*it, items.back()); - items.pop_back(); - --m_count; - return; - } - } - } - - inline iterator erase(const iterator& it) - { - --m_count; - cell_type& cell = m_cells[it.cell]; - items_type& items = cell.items; - std::swap(items[it.item], items.back()); - items.pop_back(); - if (!items.empty()) - { - return it; - } - - uint32 index = it.cell; - while ((index < CellCount) && m_cells[index].items.empty()) - { - ++index; - } - - return iterator(index, 0, this); - } - - inline iterator find(const key_type& key, const value_type& value) - { - size_t index = KeyHash::hash(key) % CellCount; - - cell_type& cell = m_cells[index]; - items_type& items = cell.items; - typename items_type::iterator it = items.begin(); - typename items_type::iterator iend = items.end(); - - for (; it != iend; ++it) - { - if (*it == value) - { - return iterator(index, it - items.begin(), this); - } - } - - return end(); - } - - inline iterator move(const iterator& it, const key_type& to) - { - size_t index = KeyHash::hash(to) % CellCount; - - if (index == it.cell) - { - return it; - } - - cell_type& cell = m_cells[it.cell]; - items_type& items = cell.items; - typename items_type::iterator iit = items.begin() + it.item; - - cell_type& to_cell = m_cells[index]; - items_type& to_items = to_cell.items; - to_items.push_back(*iit); - - std::swap(items[it.item], items.back()); - items.pop_back(); - - return iterator(index, to_items.size() - 1, this); - } - - template - uint32 query_sphere(const key_type& center, const key_value& radius, Container& container) const - { - uint32 count = 0; - - if (!empty()) - { - ++m_query; - - key_type minc(center - key_type(radius)); - key_type maxc(center + key_type(radius)); - - discreet_type mind = KeyHash::discreet(minc); - discreet_type maxd = KeyHash::discreet(maxc); - discreet_type current = mind; - - float radius_sq = radius * radius; - - for (; current[0] <= maxd[0]; ++current[0]) - { - for (; current[1] <= maxd[1]; ++current[1]) - { - for (; current[2] <= maxd[2]; ++current[2]) - { - size_t hash_value = KeyHash::hash(current); - size_t index = hash_value % CellCount; - - const cell_type& cell = m_cells[index]; - - if (cell.query != m_query) - { - cell.query = m_query; - const items_type& items = cell.items; - - typename items_type::const_iterator it = items.begin(); - typename items_type::const_iterator end = items.end(); - - for (; it != end; ++it) - { - if ((position(*it) - center).len2() <= radius_sq) - { - container.push_back(*it); - ++count; - } - } - } - } - current[2] = mind[2]; - } - current[1] = mind[1]; - } - } - - return count; - } - - template - uint32 query_sphere_distance(const key_type& center, const key_value& radius, Container& container) const - { - uint32 count = 0; - - if (!empty()) - { - ++m_query; - - key_type minc(center - key_type(radius)); - key_type maxc(center + key_type(radius)); - - discreet_type mind = KeyHash::discreet(minc); - discreet_type maxd = KeyHash::discreet(maxc); - discreet_type current = mind; - - float radius_sq = radius * radius; - - for (; current[0] <= maxd[0]; ++current[0]) - { - for (; current[1] <= maxd[1]; ++current[1]) - { - for (; current[2] <= maxd[2]; ++current[2]) - { - size_t hash_value = KeyHash::hash(current); - size_t index = hash_value % CellCount; - - const cell_type& cell = m_cells[index]; - - if (cell.query != m_query) - { - cell.query = m_query; - const items_type& items = cell.items; - - typename items_type::const_iterator it = items.begin(); - typename items_type::const_iterator end = items.end(); - - for (; it != end; ++it) - { - float distance_sq = (position(*it) - center).len2(); - if (distance_sq <= radius_sq) - { - container.push_back(std::make_pair(distance_sq, *it)); - ++count; - } - } - } - } - current[2] = mind[2]; - } - current[1] = mind[1]; - } - } - - return count; - } - - template - uint32 query_box(const key_type& minc, const key_type& maxc, Container& container) const - { - uint32 count = 0; - - if (!empty()) - { - ++m_query; - - discreet_type mind = KeyHash::discreet(minc); - discreet_type maxd = KeyHash::discreet(maxc); - discreet_type current = mind; - - for (; current[0] <= maxd[0]; ++current[0]) - { - for (; current[1] <= maxd[1]; ++current[1]) - { - for (; current[2] <= maxd[2]; ++current[2]) - { - size_t hash_value = KeyHash::hash(current); - size_t index = hash_value % CellCount; - - const cell_type& cell = m_cells[index]; - - if (cell.query != m_query) - { - cell.query = m_query; - const items_type& items = cell.items; - - typename items_type::const_iterator it = items.begin(); - typename items_type::const_iterator end = items.end(); - - for (; it != end; ++it) - { - key_type pos = position(*it); - - if (pos[0] >= minc[0] && - pos[1] >= minc[1] && - pos[2] >= minc[2] && - pos[0] <= maxc[0] && - pos[1] <= maxc[1] && - pos[2] <= maxc[2]) - { - container.push_back(*it); - ++count; - } - } - } - } - current[2] = mind[2]; - } - current[1] = mind[1]; - } - } - - return count; - } - -protected: - position_retriever_type position; - cells_type m_cells; - uint32 m_count; - mutable uint32 m_query; -}; - -#endif // CRYINCLUDE_CRYCOMMON_HASHGRID_H diff --git a/Code/CryEngine/CryCommon/HeapContainer.h b/Code/CryEngine/CryCommon/HeapContainer.h deleted file mode 100644 index 553444fe5f..0000000000 --- a/Code/CryEngine/CryCommon/HeapContainer.h +++ /dev/null @@ -1,250 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Containers that use their own heap for allocation. - - -#ifndef CRYINCLUDE_CRYCOMMON_HEAPCONTAINER_H -#define CRYINCLUDE_CRYCOMMON_HEAPCONTAINER_H -#pragma once - -#include "PoolAllocator.h" - -//--------------------------------------------------------------------------- -template -struct HeapQueue - : public L -{ - typedef typename L::Lock Lock; - - HeapQueue() - { - reset(); - } - - T* push_back() - { - Lock lock(*this); - return push_back(m_Allocator.New()); - } - - template - T* push_back(I const& init) - { - Lock lock(*this); - Node* pNode = (Node*)m_Allocator.Allocate(); - new(static_cast(pNode))T(init); - return push_back(pNode); - } - - template - T* push_back(I const& i, J const& j) - { - Lock lock(*this); - Node* pNode = (Node*)m_Allocator.Allocate(); - new(static_cast(pNode))T(i, j); - return push_back(pNode); - } - - T* pop_front() - { - Lock lock(*this); - - // Quick check, before locking. - if (empty()) - { - return 0; - } - - Node* pNode = *m_ppHead; - if (pNode) - { - m_ppHead = &(*m_ppHead)->pNext; - m_nQueued--; - validate(); - } - return pNode; - } - - void clear() - { - Lock lock(*this); - - validate(); - - // Destruct all elements. - size_t nCheckAlloc = 0; - while (m_pList) - { - nCheckAlloc++; - Node* pNext = m_pList->pNext; - m_pList->~Node(); - m_pList = pNext; - } - assert(nCheckAlloc == m_nAlloc); - - // Empty queue structure. - reset(); - - // Free pool memory all at once. - m_Allocator.FreeMemory(false); - } - - size_t size() const - { - return m_nQueued; - } - - bool empty() const - { - return m_nQueued == 0; - } - - size_t allocated_memory() const - { - // Amortise allocated mem over all list instances. - Lock lock(*this); - return m_Allocator.GetTotalMemory().nAlloc; - } - - // Additional lock against storage deletion. - L ClearLock; - - void GetMemoryUsage(ICrySizer* pSizer) const - { - pSizer->AddObject(m_Allocator); - } -protected: - - struct Node - : T - { - Node* pNext; - }; - - Node* m_pList; // First (allocated) node in list. - Node** m_ppHead; // Points to pointer to front of queue, for popping. - Node** m_ppTail; // Points to pointer at end of list, and of queue, for pushing. - size_t m_nAlloc, m_nQueued; - - void validate() - { - assert(m_nQueued <= m_nAlloc); - assert(m_ppHead); - assert(m_ppTail); - assert(!*m_ppTail); - assert((m_nQueued == 0) == !*m_ppHead); - assert((m_nQueued == 0) == (m_ppHead == m_ppTail)); - assert((m_nAlloc == 0) == (m_ppTail == &m_pList)); - assert((m_nAlloc == 0) == !m_pList); - } - - void reset() - { - m_pList = 0; - m_ppHead = m_ppTail = &m_pList; - m_nAlloc = m_nQueued = 0; - validate(); - } - - Node* push_back(Node* pNode) - { - pNode->pNext = 0; - - *m_ppTail = pNode; - m_ppTail = &pNode->pNext; - m_nAlloc++; - m_nQueued++; - - validate(); - - return pNode; - } - - // Allocate all elements from an exclusive pool. - // Any locking is performed by the queue, no further locking needed in allocator. - stl::TPoolAllocator m_Allocator; -}; - -//--------------------------------------------------------------------------- -template, typename L = stl::PSyncNone> -struct HeapPriorityQueue - : public HeapQueue -{ - // Hand-holding for brain-dead template compiler. - typedef HeapQueue super; - typedef typename super::Node Node; - using super::empty; - using super::validate; - using super::m_ppHead; - using super::m_ppTail; - using super::m_nQueued; - -public: - - typedef typename super::Lock Lock; - - // Pop the "largest" element, using class C. - T* pop_largest() - { - Lock lock(*this); - - if (!empty()) - { - C comp; - - // Find highest-valued item. - // To do: improve linear search! Use priority queue. - Node** ppTop = m_ppHead; - for (Node** ppNode = &(*m_ppHead)->pNext; *ppNode; ppNode = &(*ppNode)->pNext) - { - if (comp(**ppTop, **ppNode)) - { - ppTop = ppNode; - } - } - Node* pTop = *ppTop; - - // Move link to head. - if (ppTop != m_ppHead) - { - if (!pTop->pNext) - { - // End of list. - m_ppTail = ppTop; - } - *ppTop = pTop->pNext; - pTop->pNext = *m_ppHead; - *m_ppHead = pTop; - } - - // Pop head. - m_ppHead = &pTop->pNext; - m_nQueued--; - - validate(); - return pTop; - } - else - { - return NULL; - } - } - - void GetMemoryUsage(ICrySizer* pSizer) const - { - HeapQueue::GetMemoryUsage(pSizer); - } -}; - -#endif // CRYINCLUDE_CRYCOMMON_HEAPCONTAINER_H diff --git a/Code/CryEngine/CryCommon/IChunkFile.h b/Code/CryEngine/CryCommon/IChunkFile.h deleted file mode 100644 index ce6a913863..0000000000 --- a/Code/CryEngine/CryCommon/IChunkFile.h +++ /dev/null @@ -1,103 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_ICHUNKFILE_H -#define CRYINCLUDE_CRYCOMMON_ICHUNKFILE_H -#pragma once - - -#include "CryHeaders.h" - -////////////////////////////////////////////////////////////////////////// -// Description: -// Chunked File (.cgf, .chr etc.) interface -////////////////////////////////////////////////////////////////////////// -struct IChunkFile - : _reference_target_t -{ - ////////////////////////////////////////////////////////////////////////// - // Chunk Description. - ////////////////////////////////////////////////////////////////////////// - struct ChunkDesc - { - ChunkTypes chunkType; - int chunkVersion; - int chunkId; - uint32 fileOffset; - void* data; - uint32 size; - bool bSwapEndian; - - ////////////////////////////////////////////////////////////////////////// - ChunkDesc() - : chunkType(ChunkType_ANY) - , chunkVersion(0) - , chunkId(0) - , fileOffset(0) - , data(0) - , size(0) - , bSwapEndian(false) - { - } - - void GetMemoryUsage([[maybe_unused]] ICrySizer* pSizer) const{ /*nothing*/} - - static inline bool LessOffset(const ChunkDesc& d1, const ChunkDesc& d2) { return d1.fileOffset < d2.fileOffset; } - static inline bool LessOffsetByPtr(const ChunkDesc* d1, const ChunkDesc* d2) { return d1->fileOffset < d2->fileOffset; } - static inline bool LessId(const ChunkDesc& d1, const ChunkDesc& d2) { return d1.chunkId < d2.chunkId; } - }; - - // - - virtual void GetMemoryUsage(ICrySizer* pSizer) const = 0; - - // Releases chunk file interface. - virtual void Release() = 0; - - virtual bool IsReadOnly() const = 0; - virtual bool IsLoaded() const = 0; - - virtual bool Read(const char* filename) = 0; - virtual bool ReadFromMemory(const void* pData, int nDataSize) = 0; - - // Writes chunks to file. - virtual bool Write(const char* filename) = 0; - // Writes chunks to a memory buffer (allocated inside) and returns - // pointer to the allocated memory (pData) and its size (nSize). - // The memory will be released on destruction of the ChunkFile object, or - // on the next WriteToMemoryBuffer() call, or on ReleaseMemoryBuffer() call. - virtual bool WriteToMemoryBuffer(void** pData, int* nSize) = 0; - // Releases memory that was allocated in WriteToMemoryBuffer() - virtual void ReleaseMemoryBuffer() = 0; - - // Adds chunk to file, returns ChunkID of the added chunk. - virtual int AddChunk(ChunkTypes chunkType, int chunkVersion, EEndianness eEndianness, const void* chunkData, int chunkSize) = 0; - virtual void DeleteChunkById(int nChunkId) = 0; - virtual void DeleteChunksByType(ChunkTypes nChunkType) = 0; - - virtual ChunkDesc* FindChunkByType(ChunkTypes nChunkType) = 0; - virtual ChunkDesc* FindChunkById(int nChunkId) = 0; - - // Gets the number of chunks. - virtual int NumChunks() const = 0; - - // Gets chunk description at i-th index. - virtual ChunkDesc* GetChunk(int nIndex) = 0; - virtual const ChunkDesc* GetChunk(int nIndex) const = 0; - - virtual const char* GetLastError() const = 0; - - // -}; - -#endif // CRYINCLUDE_CRYCOMMON_ICHUNKFILE_H diff --git a/Code/CryEngine/CryCommon/IColorGradingController.h b/Code/CryEngine/CryCommon/IColorGradingController.h deleted file mode 100644 index ee6db2375b..0000000000 --- a/Code/CryEngine/CryCommon/IColorGradingController.h +++ /dev/null @@ -1,59 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_ICOLORGRADINGCONTROLLER_H -#define CRYINCLUDE_CRYCOMMON_ICOLORGRADINGCONTROLLER_H -#pragma once - - - -struct SColorChartLayer -{ - int m_texID; - float m_blendAmount; - - SColorChartLayer() - : m_texID(-1) - , m_blendAmount(-1) - { - } - - SColorChartLayer(int texID, float blendAmount) - : m_texID(texID) - , m_blendAmount(blendAmount) - { - } - - SColorChartLayer(const SColorChartLayer& rhs) - : m_texID(rhs.m_texID) - , m_blendAmount(rhs.m_blendAmount) - { - } -}; - - -struct IColorGradingController -{ -public: - // - virtual ~IColorGradingController(){} - virtual int LoadColorChart(const char* pChartFilePath) const = 0; - virtual int LoadDefaultColorChart() const = 0; - virtual void UnloadColorChart(int texID) const = 0; - - virtual void SetLayers(const SColorChartLayer* pLayers, uint32 numLayers) = 0; - // -}; - - -#endif // CRYINCLUDE_CRYCOMMON_ICOLORGRADINGCONTROLLER_H diff --git a/Code/CryEngine/CryCommon/IEntityRenderState.h b/Code/CryEngine/CryCommon/IEntityRenderState.h index 3e8f1dce4e..be26225226 100644 --- a/Code/CryEngine/CryCommon/IEntityRenderState.h +++ b/Code/CryEngine/CryCommon/IEntityRenderState.h @@ -27,7 +27,6 @@ namespace AZ struct IMaterial; struct IVisArea; struct SRenderingPassInfo; -struct IGeomCache; struct SRendItemSorter; struct SFrameLodInfo; struct pe_params_area; @@ -259,9 +258,6 @@ struct IRenderNode virtual struct IStatObj* GetEntityStatObj(unsigned int nPartId = 0, unsigned int nSubPartId = 0, Matrix34A* pMatrix = NULL, bool bReturnOnlyVisible = false); virtual _smart_ptr GetEntitySlotMaterial([[maybe_unused]] unsigned int nPartId, [[maybe_unused]] bool bReturnOnlyVisible = false, [[maybe_unused]] bool* pbDrawNear = NULL) { return NULL; } virtual void SetEntityStatObj([[maybe_unused]] unsigned int nSlot, [[maybe_unused]] IStatObj* pStatObj, [[maybe_unused]] const Matrix34A* pMatrix = NULL) {}; -#if defined(USE_GEOM_CACHES) - virtual struct IGeomCacheRenderNode* GetGeomCacheRenderNode([[maybe_unused]] unsigned int nSlot, [[maybe_unused]] Matrix34A* pMatrix = NULL, [[maybe_unused]] bool bReturnOnlyVisible = false) { return NULL; } -#endif virtual int GetSlotCount() const { return 1; } // Summary: @@ -793,81 +789,4 @@ struct IPrismRenderNode }; #endif // EXCLUDE_DOCUMENTATION_PURPOSE -////////////////////////////////////////////////////////////////////////// - -#if defined(USE_GEOM_CACHES) -struct IGeomCacheRenderNode - : public IRenderNode -{ - virtual bool LoadGeomCache(const char* sGeomCacheFileName) = 0; - - virtual void SetGeomCache(_smart_ptr geomCache) = 0; - - // Gets the geometry cache that is rendered - virtual IGeomCache* GetGeomCache() const = 0; - - // Sets the time in the animation for the current frame. - // Note that you should start streaming before calling this. - virtual void SetPlaybackTime(const float time) = 0; - - // Get the current playback time - virtual float GetPlaybackTime() const = 0; - - // Check if cache is streaming. - virtual bool IsStreaming() const = 0; - - // Need to start streaming before playback, otherwise there will be stalls. - virtual void StartStreaming(const float time = 0.0f) = 0; - - // Stops streaming and trashes the buffers - virtual void StopStreaming() = 0; - - // Checks if looping is enabled - virtual bool IsLooping() const = 0; - - // Enable/disable looping playback - virtual void SetLooping(const bool bEnable) = 0; - - // Gets time delta from current playback position to last ready to play frame - virtual float GetPrecachedTime() const = 0; - - // Check if bounds changed since last call to this function - virtual bool DidBoundsChange() = 0; - - // Set stand in CGFs and distance - virtual void SetStandIn(const char* pFilePath, const char* pMaterial) = 0; - virtual IStatObj* GetStandIn() = 0; - virtual void SetFirstFrameStandIn(const char* pFilePath, const char* pMaterial) = 0; - virtual IStatObj* GetFirstFrameStandIn() = 0; - virtual void SetLastFrameStandIn(const char* pFilePath, const char* pMaterial) = 0; - virtual IStatObj* GetLastFrameStandIn() = 0; - virtual void SetStandInDistance(const float distance) = 0; - virtual float GetStandInDistance() = 0; - - // Set distance at which cache will start streaming automatically (0 means no auto streaming) - virtual void SetStreamInDistance(const float distance) = 0; - virtual float GetStreamInDistance() = 0; - - // Start/Stop drawing the cache - virtual void SetDrawing(bool bDrawing) = 0; - - // Debug draw geometry - virtual void DebugDraw(const struct SGeometryDebugDrawInfo& info, float fExtrudeScale = 0.01f, uint nodeIndex = 0) const = 0; - - // Ray intersection against cache - virtual bool RayIntersection(struct SRayHitInfo& hitInfo, _smart_ptr pCustomMtl = NULL, uint* pHitNodeIndex = NULL) const = 0; - - // Set max view distance - virtual void SetBaseMaxViewDistance(float maxViewDistance) = 0; - - // Get node information - virtual uint GetNodeCount() const = 0; - virtual Matrix34 GetNodeTransform(const uint nodeIndex) const = 0; - virtual const char* GetNodeName(const uint nodeIndex) const = 0; // Node name is only stored in editor - virtual uint32 GetNodeNameHash(const uint nodeIndex) const = 0; - virtual bool IsNodeDataValid(const uint nodeIndex) const = 0; // Returns false if cache isn't loaded yet or index is out of range - -}; -#endif - #endif // CRYINCLUDE_CRYCOMMON_IENTITYRENDERSTATE_H diff --git a/Code/CryEngine/CryCommon/IFuncVariable.h b/Code/CryEngine/CryCommon/IFuncVariable.h deleted file mode 100644 index 351a67daff..0000000000 --- a/Code/CryEngine/CryCommon/IFuncVariable.h +++ /dev/null @@ -1,268 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_IFUNCVARIABLE_H -#define CRYINCLUDE_CRYCOMMON_IFUNCVARIABLE_H -#pragma once - -#include "Cry_Vector2.h" -#include "Cry_Vector3.h" -#include "Cry_Matrix33.h" -#include "Cry_Color.h" -#include "smartptr.h" -#include "StringUtils.h" - -class ITexture; - -enum FuncParamType -{ - e_FLOAT, e_INT, e_BOOL, e_VEC2, e_VEC3, e_VEC4, e_COLOR, e_MATRIX33, - // Though all types of textures are using the same class, it's important for editor to differentiate between them: - e_TEXTURE2D, e_TEXTURE3D, e_TEXTURE_CUBE -}; - -class IFuncVariable - : public _reference_target_t -{ -public: - // - virtual ~IFuncVariable(){}; - - virtual float GetMin() const = 0; - virtual float GetMax() const = 0; - - virtual void InvokeSetter(void* param) = 0; - - virtual int GetInt() const = 0; - virtual float GetFloat() const = 0; - virtual bool GetBool() const = 0; - virtual Vec2 GetVec2() const = 0; - virtual Vec3 GetVec3() const = 0; - virtual Vec4 GetVec4() const = 0; - virtual ColorF GetColorF() const = 0; - virtual Matrix33 GetMatrix33() const = 0; - virtual ITexture* GetTexture() const = 0; - // - - enum FuncParamType paramType; // float, string, int, vec3 etc - string name; -#if defined(FLARES_SUPPORT_EDITING) - string humanName; - string description; -#endif -}; - -template -class MFPVariable - : public IFuncVariable -{ -public: - typedef void (T::* OpticsBase_MFPtr)(); - OpticsBase_MFPtr pSetter; - OpticsBase_MFPtr pGetter; - T* pObj; - std::pair range; - -private: - MFPVariable () - { - Set(e_INT, "", "", NULL, NULL, NULL); - } - -public: - - float GetMin() const override { return range.first; } - float GetMax() const override { return range.second; } - - MFPVariable(FuncParamType type, const char* _humanname, const char* _description, T* obj, OpticsBase_MFPtr setter, OpticsBase_MFPtr getter, float fMin = 0, float fMax = 1.0f) - { - Set(type, _humanname, _description, obj, setter, getter, fMin, fMax); - } - - void Set(FuncParamType type, const char* _humanname, const char* _description, T* obj, OpticsBase_MFPtr setter, OpticsBase_MFPtr getter, float fMin = 0, float fMax = 1.0f) - { - paramType = type; - - char _nameNoSpace[50]; - cry_strcpy(_nameNoSpace, _humanname); - char* p1 = _nameNoSpace; - char* p2 = p1; - while (*p1 != 0) - { - if ((*p1) == ' ') - { - ++p1; - } - else - { - *p2++ = *p1++; - } - } - - *p2 = 0; - name = _nameNoSpace; - -#if defined(FLARES_SUPPORT_EDITING) - humanName = _humanname; - description = _description; -#endif - - pObj = obj; - pSetter = setter; - pGetter = getter; - range.first = fMin; - range.second = fMax; - } - - #define INVOKE_SETTER(PARAM_TYPE, param) (pObj->*(reinterpret_cast(pSetter)))(*(PARAM_TYPE*)param) - #define INVOKE_SETTER_P(PARAM_TYPE, param) (pObj->*(reinterpret_cast(pSetter)))((PARAM_TYPE)param) - - void InvokeSetter(void* param) override - { - switch (paramType) - { - case e_FLOAT: - INVOKE_SETTER(float, param); - break; - case e_INT: - INVOKE_SETTER(int, param); - break; - case e_VEC2: - INVOKE_SETTER(Vec2, param); - break; - case e_VEC3: - INVOKE_SETTER(Vec3, param); - break; - case e_VEC4: - INVOKE_SETTER(Vec4, param); - break; - case e_BOOL: - INVOKE_SETTER(bool, param); - break; - case e_COLOR: - INVOKE_SETTER(ColorF, param); - break; - case e_MATRIX33: - INVOKE_SETTER(Matrix33, param); - break; - case e_TEXTURE2D: - INVOKE_SETTER_P(ITexture*, param); - break; - case e_TEXTURE3D: - INVOKE_SETTER_P(ITexture*, param); - break; - case e_TEXTURE_CUBE: - INVOKE_SETTER_P(ITexture*, param); - break; - } - } - - #define INVOKE_GETTER(PARAM_TYPE) ((pObj->*reinterpret_cast(pGetter))()) - - int GetInt() const override {return INVOKE_GETTER(int); } - float GetFloat() const override {return INVOKE_GETTER(float); } - bool GetBool() const override {return INVOKE_GETTER(bool); } - Vec2 GetVec2() const override {return INVOKE_GETTER(Vec2); } - Vec3 GetVec3() const override {return INVOKE_GETTER(Vec3); } - Vec4 GetVec4() const override {return INVOKE_GETTER(Vec4); } - ColorF GetColorF() const override {return INVOKE_GETTER(ColorF); } - Matrix33 GetMatrix33() const override {return INVOKE_GETTER(Matrix33); } - ITexture* GetTexture() const override {return INVOKE_GETTER(ITexture*); } -}; - -class FuncVariableGroup -{ -private: - AZStd::vector<_smart_ptr > variables; - string m_name; -#if defined(FLARES_SUPPORT_EDITING) - string m_humanname; -#endif - bool bCollapse; - -public: - FuncVariableGroup() - : bCollapse(false) - { - SetName(""); - } - - ~FuncVariableGroup() - { - } - - void SetName(const char* name, [[maybe_unused]] const char* humanname = 0) - { - if (!name) - { - return; - } - m_name = name; -#if defined(FLARES_SUPPORT_EDITING) - m_humanname = humanname ? humanname : name; -#endif - } - - const char* GetName() - { - return m_name.c_str(); - } - -#if defined(FLARES_SUPPORT_EDITING) - const char* GetHumanName() - { - return m_humanname.c_str(); - } -#endif - - void SetCollapse(bool _bCollapse) - { - bCollapse = _bCollapse; - } - - bool IsCollapse() - { - return bCollapse; - } - - IFuncVariable* FindVariable(const char* name) - { - for (int i = 0, iSize(variables.size()); i < iSize; ++i) - { - if (variables[i] == NULL) - { - continue; - } - if (!strcmp(variables[i]->name.c_str(), name)) - { - return variables[i]; - } - } - return NULL; - } - - void SetVariable(int nIndex, IFuncVariable* v){ variables[nIndex] = v; } - - int GetVariableCount() { return variables.size(); } - - IFuncVariable* GetVariable(int nIndex) - { - return variables[nIndex]; - } - - void AddVariable(IFuncVariable* var) - { - variables.push_back(var); - } -}; -#endif // CRYINCLUDE_CRYCOMMON_IFUNCVARIABLE_H diff --git a/Code/CryEngine/CryCommon/IGeomCache.h b/Code/CryEngine/CryCommon/IGeomCache.h deleted file mode 100644 index d7b10ffdd7..0000000000 --- a/Code/CryEngine/CryCommon/IGeomCache.h +++ /dev/null @@ -1,140 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Description : Interface for CGeomCache class - - -#ifndef CRYINCLUDE_CRYCOMMON_IGEOMCACHE_H -#define CRYINCLUDE_CRYCOMMON_IGEOMCACHE_H -#pragma once - - -#include "smartptr.h" // TYPEDEF_AUTOPTR - -// Summary: -// Interface to hold geom cache data -struct IGeomCache - : public IStreamable -{ - // Description: - // Increase the reference count of the object. - // Summary: - // Notifies that the object is being used - virtual int AddRef() = 0; - - // Description: - // Decrease the reference count of the object. If the reference count - // reaches zero, the object will be deleted from memory. - // Summary: - // Notifies that the object is no longer needed - virtual int Release() = 0; - - // Description: - // Checks if the geometry cache was successfully loaded from disk - // Return Value: - // True if valid, otherwise false - virtual bool IsValid() const = 0; - - // Description: - // Set default material for the geometry. - // Arguments: - // pMaterial - A valid pointer to the material. - virtual void SetMaterial(_smart_ptr pMaterial) = 0; - - // Description: - // Returns default material of the geometry. - // Arguments: - // nType - Pass 0 to get the physic geometry or pass 1 to get the obstruct geometry - // Return Value: - // A pointer to a phys_geometry class. - virtual _smart_ptr GetMaterial() = 0; - virtual const _smart_ptr GetMaterial() const = 0; - - // Summary: - // Returns the filename of the object - // Return Value: - // A null terminated string which contain the filename of the object. - virtual const char* GetFilePath() const = 0; - - // Summary: - // Returns the duration of the geom cache animation - // Return value: - // float value in seconds - virtual float GetDuration() const = 0; - - // Summary: - // Reloads the cache. Need to call this when cache file changed. - virtual void Reload() = 0; - - // Summary: - // Returns the max AABB of the geom cache through the whole animation - // Return value: - // The geom cache's max axis aligned bounding box - virtual const AABB& GetAABB() const = 0; - - /** - * Tells the GeomCache whether or not it can release its static mesh data - * - * For the new AZ Geom Cache asset we have to be able - * to tell the Geom Cache not to release loaded data. - * This only matters when Geom Caches are not streamed. - * - * The legacy system works like this (if e_streamCGF is 0): - * Load a geom cache entity. - * Entity creates a geom cache render node. - * Node loads geom cache, cache is marked as loaded. - * Render node immediately initializes with the Geom Cache data. - * Because the Geom Cache is not streamed, it releases unneeded data next tick - * - * The AZ system works like this: - * Geom Cache component is created - * Asset is requested - * Asset loads Geom Cache - * Geom Cache loads data and is marked as loaded - * Asset calls AllowReleaseLoadedData(false) and locks loaded state - * Tick happens and data is not freed (this is good, we need that data) - * OnAssetReady event fires and is picked up by Geom Cache Component - * Data is fed from the asset to the Geom Cache Render Node - * Component calls AllowReleaseLoadedData(true) - * Next tick the Geom Cache cleans up unneeded data - */ - virtual void SetProcessedByRenderNode(bool) = 0; - - // Summary: - // Returns statistics - // Return value: - // SStatistics struct - struct SStatistics - { - bool m_bPlaybackFromMemory; - float m_averageAnimationDataRate; - uint m_numStaticMeshes; - uint m_numStaticVertices; - uint m_numStaticTriangles; - uint m_numAnimatedMeshes; - uint m_numAnimatedVertices; - uint m_numAnimatedTriangles; - uint m_numMaterials; - uint m_staticDataSize; - uint m_diskAnimationDataSize; - uint m_memoryAnimationDataSize; - }; - - virtual SStatistics GetStatistics() const = 0; - -protected: - virtual ~IGeomCache() {}; // should be never called, use Release() instead -}; - - -#endif // CRYINCLUDE_CRYCOMMON_IGEOMCACHE_H diff --git a/Code/CryEngine/CryCommon/IImage.h b/Code/CryEngine/CryCommon/IImage.h deleted file mode 100644 index 059c1e8174..0000000000 --- a/Code/CryEngine/CryCommon/IImage.h +++ /dev/null @@ -1,76 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_IIMAGE_H -#define CRYINCLUDE_CRYCOMMON_IIMAGE_H -#pragma once - -/** - * Possible errors for IImageFile::mfGet_error. - */ -enum EImFileError -{ - eIFE_OK = 0, eIFE_IOerror, eIFE_OutOfMemory, eIFE_BadFormat, eIFE_ChunkNotFound -}; - -// here are all of the flags that can be passed into the image load flags -#define FIM_NORMALMAP 0x0001 -#define FIM_NOTSUPPORTS_MIPS 0x0004 -#define FIM_ALPHA 0x0008 // request attached alpha image -#define FIM_DECAL 0x0010 -#define FIM_GREYSCALE 0x0020 // hint this texture is greyscale (could be DXT1 with colored artifacts) -#define FIM_STREAM_PREPARE 0x0080 -#define FIM_UNUSED_BIT 0x0100 // Free to use -#define FIM_BIG_ENDIANNESS 0x0400 // for textures converted to big endianness format -#define FIM_SPLITTED 0x0800 // for dds textures stored in splitted files -#define FIM_SRGB_READ 0x1000 -#define FIM_X360_NOT_PRETILED 0x2000 // for dds textures that cannot be pretiled -#define FIM_UNUSED_BIT_1 0x4000 // Free to use -#define FIM_RENORMALIZED_TEXTURE 0x8000 // for dds textures with EIF_RenormalizedTexture set in the dds header (not currently supported in the engine at runtime) -#define FIM_HAS_ATTACHED_ALPHA 0x10000 // image has an attached alpha image -#define FIM_SUPPRESS_DOWNSCALING 0x20000 // don't allow to drop mips when texture is non-streamable -#define FIM_DX10IO 0x40000 // for dds textures with extended DX10+ header -#define FIM_NOFALLBACKS 0x80000 // if the texture can't be loaded or is not found, do not replace it with a default 'not found' texture. - -class IImageFile -{ -public: - virtual int AddRef() = 0; - virtual int Release() = 0; - - virtual const string& mfGet_filename () const = 0; - - virtual int mfGet_width () const = 0; - virtual int mfGet_height () const = 0; - virtual int mfGet_depth () const = 0; - virtual int mfGet_NumSides () const = 0; - - virtual EImFileError mfGet_error () const = 0; - - virtual byte* mfGet_image (const int nSide) = 0; - virtual bool mfIs_image (const int nSide) const = 0; - - virtual ETEX_Format mfGetFormat() const = 0; - virtual ETEX_TileMode mfGetTileMode() const = 0; - virtual int mfGet_numMips () const = 0; - virtual int mfGet_numPersistentMips () const = 0; - virtual int mfGet_Flags () const = 0; - virtual const ColorF& mfGet_minColor () const = 0; - virtual const ColorF& mfGet_maxColor () const = 0; - virtual int mfGet_ImageSize() const = 0; - -protected: - virtual ~IImageFile() {} -}; - -#endif // CRYINCLUDE_CRYCOMMON_IIMAGE_H diff --git a/Code/CryEngine/CryCommon/IMeshBaking.h b/Code/CryEngine/CryCommon/IMeshBaking.h deleted file mode 100644 index 92b5e9bfa7..0000000000 --- a/Code/CryEngine/CryCommon/IMeshBaking.h +++ /dev/null @@ -1,50 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_IMESHBAKING_H -#define CRYINCLUDE_CRYCOMMON_IMESHBAKING_H -#pragma once - - -struct SMeshBakingMaterialParams -{ - float rayLength; - float rayIndent; - bool bAlphaCutout; - bool bIgnore; -}; - -struct SMeshBakingInputParams -{ - IStatObj* pCageMesh; - IStatObj* pInputMesh; - const SMeshBakingMaterialParams* pMaterialParams; - ColorF defaultBackgroundColour; - ColorF dilateMagicColour; - int outputTextureWidth; - int outputTextureHeight; - int numMaterialParams; - int nLodId; - bool bDoDilationPass; - bool bSmoothNormals; - bool bSaveSpecular; - _smart_ptr pMaterial; -}; - -struct SMeshBakingOutput -{ - ITexture* ppOuputTexture[3]; - ITexture* ppIntermediateTexture[3]; -}; - -#endif // CRYINCLUDE_CRYCOMMON_IMESHBAKING_H diff --git a/Code/CryEngine/CryCommon/IObjManager.h b/Code/CryEngine/CryCommon/IObjManager.h deleted file mode 100644 index a63a252976..0000000000 --- a/Code/CryEngine/CryCommon/IObjManager.h +++ /dev/null @@ -1,252 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once - -struct IStreamable; -struct SCheckOcclusionJobData; -struct SCheckOcclusionOutput; -class COctreeNode; -struct IStatInstGroup; - -namespace NAsyncCull -{ - class CCullThread; -} - -// Inplace object for IStreamable* to cache StreamableMemoryContentSize -struct SStreamAbleObject -{ - explicit SStreamAbleObject(IStreamable* pObj, bool bUpdateMemUsage = true) - : m_pObj(pObj) - , fCurImportance(-1000.f) - { - if (pObj && bUpdateMemUsage) - { - m_nStreamableContentMemoryUsage = pObj->GetStreamableContentMemoryUsage(); - } - else - { - m_nStreamableContentMemoryUsage = 0; - } - } - - bool operator==(const SStreamAbleObject& rOther) const - { - return m_pObj == rOther.m_pObj; - } - - int GetStreamableContentMemoryUsage() const { return m_nStreamableContentMemoryUsage; } - IStreamable* GetStreamAbleObject() const { return m_pObj; } - uint32 GetLastDrawMainFrameId() const - { - return m_pObj->GetLastDrawMainFrameId(); - } - float fCurImportance; -private: - IStreamable* m_pObj; - int m_nStreamableContentMemoryUsage; -}; - -struct SObjManPrecacheCamera -{ - SObjManPrecacheCamera() - : vPosition(ZERO) - , vDirection(ZERO) - , bbox(AABB::RESET) - , fImportanceFactor(1.0f) - { - } - - Vec3 vPosition; - Vec3 vDirection; - AABB bbox; - float fImportanceFactor; -}; - -struct SObjManPrecachePoint -{ - SObjManPrecachePoint() - : nId(0) - { - } - - int nId; - CTimeValue expireTime; -}; - -struct IObjManager -{ - virtual ~IObjManager() {} - - virtual void PreloadLevelObjects() = 0; - virtual void UnloadObjects(bool bDeleteAll) = 0; - virtual void CheckTextureReadyFlag() = 0; - virtual void FreeStatObj(IStatObj* pObj) = 0; - virtual _smart_ptr GetDefaultCGF() = 0; - - typedef std::vector< IDecalRenderNode* > DecalsToPrecreate; - virtual DecalsToPrecreate& GetDecalsToPrecreate() = 0; - virtual PodArray& GetArrStreamableObjects() = 0; - virtual PodArray& GetStreamPreCacheCameras() = 0; - virtual PodArray& GetArrStreamingNodeStack() = 0; - virtual PodArray& GetStreamPreCachePointDefs() = 0; - - typedef std::map > ObjectsMap; - virtual ObjectsMap& GetNameToObjectMap() = 0; - - typedef std::set LoadedObjects; - virtual LoadedObjects& GetLoadedObjects() = 0; - - virtual Vec3 GetSunColor() = 0; - virtual void SetSunColor(const Vec3& color) = 0; - - virtual Vec3 GetSunAnimColor() = 0; - virtual void SetSunAnimColor(const Vec3& color) = 0; - - virtual float GetSunAnimSpeed() = 0; - virtual void SetSunAnimSpeed(float sunAnimSpeed) = 0; - - virtual AZ::u8 GetSunAnimPhase() = 0; - virtual void SetSunAnimPhase(AZ::u8 sunAnimPhase) = 0; - - virtual AZ::u8 GetSunAnimIndex() = 0; - virtual void SetSunAnimIndex(AZ::u8 sunAnimIndex) = 0; - - virtual float GetSSAOAmount() = 0; - virtual void SetSSAOAmount(float amount) = 0; - - virtual float GetSSAOContrast() = 0; - virtual void SetSSAOContrast(float amount) = 0; - - virtual SRainParams& GetRainParams() = 0; - virtual SSnowParams& GetSnowParams() = 0; - - virtual bool IsCameraPrecacheOverridden() = 0; - virtual void SetCameraPrecacheOverridden(bool state) = 0; - - virtual IStatObj* LoadNewCGF(IStatObj* pObject, int flagCloth, bool bUseStreaming, bool bForceBreakable, unsigned long nLoadingFlags, const char* normalizedFilename, const void* pData, int nDataSize, const char* originalFilename, const char* geomName, IStatObj::SSubObject** ppSubObject) = 0; - virtual IStatObj* LoadFromCacheNoRef(IStatObj* pObject, bool bUseStreaming, unsigned long nLoadingFlags, const char* geomName, IStatObj::SSubObject** ppSubObject) = 0; - - virtual IStatObj* AllocateStatObj() = 0; - virtual IStatObj* LoadStatObjUnsafeManualRef(const char* szFileName, const char* szGeomName = NULL, IStatObj::SSubObject** ppSubObject = NULL, bool bUseStreaming = true, unsigned long nLoadingFlags = 0, const void* m_pData = 0, int m_nDataSize = 0, const char* szBlockName = NULL) = 0; - virtual _smart_ptr LoadStatObjAutoRef(const char* szFileName, const char* szGeomName = NULL, IStatObj::SSubObject** ppSubObject = NULL, bool bUseStreaming = true, unsigned long nLoadingFlags = 0, const void* m_pData = 0, int m_nDataSize = 0, const char* szBlockName = NULL) = 0; - virtual void GetLoadedStatObjArray(IStatObj** pObjectsArray, int& nCount) = 0; - virtual bool InternalDeleteObject(IStatObj* pObject) = 0; - virtual void MakeShadowCastersList(CVisArea* pReceiverArea, const AABB& aabbReceiver, int dwAllowedTypes, int32 nRenderNodeFlags, Vec3 vLightPos, CDLight* pLight, ShadowMapFrustum* pFr, PodArray* pShadowHull, const SRenderingPassInfo& passInfo) = 0; - virtual int MakeStaticShadowCastersList(IRenderNode* pIgnoreNode, ShadowMapFrustum* pFrustum, int renderNodeExcludeFlags, int nMaxNodes, const SRenderingPassInfo& passInfo) = 0; - virtual void MakeDepthCubemapRenderItemList(CVisArea* pReceiverArea, const AABB& cubemapAABB, int renderNodeFlags, PodArray* objectsList, const SRenderingPassInfo& passInfo) = 0; - virtual void PrecacheStatObjMaterial(_smart_ptr pMaterial, const float fEntDistance, IStatObj* pStatObj, bool bFullUpdate, bool bDrawNear) = 0; - virtual void PrecacheStatObj(IStatObj* pStatObj, int nLod, const Matrix34A& statObjMatrix, _smart_ptr pMaterial, float fImportance, float fEntDistance, bool bFullUpdate, bool bHighPriority) = 0; - - virtual int GetLoadedObjectCount() = 0; - - virtual uint16 CheckCachedNearestCubeProbe(IRenderNode* pEnt) = 0; - virtual int16 GetNearestCubeProbe(IVisArea* pVisArea, const AABB& objBox, bool bSpecular = true) = 0; - - virtual void RenderObject(IRenderNode* o, const AABB& objBox, float fEntDistance, EERType eERType, const SRenderingPassInfo& passInfo, const SRendItemSorter& rendItemSorter) = 0; - virtual void RenderDecalAndRoad(IRenderNode* pEnt, const AABB& objBox, float fEntDistance, bool nCheckOcclusion, const SRenderingPassInfo& passInfo, const SRendItemSorter& rendItemSorter) = 0; - virtual void RenderObjectDebugInfo(IRenderNode* pEnt, float fEntDistance, const SRenderingPassInfo& passInfo) = 0; - virtual void RenderAllObjectDebugInfo() = 0; - virtual void RenderObjectDebugInfo_Impl(IRenderNode* pEnt, float fEntDistance) = 0; - virtual void RemoveFromRenderAllObjectDebugInfo(IRenderNode* pEnt) = 0; - - virtual float GetXYRadius(int nType, int nSID = DEFAULT_SID) = 0; - virtual bool GetStaticObjectBBox(int nType, Vec3& vBoxMin, Vec3& vBoxMax, int nSID = DEFAULT_SID) = 0; - - virtual IStatObj* GetStaticObjectByTypeID(int nTypeID, int nSID = DEFAULT_SID) = 0; - virtual IStatObj* FindStaticObjectByFilename(const char* filename) = 0; - - //virtual float GetBendingRandomFactor() = 0; - virtual float GetGSMMaxDistance() const = 0; - virtual void SetGSMMaxDistance(float value) = 0; - - virtual int GetUpdateStreamingPrioriryRoundIdFast() = 0; - virtual int GetUpdateStreamingPrioriryRoundId() = 0; - virtual void IncrementUpdateStreamingPrioriryRoundIdFast(int amount) = 0; - virtual void IncrementUpdateStreamingPrioriryRoundId(int amount) = 0; - - virtual NAsyncCull::CCullThread& GetCullThread() = 0; - - virtual void SetLockCGFResources(bool state) = 0; - virtual bool IsLockCGFResources() = 0; - - virtual bool IsBoxOccluded(const AABB& objBox, float fDistance, OcclusionTestClient* const __restrict pOcclTestVars, bool bIndoorOccludersOnly, EOcclusionObjectType eOcclusionObjectType, const SRenderingPassInfo& passInfo) = 0; - - virtual void AddDecalToRenderer(float fDistance, _smart_ptr pMat, const uint8 sortPrio, Vec3 right, Vec3 up, const UCol& ucResCol, const uint8 uBlendType, const Vec3& vAmbientColor, Vec3 vPos, const int nAfterWater, const SRenderingPassInfo& passInfo, const SRendItemSorter& rendItemSorter) = 0; - - virtual void RegisterForStreaming(IStreamable* pObj) = 0; - virtual void UnregisterForStreaming(IStreamable* pObj) = 0; - virtual void UpdateRenderNodeStreamingPriority(IRenderNode* pObj, float fEntDistance, float fImportanceFactor, bool bFullUpdate, const SRenderingPassInfo& passInfo, bool bHighPriority = false) = 0; - - virtual void GetMemoryUsage(class ICrySizer* pSizer) const = 0; - virtual void GetBandwidthStats(float* fBandwidthRequested) = 0; - - virtual void ReregisterEntitiesInArea(Vec3 vBoxMin, Vec3 vBoxMax) = 0; - virtual void UpdateObjectsStreamingPriority(bool bSyncLoad, const SRenderingPassInfo& passInfo) = 0; - virtual void ProcessObjectsStreaming(const SRenderingPassInfo& passInfo) = 0; - - virtual void ProcessObjectsStreaming_Impl(bool bSyncLoad, const SRenderingPassInfo& passInfo) = 0; - virtual void ProcessObjectsStreaming_Sort(bool bSyncLoad, const SRenderingPassInfo& passInfo) = 0; - virtual void ProcessObjectsStreaming_Release() = 0; - virtual void ProcessObjectsStreaming_InitLoad(bool bSyncLoad) = 0; - virtual void ProcessObjectsStreaming_Finish() = 0; - - // time counters - virtual bool IsAfterWater(const Vec3& vPos, const SRenderingPassInfo& passInfo) = 0; - virtual void FreeNotUsedCGFs() = 0; - virtual void MakeUnitCube() = 0; - - virtual bool CheckOcclusion_TestAABB(const AABB& rAABB, float fEntDistance) = 0; - virtual bool CheckOcclusion_TestQuad(const Vec3& vCenter, const Vec3& vAxisX, const Vec3& vAxisY) = 0; - - virtual void PushIntoCullQueue(const SCheckOcclusionJobData& rCheckOcclusionData) = 0; - virtual void PopFromCullQueue(SCheckOcclusionJobData* pCheckOcclusionData) = 0; - - virtual void PushIntoCullOutputQueue(const SCheckOcclusionOutput& rCheckOcclusionOutput) = 0; - virtual bool PopFromCullOutputQueue(SCheckOcclusionOutput* pCheckOcclusionOutput) = 0; - - virtual void BeginCulling() = 0; - virtual void RemoveCullJobProducer() = 0; - virtual void AddCullJobProducer() = 0; - -#ifndef _RELEASE - virtual void CoverageBufferDebugDraw() = 0; -#endif - - virtual bool LoadOcclusionMesh(const char* pFileName) = 0; - - virtual void ClearStatObjGarbage() = 0; - virtual void CheckForGarbage(IStatObj* pObject) = 0; - virtual void UnregisterForGarbage(IStatObj* pObject) = 0; - - virtual int GetObjectLOD(const IRenderNode* pObj, float fDistance) = 0; - virtual bool RayStatObjIntersection(IStatObj* pStatObj, const Matrix34& objMat, _smart_ptr pMat, Vec3 vStart, Vec3 vEnd, Vec3& vClosestHitPoint, float& fClosestHitDistance, bool bFastTest) = 0; - virtual bool RayRenderMeshIntersection(IRenderMesh* pRenderMesh, const Vec3& vInPos, const Vec3& vInDir, Vec3& vOutPos, Vec3& vOutNormal, bool bFastTest, _smart_ptr pMat) = 0; - virtual bool SphereRenderMeshIntersection(IRenderMesh* pRenderMesh, const Vec3& vInPos, const float fRadius, _smart_ptr pMat) = 0; - - virtual uint8 GetDissolveRef(float fDist, float fMaxViewDist) = 0; - virtual float GetLodDistDissolveRef(SLodDistDissolveTransitionState* pState, float curDist, int nNewLod, const SRenderingPassInfo& passInfo) = 0; - - virtual void CleanStreamingData() = 0; - virtual IRenderMesh* GetRenderMeshBox() = 0; - - virtual void PrepareCullbufferAsync(const CCamera& rCamera) = 0; - virtual void BeginOcclusionCulling(const SRenderingPassInfo& passInfo) = 0; - virtual void EndOcclusionCulling(bool waitForOcclusionJobCompletion = false) = 0; - virtual void RenderBufferedRenderMeshes(const SRenderingPassInfo& passInfo) = 0; - - virtual int GetListStaticTypesCount() = 0; - virtual int GetListStaticTypesGroupCount(int typeId) = 0; - virtual IStatInstGroup* GetIStatInstGroup(int typeId, int groupId) = 0; - - virtual int IncrementNextPrecachePointId() = 0; -}; diff --git a/Code/CryEngine/CryCommon/IPhysicsDebugRenderer.h b/Code/CryEngine/CryCommon/IPhysicsDebugRenderer.h deleted file mode 100644 index eb73a64dc9..0000000000 --- a/Code/CryEngine/CryCommon/IPhysicsDebugRenderer.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_IPHYSICSDEBUGRENDERER_H -#define CRYINCLUDE_CRYCOMMON_IPHYSICSDEBUGRENDERER_H -#pragma once - - -#endif // CRYINCLUDE_CRYCOMMON_IPHYSICSDEBUGRENDERER_H diff --git a/Code/CryEngine/CryCommon/IProximityTriggerSystem.h b/Code/CryEngine/CryCommon/IProximityTriggerSystem.h deleted file mode 100644 index 496c8ade85..0000000000 --- a/Code/CryEngine/CryCommon/IProximityTriggerSystem.h +++ /dev/null @@ -1,133 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#ifndef CRYINCLUDE_CRYCOMMON_IPROXIMITYTRIGGERSYSTEM_H -#define CRYINCLUDE_CRYCOMMON_IPROXIMITYTRIGGERSYSTEM_H -#pragma once - -#include -#include -#include -#include -#include // AABB - - -/** - * Represents a registered proximity trigger. - * - * Contains the id of the trigger, its bounds, and whether or not it's active. - */ -struct SProximityElement -{ - AZ::EntityId id; - AABB aabb; - uint32 bActivated : 1; - std::vector inside; - - using NarrowPassCheckFunction = AZStd::function; - - // Can be used to do an optional narrow pass check on this proximity element - NarrowPassCheckFunction m_narrowPassChecker; - - SProximityElement() - { - id = AZ::EntityId(0); - bActivated = 0; - } - ~SProximityElement() - { - } - bool AddInside(SProximityElement* elem) - { - // Sorted add. - return stl::binary_insert_unique(inside, elem); - } - bool RemoveInside(SProximityElement* elem) - { - // sorted remove. - return stl::binary_erase(inside, elem); - } - bool IsInside(SProximityElement* elem) - { - return std::binary_search(inside.begin(), inside.end(), elem); - } - - void GetMemoryUsage([[maybe_unused]] ICrySizer* pSizer) const{} -}; - -/** - * Bus for events dispatched by the proximity trigger system as triggered are - * entered and exited by entities in the world. - */ -class ProximityTriggerEvents - : public AZ::EBusTraits -{ -public: - ////////////////////////////////////////////////////////////////////////// - // Ebus Traits - // ID'd on trigger entity Id - static const AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::ById; - using BusIdType = AZ::EntityId; - ////////////////////////////////////////////////////////////////////////// - - virtual ~ProximityTriggerEvents() {} - - /// Dispatched when an entity enters a trigger. The bus message is ID'd on the triggers entity Id. - virtual void OnTriggerEnter(AZ::EntityId /*entityEntering*/) {}; - - /// Dispatched when an entity exits a trigger. The bus message is ID'd on the triggers entity Id. - virtual void OnTriggerExit(AZ::EntityId /*entityExiting*/) {}; -}; - -using ProximityTriggerEventBus = AZ::EBus; - -/** - * Bus for requests sent by components or game code to the proximity trigger system. - */ -class ProximityTriggerSystemRequests - : public AZ::EBusTraits -{ -public: - ////////////////////////////////////////////////////////////////////////// - // EBusTraits overrides - proximity trigger system is a singleton - static const AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Single; - ////////////////////////////////////////////////////////////////////////// - - virtual ~ProximityTriggerSystemRequests() {} - - /// Creates a new trigger instance. - virtual SProximityElement* CreateTrigger(SProximityElement::NarrowPassCheckFunction narrowPassChecker = nullptr) = 0; - - /// Removes a trigger and queues it for deletion. - virtual void RemoveTrigger(SProximityElement* pTrigger) = 0; - - /// Moves a trigger in the world or redefines its dimensions. - virtual void MoveTrigger(SProximityElement* pTrigger, const AABB& aabb, bool invalidateCachedAABB = false) = 0; - - /// Creates a proxy in the world associated with an entity (Component or Legacy) for interacting with proximity trigger instances. - virtual SProximityElement* CreateEntity(AZ::EntityId id) = 0; - - /** - * Set the entity's AABB to a unit AABB at the entity's world position if \aabb is empty, otherwise set the entity's AABB to \aabb - * @param pEntity The pointer to a SProximityElment whose AABB needs to be updated - * @param pos World position of the entity - * @param aabb The new AABB in world space to set - */ - virtual void MoveEntity(SProximityElement* pEntity, const Vec3& pos, const AABB& aabb) = 0; - - /// Removes an entity's proximity trigger proxy. - virtual void RemoveEntity(SProximityElement* pEntity, bool instantEvent = false) = 0; -}; - -using ProximityTriggerSystemRequestBus = AZ::EBus; - -#endif // CRYINCLUDE_CRYCOMMON_IPROXIMITYTRIGGERSYSTEM_H diff --git a/Code/CryEngine/CryCommon/IRenderer.h b/Code/CryEngine/CryCommon/IRenderer.h index be72e69864..5b9a284edf 100644 --- a/Code/CryEngine/CryCommon/IRenderer.h +++ b/Code/CryEngine/CryCommon/IRenderer.h @@ -16,7 +16,12 @@ #include "Cry_Geo.h" #include "Cry_Camera.h" #include "ITexture.h" -#include // <> required for Interfuscator +#include "Cry_Vector2.h" +#include "Cry_Vector3.h" +#include "Cry_Matrix33.h" +#include "Cry_Color.h" +#include "smartptr.h" +#include "StringUtils.h" #include // <> required for Interfuscator #include "smartptr.h" #include @@ -99,7 +104,6 @@ struct ShadowFrustumMGPUCache; struct IAsyncTextureCompileListener; struct IClipVolume; struct SClipVolumeBlendInfo; -class IImageFile; class CRenderView; struct SDynTexture2; class CTexture; @@ -693,7 +697,6 @@ public: #include // <> required for Interfuscator //DOC-IGNORE-END #include -#include "IMeshBaking.h" // Flags passed in function FreeResources. #define FRR_SHADERS 1 @@ -1051,11 +1054,6 @@ namespace AZ { namespace Vertex { class Format; } - namespace VideoRenderer - { - struct IVideoRenderer; - struct DrawArguments; - } } enum eRenderPrimitiveType : int8; enum RenderIndexType : int; @@ -1464,7 +1462,6 @@ struct IRenderer // Is threadsafe virtual bool EF_ReloadFile_Request (const char* szFileName) = 0; - virtual _smart_ptr EF_LoadImage(const char* szFileName, uint32 nFlags) = 0; // Summary: // Remaps shader gen mask to common global mask. virtual uint64 EF_GetRemapedShaderMaskGen(const char* name, uint64 nMaskGen = 0, bool bFixup = 0) = 0; @@ -1739,8 +1736,6 @@ struct IRenderer virtual void RemoveTexture(unsigned int TextureId) = 0; virtual void DeleteFont(IFFont* font) = 0; - virtual bool BakeMesh(const SMeshBakingInputParams* pInputParams, SMeshBakingOutput* pReturnValues) = 0; - ///////////////////////////////////////////////////////////////////////////////////////////////////// // This routines uses 2 destination surfaces. It triggers a backbuffer copy to one of its surfaces, // and then copies the other surface to system memory. This hopefully will remove any @@ -2346,11 +2341,6 @@ struct IRenderer virtual void EndProfilerSection(const char* name) = 0; virtual void AddProfilerLabel(const char* name) = 0; - // Video Renderer interface - virtual void InitializeVideoRenderer(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer) = 0; - virtual void CleanupVideoRenderer(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer) = 0; - virtual void DrawVideoRenderer(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer, const AZ::VideoRenderer::DrawArguments& drawArguments) = 0; - private: // use private for EF_Query to prevent client code to submit arbitrary combinations of output data/size virtual void EF_QueryImpl(ERenderQueryTypes eQuery, void* pInOut0, uint32 nInOutSize0, void* pInOut1, uint32 nInOutSize1) = 0; diff --git a/Code/CryEngine/CryCommon/IShader.h b/Code/CryEngine/CryCommon/IShader.h index c74d981864..aea0762a81 100644 --- a/Code/CryEngine/CryCommon/IShader.h +++ b/Code/CryEngine/CryCommon/IShader.h @@ -24,7 +24,12 @@ #endif #include "smartptr.h" -#include // <> required for Interfuscator +#include "Cry_Vector2.h" +#include "Cry_Vector3.h" +#include "Cry_Matrix33.h" +#include "Cry_Color.h" +#include "smartptr.h" +#include "StringUtils.h" #include // <> required for Interfuscator #include "smartptr.h" #include "VertexFormats.h" diff --git a/Code/CryEngine/CryCommon/IShader_info.h b/Code/CryEngine/CryCommon/IShader_info.h deleted file mode 100644 index f48c1b08a2..0000000000 --- a/Code/CryEngine/CryCommon/IShader_info.h +++ /dev/null @@ -1,78 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#pragma once - -#include // <> required for Interfuscator - -// Traits -#if defined(AZ_RESTRICTED_PLATFORM) - #include AZ_RESTRICTED_FILE(IShader_info_h) -#elif !defined(LINUX) && !defined(APPLE) -#define ISHADER_INFO_H_TRAIT_DEFINE_ETEX_INFO 1 -#endif - -#if ISHADER_INFO_H_TRAIT_DEFINE_ETEX_INFO -ENUM_INFO_BEGIN(ETEX_Format) -ENUM_ELEM_INFO(, eTF_Unknown) -ENUM_ELEM_INFO(, eTF_R8G8B8A8S) -ENUM_ELEM_INFO(, eTF_R8G8B8A8) -ENUM_ELEM_INFO(, eTF_A8) -ENUM_ELEM_INFO(, eTF_R8) -ENUM_ELEM_INFO(, eTF_R8S) -ENUM_ELEM_INFO(, eTF_R16) -ENUM_ELEM_INFO(, eTF_R16F) -ENUM_ELEM_INFO(, eTF_R32F) -ENUM_ELEM_INFO(, eTF_R8G8) -ENUM_ELEM_INFO(, eTF_R8G8S) -ENUM_ELEM_INFO(, eTF_R16G16) -ENUM_ELEM_INFO(, eTF_R16G16S) -ENUM_ELEM_INFO(, eTF_R16G16F) -ENUM_ELEM_INFO(, eTF_R11G11B10F) -ENUM_ELEM_INFO(, eTF_R10G10B10A2) -ENUM_ELEM_INFO(, eTF_R16G16B16A16) -ENUM_ELEM_INFO(, eTF_R16G16B16A16S) -ENUM_ELEM_INFO(, eTF_R16G16B16A16F) -ENUM_ELEM_INFO(, eTF_R32G32B32A32F) -ENUM_ELEM_INFO(, eTF_CTX1) -ENUM_ELEM_INFO(, eTF_BC1) -ENUM_ELEM_INFO(, eTF_BC2) -ENUM_ELEM_INFO(, eTF_BC3) -ENUM_ELEM_INFO(, eTF_BC4U) -ENUM_ELEM_INFO(, eTF_BC4S) -ENUM_ELEM_INFO(, eTF_BC5U) -ENUM_ELEM_INFO(, eTF_BC5S) -ENUM_ELEM_INFO(, eTF_BC6UH) -ENUM_ELEM_INFO(, eTF_BC6SH) -ENUM_ELEM_INFO(, eTF_BC7) -ENUM_ELEM_INFO(, eTF_R9G9B9E5) -ENUM_ELEM_INFO(, eTF_D16) -ENUM_ELEM_INFO(, eTF_D24S8) -ENUM_ELEM_INFO(, eTF_D32F) -ENUM_ELEM_INFO(, eTF_D32FS8) -ENUM_ELEM_INFO(, eTF_B5G6R5) -ENUM_ELEM_INFO(, eTF_B5G5R5) -ENUM_ELEM_INFO(, eTF_B4G4R4A4) -ENUM_ELEM_INFO(, eTF_EAC_R11) -ENUM_ELEM_INFO(, eTF_EAC_RG11) -ENUM_ELEM_INFO(, eTF_ETC2) -ENUM_ELEM_INFO(, eTF_ETC2A) -ENUM_ELEM_INFO(, eTF_A8L8) -ENUM_ELEM_INFO(, eTF_L8) -ENUM_ELEM_INFO(, eTF_L8V8U8) -ENUM_ELEM_INFO(, eTF_B8G8R8) -ENUM_ELEM_INFO(, eTF_L8V8U8X8) -ENUM_ELEM_INFO(, eTF_B8G8R8X8) -ENUM_ELEM_INFO(, eTF_B8G8R8A8) -ENUM_INFO_END(ETEX_Format) -#endif diff --git a/Code/CryEngine/CryCommon/ITerrain_info.h b/Code/CryEngine/CryCommon/ITerrain_info.h deleted file mode 100644 index 2a6ae29428..0000000000 --- a/Code/CryEngine/CryCommon/ITerrain_info.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#ifndef CRYINCLUDE_CRY3DENGINE_ITERRAIN_INFO_H -#define CRYINCLUDE_CRY3DENGINE_ITERRAIN_INFO_H -#pragma once - -#include -#include - -STRUCT_INFO_BEGIN(ITerrain::SurfaceWeight) -STRUCT_VAR_INFO(Ids, TYPE_ARRAY(WeightCount, TYPE_INFO(uint8))) -STRUCT_VAR_INFO(Weights, TYPE_ARRAY(WeightCount, TYPE_INFO(uint8))) -STRUCT_INFO_END(ITerrain::SurfaceWeight) - -#endif diff --git a/Code/CryEngine/CryCommon/IVideoRenderer.h b/Code/CryEngine/CryCommon/IVideoRenderer.h deleted file mode 100644 index 7108731110..0000000000 --- a/Code/CryEngine/CryCommon/IVideoRenderer.h +++ /dev/null @@ -1,101 +0,0 @@ -/* - * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or - * its licensors. - * - * For complete copyright and license terms please see the LICENSE at the root of this - * distribution (the "License"). All use of this software is governed by the License, - * or, if provided, by the license below or the license accompanying this file. Do not - * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * - */ - -#pragma once - -#include - -namespace AZ -{ - // General purpose video 'rendering' solution that abstracts video data into textures - // and data to update those textures with. - namespace VideoRenderer - { - enum Constants - { - MaxInputTextureCount = 4, - }; - - struct VideoTextureDesc - { - CryFixedStringT<64> m_name; // fixed string to avoid dll string copying issues - uint32 m_width{ 4 }; - uint32 m_height{ 4 }; - ETEX_Format m_format{ eTF_Unknown }; - uint32 m_used{ 0 }; - }; - - // Full description of video texture resources for the renderer to create. - struct VideoTexturesDesc - { - VideoTextureDesc m_outputTextureDesc; - VideoTextureDesc m_inputTextureDescs[MaxInputTextureCount]; - }; - - // Full set of textures created from the VideoTexturesDesc provided to the renderer. - struct VideoTextures - { - uint32 m_outputTextureId{ 0 }; - uint32 m_inputTextureIds[MaxInputTextureCount]{ 0 }; - }; - - struct VideoUpdateData - { - struct VideoTextureUpdateData - { - // Data to update the texture with, can be null. - const void* m_data{ nullptr }; - - // Format of above data, required for format conversions if needed. - ETEX_Format m_dataFormat{ eTF_Unknown }; - } - m_inputTextureData[MaxInputTextureCount]; - }; - - // Set of data to update and render a frame of video textures. - // Everything should be passed through by value except for the update data, which should be double buffered at the source. - struct DrawArguments - { - // Set of textures to draw with. - VideoTextures m_textures; - - // Set of data to update the above textures with if set. - VideoUpdateData m_updateData; - - // Flag to indicate that we want to draw to the backbuffer. - uint32 m_drawingToBackbuffer{ 0 }; - - // Payload information for reference. Useful for debugging. - uint32 m_frameReference{ 0 }; - - // Scale applied to each texture. - Vec4 m_textureScales[MaxInputTextureCount]{}; - - // Value added to final composited texture. - Vec4 m_colorAdjustment{ ZERO }; - }; - - // Video Rendering interface to provide callbacks from the Render Thread - struct IVideoRenderer - { - // Called from the Render Thread to request the description of the video textures. - virtual bool GetVideoTexturesDesc(AZ::VideoRenderer::VideoTexturesDesc& videoTexturesDesc) const = 0; - // Called from the Render Thread to get the set of video textures that were previously created. Used at cleanup time. - virtual bool GetVideoTextures(AZ::VideoRenderer::VideoTextures& videoTextures) const = 0; - - // Called from the Render Thread to provide the video textures it created from the VideoTexturesDesc. - virtual bool NotifyTexturesCreated(const AZ::VideoRenderer::VideoTextures& videoTextures) = 0; - // CAlled from the Render Thread to notify the video manager that its textures were destroyed. - virtual bool NotifyTexturesDestroyed() = 0; - }; - } -} diff --git a/Code/CryEngine/CryCommon/InplaceFactory.h b/Code/CryEngine/CryCommon/InplaceFactory.h deleted file mode 100644 index 6dc2279df8..0000000000 --- a/Code/CryEngine/CryCommon/InplaceFactory.h +++ /dev/null @@ -1,310 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Description : Helper to enable inplace construction and destruction of objects -#ifndef CRYINCLUDE_CRYCOMMON_INPLACEFACTORY_H -#define CRYINCLUDE_CRYCOMMON_INPLACEFACTORY_H -#pragma once - - -// Inspired by the boost inplace/typed_inplace factory, written by -// Fernando Luis Cacciola Carballal and Tobias Schwinger -// -// See -// http://www.boost.org/doc/libs/1_42_0/libs/utility/in_place_factories.html -// for a detailed description -// - -class CInplaceFactory0 -{ -public: - - explicit CInplaceFactory0() - {} - - template - void* apply(void* address) const - { - return new(address) T(); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -template < typename Arg0 > -class CInplaceFactory1 -{ - Arg0& m_Arg0; - -public: - - explicit CInplaceFactory1(Arg0& arg) - : m_Arg0(arg) - {} - - template - void* apply(void* address) const - { - return new(address) T(m_Arg0); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -template -< - typename Arg0, - typename Arg1 -> -class CInplaceFactory2 -{ - Arg0& m_Arg0; - Arg1& m_Arg1; - -public: - - explicit CInplaceFactory2(Arg0& arg0, Arg1& arg1) - : m_Arg0(arg0) - , m_Arg1(arg1) - {} - - template - void* apply(void* address) const - { - return new(address) T( - m_Arg0, - m_Arg1); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -template -< - typename Arg0, - typename Arg1, - typename Arg2 -> -class CInplaceFactory3 -{ - Arg0& m_Arg0; - Arg1& m_Arg1; - Arg2& m_Arg2; - -public: - - explicit CInplaceFactory3(Arg0& arg0, Arg1& arg1, Arg2& arg2) - : m_Arg0(arg0) - , m_Arg1(arg1) - , m_Arg2(arg2) - {} - - template - void* apply(void* address) const - { - return new(address) T( - m_Arg0, - m_Arg1, - m_Arg2); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -template -< - typename Arg0, - typename Arg1, - typename Arg2, - typename Arg3 -> -class CInplaceFactory4 -{ - Arg0& m_Arg0; - Arg1& m_Arg1; - Arg2& m_Arg2; - Arg3& m_Arg3; - -public: - - explicit CInplaceFactory4(Arg0& arg0, Arg1& arg1, Arg2& arg2, Arg3& arg3) - : m_Arg0(arg0) - , m_Arg1(arg1) - , m_Arg2(arg2) - , m_Arg3(arg3) - {} - - template - void* apply(void* address) const - { - return new(address) T( - m_Arg0, - m_Arg1, - m_Arg2, - m_Arg3); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -template -< - typename Arg0, - typename Arg1, - typename Arg2, - typename Arg3, - typename Arg4 -> -class CInplaceFactory5 -{ - Arg0& m_Arg0; - Arg1& m_Arg1; - Arg2& m_Arg2; - Arg3& m_Arg3; - Arg4& m_Arg4; - -public: - - explicit CInplaceFactory5(Arg0& arg0, Arg1& arg1, Arg2& arg2, Arg3& arg3, Arg4& arg4) - : m_Arg0(arg0) - , m_Arg1(arg1) - , m_Arg2(arg2) - , m_Arg3(arg3) - , m_Arg4(arg4) - {} - - template - void* apply(void* address) const - { - return new(address) T( - m_Arg0, - m_Arg1, - m_Arg2, - m_Arg3, - m_Arg4); - } - - template - void* apply(void* address, std::size_t n) const - { - for (char* next = address = this->template apply(address); !!--n; ) - { - this->template apply(next = next + sizeof(T)); - } - return address; - } -}; - -inline CInplaceFactory0 InplaceFactory() -{ - return CInplaceFactory0(); -} - -template < typename Arg0 > -inline CInplaceFactory1 InplaceFactory(Arg0& arg0) -{ - return CInplaceFactory1(arg0); -} - -template -< - typename Arg0, - typename Arg1 - -> -inline CInplaceFactory2 InplaceFactory(Arg0& arg0, Arg1& arg1) -{ - return CInplaceFactory2(arg0, arg1); -} - -template -< - typename Arg0, - typename Arg1, - typename Arg2 -> -inline CInplaceFactory3 InplaceFactory(Arg0& arg0, Arg1& arg1, Arg2& arg2) -{ - return CInplaceFactory3 (arg0, arg1, arg2); -} - - -template -< - typename Arg0, - typename Arg1, - typename Arg2, - typename Arg3 -> -inline CInplaceFactory4 InplaceFactory( - Arg0& arg0, Arg1& arg1, Arg2& arg2, Arg3& arg3) -{ - return CInplaceFactory4(arg0, arg1, arg2, arg3); -} - - -template -< - typename Arg0, - typename Arg1, - typename Arg2, - typename Arg3, - typename Arg4 -> -inline CInplaceFactory5 InplaceFactory( - Arg0& arg0, Arg1& arg1, Arg2& arg2, Arg3& arg3, Arg4& arg4) -{ - return CInplaceFactory5(arg0, arg1, arg2, arg3, arg4); -} - -#endif // CRYINCLUDE_CRYCOMMON_INPLACEFACTORY_H diff --git a/Code/CryEngine/CryCommon/MaterialUtils.h b/Code/CryEngine/CryCommon/MaterialUtils.h deleted file mode 100644 index 60752de8c5..0000000000 --- a/Code/CryEngine/CryCommon/MaterialUtils.h +++ /dev/null @@ -1,134 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once -#ifndef CRYINCLUDE_CRYCOMMON_MATERIALUTILS_H -#define CRYINCLUDE_CRYCOMMON_MATERIALUTILS_H - -#include -#include // for max path len -#include -#include -#include - -#include - -namespace MaterialUtils -{ - //! UnifyMaterialName - given a non-unified material name, remove the extension, unify the slashes - //! and fix up any legacy naming issues so that the material name can be used in a hash map - //! and will work each lookup. - inline void UnifyMaterialName(char* inputOutputBuffer) - { - if (!inputOutputBuffer) - { - return; - } - - // convert slashes and remove extensions: - size_t inputLength = strlen(inputOutputBuffer); - if (inputLength == 0) - { - return; - } - // this must be done first, so that the extension cutting function below does not mistakenly destroy this when it finds the . - if ((azstrnicmp(inputOutputBuffer, "./", 2) == 0) || (azstrnicmp(inputOutputBuffer, ".\\", 2) == 0)) - { - memmove(inputOutputBuffer, inputOutputBuffer + 2, inputLength - 2); - inputOutputBuffer[inputLength - 2] = 0; - inputLength -= 2; - } - - for (size_t pos = 0; pos < inputLength; ++pos) - { - if (inputOutputBuffer[pos] == '\\') - { - inputOutputBuffer[pos] = '/'; // unify slashes - } - else - { - inputOutputBuffer[pos] = tolower(inputOutputBuffer[pos]); - } - } - AZStd::string tempString(inputOutputBuffer); - AzFramework::StringFunc::Path::StripExtension(tempString); - - AZ_Assert(tempString.length() <= inputLength, "Extension stripped string has to be smaller than/same size as original string!"); - // real size of inputOutputBuffer is inputLength + 1 with Null character - azstrcpy(inputOutputBuffer, inputLength + 1, tempString.c_str()); -#if defined(SUPPORT_LEGACY_MATERIAL_NAMES) - - // LEGACY support Some files may start with ./ in front of them. This is not required anymore. - static const char* removals[2] = { - "engine/", - nullptr // reserved for game name - }; - static size_t removalSize = sizeof(removals) / sizeof(removals[0]); - - // LEGACY support. Some files may start with gamename in front of them. This is not required anymore. - static char cachedGameName[AZ_MAX_PATH_LEN] = { 0 }; - if (!removals[removalSize - 1]) - { - auto projectName = AZ::Utils::GetProjectName(); - if (!projectName.empty()) - { - azstrcpy(cachedGameName, AZ_MAX_PATH_LEN, projectName.c_str()); - azstrcat(cachedGameName, AZ_MAX_PATH_LEN, "/"); - } - - if (cachedGameName[0] == 0) - { - // at least substitute something so that unit tests can make this assumption: - azstrcpy(cachedGameName, AZ_MAX_PATH_LEN, "AutomatedTesting/"); - } - - removals[removalSize - 1] = cachedGameName; - } - - for (size_t pos = 0; pos < removalSize; ++pos) - { - if (removals[pos]) - { - size_t removalLength = strlen(removals[pos]); - if (removalLength >= inputLength) - { - continue; - } - - if (azstrnicmp(inputOutputBuffer, removals[pos], removalLength) == 0) - { - memmove(inputOutputBuffer, inputOutputBuffer + removalLength, inputLength - removalLength); - inputOutputBuffer[inputLength - removalLength] = 0; - inputLength -= removalLength; - } - } - } - - // legacy: Files were saved into a mtl with many leading forward or back slashes, we eat them all here. We want it to start with a rel path. - const char* actualFileName = inputOutputBuffer; - size_t finalLength = inputLength; - while ((actualFileName[0]) && ((actualFileName[0] == '\\') || (actualFileName[0] == '/'))) - { - ++actualFileName; - --finalLength; - } - if (finalLength != inputLength) - { - memmove(inputOutputBuffer, actualFileName, finalLength); - inputOutputBuffer[finalLength] = 0; - inputLength = finalLength; - } - -#endif - } -} - -#endif // CRYINCLUDE_CRYCOMMON_MATERIALUTILS_H diff --git a/Code/CryEngine/CryCommon/Mocks/IRendererMock.h b/Code/CryEngine/CryCommon/Mocks/IRendererMock.h index a3fae96310..2594b1cd35 100644 --- a/Code/CryEngine/CryCommon/Mocks/IRendererMock.h +++ b/Code/CryEngine/CryCommon/Mocks/IRendererMock.h @@ -12,8 +12,6 @@ #pragma once #include -#include -#include #include struct SRendItemSorter {}; @@ -294,8 +292,6 @@ public: bool(const char* szFileName)); MOCK_METHOD1(EF_ReloadFile_Request, bool(const char* szFileName)); - MOCK_METHOD2(EF_LoadImage, - _smart_ptr(const char* szFileName, uint32 nFlags)); MOCK_METHOD3(EF_GetRemapedShaderMaskGen, uint64(const char*, uint64, bool)); MOCK_METHOD3(EF_GetShaderGlobalMaskGenFromString, @@ -533,8 +529,6 @@ public: void(unsigned int TextureId)); MOCK_METHOD1(DeleteFont, void(IFFont * font)); - MOCK_METHOD2(BakeMesh, - bool(const SMeshBakingInputParams * pInputParams, SMeshBakingOutput * pReturnValues)); MOCK_METHOD3(CaptureFrameBufferFast, bool(unsigned char* pDstRGBA8, int destinationWidth, int destinationHeight)); MOCK_METHOD3(CopyFrameBufferFast, @@ -857,13 +851,6 @@ public: MOCK_METHOD1(AddProfilerLabel, void(const char*)); - MOCK_METHOD1(InitializeVideoRenderer, - void(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer)); - MOCK_METHOD1(CleanupVideoRenderer, - void(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer)); - MOCK_METHOD2(DrawVideoRenderer, - void(AZ::VideoRenderer::IVideoRenderer* pVideoRenderer, const AZ::VideoRenderer::DrawArguments& drawArguments)); - MOCK_METHOD5(EF_QueryImpl, void(ERenderQueryTypes eQuery, void* pInOut0, uint32 nInOutSize0, void* pInOut1, uint32 nInOutSize1)); }; diff --git a/Code/CryEngine/CryCommon/Name_TypeInfo.h b/Code/CryEngine/CryCommon/Name_TypeInfo.h deleted file mode 100644 index bfb4d3b09c..0000000000 --- a/Code/CryEngine/CryCommon/Name_TypeInfo.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_NAME_TYPEINFO_H -#define CRYINCLUDE_CRYCOMMON_NAME_TYPEINFO_H -#pragma once - -#include "CryName.h" - -// CCryName TypeInfo - -TYPE_INFO_BASIC(CCryName) - -string ToString(CCryName const& val) -{ - return string(val.c_str()); -} -bool FromString(CCryName& val, const char* s) -{ - val = s; - return true; -} - -#endif // CRYINCLUDE_CRYCOMMON_NAME_TYPEINFO_H diff --git a/Code/CryEngine/CryCommon/OceanConstants.h b/Code/CryEngine/CryCommon/OceanConstants.h deleted file mode 100644 index 446a7e284a..0000000000 --- a/Code/CryEngine/CryCommon/OceanConstants.h +++ /dev/null @@ -1,85 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once -#include -#include - -// Water level unknown. -#define WATER_LEVEL_UNKNOWN -1000000.f -#define BOTTOM_LEVEL_UNKNOWN -1000000.f - -namespace AZ -{ - /** - * Numeric constants that the editors should use for the ocean properties - */ - namespace OceanConstants - { - // Ocean Height consts are maintained for backwards compatibility - // @TODO: Remove height / depth related consts when feature toggle is removed. - static const float s_HeightMin = -AZ::Constants::MaxFloatBeforePrecisionLoss; - static const float s_HeightMax = AZ::Constants::MaxFloatBeforePrecisionLoss; - static const float s_HeightUnknown = WATER_LEVEL_UNKNOWN; - static const float s_BottomUnknown = BOTTOM_LEVEL_UNKNOWN; - static const float s_DefaultHeight = 16.0f; - - static const float s_CausticsDistanceAttenMin = 0.0f; - static const float s_CausticsDistanceAttenDefault = 10.0f; - static const float s_CausticsDistanceAttenMax = 100.0f; - static const float s_CausticsDepthMin = 0.0f; - static const float s_CausticsDepthDefault = 8.0f; - static const float s_CausticsDepthMax = 100.0f; - static const float s_CausticsIntensityMin = 0.0f; - static const float s_CausticsIntensityDefault = 1.0f; - static const float s_CausticsIntensityMax = 10.0f; - static const float s_CausticsTilingMin = 0.10f; - static const float s_CausticsTilingDefault = 2.0f; - static const float s_CausticsTilingMax = 10.0f; - - static const float s_animationWavesAmountMin = 0.2f; - static const float s_animationWavesAmountMax = 5.0f; - static const float s_animationWavesAmountDefault = 0.75f; - static const float s_animationWavesSizeMin = 0.0f; - static const float s_animationWavesSizeMax = 3.0f; - static const float s_animationWavesSizeDefault = 1.25f; - static const float s_animationWavesSpeedMin = 0.0f; - static const float s_animationWavesSpeedMax = 5.0f; - static const float s_animationWavesSpeedDefault = 1.0f; - static const float s_animationWindDirectionMin = 0.0f; - static const float s_animationWindDirectionMax = 6.2832f; - static const float s_animationWindDirectionDefault = 1; - static const float s_animationWindSpeedMin = 0.0f; - static const float s_animationWindSpeedMax = 1000.0f; - static const float s_animationWindSpeedDefault = 40.0f; - - static const AZ::Color s_oceanFogColorDefault((AZ::u8)5, (AZ::u8)36, (AZ::u8)32, (AZ::u8)255); - static const AZ::Color s_oceanNearFogColorDefault((AZ::u8)1, (AZ::u8)7, (AZ::u8)5, (AZ::u8)255); - static const float s_oceanFogColorMultiplierDefault = 0.15f; - static const float s_oceanFogDensityDefault = 0.07f; - static const float s_OceanFogColorMultiplierMin = 0.0f; - static const float s_OceanFogColorMultiplierMax = 1.0f; - static const float s_OceanFogDensityMin = 0.0f; - static const float s_OceanFogDensityMax = 1.0f; - - static const int s_waterTessellationAmountMin = 10; - static const int s_waterTessellationAmountMax = 500; - static const int s_waterTessellationDefault = 85; - - static const bool s_UseOceanBottom = true; - - static const bool s_GodRaysEnabled = true; - static const float s_UnderwaterDistortion = 1.0f; - - static const float s_oceanIsVeryFarAway = 1000000.f; - }; - -} diff --git a/Code/CryEngine/CryCommon/Pak/CryPakUtils.h b/Code/CryEngine/CryCommon/Pak/CryPakUtils.h deleted file mode 100644 index 3a888c0279..0000000000 --- a/Code/CryEngine/CryCommon/Pak/CryPakUtils.h +++ /dev/null @@ -1,363 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once - -#include - -//! Everybody should use fxopen instead of fopen so it opens on all platforms -inline AZ::IO::HandleType fxopen(const char* file, const char* mode, bool bGameRelativePath = false) -{ - if (gEnv && gEnv->pCryPak) - { - gEnv->pCryPak->CheckFileAccessDisabled(file, mode); -} - bool bWriteAccess = false; - for (const char* s = mode; *s; s++) - { - if (*s == 'w' || *s == 'W' || *s == 'a' || *s == 'A' || *s == '+') - { - bWriteAccess = true; - break; - } - ; - } - - if (gEnv && gEnv->pCryPak) - { - int nAdjustFlags = 0; - if (!bGameRelativePath) - { - nAdjustFlags |= AZ::IO::IArchive::FLAGS_PATH_REAL; - } - if (bWriteAccess) - { - nAdjustFlags |= AZ::IO::IArchive::FLAGS_FOR_WRITING; - } - char path[_MAX_PATH]; - const char* szAdjustedPath = gEnv->pCryPak->AdjustFileName(file, path, AZ_ARRAY_SIZE(path), nAdjustFlags); - -#if !AZ_TRAIT_LEGACY_CRYPAK_UNIX_LIKE_FILE_SYSTEM - if (bWriteAccess) - { - // Make sure folder is created. - gEnv->pCryPak->MakeDir(szAdjustedPath); - } -#endif - AZ::IO::HandleType fileHandle = AZ::IO::InvalidHandle; - AZ::IO::FileIOBase::GetInstance()->Open(szAdjustedPath, AZ::IO::GetOpenModeFromStringMode(mode), fileHandle); - return fileHandle; - } - else - { - return AZ::IO::InvalidHandle; - } -} - -class CDebugAllowFileAccess -{ -public: -#if defined(_RELEASE) - ILINE CDebugAllowFileAccess() { } - ILINE void End() { } -#else - CDebugAllowFileAccess() - { - m_threadId = AZStd::this_thread::get_id(); - m_oldDisable = gEnv->pCryPak ? gEnv->pCryPak->DisableRuntimeFileAccess(false, m_threadId) : false; - m_active = true; - } - ~CDebugAllowFileAccess() - { - End(); - } - void End() - { - if (m_active) - { - if (gEnv && gEnv->pCryPak) - { - gEnv->pCryPak->DisableRuntimeFileAccess(m_oldDisable, m_threadId); - } - m_active = false; - } - } -protected: - AZStd::thread_id m_threadId; - bool m_oldDisable; - bool m_active; -#endif -}; - -////////////////////////////////////////////////////////////////////////// - - -class CInMemoryFileLoader -{ -public: - CInMemoryFileLoader(AZ::IO::IArchive* pCryPak) - : m_pPak(pCryPak) - , m_fileHandle(AZ::IO::InvalidHandle) - , m_pBuffer(0) - , m_pCursor(0) - , m_nFileSize(0) {} - ~CInMemoryFileLoader() - { - Close(); - } - - bool IsFileExists() const - { - return m_fileHandle != AZ::IO::InvalidHandle; - } - - AZ::IO::HandleType GetFileHandle() const - { - return m_fileHandle; - } - - bool FOpen(const char* name, const char* mode, bool bImmediateCloseFile = false) - { - if (m_pPak) - { - assert(m_fileHandle == AZ::IO::InvalidHandle); - m_fileHandle = m_pPak->FOpen(name, mode); - if (m_fileHandle == AZ::IO::InvalidHandle) - { - return false; - } - - m_nFileSize = m_pPak->FGetSize(m_fileHandle); - if (m_nFileSize == 0) - { - Close(); - return false; - } - - m_pCursor = m_pBuffer = (char*)m_pPak->PoolMalloc(m_nFileSize); - - size_t nReaded = m_pPak->FReadRawAll(m_pBuffer, m_nFileSize, m_fileHandle); - if (nReaded != m_nFileSize) - { - Close(); - return false; - } - - if (bImmediateCloseFile) - { - m_pPak->FClose(m_fileHandle); - m_fileHandle = AZ::IO::InvalidHandle; - } - - return true; - } - - return false; - } - - void FClose() - { - Close(); - } - - size_t FReadRaw(void* data, size_t length, size_t elems) - { - ptrdiff_t dist = m_pCursor - m_pBuffer; - - size_t count = length; - if (dist + count * elems > m_nFileSize) - { - count = (m_nFileSize - dist) / elems; - } - - memmove(data, m_pCursor, count * elems); - m_pCursor += count * elems; - - return count; - } - - template - size_t FRead(T* data, size_t elems, bool bSwapEndian = eLittleEndian) - { - ptrdiff_t dist = m_pCursor - m_pBuffer; - - size_t count = elems; - if (dist + count * sizeof(T) > m_nFileSize) - { - count = (m_nFileSize - dist) / sizeof(T); - } - - memmove(data, m_pCursor, count * sizeof(T)); - m_pCursor += count * sizeof(T); - - SwapEndian(data, count, bSwapEndian); - return count; - } - - size_t FTell() - { - ptrdiff_t dist = m_pCursor - m_pBuffer; - return dist; - } - - int FSeek(int64_t origin, int command) - { - int retCode = -1; - int64_t newPos; - char* newPosBuf; - switch (command) - { - case SEEK_SET: - newPos = origin; - if (newPos <= (int64_t)m_nFileSize) - { - m_pCursor = m_pBuffer + newPos; - retCode = 0; - } - break; - case SEEK_CUR: - newPosBuf = m_pCursor + origin; - if (newPosBuf <= m_pBuffer + m_nFileSize) - { - m_pCursor = newPosBuf; - retCode = 0; - } - break; - case SEEK_END: - newPos = m_nFileSize - origin; - if (newPos <= (int64_t)m_nFileSize) - { - m_pCursor = m_pBuffer + newPos; - retCode = 0; - } - break; - default: - // Not valid disk operation! - AZ_Assert(false, "Invalid disk operation"); - } - return retCode; - } - - -private: - - void Close() - { - if (m_fileHandle != AZ::IO::InvalidHandle) - { - m_pPak->FClose(m_fileHandle); - } - - if (m_pBuffer) - { - m_pPak->PoolFree(m_pBuffer); - } - - m_pBuffer = m_pCursor = 0; - m_nFileSize = 0; - m_fileHandle = AZ::IO::InvalidHandle; - } - -private: - AZ::IO::HandleType m_fileHandle; - char* m_pBuffer; - AZ::IO::IArchive* m_pPak; - char* m_pCursor; - size_t m_nFileSize; -}; - - -////////////////////////////////////////////////////////////////////////// -// Helper class that can be used to recursively scan the directory. -////////////////////////////////////////////////////////////////////////// -struct SDirectoryEnumeratorHelper -{ -public: - void ScanDirectoryRecursive(AZ::IO::IArchive* pIPak, const AZStd::string& root, const AZStd::string& pathIn, const AZStd::string& fileSpec, AZStd::vector& files) - { - auto AddSlash = [](AZStd::string_view path) -> AZStd::string - { - if (path.ends_with(AZ_CORRECT_DATABASE_SEPARATOR)) - { - return path; - } - else if (path.ends_with(AZ_WRONG_DATABASE_SEPARATOR)) - { - return AZStd::string{ path.substr(0, path.size() - 1) } + AZ_CORRECT_DATABASE_SEPARATOR; - } - return path.empty() ? AZStd::string(path) : AZStd::string(path) + AZ_CORRECT_DATABASE_SEPARATOR; - }; - AZStd::string dir; - AZ::StringFunc::Path::Join(root.c_str(), pathIn.c_str(), dir); - dir = AddSlash(dir); - - ScanDirectoryFiles(pIPak, "", dir, fileSpec, files); - - AZStd::string findFilter; - AZ::StringFunc::Path::Join(dir.c_str(), "*", findFilter); - - // Add all directories. - - AZ::IO::ArchiveFileIterator pakFileIterator = pIPak->FindFirst(findFilter.c_str()); - if (pakFileIterator) - { - do - { - // Skip back folders. - if (pakFileIterator.m_filename[0] == '.') - { - continue; - } - if (pakFileIterator.m_filename.empty()) - { - AZ_Fatal("Archive", "IArchive FindFirst/FindNext returned empty name while looking for '%s'", findFilter.c_str()); - continue; - } - if ((pakFileIterator.m_fileDesc.nAttrib & AZ::IO::FileDesc::Attribute::Subdirectory) == AZ::IO::FileDesc::Attribute::Subdirectory) // skip sub directories. - { - AZStd::string scanDir = AZStd::string::format("%s%.*s/", AddSlash(pathIn).c_str(), aznumeric_cast(pakFileIterator.m_filename.size()), pakFileIterator.m_filename.data()); - scanDir += AZ_CORRECT_DATABASE_SEPARATOR; - ScanDirectoryRecursive(pIPak, root, scanDir, fileSpec, files); - continue; - } - } while (pakFileIterator = pIPak->FindNext(pakFileIterator)); - pIPak->FindClose(pakFileIterator); - } - } -private: - void ScanDirectoryFiles(AZ::IO::IArchive* pIPak, const AZStd::string& root, const AZStd::string& path, const AZStd::string& fileSpec, AZStd::vector& files) - { - AZStd::string dir; - AZ::StringFunc::Path::Join(root.c_str(), path.c_str(), dir); - - AZStd::string findFilter; - AZ::StringFunc::Path::Join(dir.c_str(), fileSpec.c_str(), findFilter); - - AZ::IO::ArchiveFileIterator pakFileIterator = pIPak->FindFirst(findFilter.c_str()); - if (pakFileIterator) - { - do - { - // Skip back folders and subdirectories. - if (pakFileIterator.m_filename[0] == '.' || (pakFileIterator.m_fileDesc.nAttrib & AZ::IO::FileDesc::Attribute::Subdirectory) == AZ::IO::FileDesc::Attribute::Subdirectory) - { - continue; - } - AZStd::string fullPath; - AZ::StringFunc::Path::Join(path.c_str(), AZStd::string(pakFileIterator.m_filename).c_str(), fullPath); - files.push_back(fullPath); - } while (pakFileIterator = pIPak->FindNext(pakFileIterator)); - pIPak->FindClose(pakFileIterator); - } - } - - -}; diff --git a/Code/CryEngine/CryCommon/PakLoadDataUtils.cpp b/Code/CryEngine/CryCommon/PakLoadDataUtils.cpp deleted file mode 100644 index cf0fe2598d..0000000000 --- a/Code/CryEngine/CryCommon/PakLoadDataUtils.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#include - -namespace PakLoadDataUtils -{ - bool LoadDataFromFile_Seek(size_t elems, AZ::IO::HandleType& fileHandle, int& nDataSize, [[maybe_unused]] EEndian eEndian) - { - GetISystem()->GetIPak()->FSeek(fileHandle, elems, SEEK_CUR); - nDataSize -= elems; - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - return (nDataSize >= 0); - } - - bool LoadDataFromFile_Seek(size_t elems, uint8*& f, int& nDataSize, [[maybe_unused]] EEndian eEndian) - { - nDataSize -= elems; - f += elems; - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - return true; - } - - void LoadDataFromFile_FixAlignment(AZ::IO::HandleType& fileHandle, int& nDataSize) - { - while (nDataSize & 3) - { - [[maybe_unused]] size_t nRes = GetISystem()->GetIPak()->FSeek(fileHandle, 1, SEEK_CUR); - AZ_Assert(nRes == 0, "FSeek failed for 1 byte"); - AZ_Assert(nDataSize, "nDataSize reached zero" ); - nDataSize--; - } - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - } - - void LoadDataFromFile_FixAlignment(uint8*& f, int& nDataSize) - { - while (nDataSize & 3) - { - AZ_Assert(*f == 222, "Found invalid data in buffer."); - f++; - AZ_Assert(nDataSize, "nDataSize reached zero"); - nDataSize--; - } - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - } - -} //namespace PakLoadDataUtils diff --git a/Code/CryEngine/CryCommon/PakLoadDataUtils.h b/Code/CryEngine/CryCommon/PakLoadDataUtils.h deleted file mode 100644 index 6f2868f8f6..0000000000 --- a/Code/CryEngine/CryCommon/PakLoadDataUtils.h +++ /dev/null @@ -1,55 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once - -#include -#include - -namespace PakLoadDataUtils -{ - template - static bool LoadDataFromFile(T* data, size_t elems, AZ::IO::HandleType& fileHandle, int& nDataSize, EEndian eEndian, int* pSeek = 0) - { - auto ipak = GetISystem()->GetIPak(); - if (pSeek) - { - *pSeek = aznumeric_cast(ipak->FTell(fileHandle)); - } - - if (ipak->FRead(data, elems, fileHandle, eEndian) != elems) - { - AZ_Assert(false, "Failed to read %zu elements", elems); - return false; - } - nDataSize -= sizeof(T) * elems; - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - return true; - } - - bool LoadDataFromFile_Seek(size_t elems, AZ::IO::HandleType& fileHandle, int& nDataSize, [[maybe_unused]] EEndian eEndian); - - template - static bool LoadDataFromFile(T* data, size_t elems, uint8*& f, int& nDataSize, EEndian eEndian, [[maybe_unused]] int* pSeek = 0) - { - StepDataCopy(data, f, elems, eEndian); - nDataSize -= elems * sizeof(T); - AZ_Assert(nDataSize >= 0, "nDataSize must be equal or greater than 0"); - return (nDataSize >= 0); - } - - bool LoadDataFromFile_Seek(size_t elems, uint8*& f, int& nDataSize, [[maybe_unused]] EEndian eEndian); - - void LoadDataFromFile_FixAlignment(AZ::IO::HandleType& fileHandle, int& nDataSize); - - void LoadDataFromFile_FixAlignment(uint8*& f, int& nDataSize); - -} //namespace PakLoadDataUtils diff --git a/Code/CryEngine/CryCommon/ProjectDefines.h b/Code/CryEngine/CryCommon/ProjectDefines.h index 1f151caf2e..d8cc4aa6c7 100644 --- a/Code/CryEngine/CryCommon/ProjectDefines.h +++ b/Code/CryEngine/CryCommon/ProjectDefines.h @@ -242,9 +242,6 @@ typedef uint32 vtx_idx; #endif // TESSELLATION #endif // !defined(MOBILE) - -#define USE_GEOM_CACHES - //------------------------------------------------------ // SVO GI //------------------------------------------------------ diff --git a/Code/CryEngine/CryCommon/QTangent.h b/Code/CryEngine/CryCommon/QTangent.h deleted file mode 100644 index f40e9cff99..0000000000 --- a/Code/CryEngine/CryCommon/QTangent.h +++ /dev/null @@ -1,157 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_QTANGENT_H -#define CRYINCLUDE_CRYCOMMON_QTANGENT_H -#pragma once - -namespace QTangent { - // Computes a QTangent from a frame and reflection scalar representing the - // tangent space. - // Will also ensure the resulting QTangent is suitable for 16bit quantization. - ILINE Quat FromFrameReflection(Quat frame, const float reflection) - { - frame.v = -frame.v; - if (frame.w < 0.0f) - { - frame = -frame; - } - - // Make sure w is never 0 by applying the smallest possible bias. - // This is needed in order to have sign() never return 0 in the shaders. - static const float BIAS_16BIT = 1.0f / 32767.0f; - static const float BIAS_SCALE_16BIT = sqrtf(1.0f - BIAS_16BIT * BIAS_16BIT); - if (frame.w < BIAS_16BIT && frame.w > -BIAS_16BIT) - { - frame *= BIAS_SCALE_16BIT; - frame.w = BIAS_16BIT; - } - - if (reflection < 0.0f) - { - frame = -frame; - } - - return frame; - } - - ILINE Quat FromFrameReflection(const Matrix33& frame, const float reflection) - { - Quat quat(frame); - quat.Normalize(); - return FromFrameReflection(quat, reflection); - } - - ILINE Quat FromFrameReflection16Safe(Matrix33 frame, const float reflection) - { - frame.OrthonormalizeFast(); - if (!frame.IsOrthonormalRH(0.1f)) - { - frame.SetIdentity(); - } - - return FromFrameReflection(frame, reflection); - } - - ILINE void ToTangentBitangentReflection(const Quat& qtangent, Vec3& tangent, Vec3& bitangent, float& reflection) - { - tangent = qtangent.GetColumn0(); - bitangent = qtangent.GetColumn1(); - reflection = qtangent.w < 0.0f ? -1.0f : +1.0f; - } -} // namespace QTangent - -// Auxiliary helper functions - -#include // <> required for Interfuscator - -ILINE Quat MeshTangentFrameToQTangent(const SMeshTangents& tangents) -{ - SMeshTangents tb = tangents; - Vec3 tangent32, bitangent32; - int16 reflection; - - tb.GetTB(tangent32, bitangent32); - tb.GetR(reflection); - - Matrix33 frame; - - frame.SetRow(0, tangent32); - frame.SetRow(1, bitangent32); - frame.SetRow(2, tangent32.Cross(bitangent32).GetNormalized()); - - return QTangent::FromFrameReflection16Safe(frame, reflection); -} - -ILINE Quat MeshTangentFrameToQTangent(const Vec4sf& tangent, const Vec4sf& bitangent) -{ - return MeshTangentFrameToQTangent(SMeshTangents(tangent, bitangent)); -} - -ILINE Quat MeshTangentFrameToQTangent(const SPipTangents& tangents) -{ - return MeshTangentFrameToQTangent(SMeshTangents(tangents)); -} - -ILINE bool MeshTangentsFrameToQTangents( - const Vec4sf* pTangent, const uint tangentStride, - const Vec4sf* pBitangent, const uint bitangentStride, const uint count, - SPipQTangents* pQTangents, const uint qtangentStride) -{ - Quat qtangent; - for (uint i = 0; i < count; ++i) - { - qtangent = MeshTangentFrameToQTangent(*pTangent, *pBitangent); - SMeshQTangents(qtangent).ExportTo(*pQTangents); - - pTangent = (const Vec4sf*)(((const uint8*)pTangent) + tangentStride); - pBitangent = (const Vec4sf*)(((const uint8*)pBitangent) + bitangentStride); - pQTangents = (SPipQTangents*)(((uint8*)pQTangents) + qtangentStride); - } - return true; -} - -ILINE bool MeshTangentsFrameToQTangents( - const SPipTangents* pTangents, const uint tangentStride, const uint count, - SPipQTangents* pQTangents, const uint qtangentStride) -{ - Quat qtangent; - for (uint i = 0; i < count; ++i) - { - qtangent = MeshTangentFrameToQTangent(*pTangents); - SMeshQTangents(qtangent).ExportTo(*pQTangents); - - pTangents = (const SPipTangents*)(((const uint8*)pTangents) + tangentStride); - pQTangents = (SPipQTangents*)(((uint8*)pQTangents) + qtangentStride); - } - return true; -} - -ILINE bool MeshTangentsFrameToQTangents( - const SMeshTangents* pTangents, const uint tangentStride, const uint count, - SMeshQTangents* pQTangents, const uint qtangentStride) -{ - Quat qtangent; - for (uint i = 0; i < count; ++i) - { - qtangent = MeshTangentFrameToQTangent(*pTangents); - *pQTangents = SMeshQTangents(qtangent); - - pTangents = (const SMeshTangents*)(((const uint8*)pTangents) + tangentStride); - pQTangents = (SMeshQTangents*)(((uint8*)pQTangents) + qtangentStride); - } - return true; -} - -#endif // CRYINCLUDE_CRYCOMMON_QTANGENT_H - diff --git a/Code/CryEngine/CryCommon/RenderContextConfig.h b/Code/CryEngine/CryCommon/RenderContextConfig.h deleted file mode 100644 index 3d5899d3f6..0000000000 --- a/Code/CryEngine/CryCommon/RenderContextConfig.h +++ /dev/null @@ -1,86 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ - -#pragma once - -#include -#include - -namespace AZ -{ - class ReflectContext; -} - -namespace AzRTT -{ - typedef AZ::Uuid RenderContextId; - - // various post screen effects will fail if we attempt to render the scene to very - // small render target sizes so provide a reasonable minimum (tile/icon size) - constexpr uint32_t MinRenderTargetWidth = 32; - constexpr uint32_t MinRenderTargetHeight = 32; - - // this maximum recommended texture size applies to width and height - // using sizes larger than this can lead to performance issues and instability - constexpr uint32_t MaxRecommendedRenderTargetSize = 2048; - - enum class AlphaMode { - ALPHA_DISABLED = 0, - ALPHA_OPAQUE, - ALPHA_DEPTH_BASED - }; - - // RenderContextConfig stores the render settings to use when rendering to texture. - // It also provides a more developer-friendly interface to deal with by exposing - // the most commonly used properties in one place. - struct RenderContextConfig - { - AZ_CLASS_ALLOCATOR(RenderContextConfig, AZ::SystemAllocator, 0); - AZ_RTTI(RenderContextConfig, "{6114F930-CBE4-4373-AF9D-3B5319471C8F}"); - virtual ~RenderContextConfig() = default; - static void Reflect(AZ::ReflectContext* context); - - //! render target width - uint32_t m_width = 256; - - //! render target height - uint32_t m_height = 256; - - //! write srgb or linear output - bool m_sRGBWrite = false; - - //! alpha mode to use for the render target - AlphaMode m_alphaMode = AlphaMode::ALPHA_OPAQUE; - - //! scene settings - bool m_oceanEnabled = true; - bool m_terrainEnabled = true; - bool m_vegetationEnabled = true; - - //! shadow settings - bool m_shadowsEnabled = true; - int32_t m_shadowsNumCascades = -1; - float m_shadowsGSMRange = -1.f; - float m_shadowsGSMRangeStep = -1.f; - - //! post-effects settings - bool m_depthOfFieldEnabled = false; - bool m_motionBlurEnabled = false; - int m_aaMode = 0; - - //! visiblity for shadow settings - AZ::Crc32 GetShadowSettingsVisible(); - - //! confirm if user wants to use texture size larger than MaxRecommendedRenderTargetSize - bool ValidateTextureSize(void* newValue, const AZ::Uuid& valueType); - }; -} diff --git a/Code/CryEngine/CryCommon/RingBuffer.h b/Code/CryEngine/CryCommon/RingBuffer.h deleted file mode 100644 index e163a076cf..0000000000 --- a/Code/CryEngine/CryCommon/RingBuffer.h +++ /dev/null @@ -1,273 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright (C), Crytek, 1999-2015. -#pragma once - -// A fixed-size type-safe ring buffer (ie, fixed-size double-ended queue). -// Note: It's possible to add support for iterators, indexing if needed. -template -class CRingBuffer -{ - static_assert(std::is_integral::value && std::is_unsigned::value, "I is not unsigned integral type"); - static_assert(N != 0 && N <= I(-1), "N is not a valid value (or I is too small)"); - enum : I - { - kPowerOf2 = (N & (N - 1)) == 0, - kMaxSize = static_cast(N), - }; - -public: - typedef T value_type; - typedef T& reference; - typedef const T& const_reference; - typedef T* pointer; - typedef const T* const_pointer; - typedef I size_type; - - // Constructs an empty ring buffer. - CRingBuffer() - : m_begin(0) - , m_count(0) - {} - - // Destroy a ring buffer. - ~CRingBuffer() - { - clear(); - } - - // Retrieve the size of the collection. - size_type size() const - { - return m_count; - } - - // Retrieve the maximum size of the collection. - size_type max_size() const - { - return kMaxSize; - } - - // Test if the collection is empty. - bool empty() const - { - return m_count == 0; - } - - // Test if the collection is full. - bool full() const - { - return m_count == kMaxSize; - } - - // Get the front-most item of the collection. - // If the collection is empty, the behavior is undefined. - reference front() - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - return *ptr(m_begin); - } - - // Get the front-most item of the collection. - // If the collection is empty, the behavior is undefined. - const_reference front() const - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - return *ptr(m_begin); - } - - // Get the back-most item of the collection. - // If the collection is empty, the behavior is undefined. - reference back() - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - return *ptr(wrap(m_begin + m_count - 1)); - } - - // Get the back-most item of the collection. - // If the collection is empty, the behavior is undefined. - const_reference back() const - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - return *ptr(wrap(m_begin + m_count - 1)); - } - - // Adds an item to the front of the collection. - // In case the collection is full, the function returns false and the collection remains unmodified. - template - bool push_front(X&& value) - { - static_assert(std::is_constructible::value, "T cannot be constructed from the given type"); - if (full()) - { - return false; - } - const I index = decrement(m_begin); - ::new(static_cast(ptr(index)))T(std::forward(value)); - m_begin = index; - ++m_count; - return true; - } - - // Adds an item to the front of the collection. - // In case the collection is full, the function overwrites the last item in the collection. - template - void push_front_overwrite(X&& value) - { - static_assert(std::is_constructible::value, "T cannot be constructed from the given type"); - const I index = decrement(m_begin); - if (full()) - { - ptr(index)->~T(); - --m_count; - } - ::new(static_cast(ptr(index)))T(std::forward(value)); - m_begin = index; - ++m_count; - } - - // Removes an item from the front of the collection. - // If the collection is empty, the behavior is undefined. - void pop_front() - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - ptr(m_begin)->~T(); - m_begin = increment(m_begin); - --m_count; - } - - // Attempts to remove an item from the front of the collection, and assigns it to 'value'. - // Returns true if an item was removed, false if the collection was empty (and 'value' remains unmodified). - bool try_pop_front(T& value) - { - if (m_count != 0) - { - T* const pItem = ptr(m_begin); - value = std::move(*pItem); - pItem->~T(); - m_begin = increment(m_begin); - --m_count; - return true; - } - return false; - } - - // Adds an item to the back of the collection. - // In case the collection is full, the function returns false and the collection remains unmodified. - template - bool push_back(X&& value) - { - static_assert(std::is_constructible::value, "T cannot be constructed from the given type"); - if (full()) - { - return false; - } - const I index = wrap(m_begin + m_count); - ::new(static_cast(ptr(index)))T(std::forward(value)); - ++m_count; - return true; - } - - // Adds an item to the back of the collection. - // In case the collection is full, the function overwrites the first item in the collection. - template - void push_back_overwrite(X&& value) - { - static_assert(std::is_constructible::value, "T cannot be constructed from the given type"); - const I index = wrap(m_begin + m_count); - if (full()) - { - ptr(index)->~T(); - m_begin = increment(index); - --m_count; - } - ::new(static_cast(ptr(index)))T(std::forward(value)); - ++m_count; - } - - // Removes an item from the back of the collection. - // If the collection is empty, the behavior is undefined. - void pop_back() - { - CRY_ASSERT_MESSAGE(m_count != 0, "Container is empty"); - const I index = wrap(m_begin + m_count - 1); - ptr(index)->~T(); - --m_count; - } - - // Attempts to remove an item from the back of the collection, and assigns it to 'value'. - // Returns true if an item was removed, false if the collection was empty (and 'value' remains unmodified). - bool try_pop_back(T& value) - { - if (m_count != 0) - { - const I index = wrap(m_begin + m_count - 1); - T* const pItem = ptr(index); - value = std::move(*pItem); - pItem->~T(); - --m_count; - return true; - } - return false; - } - - // Destroy all items in a ring buffer. - void clear() - { - size_type index = m_begin; - for (size_type i = 0; i < m_count; ++i, index = increment(index)) - { - ptr(index)->~T(); - } - m_begin = 0; - m_count = 0; - } - -private: - // Decrements a given index, wrapping it around N. - static size_type decrement(size_type index) - { - return kPowerOf2 ? ((index - 1) & (kMaxSize - 1)) : index ? index - 1 : kMaxSize - 1; - } - - // Increments a given index, wrapping it around N. - static size_type increment(size_type index) - { - ++index; - return kPowerOf2 ? index & (kMaxSize - 1) : index == kMaxSize ? 0 : index; - } - - // Wraps an index, which has a maximum value of 2N-1. - static size_type wrap(size_type index) - { - return kPowerOf2 ? index & (kMaxSize - 1) : index >= kMaxSize ? index - kMaxSize : index; - } - - // Obtain pointer to raw storage at given index. - pointer ptr(size_type index) - { - return reinterpret_cast(&m_storage) + index; - } - - // Obtain pointer to raw storage at given index. - const_pointer ptr(size_type index) const - { - return reinterpret_cast(&m_storage) + index; - } - - // No copy/assign supported. - CRingBuffer(const CRingBuffer&); - void operator=(const CRingBuffer&); - - size_type m_begin, m_count; - typename std::aligned_storage::value>::type m_storage; -}; diff --git a/Code/CryEngine/CryCommon/ScopeGuard.h b/Code/CryEngine/CryCommon/ScopeGuard.h deleted file mode 100644 index c56c49fd18..0000000000 --- a/Code/CryEngine/CryCommon/ScopeGuard.h +++ /dev/null @@ -1,188 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once - -#include - -#if defined(AZ_RESTRICTED_PLATFORM) -#undef AZ_RESTRICTED_SECTION -#define SCOPEGUARD_H_SECTION_1 1 -#define SCOPEGUARD_H_SECTION_2 2 -#endif - -/** -This is from the c++17 working draft paper N3949 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3949.pdf -It is a new library addition targeted for c++17. I didn't feel like waiting. Only modification is as required to get the -code compiling in the yet to be c++11 compliant visual studio. It is similar to boost scope exit, but in a modern and -more feature rich form. scope_guard just executes a lambda when it goes out of scope. unique_resource is a more complete -RAII wrapper. Its stands in for a resource (i.e. overloads cast operator to the wrapped resource) and frees it when it -goes out of scope. see the paper for more examples and a better description. Get rid of this once c++17 is available. -*/ -namespace std17 -{ - template - struct scope_guard_t - { - // construction - explicit scope_guard_t(D&& f) - : deleter(std::move(f)) - , execute_on_destruction(true) - { - } - // move - scope_guard_t(scope_guard_t&& rhs) - : deleter(std::move(rhs.deleter)) - , execute_on_destruction(rhs.execute_on_destruction) - { - rhs.release(); - } - // release - ~scope_guard_t() - { - if (execute_on_destruction) - { - deleter(); - } - } - void release() { execute_on_destruction = false; } - private: -#if defined(AZ_RESTRICTED_PLATFORM) - #define AZ_RESTRICTED_SECTION SCOPEGUARD_H_SECTION_1 - #include AZ_RESTRICTED_FILE(ScopeGuard_h) -#endif -#if defined(AZ_RESTRICTED_SECTION_IMPLEMENTED) -#undef AZ_RESTRICTED_SECTION_IMPLEMENTED -#else - scope_guard_t(scope_guard_t const&) = delete; - void operator=(scope_guard_t const&) = delete; - scope_guard_t& operator=(scope_guard_t&&) = delete; -#endif - D deleter; - bool execute_on_destruction; - // exposition only - }; - - template - scope_guard_t scope_guard(D&& deleter) - { - return scope_guard_t(std::move(deleter)); - // fails with curlies - } - - enum class invoke_it - { - once, again - }; - template - class unique_resource_t - { - R resource; - D deleter; - bool execute_on_destruction; - // exposition only -#if defined(AZ_RESTRICTED_PLATFORM) - #define AZ_RESTRICTED_SECTION SCOPEGUARD_H_SECTION_2 - #include AZ_RESTRICTED_FILE(ScopeGuard_h) -#endif -#if defined(AZ_RESTRICTED_SECTION_IMPLEMENTED) -#undef AZ_RESTRICTED_SECTION_IMPLEMENTED -#else - unique_resource_t& operator=(unique_resource_t const&) = delete; - unique_resource_t(unique_resource_t const&) = delete; -#endif - // no copies! - public: - // construction - explicit unique_resource_t(R&& _resource, D&& _deleter, bool _shouldrun = true) - : resource(std::move(_resource)) - , deleter(std::move(_deleter)) - , execute_on_destruction(_shouldrun) - { - } - // move - unique_resource_t(unique_resource_t&& other) - : resource(std::move(other.resource)) - , deleter(std::move(other.deleter)) - , execute_on_destruction(other.execute_on_destruction) - { - other.release(); - } - unique_resource_t& operator=(unique_resource_t&& other) - { - this->invoke(invoke_it::once); - deleter = std::move(other.deleter); - resource = std::move(other.resource); - execute_on_destruction = other.execute_on_destruction; - other.release(); - return *this; - } - // resource release - ~unique_resource_t() - { - this->invoke(invoke_it::once); - } - void invoke(invoke_it const strategy = invoke_it::once) - { - if (execute_on_destruction) - { - get_deleter()(resource); - } - execute_on_destruction = strategy == invoke_it::again; - } - R const& release() - { - execute_on_destruction = false; - return this->get(); - } - void reset(R&& newresource) - { - invoke(invoke_it::again); - resource = std::move(newresource); - } - // resource access - R const& get() const - { - return resource; - } - operator R const& () const - { - return resource; - } - R operator->() const - { - return resource; - } - typename std::add_lvalue_reference::type>::type operator*() const - { - return *resource; - } - // deleter access - const D& get_deleter() const - { - return deleter; - } - }; - - template - unique_resource_t unique_resource(R&& r, D t) - { - return unique_resource_t(std::move(r), std::move(t), true); - } - - template - unique_resource_t unique_resource_checked(R r, R invalid, D t) - { - bool shouldrun = (r != invalid); - return unique_resource_t(std::move(r), std::move(t), shouldrun); - } -} - diff --git a/Code/CryEngine/CryCommon/SmartPointersHelpers.h b/Code/CryEngine/CryCommon/SmartPointersHelpers.h deleted file mode 100644 index 41d60bc119..0000000000 --- a/Code/CryEngine/CryCommon/SmartPointersHelpers.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// This header is provided for backwards compatibility. Avoid including this header, instead -// include the needed smart ptr headers - -#pragma once - -#include -#include -#include - -#define DECLARE_SMART_POINTERS(name) \ - typedef AZStd::shared_ptr name##Ptr; \ - typedef AZStd::shared_ptr name##ConstPtr; \ - typedef AZStd::weak_ptr name##WeakPtr; \ - typedef AZStd::weak_ptr name##ConstWeakPtr; diff --git a/Code/CryEngine/CryCommon/StackContainer.h b/Code/CryEngine/CryCommon/StackContainer.h deleted file mode 100644 index 5af9a60e2e..0000000000 --- a/Code/CryEngine/CryCommon/StackContainer.h +++ /dev/null @@ -1,64 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Description : Helper to enable inplace construction and destruction of objects - -#ifndef CRYINCLUDE_CRYCOMMON_STACKCONTAINER_H -#define CRYINCLUDE_CRYCOMMON_STACKCONTAINER_H -#pragma once - -#include - -// Class that contains a non-pod data type allocated on the stack via placement -// new. Constructor parameters up to an arity of 5 are forwarded over an -// inplace factory expression. -template -class CStackContainer -{ - // The backing storage - uint8 m_Storage[ sizeof (T) ]; - - // Constructs the object via an inplace factory - template - void construct (const Factory& factory) - { - factory.template apply(m_Storage); - } - - // Destructs the object. The destructor of the contained object is called - void destruct () - { - reinterpret_cast(m_Storage)->~T(); - } - - // Prevent the object to be placed on the heap - // (.... it simply wouldn't make much sense) - void* operator new(size_t); - void operator delete(void*); - -public: - - // Constructs inside the object - template - CStackContainer (const Expr& expr) - { construct(expr); } - - // Destructs the object contained - ~CStackContainer() { destruct(); } - - // Accessor methods - T* get() { return reinterpret_cast(m_Storage); } - const T* get() const { return reinterpret_cast(m_Storage); } -}; - -#endif // CRYINCLUDE_CRYCOMMON_STACKCONTAINER_H diff --git a/Code/CryEngine/CryCommon/TPool.h b/Code/CryEngine/CryCommon/TPool.h deleted file mode 100644 index b7f1d19068..0000000000 --- a/Code/CryEngine/CryCommon/TPool.h +++ /dev/null @@ -1,88 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -#pragma once - -#include -#include - -template -class TPool -{ -public: - - TPool(int nPoolSize) - { - m_nPoolSize = nPoolSize; - m_pPool = new T[nPoolSize]; - m_lstFree.PreAllocate(nPoolSize, 0); - m_lstUsed.PreAllocate(nPoolSize, 0); - for (int i = 0; i < nPoolSize; i++) - { - m_lstFree.Add(&m_pPool[i]); - } - } - - ~TPool() - { - delete[] m_pPool; - } - - void ReleaseObject(T* pInst) - { - if (m_lstUsed.Delete(pInst)) - { - m_lstFree.Add(pInst); - } - } - - int GetUsedInstancesCount(int& nAll) - { - nAll = m_nPoolSize; - return m_lstUsed.Count(); - } - - T* GetObject() - { - T* pInst = NULL; - if (m_lstFree.Count()) - { - pInst = m_lstFree.Last(); - m_lstFree.DeleteLast(); - m_lstUsed.Add(pInst); - } - else - { - assert(!"TPool::GetObject: Out of free elements error"); - } - - return pInst; - } - - void GetMemoryUsage(class ICrySizer* pSizer) const - { - pSizer->AddObject(m_lstFree); - pSizer->AddObject(m_lstUsed); - - if (m_pPool) - { - for (int i = 0; i < m_nPoolSize; i++) - { - m_pPool[i].GetMemoryUsage(pSizer); - } - } - } - - PodArray m_lstFree; - PodArray m_lstUsed; - T* m_pPool; - int m_nPoolSize; -}; diff --git a/Code/CryEngine/CryCommon/UnalignedBlit.h b/Code/CryEngine/CryCommon/UnalignedBlit.h deleted file mode 100644 index 4492ae6319..0000000000 --- a/Code/CryEngine/CryCommon/UnalignedBlit.h +++ /dev/null @@ -1,141 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -// Generic unaligned memory access helpers. -#pragma once -#include -#include - -namespace Detail -{ - template - struct Blitter - { - static_assert(std::is_trivial::value, "Blittable elements should be trivial (ie, integral types)"); - static_assert((std::alignment_of::value < std::alignment_of::value), "Blittable memory has sufficient alignment, do not use unaligned store or load"); - static_assert(sizeof(RealType) > sizeof(BlittedElement), "Blittable element is larger than real type"); - static_assert((sizeof(RealType) % sizeof(BlittedElement)) == 0, "Blitted element has the wrong size for the real type"); - typedef std::integral_constant NumElements; - - static void BlitLoad(const BlittedElement* pSource, RealType& target) - { - BlittedElement* pTarget = alias_cast(&target); - for (size_t i = 0; i < NumElements::value; ++i, ++pSource, ++pTarget) - { - * pTarget = *pSource; - } - } - - static void BlitStore(const RealType& source, BlittedElement* pTarget) - { - const BlittedElement* pSource = alias_cast(&source); - for (size_t i = 0; i < NumElements::value; ++i, ++pSource, ++pTarget) - { - * pTarget = *pSource; - } - } - }; -} - -// Load RealType from unaligned memory using some blittable type. -// The source memory must be suitably aligned for accessing BlittedElement. -// If no memory alignment can be guaranteed, use char for BlittedElement. -template -inline void LoadUnaligned(const BlittedElement* pMemory, RealType& value, - typename std::enable_if<(std::alignment_of::value > std::alignment_of::value)>::type* = nullptr) -{ - Detail::Blitter::BlitLoad(pMemory, value); -} - -// Load RealType from aligned memory (fallback overload). -// This is used if there is no reason to call the blitter, because sufficient alignment is guaranteed by BlittedElement. -template -inline void LoadUnaligned(const BlittedElement* pMemory, RealType& value, - typename std::enable_if<(std::alignment_of::value <= std::alignment_of::value)>::type* = nullptr) -{ - value = *alias_cast(pMemory); -} - -// Store to unaligned memory using some blittable type. -// The target memory must be suitably aligned for accessing BlittedElement. -// If no memory alignment can be guaranteed, use char for BlittedElement. -template -inline void StoreUnaligned(BlittedElement* pMemory, const RealType& value, - typename std::enable_if<(std::alignment_of::value > std::alignment_of::value)>::type* = nullptr) -{ - Detail::Blitter::BlitStore(value, pMemory); -} - -// Store to aligned memory (fallback overload). -// This is used if there is no reason to call the blitter, because sufficient alignment is guaranteed by BlittedElement. -template -inline void StoreUnaligned(BlittedElement* pMemory, const RealType& value, - typename std::enable_if<(std::alignment_of::value <= std::alignment_of::value)>::type* = nullptr) -{ - *alias_cast(pMemory) = value; -} - -// Pads the given pointer to the next possible aligned location for RealType -// Use this to ensure RealType can be referenced in some buffer of BlittedElement's, without using LoadUnaligned/StoreUnaligned -template -inline BlittedElement* AlignPointer(BlittedElement* pMemory, - typename std::enable_if<(std::alignment_of::value % std::alignment_of::value) == 0>::type* = nullptr) -{ - const size_t align = std::alignment_of::value; - const size_t mask = align - 1; - const size_t address = reinterpret_cast(pMemory); - const size_t offset = (align - (address & mask)) & mask; - return pMemory + (offset / sizeof(BlittedElement)); -} - -// Pads the given address to the next possible aligned location for RealType -// Use this to ensure RealType can be referenced inside memory, without using LoadUnaligned/StoreUnaligned -template -inline size_t AlignAddress(size_t address) -{ - return reinterpret_cast(AlignPointer(reinterpret_cast(address))); -} - -// Provides aligned storage for T, optionally aligned at a specific boundary (default being the native alignment of T) -// The specified T is not initialized automatically, use of placement new/delete is the user's responsibility -template::value> -struct SUninitialized -{ - typedef typename std::aligned_storage::type Storage; - Storage storage; - - void DefaultConstruct() - { - new(static_cast(&storage))T(); - } - - void CopyConstruct(const T& value) - { - new(static_cast(&storage))T(value); - } - - void MoveConstruct(T&& value) - { - new(static_cast(&storage))T(std::move(value)); - } - - void Destruct() - { - alias_cast(&storage)->~T(); - } - - operator T& () - { - return *alias_cast(&storage); - } -}; diff --git a/Code/CryEngine/CryCommon/crycommon_files.cmake b/Code/CryEngine/CryCommon/crycommon_files.cmake index 3c1d1605e7..660cf20276 100644 --- a/Code/CryEngine/CryCommon/crycommon_files.cmake +++ b/Code/CryEngine/CryCommon/crycommon_files.cmake @@ -10,23 +10,16 @@ # set(FILES - QTangent.h CryCommon.cpp - FinalizingSpline.h IAudioInterfacesCommonData.h IAudioSystem.h - IChunkFile.h ICmdLine.h - IColorGradingController.h IConsole.h IEntityRenderState.h IEntityRenderState_info.cpp IFont.h IFunctorBase.h - IFuncVariable.h IGem.h - IGeomCache.h - IImage.h IIndexedMesh.h IIndexedMesh_info.cpp ILevelSystem.h @@ -35,11 +28,9 @@ set(FILES LocalizationManagerBus.inl ILog.h IMaterial.h - IMeshBaking.h IMiniLog.h IMovieSystem.h IPhysics.h - IPhysicsDebugRenderer.h IPostEffectGroup.h IProcess.h IReadWriteXMLSink.h @@ -48,7 +39,6 @@ set(FILES IRenderMesh.h ISerialize.h IShader.h - IShader_info.h ISplines.h IStatObj.h StatObjBus.h @@ -58,18 +48,15 @@ set(FILES ITexture.h ITimer.h IValidator.h - IVideoRenderer.h IViewSystem.h IWindowMessageHandler.h IXml.h - IProximityTriggerSystem.h MicrophoneBus.h physinterface.h HMDBus.h VRCommon.h StereoRendererBus.h HeightmapUpdateNotificationBus.h - IObjManager.h INavigationSystem.h IMNM.h SFunctor.h @@ -82,18 +69,15 @@ set(FILES CryRandomInternal.h Random.h LCGRandom.h - MaterialUtils.h MTPseudoRandom.cpp CryTypeInfo.cpp BaseTypes.h CompileTimeAssert.h - intrusive_list.hpp MemoryAccess.h AnimKey.h BitFiddling.h Common_TypeInfo.cpp CryArray.h - CryArray2d.h CryAssert.h CryCrc32.h CryCustomTypes.h @@ -106,44 +90,31 @@ set(FILES CryName.h CryPath.h CryPodArray.h - CryPtrArray.h CrySizer.h CryString.h CrySystemBus.h CryThread.h CryThreadImpl.h CryTypeInfo.h - CryUtils.h CryVersion.h - CryZlib.h FrameProfiler.h - HashGrid.h HeapAllocator.h - HeapContainer.h - InplaceFactory.h LegacyAllocator.h MetaUtils.h MiniQueue.h MTPseudoRandom.h MultiThread.h MultiThread_Containers.h - Name_TypeInfo.h NullAudioSystem.h PNoise3.h PoolAllocator.h primitives.h - primitives_info.h ProjectDefines.h Range.h - RenderContextConfig.h - RingBuffer.h - ScopeGuard.h ScopedVariableSetter.h SerializeFwd.h SimpleSerialize.h - SmartPointersHelpers.h smartptr.h - StackContainer.h StlUtils.h StringUtils.h Synchronization.h @@ -153,7 +124,6 @@ set(FILES TimeValue_info.h TypeInfo_decl.h TypeInfo_impl.h - UnalignedBlit.h UnicodeBinding.h UnicodeEncoding.h UnicodeFunctions.h @@ -164,10 +134,6 @@ set(FILES XMLBinaryHeaders.h RenderBus.h MainThreadRenderRequestBus.h - OceanConstants.h - PakLoadDataUtils.cpp - PakLoadDataUtils.h - TPool.h Cry_Matrix33.h Cry_Matrix34.h Cry_Matrix44.h @@ -186,7 +152,6 @@ set(FILES Cry_Vector3.h Cry_XOptimise.h CryHalf_info.h - GeomQuery.h CryHalf.inl MathConversion.h Cry_HWMatrix.h @@ -308,6 +273,5 @@ set(FILES Maestro/Types/AssetBlends.h Maestro/Types/SequenceType.h StaticInstance.h - Pak/CryPakUtils.h WinBase.cpp ) diff --git a/Code/CryEngine/CryCommon/intrusive_list.hpp b/Code/CryEngine/CryCommon/intrusive_list.hpp deleted file mode 100644 index 9a182b264d..0000000000 --- a/Code/CryEngine/CryCommon/intrusive_list.hpp +++ /dev/null @@ -1,180 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef _INTRUSIVE_LIST_HPP -#define _INTRUSIVE_LIST_HPP -#if !defined(WIN32) -#include -#endif //!defined(WIN32) - - -namespace util -{ - // Simple lightweight intrusive list utility - // - template - struct list - { - typedef Host value_type; - - list* next; - list* prev; - - // Default (initializing) constructor - list() - { - next = this; - prev = this; - } - - // Inserts this list into a given list item between - // prev and next (note: they need to be sequential!) - void insert(list* _prev, list* _next) - { - _next->prev = this; - this->next = _next; - this->prev = _prev; - _prev->next = this; - } - - // Should only be called on heads - void clear() { next = prev = this; } - - // Removes from a list, then inserts this list item into a given list between - // prev and next (note: they need to be sequential!) - void re_insert(list* _prev, list* _next) - { - erase(); - insert(_prev, _next); - } - - - // Remove this list instance from a list - // Safe to be called even if not attached to a list - void erase() - { - next->prev = prev; - prev->next = next; - next = prev = this; - } - - // Predicate to determine if a list structure is linked to a list - bool empty() const { return prev == this && next == this; } - bool linked() const { return !empty(); } - - // Get the host instance of the instrusive list - template - Host* item() - { - return ((Host*)((uintptr_t)(this) - (uintptr_t)(&(((Host*)0)->*member)))); - } - template - const Host* item() const - { - return ((Host*)((uintptr_t)(this) - (uintptr_t)(&(((Host*)0)->*member)))); - } - template - Host * item(int threadId) - { - uintptr_t value = (uintptr_t)this - (uintptr_t)&((((Host*)(NULL))->*Member)[threadId]); - return alias_cast(value); - } - - // Insert & relink functions - void insert_tail(list* _list) { insert(_list->prev, _list); } - void insert_tail(list& _list) { insert_tail(&_list); } - void insert_head(list* _list) { insert(_list, _list->next); } - void insert_head(list& _list) { insert_head(&_list); } - void relink_tail(list* _list) { erase(); insert_tail(_list); } - void relink_tail(list& _list) { relink_tail(&_list); } - void relink_head(list* _list) { erase(); insert_head(_list); } - void relink_head(list& _list) { relink_head(&_list); } - - static inline void splice(const list* _list, list* prev, list* next) - { - list* first = _list->next; - list* last = _list->prev; - - first->prev = prev; - prev->next = first; - - last->next = next; - next->prev = last; - } - - void splice_front(const list* _list) - { - if (!_list->empty()) - { - splice(_list, this, this->next); - _list->clear(); - } - } - - void splice_tail(list* _list) - { - if (!_list->empty()) - { - splice(_list, this->prev, this); - _list->clear(); - } - } - - // Accessors - list* tail() { return prev; } - const list* tail() const { return prev; } - list* head() { return head; } - const list* head() const { return head; } - }; - - // utility to extract the host type of an intrusive list at compile time - template - struct list_value_type - { - typedef typename List::value_type value_type; - }; - - // Loops over the list in forward manner, pos will be of type list* -# define list_for_each(pos, head) \ - for (typeof(head)pos = (head)->next; pos != (head); \ - pos = pos->next) - - // Loops over the list in backward manner, pos will be of type list* -# define list_for_each_backwards(pos, head) \ - for (typeof(head)pos = (head)->prev; pos != (head); \ - pos = pos->prev) - - // Loops over the list in forward manner while safeguarding - // against list removal during iteration. pos will be of type list* -# define list_for_each_safe(pos, head) \ - for (typeof(head)pos = (head)->next, n = pos->next; pos != (head); \ - pos = n, n = pos->next) - - // Loops over the list in forward manner. pos will be of type list* -# define list_for_each_entry(pos, head, member) \ - for (util::list_value_type::value_type* pos = \ - (head)->next->item(); \ - &(pos->*(member)) != &list; \ - pos = ((pos->*(member)).next->item())) - - // Loops over the list in forward manner while safeguarding against list - // removal during iteratation. pos will be of type T* -# define list_for_each_entry_safe(pos, head, member) \ - for (util::list_value_type::value_type* pos = \ - (head)->next->item(), \ - * n = ((pos->*(member)).next->item()); \ - &(pos->*(member)) != &list; \ - pos = n, n = ((n->*(member)).next->item())) -} // end namespace util -#endif // ifndef _INTRUSIVE_LIST_HPP - diff --git a/Code/CryEngine/CryCommon/primitives_info.h b/Code/CryEngine/CryCommon/primitives_info.h deleted file mode 100644 index 052546c236..0000000000 --- a/Code/CryEngine/CryCommon/primitives_info.h +++ /dev/null @@ -1,50 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_CRYCOMMON_PRIMITIVES_INFO_H -#define CRYINCLUDE_CRYCOMMON_PRIMITIVES_INFO_H -#pragma once - -#include "primitives.h" - -STRUCT_INFO_TYPE_EMPTY(primitives::primitive) - -STRUCT_INFO_BEGIN(primitives::box) -STRUCT_BASE_INFO(primitives::primitive) -STRUCT_VAR_INFO(Basis, TYPE_INFO(Matrix33)) -STRUCT_VAR_INFO(bOriented, TYPE_INFO(int)) -STRUCT_VAR_INFO(center, TYPE_INFO(Vec3)) -STRUCT_VAR_INFO(size, TYPE_INFO(Vec3)) -STRUCT_INFO_END(primitives::box) - -STRUCT_INFO_BEGIN(primitives::sphere) -STRUCT_BASE_INFO(primitives::primitive) -STRUCT_VAR_INFO(center, TYPE_INFO(Vec3)) -STRUCT_VAR_INFO(r, TYPE_INFO(float)) -STRUCT_INFO_END(primitives::sphere) - -STRUCT_INFO_BEGIN(primitives::cylinder) -STRUCT_BASE_INFO(primitives::primitive) -STRUCT_VAR_INFO(center, TYPE_INFO(Vec3)) -STRUCT_VAR_INFO(axis, TYPE_INFO(Vec3)) -STRUCT_VAR_INFO(r, TYPE_INFO(float)) -STRUCT_VAR_INFO(hh, TYPE_INFO(float)) -STRUCT_INFO_END(primitives::cylinder) - -STRUCT_INFO_BEGIN(primitives::plane) -STRUCT_BASE_INFO(primitives::primitive) -STRUCT_VAR_INFO(n, TYPE_INFO(Vec3)) -STRUCT_VAR_INFO(origin, TYPE_INFO(Vec3)) -STRUCT_INFO_END(primitives::plane) - -#endif // CRYINCLUDE_CRYCOMMON_PRIMITIVES_INFO_H diff --git a/Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp b/Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp index 68fc4b558a..c36b9bcee7 100644 --- a/Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp +++ b/Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp @@ -19,7 +19,6 @@ #include "IMovieSystem.h" #include #include "CryPath.h" -#include #include diff --git a/Code/CryEngine/CrySystem/LocalizedStringManager.cpp b/Code/CryEngine/CrySystem/LocalizedStringManager.cpp index 7a2ad51e8b..572ef9a957 100644 --- a/Code/CryEngine/CrySystem/LocalizedStringManager.cpp +++ b/Code/CryEngine/CrySystem/LocalizedStringManager.cpp @@ -28,8 +28,6 @@ #include #include -#include "CryZlib.h" - #include #include diff --git a/Code/CryEngine/CrySystem/Log.cpp b/Code/CryEngine/CrySystem/Log.cpp index c37e12cebd..b8241ee865 100644 --- a/Code/CryEngine/CrySystem/Log.cpp +++ b/Code/CryEngine/CrySystem/Log.cpp @@ -22,7 +22,6 @@ #include #include "System.h" #include "CryPath.h" // PathUtil::ReplaceExtension() -#include #include "UnicodeFunctions.h" #include @@ -237,7 +236,6 @@ void CLog::CloseLogFile([[maybe_unused]] bool forceClose) ////////////////////////////////////////////////////////////////////////// AZ::IO::HandleType CLog::OpenLogFile(const char* filename, const char* mode) { - CDebugAllowFileAccess ignoreInvalidFileAccess; using namespace AZ::IO; AZ_Assert(m_logFileHandle == AZ::IO::InvalidHandle, "Attempt to open log file when one is already open. This would lead to a handle leak."); @@ -1116,8 +1114,6 @@ void CLog::LogStringToFile(const char* szString, ELogType logType, bool bAdd, [[ if (logToFile) { - CDebugAllowFileAccess dafa; - if (m_logFileHandle == AZ::IO::InvalidHandle) { OpenLogFile(m_szFilename, "w+t"); diff --git a/Code/CryEngine/CrySystem/SystemInit.cpp b/Code/CryEngine/CrySystem/SystemInit.cpp index afc5bd9144..a2c21ea04c 100644 --- a/Code/CryEngine/CrySystem/SystemInit.cpp +++ b/Code/CryEngine/CrySystem/SystemInit.cpp @@ -91,7 +91,6 @@ #include #include -#include #include "XConsole.h" #include "Log.h" #include "XML/xml.h" diff --git a/Code/Framework/AzCore/AzCore/Slice/SliceComponent.cpp b/Code/Framework/AzCore/AzCore/Slice/SliceComponent.cpp index 592989ebda..2340d7c786 100644 --- a/Code/Framework/AzCore/AzCore/Slice/SliceComponent.cpp +++ b/Code/Framework/AzCore/AzCore/Slice/SliceComponent.cpp @@ -1740,7 +1740,10 @@ namespace AZ if (!iter->IsInstantiated()) { #if defined(AZ_ENABLE_TRACING) - Data::Asset thisAsset = Data::AssetManager::Instance().FindAsset(GetMyAsset()->GetId(), AZ::Data::AssetLoadBehavior::Default); + Data::Asset thisAsset = GetMyAsset() + ? Data::Asset(Data::AssetManager::Instance().FindAsset( + GetMyAsset()->GetId(), AZ::Data::AssetLoadBehavior::Default)) + : Data::Asset(); AZ_Warning("Slice", false, "Removing %d instances of slice asset %s from parent asset %s due to failed instantiation. " "Saving parent asset will result in loss of slice data.", iter->GetInstances().size(), diff --git a/Code/Framework/AzCore/Platform/Android/AzCore/Module/DynamicModuleHandle_Android.cpp b/Code/Framework/AzCore/Platform/Android/AzCore/Module/DynamicModuleHandle_Android.cpp index 30ec08538a..ec97727148 100644 --- a/Code/Framework/AzCore/Platform/Android/AzCore/Module/DynamicModuleHandle_Android.cpp +++ b/Code/Framework/AzCore/Platform/Android/AzCore/Module/DynamicModuleHandle_Android.cpp @@ -11,6 +11,7 @@ */ #include +#include #include namespace AZ diff --git a/Code/Framework/AzCore/Platform/iOS/AzCore/Module/DynamicModuleHandle_iOS.cpp b/Code/Framework/AzCore/Platform/iOS/AzCore/Module/DynamicModuleHandle_iOS.cpp index 569aae6f53..53514c89e4 100644 --- a/Code/Framework/AzCore/Platform/iOS/AzCore/Module/DynamicModuleHandle_iOS.cpp +++ b/Code/Framework/AzCore/Platform/iOS/AzCore/Module/DynamicModuleHandle_iOS.cpp @@ -39,8 +39,8 @@ namespace AZ // Append .framework to the name of full path // Afterwards use the AZ::IO::Path Append function append the filename as a child // of the framework directory - AZ::IO::FixedMaxPathString fileName = fullPath.Filename().Native(); - fullPath.ReplaceFilename(fileName + ".framework"); + AZ::IO::FixedMaxPathString fileName{ fullPath.Filename().Native() }; + fullPath.ReplaceFilename(AZ::IO::PathView((fileName + ".framework").c_str())); fullPath /= fileName; } } diff --git a/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.cpp b/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.cpp index b7603e5c4c..4a443cb4bf 100644 --- a/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.cpp +++ b/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.cpp @@ -74,7 +74,6 @@ namespace AzFramework void SetCameraClippingVolumeFromPerspectiveFovMatrixRH(CameraState& cameraState, const AZ::Matrix4x4& clipFromView) { - const float m11 = clipFromView(1, 1); const float m22 = clipFromView(2, 2); const float m23 = clipFromView(2, 3); cameraState.m_nearClip = m23 / m22; @@ -84,7 +83,12 @@ namespace AzFramework { AZStd::swap(cameraState.m_nearClip, cameraState.m_farClip); } - cameraState.m_fovOrZoom = 2 * (AZ::Constants::HalfPi - atanf(m11)); + cameraState.m_fovOrZoom = RetrieveFov(clipFromView); + } + + float RetrieveFov(const AZ::Matrix4x4& clipFromView) + { + return 2.0f * (AZ::Constants::HalfPi - AZStd::atan(clipFromView(1, 1))); } void CameraState::Reflect(AZ::SerializeContext& serializeContext) diff --git a/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.h b/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.h index 71d0a932c7..2565612bc3 100644 --- a/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.h +++ b/Code/Framework/AzFramework/AzFramework/Viewport/CameraState.h @@ -17,54 +17,57 @@ namespace AzFramework { - /// Represents the camera state populated by the viewport camera. + //! Represents the camera state populated by the viewport camera. struct CameraState { - /// @cond + //! @cond AZ_TYPE_INFO(CameraState, "{D309D934-044C-4BA8-91F1-EA3A45177A52}") CameraState() = default; - /// @endcond + //! @endcond static void Reflect(AZ::SerializeContext& context); - /// Return the vertical fov of the camera when the view is in perspective. + //! Return the vertical fov of the camera when the view is in perspective. float VerticalFovRadian() const { return m_fovOrZoom; } - /// Return the zoom amount of the camera when the view is in orthographic. + //! Return the zoom amount of the camera when the view is in orthographic. float Zoom() const { return m_fovOrZoom; } - AZ::Vector3 m_position = AZ::Vector3::CreateZero(); ///< World position of the camera. - AZ::Vector3 m_forward = AZ::Vector3::CreateAxisY(); ///< Forward look direction of the camera (world space). - AZ::Vector3 m_side = AZ::Vector3::CreateAxisX(); ///< Side vector of camera (orthogonal to forward and up). - AZ::Vector3 m_up = AZ::Vector3::CreateAxisZ(); ///< Up vector of the camera (cameras frame - world space). - AZ::Vector2 m_viewportSize = AZ::Vector2::CreateZero(); ///< Dimensions of the viewport. - float m_nearClip = 0.01f; ///< Near clip plane of the camera. - float m_farClip = 100.0f; ///< Far clip plane of the camera. - float m_fovOrZoom = 0.0f; ///< Fov or zoom of camera depending on if it is using orthographic projection or not. - bool m_orthographic = false; ///< Is the camera using orthographic projection or not. + AZ::Vector3 m_position = AZ::Vector3::CreateZero(); //!< World position of the camera. + AZ::Vector3 m_forward = AZ::Vector3::CreateAxisY(); //!< Forward look direction of the camera (world space). + AZ::Vector3 m_side = AZ::Vector3::CreateAxisX(); //!< Side vector of camera (orthogonal to forward and up). + AZ::Vector3 m_up = AZ::Vector3::CreateAxisZ(); //!< Up vector of the camera (cameras frame - world space). + AZ::Vector2 m_viewportSize = AZ::Vector2::CreateZero(); //!< Dimensions of the viewport. + float m_nearClip = 0.01f; //!< Near clip plane of the camera. + float m_farClip = 100.0f; //!< Far clip plane of the camera. + float m_fovOrZoom = 0.0f; //!< Fov or zoom of camera depending on if it is using orthographic projection or not. + bool m_orthographic = false; //!< Is the camera using orthographic projection or not. }; - /// Create a camera at the given transform with a specific viewport size. - /// @note The near/far clip planes and fov are sensible default values - please - /// use SetCameraClippingVolume to override them. + //! Create a camera at the given transform with a specific viewport size. + //! @note The near/far clip planes and fov are sensible default values - please + //! use SetCameraClippingVolume to override them. CameraState CreateDefaultCamera(const AZ::Transform& transform, const AZ::Vector2& viewportSize); - /// Create a camera at the given position (no orientation) with a specific viewport size. - /// @note The near/far clip planes and fov are sensible default values - please - /// use SetCameraClippingVolume to override them. + //! Create a camera at the given position (no orientation) with a specific viewport size. + //! @note The near/far clip planes and fov are sensible default values - please + //! use SetCameraClippingVolume to override them. CameraState CreateIdentityDefaultCamera(const AZ::Vector3& position, const AZ::Vector2& viewportSize); - /// Create a camera transformed by the given view to world matrix with a specific viewport size. - /// @note The near/far clip planes and fov are sensible default values - please - /// use SetCameraClippingVolume to override them. + //! Create a camera transformed by the given view to world matrix with a specific viewport size. + //! @note The near/far clip planes and fov are sensible default values - please + //! use SetCameraClippingVolume to override them. CameraState CreateCameraFromWorldFromViewMatrix(const AZ::Matrix4x4& worldFromView, const AZ::Vector2& viewportSize); - /// Override the default near/far clipping planes and fov of the camera. + //! Override the default near/far clipping planes and fov of the camera. void SetCameraClippingVolume(CameraState& cameraState, float nearPlane, float farPlane, float fovRad); - /// Override the default near/far clipping planes and fov of the camera by inferring them the specified right handed transform into clip space. + //! Override the default near/far clipping planes and fov of the camera by inferring them the specified right handed transform into clip space. void SetCameraClippingVolumeFromPerspectiveFovMatrixRH(CameraState& cameraState, const AZ::Matrix4x4& clipFromView); - /// Set the transform for an existing camera. + //! Retrieve the field of view (Fov) from the perspective projection matrix (view space to clip space). + float RetrieveFov(const AZ::Matrix4x4& clipFromView); + + //! Set the transform for an existing camera. void SetCameraTransform(CameraState& cameraState, const AZ::Transform& transform); } // namespace AzFramework diff --git a/Code/Framework/AzNetworking/Platform/Linux/AzNetworking/AzNetworking_Traits_Platform.h b/Code/Framework/AzNetworking/Platform/Linux/AzNetworking/AzNetworking_Traits_Platform.h index 678623ad96..51fe778d9a 100644 --- a/Code/Framework/AzNetworking/Platform/Linux/AzNetworking/AzNetworking_Traits_Platform.h +++ b/Code/Framework/AzNetworking/Platform/Linux/AzNetworking/AzNetworking_Traits_Platform.h @@ -14,8 +14,8 @@ #define AZ_TRAIT_OS_USE_WINSOCK 0 #define AZ_TRAIT_OS_USE_MACH 0 -#define AZ_TRAIT_USE_SOCKET_SERVER_EPOLL 1 -#define AZ_TRAIT_USE_SOCKET_SERVER_SELECT 0 +#define AZ_TRAIT_USE_SOCKET_SERVER_EPOLL 0 +#define AZ_TRAIT_USE_SOCKET_SERVER_SELECT 1 #define AZ_TRAIT_USE_OPENSSL 1 #define AZ_TRAIT_NEEDS_HTONLL 1 diff --git a/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h b/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h index f283a6b6aa..0090ce066b 100644 --- a/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h +++ b/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h @@ -28,7 +28,6 @@ #define AZ_TRAIT_DISABLE_FAILED_ZERO_COLOR_CONVERSION_TEST true #define AZ_TRAIT_DISABLE_FAILED_FRAMEPROFILER_TEST true #define AZ_TRAIT_DISABLE_FAILED_FRAMEWORK_TESTS true -#define AZ_TRAIT_DISABLE_FAILED_NETWORKING_TESTS true #define AZ_TRAIT_DISABLE_FAILED_GRADIENT_SIGNAL_TESTS true #define AZ_TRAIT_DISABLE_FAILED_MULTIPLAYER_GRIDMATE_TESTS true #define AZ_TRAIT_DISABLE_FAILED_INPUT_TESTS true diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp index eb247369c5..c4cb3e0316 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp @@ -80,6 +80,12 @@ namespace AzToolsFramework void Instance::SetTemplateId(const TemplateId& templateId) { + // If we aren't changing the template Id, there's no need to unregister / re-register + if (templateId == m_templateId) + { + return; + } + // If this instance's templateId is valid, we should be able to unregister this instance from // Template to Instance mapping successfully. if (m_templateId != InvalidTemplateId && diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.cpp index 80ac86c974..fa03ab22e5 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.cpp @@ -72,10 +72,18 @@ namespace AzToolsFramework for (auto instance : findInstancesResult->get()) { - m_instancesUpdateQueue.emplace(instance); + m_instancesUpdateQueue.emplace_back(instance); } } + void InstanceUpdateExecutor::RemoveTemplateInstanceFromQueue(const Instance* instance) + { + AZStd::erase_if(m_instancesUpdateQueue, [instance](Instance* entry) + { + return entry == instance; + }); + } + bool InstanceUpdateExecutor::UpdateTemplateInstancesInQueue() { bool isUpdateSuccessful = true; @@ -97,9 +105,16 @@ namespace AzToolsFramework ToolsApplicationRequestBus::BroadcastResult(selectedEntityIds, &ToolsApplicationRequests::GetSelectedEntities); ToolsApplicationRequestBus::Broadcast(&ToolsApplicationRequests::SetSelectedEntities, EntityIdList()); - for (int i = 0; i < instanceCountToUpdateInBatch; ++i) + // Process all instances in the queue, capped to the batch size. + // Even though we potentially initialized the batch size to the queue, it's possible for the queue size to shrink + // during instance processing if the instance gets deleted and it was queued multiple times. To handle this, we + // make sure to end the loop once the queue is empty, regardless of what the initial size was. + for (int i = 0; (i < instanceCountToUpdateInBatch) && !m_instancesUpdateQueue.empty(); ++i) { Instance* instanceToUpdate = m_instancesUpdateQueue.front(); + m_instancesUpdateQueue.pop_front(); + AZ_Assert(instanceToUpdate != nullptr, "Invalid instance on update queue."); + TemplateId instanceTemplateId = instanceToUpdate->GetTemplateId(); if (currentTemplateId != instanceTemplateId) { @@ -115,7 +130,6 @@ namespace AzToolsFramework // Remove the instance from update queue if its corresponding template couldn't be found isUpdateSuccessful = false; - m_instancesUpdateQueue.pop(); continue; } } @@ -127,7 +141,6 @@ namespace AzToolsFramework // Since nested instances get reconstructed during propagation, remove any nested instance that no longer // maps to a template. isUpdateSuccessful = false; - m_instancesUpdateQueue.pop(); continue; } @@ -148,8 +161,6 @@ namespace AzToolsFramework isUpdateSuccessful = false; } - - m_instancesUpdateQueue.pop(); } for (auto entityIdIterator = selectedEntityIds.begin(); entityIdIterator != selectedEntityIds.end(); entityIdIterator++) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.h index 04bd189816..fa13c34b98 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutor.h @@ -14,7 +14,7 @@ #include #include -#include +#include #include #include @@ -37,6 +37,7 @@ namespace AzToolsFramework void AddTemplateInstancesToQueue(TemplateId instanceTemplateId) override; bool UpdateTemplateInstancesInQueue() override; + virtual void RemoveTemplateInstanceFromQueue(const Instance* instance) override; void RegisterInstanceUpdateExecutorInterface(); void UnregisterInstanceUpdateExecutorInterface(); @@ -45,7 +46,7 @@ namespace AzToolsFramework PrefabSystemComponentInterface* m_prefabSystemComponentInterface = nullptr; TemplateInstanceMapperInterface* m_templateInstanceMapperInterface = nullptr; int m_instanceCountToUpdateInBatch = 0; - AZStd::queue m_instancesUpdateQueue; + AZStd::deque m_instancesUpdateQueue; bool m_updatingTemplateInstancesInQueue { false }; }; } diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutorInterface.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutorInterface.h index 9ee636e161..d794c4929d 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutorInterface.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceUpdateExecutorInterface.h @@ -31,6 +31,9 @@ namespace AzToolsFramework // Update Instances in the waiting queue. virtual bool UpdateTemplateInstancesInQueue() = 0; + + // Remove an Instance from the waiting queue. + virtual void RemoveTemplateInstanceFromQueue(const Instance* instance) = 0; }; } } diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/TemplateInstanceMapper.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/TemplateInstanceMapper.cpp index 7540be0cfa..2012649941 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/TemplateInstanceMapper.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/TemplateInstanceMapper.cpp @@ -14,6 +14,7 @@ #include #include +#include namespace AzToolsFramework { @@ -71,6 +72,12 @@ namespace AzToolsFramework bool TemplateInstanceMapper::UnregisterInstance(Instance& instance) { + // The InstanceUpdateExecutor queries the TemplateInstanceMapper for a list of instances related to a template. + // Consequently, if an instance gets unregistered for a template, we need to notify the InstanceUpdateExecutor as well + // so that it clears any internal associations that it might have in its queue. + AZ_Assert(AZ::Interface::Get() != nullptr, "InstanceUpdateExecutor doesn't exist"); + AZ::Interface::Get()->RemoveTemplateInstanceFromQueue(&instance); + auto found = m_templateIdToInstancesMap.find(instance.GetTemplateId()); return found != m_templateIdToInstancesMap.end() && found->second.erase(&instance) != 0; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp index 8192e86956..519b6d0b26 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ToolsComponents/TransformComponent.cpp @@ -162,6 +162,12 @@ namespace AzToolsFramework classElement.RemoveElementByName(AZ_CRC("InterpolateScale", 0x9d00b831)); } + if (classElement.GetVersion() < 10) + { + // The "Sync Enabled" flag is no longer needed. + classElement.RemoveElementByName(AZ_CRC_CE("Sync Enabled")); + } + return true; } } // namespace Internal @@ -1305,7 +1311,7 @@ namespace AzToolsFramework Field("IsStatic", &TransformComponent::m_isStatic)-> Field("InterpolatePosition", &TransformComponent::m_interpolatePosition)-> Field("InterpolateRotation", &TransformComponent::m_interpolateRotation)-> - Version(9, &Internal::TransformComponentDataConverter); + Version(10, &Internal::TransformComponentDataConverter); if (AZ::EditContext* ptrEdit = serializeContext->GetEditContext()) { diff --git a/Code/Framework/AzToolsFramework/Tests/Viewport/ViewportScreenTests.cpp b/Code/Framework/AzToolsFramework/Tests/Viewport/ViewportScreenTests.cpp index 8f4133de63..18462bc97b 100644 --- a/Code/Framework/AzToolsFramework/Tests/Viewport/ViewportScreenTests.cpp +++ b/Code/Framework/AzToolsFramework/Tests/Viewport/ViewportScreenTests.cpp @@ -237,4 +237,23 @@ namespace UnitTest EXPECT_THAT(cameraTransform, IsClose(cameraTransformFromView)); EXPECT_THAT(cameraView, IsClose(cameraViewFromTransform)); } + + TEST(ViewportScreen, FovCanBeRetrievedFromProjectionMatrix) + { + using ::testing::FloatNear; + + auto cameraState = AzFramework::CreateIdentityDefaultCamera(AZ::Vector3::CreateZero(), AZ::Vector2(800.0f, 600.0f)); + + { + const float fovRadians = AZ::DegToRad(45.0f); + AzFramework::SetCameraClippingVolume(cameraState, 0.1f, 100.0f, fovRadians); + EXPECT_THAT(AzFramework::RetrieveFov(AzFramework::CameraProjection(cameraState)), FloatNear(fovRadians, 0.001f)); + } + + { + const float fovRadians = AZ::DegToRad(90.0f); + AzFramework::SetCameraClippingVolume(cameraState, 0.1f, 100.0f, fovRadians); + EXPECT_THAT(AzFramework::RetrieveFov(AzFramework::CameraProjection(cameraState)), FloatNear(fovRadians, 0.001f)); + } + } } // namespace UnitTest diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp b/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp deleted file mode 100644 index b0df05190b..0000000000 --- a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.cpp +++ /dev/null @@ -1,290 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#include "EditorDefs.h" - -#include "AlembicCompileDialog.h" - -// Qt -#include - -// AzCore -#include - -#include - -// Editor -#include "Util/PathUtil.h" -#include "Util/EditorUtils.h" - - -AZ_PUSH_DISABLE_DLL_EXPORT_MEMBER_WARNING -#include -AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING - -CAlembicCompileDialog::CAlembicCompileDialog(const XmlNodeRef config) - : m_ui(new Ui::AlembicCompileDialog) -{ - setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); - m_ui->setupUi(this); - m_config = LoadConfig("", config); - - OnInitDialog(); - - connect(m_ui->m_yUpRadio, &QRadioButton::clicked, this, &CAlembicCompileDialog::OnRadioYUp); - connect(m_ui->m_zUpRadio, &QRadioButton::clicked, this, &CAlembicCompileDialog::OnRadioZUp); - connect(m_ui->m_playbackFromMemoryCheckBox, &QCheckBox::clicked, this, &CAlembicCompileDialog::OnPlaybackFromMemory); - connect(m_ui->m_blockCompressionFormatCombo, &QComboBox::currentTextChanged, this, &CAlembicCompileDialog::OnBlockCompressionSelected); - connect(m_ui->m_meshPredictionCheckBox, &QCheckBox::clicked, this, &CAlembicCompileDialog::OnMeshPredictionCheckBox); - connect(m_ui->m_useBFramesCheckBox, &QCheckBox::clicked, this, &CAlembicCompileDialog::OnUseBFramesCheckBox); - connect(m_ui->m_indexFrameDistanceEdit, static_cast(&QSpinBox::valueChanged), this, &CAlembicCompileDialog::OnIndexFrameDistanceChanged); - connect(m_ui->m_positionPrecisionEdit, static_cast(&QSpinBox::valueChanged), this, &CAlembicCompileDialog::OnPositionPrecisionChanged); - connect(m_ui->m_uvMaxEdit, static_cast(&QDoubleSpinBox::valueChanged), this, &CAlembicCompileDialog::OnUVmaxChanged); - connect(m_ui->m_presetComboBox, &QComboBox::currentTextChanged, this, &CAlembicCompileDialog::OnPresetSelected); -} - -CAlembicCompileDialog::~CAlembicCompileDialog() -{ -} - -void CAlembicCompileDialog::OnInitDialog() -{ - // custom 'Ok' and 'Cancel' text for this dialog - m_ui->buttonBox->button(QDialogButtonBox::Ok)->setText("Recompile .cax File"); - m_ui->buttonBox->button(QDialogButtonBox::Cancel)->setText("Use Existing .cax File"); - - m_ui->m_blockCompressionFormatCombo->addItem(QStringLiteral("store")); - m_ui->m_blockCompressionFormatCombo->addItem(QStringLiteral("deflate")); - m_ui->m_blockCompressionFormatCombo->addItem(QStringLiteral("lz4hc")); - m_ui->m_blockCompressionFormatCombo->addItem(QStringLiteral("zstd")); - AZStd::vector presetFiles; - const char* const filePattern = "*.cbc"; - - SDirectoryEnumeratorHelper dirHelper; - - auto engineAssetSourceRoot = AZ::IO::FixedMaxPath(AZ::Utils::GetEnginePath()) / "Assets"; - dirHelper.ScanDirectoryRecursive(gEnv->pCryPak, engineAssetSourceRoot.c_str(), "Editor/Presets/GeomCache", filePattern, presetFiles); - - for (auto iter = presetFiles.begin(); iter != presetFiles.end(); ++iter) - { - const auto& file = *iter; - const AZ::IO::FixedMaxPath filePath = engineAssetSourceRoot / file; - m_presets.push_back(LoadConfig(Path::GetFileName(file.c_str()), XmlHelpers::LoadXmlFromFile(filePath.c_str()))); - m_ui->m_presetComboBox->addItem(m_presets.back().m_name); - } - - m_ui->m_presetComboBox->addItem(tr("(Custom)")); - - SetFromConfig(m_config); - UpdatePresetSelection(); - UpdateEnabledStates(); -} - -void CAlembicCompileDialog::SetFromConfig(const SConfig& config) -{ - if (QString::compare(config.m_blockCompressionFormat, QLatin1String("deflate"), Qt::CaseInsensitive) == 0) - { - m_ui->m_blockCompressionFormatCombo->setCurrentIndex(1); - } - else if (QString::compare(config.m_blockCompressionFormat, QLatin1String("lz4hc"), Qt::CaseInsensitive) == 0) - { - m_ui->m_blockCompressionFormatCombo->setCurrentIndex(2); - } - else if (QString::compare(config.m_blockCompressionFormat, QLatin1String("zstd"), Qt::CaseInsensitive) == 0) - { - m_ui->m_blockCompressionFormatCombo->setCurrentIndex(3); - } - else - { - m_ui->m_blockCompressionFormatCombo->setCurrentIndex(0); - } - - if (QString::compare(config.m_upAxis, QLatin1String("Y"), Qt::CaseInsensitive) == 0) - { - m_ui->m_yUpRadio->setChecked(true); - } - else - { - m_ui->m_zUpRadio->setChecked(true); - } - - m_ui->m_playbackFromMemoryCheckBox->setChecked(config.m_playbackFromMemory == QStringLiteral("1")); - m_ui->m_meshPredictionCheckBox->setChecked(config.m_meshPrediction == QStringLiteral("1")); - m_ui->m_useBFramesCheckBox->setChecked(config.m_useBFrames == QStringLiteral("1")); - - m_ui->m_indexFrameDistanceEdit->setValue(config.m_indexFrameDistance); - m_ui->m_positionPrecisionEdit->setValue(aznumeric_cast(config.m_positionPrecision)); - m_ui->m_uvMaxEdit->setValue(config.m_uvMax); -} - -void CAlembicCompileDialog::UpdateEnabledStates() -{ - m_ui->m_meshPredictionCheckBox->setEnabled(false); - m_ui->m_useBFramesCheckBox->setEnabled(false); - m_ui->m_indexFrameDistanceEdit->setEnabled(false); - - if (QString::compare(m_config.m_blockCompressionFormat, QLatin1String("store"), Qt::CaseInsensitive) != 0) - { - m_ui->m_meshPredictionCheckBox->setEnabled(true); - m_ui->m_useBFramesCheckBox->setEnabled(true); - - m_ui->m_indexFrameDistanceEdit->setEnabled(m_config.m_useBFrames == QStringLiteral("1")); - } -} - -void CAlembicCompileDialog::UpdatePresetSelection() -{ - for (uint i = 0; i < m_presets.size(); ++i) - { - if (m_presets[i] == m_config) - { - m_ui->m_presetComboBox->setCurrentIndex(i); - return; - } - } - - m_ui->m_presetComboBox->setCurrentIndex(m_presets.size()); -} - -QString CAlembicCompileDialog::GetUpAxis() const -{ - return m_config.m_upAxis; -} - -QString CAlembicCompileDialog::GetPlaybackFromMemory() const -{ - return m_config.m_playbackFromMemory; -} - -QString CAlembicCompileDialog::GetBlockCompressionFormat() const -{ - return m_config.m_blockCompressionFormat; -} - -QString CAlembicCompileDialog::GetMeshPrediction() const -{ - return m_config.m_meshPrediction; -} - -QString CAlembicCompileDialog::GetUseBFrames() const -{ - return m_config.m_useBFrames; -} - -uint CAlembicCompileDialog::GetIndexFrameDistance() const -{ - return m_config.m_indexFrameDistance; -} - -double CAlembicCompileDialog::GetPositionPrecision() const -{ - return m_config.m_positionPrecision; -} - -float CAlembicCompileDialog::GetUVmax() const -{ - return m_config.m_uvMax; -} - - -void CAlembicCompileDialog::OnRadioYUp() -{ - m_config.m_upAxis = "Y"; - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnRadioZUp() -{ - m_config.m_upAxis = "Z"; - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnPlaybackFromMemory() -{ - m_config.m_playbackFromMemory = m_ui->m_playbackFromMemoryCheckBox->isChecked() ? QStringLiteral("1") : QStringLiteral("0"); - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnBlockCompressionSelected() -{ - m_config.m_blockCompressionFormat = m_ui->m_blockCompressionFormatCombo->currentText(); - UpdatePresetSelection(); - UpdateEnabledStates(); -} - -void CAlembicCompileDialog::OnMeshPredictionCheckBox() -{ - m_config.m_meshPrediction = m_ui->m_meshPredictionCheckBox->isChecked() ? QStringLiteral("1") : QStringLiteral("0"); - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnUseBFramesCheckBox() -{ - m_config.m_useBFrames = m_ui->m_useBFramesCheckBox->isChecked() ? QStringLiteral("1") : QStringLiteral("0"); - UpdatePresetSelection(); - UpdateEnabledStates(); -} - -void CAlembicCompileDialog::OnIndexFrameDistanceChanged() -{ - m_config.m_indexFrameDistance = m_ui->m_indexFrameDistanceEdit->value(); - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnPositionPrecisionChanged() -{ - m_config.m_positionPrecision = m_ui->m_positionPrecisionEdit->value(); - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnUVmaxChanged() -{ - m_config.m_uvMax = aznumeric_cast(m_ui->m_uvMaxEdit->value()); - UpdatePresetSelection(); -} - -void CAlembicCompileDialog::OnPresetSelected() -{ - uint presetIndex = m_ui->m_presetComboBox->currentIndex(); - if (presetIndex < m_presets.size()) - { - m_config = m_presets[presetIndex]; - SetFromConfig(m_config); - } - - m_ui->m_presetComboBox->setCurrentIndex(presetIndex); - UpdateEnabledStates(); -} - -CAlembicCompileDialog::SConfig CAlembicCompileDialog::LoadConfig(const QString& fileName, XmlNodeRef xml) const -{ - SConfig config; - config.m_name = fileName; - - if (xml) - { - config.m_name = xml->getAttr("Name"); - config.m_blockCompressionFormat = xml->getAttr("BlockCompressionFormat"); - config.m_upAxis = xml->getAttr("UpAxis"); - config.m_playbackFromMemory = xml->getAttr("PlaybackFromMemory"); - config.m_meshPrediction = xml->getAttr("MeshPrediction"); - config.m_useBFrames = xml->getAttr("UseBFrames"); - xml->getAttr("IndexFrameDistance", config.m_indexFrameDistance); - xml->getAttr("PositionPrecision", config.m_positionPrecision); - xml->getAttr("UVmax", config.m_uvMax); - } - - return config; -} - -#include diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.h b/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.h deleted file mode 100644 index c5dcdae675..0000000000 --- a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.h +++ /dev/null @@ -1,107 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_EDITOR_ALEMBIC_ALEMBICCOMPILEDIALOG_H -#define CRYINCLUDE_EDITOR_ALEMBIC_ALEMBICCOMPILEDIALOG_H -#pragma once - -#if !defined(Q_MOC_RUN) -#include - -#include - -#endif - -namespace Ui -{ - class AlembicCompileDialog; -} - -class CAlembicCompileDialog - : public QDialog -{ - Q_OBJECT -public: - CAlembicCompileDialog(const XmlNodeRef config); - ~CAlembicCompileDialog(); - - void OnInitDialog(); - - QString GetUpAxis() const; - QString GetPlaybackFromMemory() const; - QString GetBlockCompressionFormat() const; - QString GetMeshPrediction() const; - QString GetUseBFrames() const; - uint GetIndexFrameDistance() const; - double GetPositionPrecision() const; - float GetUVmax() const; - - -private: - struct SConfig - { - SConfig() - : m_upAxis("Y") - , m_playbackFromMemory("0") - , m_blockCompressionFormat("deflate") - , m_meshPrediction("1") - , m_useBFrames("1") - , m_indexFrameDistance(10) - , m_positionPrecision(1.0) - , m_uvMax(1.0f) {} - - bool operator ==(const SConfig& other) const - { - return m_blockCompressionFormat == other.m_blockCompressionFormat - && m_upAxis == other.m_upAxis - && m_playbackFromMemory == other.m_playbackFromMemory - && m_meshPrediction == other.m_meshPrediction - && m_useBFrames == other.m_useBFrames - && m_indexFrameDistance == other.m_indexFrameDistance - && m_positionPrecision == other.m_positionPrecision - && m_uvMax == other.m_uvMax; - } - - QString m_name; - QString m_blockCompressionFormat; - QString m_upAxis; - QString m_playbackFromMemory; - QString m_meshPrediction; - QString m_useBFrames; - uint m_indexFrameDistance; - double m_positionPrecision; - float m_uvMax; - }; - - void SetFromConfig(const SConfig& config); - void UpdateEnabledStates(); - void UpdatePresetSelection(); - SConfig LoadConfig(const QString& fileName, XmlNodeRef xml) const; - - void OnRadioYUp(); - void OnRadioZUp(); - void OnPlaybackFromMemory(); - void OnBlockCompressionSelected(); - void OnMeshPredictionCheckBox(); - void OnUseBFramesCheckBox(); - void OnIndexFrameDistanceChanged(); - void OnPositionPrecisionChanged(); - void OnUVmaxChanged(); - void OnPresetSelected(); - - SConfig m_config; - std::vector m_presets; - - QScopedPointer m_ui; -}; -#endif // CRYINCLUDE_EDITOR_ALEMBIC_ALEMBICCOMPILEDIALOG_H diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.ui b/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.ui deleted file mode 100644 index 90b7ff6322..0000000000 --- a/Code/Sandbox/Editor/Alembic/AlembicCompileDialog.ui +++ /dev/null @@ -1,192 +0,0 @@ - - - AlembicCompileDialog - - - - 0 - 0 - 432 - 252 - - - - Compile Alembic File - - - - - - Preset - - - - - - - - - - - - Compression Settings - - - - - - Block Compression: - - - - - - - - - - Precision (mm): - - - - - - - QAbstractSpinBox::NoButtons - - - - - - - UV Max: - - - - - - - Use Mesh Prediction - - - - - - - Use Bi-Directional Prediction - - - - - - - - - Index Frame Distance: - - - - - - - QAbstractSpinBox::NoButtons - - - - - - - - - QAbstractSpinBox::NoButtons - - - - - - - - - - Compilation Settings - - - - - - Y-axis up - - - - - - - Z-axis up - - - - - - - - - - Runtime Settings - - - - - - - Playback from Memory - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - - buttonBox - accepted() - AlembicCompileDialog - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - AlembicCompileDialog - reject() - - - 316 - 260 - - - 286 - 274 - - - - - diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompiler.cpp b/Code/Sandbox/Editor/Alembic/AlembicCompiler.cpp deleted file mode 100644 index 1fd5c1bca8..0000000000 --- a/Code/Sandbox/Editor/Alembic/AlembicCompiler.cpp +++ /dev/null @@ -1,158 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#include "EditorDefs.h" - -#include "AlembicCompiler.h" - -// Editor -#include "AlembicCompileDialog.h" -#include "Util/EditorUtils.h" -#include "Util/FileUtil.h" -#include "Util/PathUtil.h" - -// AzCore -#include - -// AzToolsFramework -#include - - - -namespace Internal -{ - // Attempt to add the file to source control if it is available - bool TryAddFileToSourceControl(const QString& filename) - { - if (!CFileUtil::CheckoutFile(filename.toUtf8().data(), nullptr)) - { - CryWarning(VALIDATOR_MODULE_EDITOR, VALIDATOR_ERROR, "Failed to add file %s to the source control provider", filename.toUtf8().constData()); - return false; - } - - return true; - } -} // namespace Internal - -CAlembicCompiler::CAlembicCompiler() -{ - AzToolsFramework::AssetBrowser::AssetBrowserInteractionNotificationBus::Handler::BusConnect(); -} - -CAlembicCompiler::~CAlembicCompiler() -{ - AzToolsFramework::AssetBrowser::AssetBrowserInteractionNotificationBus::Handler::BusDisconnect(); -} - -bool CAlembicCompiler::CompileAlembic(const QString& fullPath) -{ - bool compileConfigFileSaved = false; - const QString configPath = Path::ReplaceExtension(fullPath, "cbc"); - XmlNodeRef config = XmlHelpers::LoadXmlFromFile(configPath.toUtf8().data()); - - CAlembicCompileDialog dialog(config); - - if (dialog.exec() == QDialog::Accepted) - { - bool configChanged = false; - const QString upAxis = dialog.GetUpAxis(); - const QString playbackFromMemory = dialog.GetPlaybackFromMemory(); - const QString blockCompressionFormat = dialog.GetBlockCompressionFormat(); - const QString meshPrediction = dialog.GetMeshPrediction(); - const QString useBFrames = dialog.GetUseBFrames(); - const uint indexFrameDistance = dialog.GetIndexFrameDistance(); - const double positionPrecision = dialog.GetPositionPrecision(); - const float uvMax = dialog.GetUVmax(); - - if (!config) - { - CryLog("Build configuration file not found, writing new one"); - config = XmlHelpers::CreateXmlNode("CacheBuildConfiguration"); - configChanged = true; - } - - if (strcmp(config->getAttr("UpAxis"), upAxis.toUtf8().data()) != 0) - { - config->setAttr("UpAxis", upAxis.toUtf8().data()); - configChanged = true; - } - if (strcmp(config->getAttr("MeshPrediction"), meshPrediction.toUtf8().data()) != 0) - { - config->setAttr("MeshPrediction", meshPrediction.toUtf8().data()); - configChanged = true; - } - if (strcmp(config->getAttr("UseBFrames"), useBFrames.toUtf8().data()) != 0) - { - config->setAttr("UseBFrames", useBFrames.toUtf8().data()); - configChanged = true; - } - if (atoi(config->getAttr("IndexFrameDistance")) != indexFrameDistance) - { - config->setAttr("IndexFrameDistance", indexFrameDistance); - configChanged = true; - } - if (strcmp(config->getAttr("BlockCompressionFormat"), blockCompressionFormat.toUtf8().data()) != 0) - { - config->setAttr("BlockCompressionFormat", blockCompressionFormat.toUtf8().data()); - configChanged = true; - } - if (strcmp(config->getAttr("PlaybackFromMemory"), playbackFromMemory.toUtf8().data()) != 0) - { - config->setAttr("PlaybackFromMemory", playbackFromMemory.toUtf8().data()); - configChanged = true; - } - if (atof(config->getAttr("PositionPrecision")) != positionPrecision) - { - config->setAttr("PositionPrecision", positionPrecision); - configChanged = true; - } - if (atof(config->getAttr("UVmax")) != uvMax) - { - config->setAttr("UVmax", uvMax); - configChanged = true; - } - - if (configChanged) - { - compileConfigFileSaved = XmlHelpers::SaveXmlNode(GetIEditor()->GetFileUtil(), config, configPath.toUtf8().data()); - if (compileConfigFileSaved) - { - // If we just created the file above, or the cbc file was not previously managed, attempt to add it to perforce now. - // Note that XmlHelpers::SaveXmlNode will prompt the user to checkout or overwrite the file - Internal::TryAddFileToSourceControl(configPath); - } - } - } - - return compileConfigFileSaved; -} - -void CAlembicCompiler::AddSourceFileOpeners(const char* fullSourceFileName, [[maybe_unused]] const AZ::Uuid& sourceUUID, AzToolsFramework::AssetBrowser::SourceFileOpenerList& openers) -{ - using namespace AzToolsFramework; - using namespace AzToolsFramework::AssetBrowser; - - if (AZStd::wildcard_match("*.abc", fullSourceFileName)) - { - auto alembicCallback = [this]([[maybe_unused]] const char* fullSourceFileNameInCall, const AZ::Uuid& sourceUUIDInCall) - { - const SourceAssetBrowserEntry* fullDetails = SourceAssetBrowserEntry::GetSourceByUuid(sourceUUIDInCall); - if (fullDetails) - { - CompileAlembic(fullDetails->GetRelativePath().c_str()); - } - }; - - openers.push_back({ "O3DE_AlembicCompiler", "Open In Alembic Compiler...", QIcon(), alembicCallback }); - } -} diff --git a/Code/Sandbox/Editor/Alembic/AlembicCompiler.h b/Code/Sandbox/Editor/Alembic/AlembicCompiler.h deleted file mode 100644 index 3d7417bc8d..0000000000 --- a/Code/Sandbox/Editor/Alembic/AlembicCompiler.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#pragma once - -#include - -class CAlembicCompiler - : public AzToolsFramework::AssetBrowser::AssetBrowserInteractionNotificationBus::Handler -{ -public: - CAlembicCompiler(); - ~CAlembicCompiler(); - - bool CompileAlembic(const QString& fullPath); - -protected: - //////////////////////////////////////////////////////////////////////////////////////////////// - /// AzToolsFramework::AssetBrowser::AssetBrowserInteractionNotificationBus::Handler - void AddSourceFileOpeners(const char* fullSourceFileName, const AZ::Uuid& sourceUUID, AzToolsFramework::AssetBrowser::SourceFileOpenerList& openers) override; -}; diff --git a/Code/Sandbox/Editor/EditorViewportSettings.cpp b/Code/Sandbox/Editor/EditorViewportSettings.cpp index 362d0fab48..e34851c42b 100644 --- a/Code/Sandbox/Editor/EditorViewportSettings.cpp +++ b/Code/Sandbox/Editor/EditorViewportSettings.cpp @@ -16,7 +16,7 @@ #include #include -namespace Editor +namespace SandboxEditor { constexpr AZStd::string_view GridSnappingSetting = "/Amazon/Preferences/Editor/GridSnapping"; constexpr AZStd::string_view GridSizeSetting = "/Amazon/Preferences/Editor/GridSize"; @@ -113,4 +113,4 @@ namespace Editor registry->Set(ShowGridSetting, showing); } } -} // namespace Editor +} // namespace SandboxEditor diff --git a/Code/Sandbox/Editor/EditorViewportSettings.h b/Code/Sandbox/Editor/EditorViewportSettings.h index ca6a5f0797..c9b504fe74 100644 --- a/Code/Sandbox/Editor/EditorViewportSettings.h +++ b/Code/Sandbox/Editor/EditorViewportSettings.h @@ -12,27 +12,31 @@ #pragma once -#include +#include -namespace Editor +namespace SandboxEditor { - EDITOR_CORE_API bool GridSnappingEnabled(); + SANDBOX_API bool GridSnappingEnabled(); - EDITOR_CORE_API float GridSnappingSize(); + SANDBOX_API float GridSnappingSize(); - EDITOR_CORE_API bool AngleSnappingEnabled(); + SANDBOX_API bool AngleSnappingEnabled(); - EDITOR_CORE_API float AngleSnappingSize(); + SANDBOX_API float AngleSnappingSize(); - EDITOR_CORE_API bool ShowingGrid(); + SANDBOX_API bool ShowingGrid(); - EDITOR_CORE_API void SetGridSnapping(bool enabled); + SANDBOX_API void SetGridSnapping(bool enabled); - EDITOR_CORE_API void SetGridSnappingSize(float size); + SANDBOX_API void SetGridSnappingSize(float size); - EDITOR_CORE_API void SetAngleSnapping(bool enabled); + SANDBOX_API void SetAngleSnapping(bool enabled); - EDITOR_CORE_API void SetAngleSnappingSize(float size); + SANDBOX_API void SetAngleSnappingSize(float size); - EDITOR_CORE_API void SetShowingGrid(bool showing); -} // namespace Editor + SANDBOX_API void SetShowingGrid(bool showing); + + //! Return if the new editor camera system is enabled or not. + //! @note This is implemented in EditorViewportWidget.cpp + SANDBOX_API bool UsingNewCameraSystem(); +} // namespace SandboxEditor diff --git a/Code/Sandbox/Editor/EditorViewportWidget.cpp b/Code/Sandbox/Editor/EditorViewportWidget.cpp index 8afcddd144..436d4bba63 100644 --- a/Code/Sandbox/Editor/EditorViewportWidget.cpp +++ b/Code/Sandbox/Editor/EditorViewportWidget.cpp @@ -102,8 +102,16 @@ #include AZ_CVAR( - bool, ed_visibility_logTiming, false, nullptr, AZ::ConsoleFunctorFlags::Null, - "Output the timing of the new IVisibilitySystem query"); + bool, ed_visibility_logTiming, false, nullptr, AZ::ConsoleFunctorFlags::Null, "Output the timing of the new IVisibilitySystem query"); +AZ_CVAR(bool, ed_useNewCameraSystem, false, nullptr, AZ::ConsoleFunctorFlags::Null, "Use the new Editor camera system"); + +namespace SandboxEditor +{ + bool UsingNewCameraSystem() + { + return ed_useNewCameraSystem; + } +} // namespace SandboxEditor EditorViewportWidget* EditorViewportWidget::m_pPrimaryViewport = nullptr; @@ -114,7 +122,7 @@ namespace AzFramework extern InputChannelId CameraOrbitLookButton; extern InputChannelId CameraOrbitDollyButton; extern InputChannelId CameraOrbitPanButton; -} +} // namespace AzFramework #if AZ_TRAIT_OS_PLATFORM_APPLE void StopFixedCursorMode(); @@ -124,10 +132,6 @@ void StartFixedCursorMode(QObject *viewport); #define RENDER_MESH_TEST_DISTANCE (0.2f) #define CURSOR_FONT_HEIGHT 8.0f -AZ_CVAR( - bool, ed_useNewCameraSystem, false, nullptr, AZ::ConsoleFunctorFlags::Null, - "Use the new Editor camera system (the Atom-native Editor viewport (experimental) must also be enabled)"); - //! Viewport settings for the EditorViewportWidget struct EditorViewportSettings : public AzToolsFramework::ViewportInteraction::ViewportSettings { @@ -452,6 +456,15 @@ void EditorViewportWidget::Update() return; } + static bool sentOnWindowCreated = false; + if (!sentOnWindowCreated && windowHandle()->isActive()) + { + sentOnWindowCreated = true; + AzFramework::WindowSystemNotificationBus::Broadcast( + &AzFramework::WindowSystemNotificationBus::Handler::OnWindowCreated, + reinterpret_cast(winId())); + } + m_updatingCameraPosition = true; if (!ed_useNewCameraSystem) { @@ -2876,27 +2889,27 @@ void EditorViewportWidget::SetAsActiveViewport() bool EditorViewportSettings::GridSnappingEnabled() const { - return Editor::GridSnappingEnabled(); + return SandboxEditor::GridSnappingEnabled(); } float EditorViewportSettings::GridSize() const { - return Editor::GridSnappingSize(); + return SandboxEditor::GridSnappingSize(); } bool EditorViewportSettings::ShowGrid() const { - return Editor::ShowingGrid(); + return SandboxEditor::ShowingGrid(); } bool EditorViewportSettings::AngleSnappingEnabled() const { - return Editor::AngleSnappingEnabled(); + return SandboxEditor::AngleSnappingEnabled(); } float EditorViewportSettings::AngleStep() const { - return Editor::AngleSnappingSize(); + return SandboxEditor::AngleSnappingSize(); } #include diff --git a/Code/Sandbox/Editor/IEditorImpl.cpp b/Code/Sandbox/Editor/IEditorImpl.cpp index 0c8398050c..b1850098a0 100644 --- a/Code/Sandbox/Editor/IEditorImpl.cpp +++ b/Code/Sandbox/Editor/IEditorImpl.cpp @@ -57,7 +57,6 @@ AZ_POP_DISABLE_WARNING #include "GameEngine.h" #include "ToolBox.h" #include "MainWindow.h" -#include "Alembic/AlembicCompiler.h" #include "UIEnumsDatabase.h" #include "RenderHelpers/AxisHelper.h" #include "Settings.h" @@ -185,7 +184,6 @@ CEditorImpl::CEditorImpl() m_pIconManager = new CIconManager; m_pUndoManager = new CUndoManager; m_pToolBoxManager = new CToolBoxManager; - m_pAlembicCompiler = new CAlembicCompiler(); m_pSequenceManager = new CTrackViewSequenceManager; m_pAnimationContext = new CAnimationContext; @@ -303,7 +301,6 @@ CEditorImpl::~CEditorImpl() m_bExiting = true; // Can't save level after this point (while Crash) SAFE_RELEASE(m_pSourceControl); - SAFE_DELETE(m_pAlembicCompiler) SAFE_DELETE(m_pIconManager) SAFE_DELETE(m_pViewManager) SAFE_DELETE(m_pObjectManager) // relies on prefab manager diff --git a/Code/Sandbox/Editor/IEditorImpl.h b/Code/Sandbox/Editor/IEditorImpl.h index 0ebd02b5fd..f06c7780b6 100644 --- a/Code/Sandbox/Editor/IEditorImpl.h +++ b/Code/Sandbox/Editor/IEditorImpl.h @@ -48,7 +48,6 @@ class CEditorFileMonitor; class AzAssetWindow; class AzAssetBrowserRequestHandler; class AssetEditorRequestsHandler; -class CAlembicCompiler; struct IEditorFileMonitor; class CVegetationMap; @@ -356,7 +355,6 @@ protected: CAnimationContext* m_pAnimationContext; CTrackViewSequenceManager* m_pSequenceManager; CToolBoxManager* m_pToolBoxManager; - CAlembicCompiler* m_pAlembicCompiler; CMusicManager* m_pMusicManager; CErrorReport* m_pErrorReport; //! Contains the error reports for the last loaded level. diff --git a/Code/Sandbox/Editor/InfoBar.cpp b/Code/Sandbox/Editor/InfoBar.cpp index e6860c38c8..14ef2e7f05 100644 --- a/Code/Sandbox/Editor/InfoBar.cpp +++ b/Code/Sandbox/Editor/InfoBar.cpp @@ -33,8 +33,6 @@ AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING #include -#include "CryPhysicsDeprecation.h" - void BeautifyEulerAngles(Vec3& v) { if (v.x + v.y + v.z >= 360.0f) @@ -334,7 +332,6 @@ void CInfoBar::OnBnClickedPhysics() void CInfoBar::OnBnClickedSingleStepPhys() { - CRY_PHYSICS_REPLACEMENT_ASSERT(); } void CInfoBar::OnBnClickedDoStepPhys() diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index f3e7532957..8086293207 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -874,9 +874,9 @@ void MainWindow::InitActions() .SetCheckable(true) .RegisterUpdateCallback([](QAction* action) { Q_ASSERT(action->isCheckable()); - action->setChecked(Editor::GridSnappingEnabled()); + action->setChecked(SandboxEditor::GridSnappingEnabled()); }) - .Connect(&QAction::triggered, []() { Editor::SetGridSnapping(!Editor::GridSnappingEnabled()); }); + .Connect(&QAction::triggered, []() { SandboxEditor::SetGridSnapping(!SandboxEditor::GridSnappingEnabled()); }); am->AddAction(ID_SNAPANGLE, tr("Snap angle")) .SetIcon(Style::icon("Angle")) @@ -885,9 +885,9 @@ void MainWindow::InitActions() .SetCheckable(true) .RegisterUpdateCallback([](QAction* action) { Q_ASSERT(action->isCheckable()); - action->setChecked(Editor::AngleSnappingEnabled()); + action->setChecked(SandboxEditor::AngleSnappingEnabled()); }) - .Connect(&QAction::triggered, []() { Editor::SetAngleSnapping(!Editor::AngleSnappingEnabled()); }); + .Connect(&QAction::triggered, []() { SandboxEditor::SetAngleSnapping(!SandboxEditor::AngleSnappingEnabled()); }); // Display actions am->AddAction(ID_WIREFRAME, tr("&Wireframe")) @@ -1275,12 +1275,12 @@ QWidget* MainWindow::CreateSnapToGridWidget() { SnapToWidget::SetValueCallback setCallback = [](double snapStep) { - Editor::SetGridSnappingSize(snapStep); + SandboxEditor::SetGridSnappingSize(snapStep); }; SnapToWidget::GetValueCallback getCallback = []() { - return Editor::GridSnappingSize(); + return SandboxEditor::GridSnappingSize(); }; return new SnapToWidget(m_actionManager->GetAction(ID_SNAP_TO_GRID), setCallback, getCallback); @@ -1290,12 +1290,12 @@ QWidget* MainWindow::CreateSnapToAngleWidget() { SnapToWidget::SetValueCallback setCallback = [](double snapAngle) { - Editor::SetAngleSnappingSize(snapAngle); + SandboxEditor::SetAngleSnappingSize(snapAngle); }; SnapToWidget::GetValueCallback getCallback = []() { - return Editor::AngleSnappingSize(); + return SandboxEditor::AngleSnappingSize(); }; return new SnapToWidget(m_actionManager->GetAction(ID_SNAPANGLE), setCallback, getCallback); diff --git a/Code/Sandbox/Editor/ModernViewportCameraController.cpp b/Code/Sandbox/Editor/ModernViewportCameraController.cpp index f5df8d48ca..af161af493 100644 --- a/Code/Sandbox/Editor/ModernViewportCameraController.cpp +++ b/Code/Sandbox/Editor/ModernViewportCameraController.cpp @@ -25,7 +25,8 @@ namespace SandboxEditor { - static void DrawPreviewAxis(AzFramework::DebugDisplayRequests& display, const AZ::Transform& transform, const float axisLength) + // debug + void DrawPreviewAxis(AzFramework::DebugDisplayRequests& display, const AZ::Transform& transform, const float axisLength) { display.SetColor(AZ::Colors::Red); display.DrawLine(transform.GetTranslation(), transform.GetTranslation() + transform.GetBasisX().GetNormalizedSafe() * axisLength); @@ -87,10 +88,12 @@ namespace SandboxEditor } AzFramework::ViewportDebugDisplayEventBus::Handler::BusConnect(AzToolsFramework::GetEntityContextId()); + ModernViewportCameraControllerRequestBus::Handler::BusConnect(viewportId); } ModernViewportCameraControllerInstance::~ModernViewportCameraControllerInstance() { + ModernViewportCameraControllerRequestBus::Handler::BusDisconnect(); AzFramework::ViewportDebugDisplayEventBus::Handler::BusDisconnect(); } @@ -100,27 +103,6 @@ namespace SandboxEditor AzFramework::WindowRequestBus::EventResult( windowSize, event.m_windowHandle, &AzFramework::WindowRequestBus::Events::GetClientAreaSize); - if (m_cameraMode == CameraMode::Control) - { - if (AzFramework::InputDeviceKeyboard::IsKeyboardDevice(event.m_inputChannel.GetInputDevice().GetInputDeviceId())) - { - if (event.m_inputChannel.GetInputChannelId() == AzFramework::InputDeviceKeyboard::Key::AlphanumericR) - { - m_transformEnd = m_camera.Transform(); - - return true; - } - else if (event.m_inputChannel.GetInputChannelId() == AzFramework::InputDeviceKeyboard::Key::AlphanumericP) - { - m_animationT = 0.0f; - m_cameraMode = CameraMode::Animation; - m_transformStart = m_camera.Transform(); - - return true; - } - } - } - return m_cameraSystem.HandleEvents(AzFramework::BuildInputEvent(event.m_inputChannel, windowSize)); } @@ -174,7 +156,13 @@ namespace SandboxEditor debugDisplay.SetColor(1.0f, 1.0f, 1.0f, alpha); debugDisplay.DrawWireSphere(m_camera.m_lookAt, 0.5f); } + } - DrawPreviewAxis(debugDisplay, m_transformEnd, 2.0f); + void ModernViewportCameraControllerInstance::InterpolateToTransform(const AZ::Transform& worldFromLocal) + { + m_animationT = 0.0f; + m_cameraMode = CameraMode::Animation; + m_transformStart = m_camera.Transform(); + m_transformEnd = worldFromLocal; } } // namespace SandboxEditor diff --git a/Code/Sandbox/Editor/ModernViewportCameraController.h b/Code/Sandbox/Editor/ModernViewportCameraController.h index edc034a78a..066c8efaa8 100644 --- a/Code/Sandbox/Editor/ModernViewportCameraController.h +++ b/Code/Sandbox/Editor/ModernViewportCameraController.h @@ -12,6 +12,8 @@ #pragma once +#include + #include #include #include @@ -36,6 +38,7 @@ namespace SandboxEditor class ModernViewportCameraControllerInstance final : public AzFramework::MultiViewportControllerInstanceInterface, + public ModernViewportCameraControllerRequestBus::Handler, private AzFramework::ViewportDebugDisplayEventBus::Handler { public: @@ -46,10 +49,13 @@ namespace SandboxEditor bool HandleInputChannelEvent(const AzFramework::ViewportControllerInputEvent& event) override; void UpdateViewport(const AzFramework::ViewportControllerUpdateEvent& event) override; + // ModernViewportCameraControllerRequestBus overrides ... + void InterpolateToTransform(const AZ::Transform& worldFromLocal) override; + + private: // AzFramework::ViewportDebugDisplayEventBus overrides ... void DisplayViewport(const AzFramework::ViewportInfo& viewportInfo, AzFramework::DebugDisplayRequests& debugDisplay) override; - private: enum class CameraMode { Control, diff --git a/Code/Sandbox/Editor/ModernViewportCameraControllerRequestBus.h b/Code/Sandbox/Editor/ModernViewportCameraControllerRequestBus.h new file mode 100644 index 0000000000..966facc8e9 --- /dev/null +++ b/Code/Sandbox/Editor/ModernViewportCameraControllerRequestBus.h @@ -0,0 +1,42 @@ +/* + * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or + * its licensors. + * + * For complete copyright and license terms please see the LICENSE at the root of this + * distribution (the "License"). All use of this software is governed by the License, + * or, if provided, by the license below or the license accompanying this file. Do not + * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * + */ + +#pragma once + +#include +#include + +namespace AZ +{ + class Transform; +} + +namespace SandboxEditor +{ + //! Provides an interface to control the modern viewport camera controller from the Editor. + //! @note The bus is addressed by viewport id. + class ModernViewportCameraControllerRequests : public AZ::EBusTraits + { + public: + using BusIdType = AzFramework::ViewportId; + static const AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::ById; + static const AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Single; + + //! Begin a smooth transition of the camera to the requested transform. + virtual void InterpolateToTransform(const AZ::Transform& worldFromLocal) = 0; + + protected: + ~ModernViewportCameraControllerRequests() = default; + }; + + using ModernViewportCameraControllerRequestBus = AZ::EBus; +} // namespace SandboxEditor diff --git a/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.cpp b/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.cpp deleted file mode 100644 index af94841162..0000000000 --- a/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.cpp +++ /dev/null @@ -1,23 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#include "EditorDefs.h" - -#if defined(USE_GEOM_CACHES) -#include "TrackViewGeomCacheAnimationTrack.h" - -CTrackViewKeyHandle CTrackViewGeomCacheAnimationTrack::CreateKey(const float time) -{ - return CTrackViewTrack::CreateKey(time); -} -#endif diff --git a/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.h b/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.h deleted file mode 100644 index 95d8923408..0000000000 --- a/Code/Sandbox/Editor/TrackView/TrackViewGeomCacheAnimationTrack.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -* its licensors. -* -* For complete copyright and license terms please see the LICENSE at the root of this -* distribution (the "License"). All use of this software is governed by the License, -* or, if provided, by the license below or the license accompanying this file. Do not -* remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* -*/ -// Original file Copyright Crytek GMBH or its affiliates, used under license. - -#ifndef CRYINCLUDE_EDITOR_TRACKVIEW_TRACKVIEWGEOMCACHEANIMATIONTRACK_H -#define CRYINCLUDE_EDITOR_TRACKVIEW_TRACKVIEWGEOMCACHEANIMATIONTRACK_H -#pragma once - - -#if defined(USE_GEOM_CACHES) -#include "IMovieSystem.h" -#include "TrackViewTrack.h" - -//////////////////////////////////////////////////////////////////////////// -// This class represents a time range track of a geom cache node in TrackView -//////////////////////////////////////////////////////////////////////////// -class CTrackViewGeomCacheAnimationTrack - : public CTrackViewTrack -{ -public: - CTrackViewGeomCacheAnimationTrack(IAnimTrack* pTrack, CTrackViewAnimNode* pTrackAnimNode, - CTrackViewNode* pParentNode, bool bIsSubTrack = false, unsigned int subTrackIndex = 0) - : CTrackViewTrack(pTrack, pTrackAnimNode, pParentNode, bIsSubTrack, subTrackIndex) {} - - virtual CTrackViewKeyHandle CreateKey(const float time); -}; -#endif -#endif // CRYINCLUDE_EDITOR_TRACKVIEW_TRACKVIEWGEOMCACHEANIMATIONTRACK_H diff --git a/Code/Sandbox/Editor/TrackView/TrackViewNodeFactories.cpp b/Code/Sandbox/Editor/TrackView/TrackViewNodeFactories.cpp index e1ed8f0e66..9bfa0e5b1b 100644 --- a/Code/Sandbox/Editor/TrackView/TrackViewNodeFactories.cpp +++ b/Code/Sandbox/Editor/TrackView/TrackViewNodeFactories.cpp @@ -21,7 +21,6 @@ // Editor #include "TrackViewEventNode.h" -#include "TrackViewGeomCacheAnimationTrack.h" CTrackViewAnimNode* CTrackViewAnimNodeFactory::BuildAnimNode(IAnimSequence* pSequence, IAnimNode* pAnimNode, CTrackViewNode* pParentNode) @@ -43,12 +42,5 @@ CTrackViewAnimNode* CTrackViewAnimNodeFactory::BuildAnimNode(IAnimSequence* pSeq CTrackViewTrack* CTrackViewTrackFactory::BuildTrack(IAnimTrack* pTrack, CTrackViewAnimNode* pTrackAnimNode, CTrackViewNode* pParentNode, bool bIsSubTrack, unsigned int subTrackIndex) { -#if defined(USE_GEOM_CACHES) - if (pTrack->GetParameterType() == AnimParamType::TimeRanges && pTrackAnimNode->GetType() == AnimNodeType::GeomCache) - { - return new CTrackViewGeomCacheAnimationTrack(pTrack, pTrackAnimNode, pParentNode, bIsSubTrack, subTrackIndex); - } -#endif - return new CTrackViewTrack(pTrack, pTrackAnimNode, pParentNode, bIsSubTrack, subTrackIndex); } diff --git a/Code/Sandbox/Editor/editor_core_files.cmake b/Code/Sandbox/Editor/editor_core_files.cmake index 486408159a..1aecbd03f6 100644 --- a/Code/Sandbox/Editor/editor_core_files.cmake +++ b/Code/Sandbox/Editor/editor_core_files.cmake @@ -22,8 +22,6 @@ set(FILES Include/IEditorMaterial.h Include/IEditorMaterialManager.h Include/IImageUtil.h - EditorViewportSettings.cpp - EditorViewportSettings.h Controls/ReflectedPropertyControl/ReflectedPropertyCtrl.qrc Controls/ReflectedPropertyControl/ReflectedPropertyCtrl.cpp Controls/ReflectedPropertyControl/ReflectedPropertyCtrl.h diff --git a/Code/Sandbox/Editor/editor_lib_files.cmake b/Code/Sandbox/Editor/editor_lib_files.cmake index 8ad8c8263f..0646fb566e 100644 --- a/Code/Sandbox/Editor/editor_lib_files.cmake +++ b/Code/Sandbox/Editor/editor_lib_files.cmake @@ -307,11 +307,6 @@ set(FILES Util/AffineParts.cpp Objects/BaseObject.cpp Objects/BaseObject.h - Alembic/AlembicCompileDialog.cpp - Alembic/AlembicCompileDialog.h - Alembic/AlembicCompileDialog.ui - Alembic/AlembicCompiler.h - Alembic/AlembicCompiler.cpp Animation/AnimationBipedBoneNames.cpp Animation/AnimationBipedBoneNames.h AnimationContext.cpp @@ -714,14 +709,12 @@ set(FILES TrackView/TrackViewNode.cpp TrackView/TrackViewSequence.cpp TrackView/TrackViewNodeFactories.cpp - TrackView/TrackViewGeomCacheAnimationTrack.cpp TrackView/TrackViewEventNode.cpp TrackView/TrackViewAnimNode.h TrackView/TrackViewTrack.h TrackView/TrackViewNode.h TrackView/TrackViewSequence.h TrackView/TrackViewNodeFactories.h - TrackView/TrackViewGeomCacheAnimationTrack.h TrackView/TrackViewEventNode.h ConfigGroup.cpp ConfigGroup.h @@ -824,12 +817,15 @@ set(FILES LayoutWnd.h EditorViewportWidget.cpp EditorViewportWidget.h + EditorViewportSettings.cpp + EditorViewportSettings.h ViewportManipulatorController.cpp ViewportManipulatorController.h LegacyViewportCameraController.cpp LegacyViewportCameraController.h ModernViewportCameraController.cpp ModernViewportCameraController.h + ModernViewportCameraControllerRequestBus.h RenderViewport.cpp RenderViewport.h TopRendererWnd.cpp diff --git a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/CMakeLists.txt b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/CMakeLists.txt index 275bb0ba9f..72d88b06b4 100644 --- a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/CMakeLists.txt +++ b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/CMakeLists.txt @@ -36,6 +36,8 @@ ly_add_target( Legacy::CryCommon Legacy::EditorLib Gem::LmbrCentral + AZ::AtomCore + Gem::Atom_RPI.Public ) ly_add_dependencies(Editor ComponentEntityEditorPlugin) diff --git a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.cpp b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.cpp index f38b295128..027487a435 100644 --- a/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.cpp +++ b/Code/Sandbox/Plugins/ComponentEntityEditorPlugin/SandboxIntegration.cpp @@ -16,12 +16,15 @@ #include #include #include +#include #include #include #include #include #include #include +#include +#include #include #include #include @@ -30,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -56,8 +60,14 @@ #include #include #include +#include #include +#include +#include + +#include + #include "Objects/ComponentEntityObject.h" #include "ISourceControl.h" #include "UI/QComponentEntityEditorMainWindow.h" @@ -75,6 +85,7 @@ #include #include #include +#include #include #include "CryEdit.h" @@ -1674,32 +1685,77 @@ bool CollectEntityBoundingBoxesForZoom(const AZ::EntityId& entityId, AABB& selec ////////////////////////////////////////////////////////////////////////// void SandboxIntegrationManager::GoToEntitiesInViewports(const AzToolsFramework::EntityIdList& entityIds) { - if (entityIds.size() == 0) + if (entityIds.empty()) { return; } - AABB selectionBounds; - selectionBounds.Reset(); - bool entitiesAvailableForGoTo = false; - - for (const AZ::EntityId& entityId : entityIds) + if (SandboxEditor::UsingNewCameraSystem()) { - if(CollectEntityBoundingBoxesForZoom(entityId, selectionBounds)) + const AZ::Aabb aabb = AZStd::accumulate( + AZStd::begin(entityIds), AZStd::end(entityIds), AZ::Aabb::CreateNull(), [](AZ::Aabb acc, const AZ::EntityId entityId) { + const AZ::Aabb aabb = AzFramework::CalculateEntityWorldBoundsUnion(AzToolsFramework::GetEntityById(entityId)); + acc.AddAabb(aabb); + return acc; + }); + + float radius; + AZ::Vector3 center; + aabb.GetAsSphere(center, radius); + + // minimum center size is 40cm + const float minSelectionRadius = 0.4f; + const float selectionSize = AZ::GetMax(minSelectionRadius, radius); + + auto viewportContextManager = AZ::Interface::Get(); + + const int viewCount = GetIEditor()->GetViewManager()->GetViewCount(); // legacy call + for (int viewIndex = 0; viewIndex < viewCount; ++viewIndex) { - entitiesAvailableForGoTo = true; + if (auto viewportContext = viewportContextManager->GetViewportContextById(viewIndex)) + { + const AZ::Transform cameraTransform = viewportContext->GetCameraTransform(); + const AZ::Vector3 forward = (center - cameraTransform.GetTranslation()).GetNormalized(); + + // move camera 25% further back than required + const float centerScale = 1.25f; + // compute new camera transform + const float fov = AzFramework::RetrieveFov(viewportContext->GetCameraProjectionMatrix()); + const float fovScale = (1.0f / AZStd::tan(fov * 0.5f)); + const float distanceToTarget = selectionSize * fovScale * centerScale; + const AZ::Transform nextCameraTransform = + AZ::Transform::CreateLookAt(aabb.GetCenter() - (forward * distanceToTarget), aabb.GetCenter()); + + SandboxEditor::ModernViewportCameraControllerRequestBus::Event( + viewportContext->GetId(), &SandboxEditor::ModernViewportCameraControllerRequestBus::Events::InterpolateToTransform, + nextCameraTransform); + } } } - - if (entitiesAvailableForGoTo) + else { - int numViews = GetIEditor()->GetViewManager()->GetViewCount(); - for (int viewIndex = 0; viewIndex < numViews; ++viewIndex) + AABB selectionBounds; + selectionBounds.Reset(); + bool entitiesAvailableForGoTo = false; + + for (const AZ::EntityId& entityId : entityIds) { - CViewport* viewport = GetIEditor()->GetViewManager()->GetView(viewIndex); - if (viewport) + if (CollectEntityBoundingBoxesForZoom(entityId, selectionBounds)) { - viewport->CenterOnAABB(selectionBounds); + entitiesAvailableForGoTo = true; + } + } + + if (entitiesAvailableForGoTo) + { + int numViews = GetIEditor()->GetViewManager()->GetViewCount(); + for (int viewIndex = 0; viewIndex < numViews; ++viewIndex) + { + CViewport* viewport = GetIEditor()->GetViewManager()->GetView(viewIndex); + if (viewport) + { + viewport->CenterOnAABB(selectionBounds); + } } } } diff --git a/Code/Tools/Doxygen/Doxyfile b/Code/Tools/Doxygen/Doxyfile deleted file mode 100644 index 19bca8abfd..0000000000 --- a/Code/Tools/Doxygen/Doxyfile +++ /dev/null @@ -1,2369 +0,0 @@ -# Doxyfile 1.8.8 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a double hash (##) is considered a comment and is placed in -# front of the TAG it is preceding. -# -# All text after a single hash (#) is considered a comment and will be ignored. -# The format is: -# TAG = value [value, ...] -# For lists, items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (\" \"). - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all text -# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv -# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv -# for the list of possible encodings. -# The default value is: UTF-8. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by -# double-quotes, unless you are using Doxywizard) that should identify the -# project for which the documentation is generated. This name is used in the -# title of most generated pages and in a few other places. -# The default value is: My Project. - -PROJECT_NAME = Lumberyard - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -# could be handy for archiving the generated documentation or if some version -# control system is used. - -PROJECT_NUMBER = - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer a -# quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = - -# With the PROJECT_LOGO tag one can specify an logo or icon that is included in -# the documentation. The maximum height of the logo should not exceed 55 pixels -# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo -# to the output directory. - -PROJECT_LOGO = - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path -# into which the generated documentation will be written. If a relative path is -# entered, it will be relative to the location where doxygen was started. If -# left blank the current directory will be used. - -OUTPUT_DIRECTORY = doc - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this -# option can be useful when feeding doxygen a huge amount of source files, where -# putting all generated files in the same directory would otherwise causes -# performance problems for the file system. -# The default value is: NO. - -CREATE_SUBDIRS = NO - -# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII -# characters to appear in the names of generated files. If set to NO, non-ASCII -# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode -# U+3044. -# The default value is: NO. - -ALLOW_UNICODE_NAMES = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. -# The default value is: English. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member -# descriptions after the members that are listed in the file and class -# documentation (similar to Javadoc). Set to NO to disable this. -# The default value is: YES. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief -# description of a member or function before the detailed description -# -# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. -# The default value is: YES. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator that is -# used to form the text in various listings. Each string in this list, if found -# as the leading text of the brief description, will be stripped from the text -# and the result, after processing the whole list, is used as the annotated -# text. Otherwise, the brief description is used as-is. If left blank, the -# following values are used ($name is automatically replaced with the name of -# the entity):The $name class, The $name widget, The $name file, is, provides, -# specifies, contains, represents, a, an and the. - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# doxygen will generate a detailed section even if there is only a brief -# description. -# The default value is: NO. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. -# The default value is: NO. - -INLINE_INHERITED_MEMB = YES - -# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path -# before files name in the file list and in the header files. If set to NO the -# shortest path that makes the file name unique will be used -# The default value is: YES. - -FULL_PATH_NAMES = NO - -# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. -# Stripping is only done if one of the specified strings matches the left-hand -# part of the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the path to -# strip. -# -# Note that you can specify absolute paths here, but also relative paths, which -# will be relative from the directory where doxygen is started. -# This tag requires that the tag FULL_PATH_NAMES is set to YES. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the -# path mentioned in the documentation of a class, which tells the reader which -# header file to include in order to use a class. If left blank only the name of -# the header file containing the class definition is used. Otherwise one should -# specify the list of include paths that are normally passed to the compiler -# using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -# less readable) file names. This can be useful is your file systems doesn't -# support long names like on DOS, Mac, or CD-ROM. -# The default value is: NO. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the -# first line (until the first dot) of a Javadoc-style comment as the brief -# description. If set to NO, the Javadoc-style will behave just like regular Qt- -# style comments (thus requiring an explicit @brief command for a brief -# description.) -# The default value is: NO. - -JAVADOC_AUTOBRIEF = NO - -# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first -# line (until the first dot) of a Qt-style comment as the brief description. If -# set to NO, the Qt-style will behave just like regular Qt-style comments (thus -# requiring an explicit \brief command for a brief description.) -# The default value is: NO. - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a -# multi-line C++ special comment block (i.e. a block of //! or /// comments) as -# a brief description. This used to be the default behavior. The new default is -# to treat a multi-line C++ comment block as a detailed description. Set this -# tag to YES if you prefer the old behavior instead. -# -# Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. -# The default value is: NO. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -# documentation from any documented member that it re-implements. -# The default value is: YES. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a -# new page for each member. If set to NO, the documentation of a member will be -# part of the file/class/namespace that contains it. -# The default value is: NO. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen -# uses this value to replace tabs by spaces in code fragments. -# Minimum value: 1, maximum value: 16, default value: 4. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that act as commands in -# the documentation. An alias has the form: -# name=value -# For example adding -# "sideeffect=@par Side Effects:\n" -# will allow you to put the command \sideeffect (or @sideeffect) in the -# documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding "class=itcl::class" -# will allow you to use the command class in the itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. For -# instance, some of the names that are used will be different. The list of all -# members will be omitted, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or -# Python sources only. Doxygen will then generate output that is more tailored -# for that language. For instance, namespaces will be presented as packages, -# qualified scopes will look different, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources. Doxygen will then generate output that is tailored for Fortran. -# The default value is: NO. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for VHDL. -# The default value is: NO. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given -# extension. Doxygen has a built-in mapping, but you can override or extend it -# using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: -# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: -# Fortran. In the later case the parser tries to guess whether the code is fixed -# or free formatted code, this is the default for Fortran type files), VHDL. For -# instance to make doxygen treat .inc files as Fortran files (default is PHP), -# and .f files as C (default is Fortran), use: inc=Fortran f=C. -# -# Note For files without extension you can use no_extension as a placeholder. -# -# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments -# according to the Markdown format, which allows for more readable -# documentation. See http://daringfireball.net/projects/markdown/ for details. -# The output of markdown processing is further processed by doxygen, so you can -# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in -# case of backward compatibilities issues. -# The default value is: YES. - -MARKDOWN_SUPPORT = YES - -# When enabled doxygen tries to link words that correspond to documented -# classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by by putting a % sign in front of the word -# or globally by setting AUTOLINK_SUPPORT to NO. -# The default value is: YES. - -AUTOLINK_SUPPORT = YES - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should set this -# tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); -# versus func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. -# The default value is: NO. - -BUILTIN_STL_SUPPORT = YES - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. -# The default value is: NO. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen -# will parse them like normal C++ but will assume all classes use public instead -# of private inheritance when no explicit protection keyword is present. -# The default value is: NO. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate -# getter and setter methods for a property. Setting this option to YES will make -# doxygen to replace the get and set methods by a property in the documentation. -# This will only work if the methods are indeed getting or setting a simple -# type. If this is not the case, or you want to show the methods anyway, you -# should set this option to NO. -# The default value is: YES. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. -# The default value is: NO. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES to allow class member groups of the same type -# (for instance a group of public functions) to be put as a subgroup of that -# type (e.g. under the Public Functions section). Set it to NO to prevent -# subgrouping. Alternatively, this can be done per class using the -# \nosubgrouping command. -# The default value is: YES. - -SUBGROUPING = NO - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions -# are shown inside the group in which they are included (e.g. using \ingroup) -# instead of on a separate page (for HTML and Man pages) or section (for LaTeX -# and RTF). -# -# Note that this feature does not work in combination with -# SEPARATE_MEMBER_PAGES. -# The default value is: NO. - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions -# with only public data fields or simple typedef fields will be shown inline in -# the documentation of the scope in which they are defined (i.e. file, -# namespace, or group documentation), provided this scope is documented. If set -# to NO, structs, classes, and unions are shown on a separate page (for HTML and -# Man pages) or section (for LaTeX and RTF). -# The default value is: NO. - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or -# enum is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically be -# useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. -# The default value is: NO. - -TYPEDEF_HIDES_STRUCT = NO - -# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This -# cache is used to resolve symbols given their name and scope. Since this can be -# an expensive process and often the same symbol appears multiple times in the -# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small -# doxygen will become slower. If the cache is too large, memory is wasted. The -# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range -# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 -# symbols. At the end of a run doxygen will report the cache usage and suggest -# the optimal cache size from a speed point of view. -# Minimum value: 0, maximum value: 9, default value: 0. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. Private -# class members and static file members will be hidden unless the -# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. -# Note: This will also disable the warnings about undocumented members that are -# normally produced when WARNINGS is set to YES. -# The default value is: NO. - -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will -# be included in the documentation. -# The default value is: NO. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal -# scope will be included in the documentation. -# The default value is: NO. - -EXTRACT_PACKAGE = YES - -# If the EXTRACT_STATIC tag is set to YES all static members of a file will be -# included in the documentation. -# The default value is: NO. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO -# only classes defined in header files are included. Does not have any effect -# for Java sources. -# The default value is: YES. - -EXTRACT_LOCAL_CLASSES = NO - -# This flag is only useful for Objective-C code. When set to YES local methods, -# which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO only methods in the interface are -# included. -# The default value is: NO. - -EXTRACT_LOCAL_METHODS = YES - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base name of -# the file that contains the anonymous namespace. By default anonymous namespace -# are hidden. -# The default value is: NO. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -# undocumented members inside documented classes or files. If set to NO these -# members will be included in the various overviews, but no documentation -# section is generated. This option has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. If set -# to NO these classes will be included in the various overviews. This option has -# no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO these declarations will be -# included in the documentation. -# The default value is: NO. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO these -# blocks will be appended to the function's detailed documentation block. -# The default value is: NO. - -HIDE_IN_BODY_DOCS = YES - -# The INTERNAL_DOCS tag determines if documentation that is typed after a -# \internal command is included. If the tag is set to NO then the documentation -# will be excluded. Set it to YES to include the internal documentation. -# The default value is: NO. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. -# The default value is: system dependent. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES the -# scope will be hidden. -# The default value is: NO. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -# the files that are included by a file in the documentation of that file. -# The default value is: YES. - -SHOW_INCLUDE_FILES = YES - -# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -# grouped member an include statement to the documentation, telling the reader -# which file to include in order to use the member. -# The default value is: NO. - -SHOW_GROUPED_MEMB_INC = YES - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include -# files with double quotes in the documentation rather than with sharp brackets. -# The default value is: NO. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -# documentation for inline members. -# The default value is: YES. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the -# (detailed) documentation of file and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. -# The default value is: YES. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -# descriptions of file, namespace and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. Note that -# this will also influence the order of the classes in the class list. -# The default value is: NO. - -SORT_BRIEF_DOCS = YES - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the -# (brief and detailed) documentation of class members so that constructors and -# destructors are listed first. If set to NO the constructors will appear in the -# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -# member documentation. -# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -# detailed member documentation. -# The default value is: NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy -# of group names into alphabetical order. If set to NO the group names will -# appear in their defined order. -# The default value is: NO. - -SORT_GROUP_NAMES = YES - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by -# fully-qualified names, including namespaces. If set to NO, the class list will -# be sorted only by class name, not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the alphabetical -# list. -# The default value is: NO. - -SORT_BY_SCOPE_NAME = YES - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper -# type resolution of all parameters of a function it will reject a match between -# the prototype and the implementation of a member function even if there is -# only one candidate or it is obvious which candidate to choose by doing a -# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still -# accept a match between prototype and implementation in such cases. -# The default value is: NO. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the -# todo list. This list is created by putting \todo commands in the -# documentation. -# The default value is: YES. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the -# test list. This list is created by putting \test commands in the -# documentation. -# The default value is: YES. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug -# list. This list is created by putting \bug commands in the documentation. -# The default value is: YES. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) -# the deprecated list. This list is created by putting \deprecated commands in -# the documentation. -# The default value is: YES. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional documentation -# sections, marked by \if ... \endif and \cond -# ... \endcond blocks. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the -# initial value of a variable or macro / define can have for it to appear in the -# documentation. If the initializer consists of more lines than specified here -# it will be hidden. Use a value of 0 to hide initializers completely. The -# appearance of the value of individual variables and macros / defines can be -# controlled using \showinitializer or \hideinitializer command in the -# documentation regardless of this setting. -# Minimum value: 0, maximum value: 10000, default value: 30. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES the list -# will mention the files that were used to generate the documentation. -# The default value is: YES. - -SHOW_USED_FILES = YES - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This -# will remove the Files entry from the Quick Index and from the Folder Tree View -# (if specified). -# The default value is: YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces -# page. This will remove the Namespaces entry from the Quick Index and from the -# Folder Tree View (if specified). -# The default value is: YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the -# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -# by doxygen. Whatever the program writes to standard output is used as the file -# version. For an example see the documentation. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. To create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. You can -# optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. -# -# Note that if you run doxygen from a directory containing a file called -# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -# tag is left empty. - -LAYOUT_FILE = layout.xml - -# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -# the reference definitions. This must be a list of .bib files. The .bib -# extension is automatically appended if omitted. This requires the bibtex tool -# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. -# For LaTeX the style of the bibliography can be controlled using -# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. See also \cite for info how to create references. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# Configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated to -# standard output by doxygen. If QUIET is set to YES this implies that the -# messages are off. -# The default value is: NO. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES -# this implies that the warnings are on. -# -# Tip: Turn warnings on while writing the documentation. -# The default value is: YES. - -WARNINGS = YES - -# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate -# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag -# will automatically be disabled. -# The default value is: YES. - -WARN_IF_UNDOCUMENTED = YES - -# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. -# The default value is: YES. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that -# are documented, but have no documentation for their parameters or return -# value. If set to NO doxygen will only warn about wrong or incomplete parameter -# documentation, but not about the absence of documentation. -# The default value is: NO. - -WARN_NO_PARAMDOC = NO - -# The WARN_FORMAT tag determines the format of the warning messages that doxygen -# can produce. The string should contain the $file, $line, and $text tags, which -# will be replaced by the file and line number from which the warning originated -# and the warning text. Optionally the format may contain $version, which will -# be replaced by the version of the file (if it could be obtained via -# FILE_VERSION_FILTER) -# The default value is: $file:$line: $text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning and error -# messages should be written. If left blank the output is written to standard -# error (stderr). - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# Configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag is used to specify the files and/or directories that contain -# documented source files. You may enter file names like myfile.cpp or -# directories like /usr/src/myproject. Separate the files or directories with -# spaces. -# Note: If this tag is empty the current directory is searched. - -INPUT = doc-inputs \ -../../CryEngine/CryCommon \ -../../CryEngine/CryAction - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: http://www.gnu.org/software/libiconv) for the list of -# possible encodings. -# The default value is: UTF-8. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank the -# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, -# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, -# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, -# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, -# *.qsf, *.as and *.js. - -FILE_PATTERNS = *.h \ - *.hh \ - *.hxx \ - *.hpp \ - *.h++ \ - *.inc \ - *.inl \ - *.dox \ - *.md - -# The RECURSIVE tag can be used to specify whether or not subdirectories should -# be searched for input files as well. -# The default value is: NO. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. -# The default value is: NO. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories for example use the pattern */test/* - -EXCLUDE_PATTERNS = *Impl*.h */Impl/* - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or directories -# that contain example code fragments that are included (see the \include -# command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank all -# files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude commands -# irrespective of the value of the RECURSIVE tag. -# The default value is: NO. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or directories -# that contain images that are to be included in the documentation (see the -# \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command: -# -# -# -# where is the value of the INPUT_FILTER tag, and is the -# name of an input file. Doxygen will then use the output that the filter -# program writes to standard output. If FILTER_PATTERNS is specified, this tag -# will be ignored. -# -# Note that the filter must not add or remove lines; it is applied before the -# code is scanned, but not when the output code is generated. If lines are added -# or removed, the anchors will not be placed correctly. - -INPUT_FILTER = doxfilter.py - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: pattern=filter -# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how -# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -# patterns match the file name, INPUT_FILTER is applied. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER ) will also be used to filter the input files that are used for -# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -# The default value is: NO. - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and -# it is also possible to disable source filtering for a specific pattern using -# *.ext= (so without naming a filter). -# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. - -FILTER_SOURCE_PATTERNS = - -# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that -# is part of the input, its contents will be placed on the main page -# (index.html). This can be useful if you have a project on for instance GitHub -# and want to reuse the introduction page also for the doxygen output. - -USE_MDFILE_AS_MAINPAGE = index.md - -#--------------------------------------------------------------------------- -# Configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will be -# generated. Documented entities will be cross-referenced with these sources. -# -# Note: To get rid of all source code in the generated output, make sure that -# also VERBATIM_HEADERS is set to NO. -# The default value is: NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. -# The default value is: NO. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any -# special comment blocks from generated source code fragments. Normal C, C++ and -# Fortran comments will always remain visible. -# The default value is: YES. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -# function all documented functions referencing it will be listed. -# The default value is: NO. - -REFERENCED_BY_RELATION = YES - -# If the REFERENCES_RELATION tag is set to YES then for each documented function -# all documented entities called/used by that function will be listed. -# The default value is: NO. - -REFERENCES_RELATION = YES - -# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES, then the hyperlinks from functions in REFERENCES_RELATION and -# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will -# link to the documentation. -# The default value is: YES. - -REFERENCES_LINK_SOURCE = YES - -# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the -# source code will show a tooltip with additional information such as prototype, -# brief description and links to the definition and documentation. Since this -# will make the HTML file larger and loading of large files a bit slower, you -# can opt to disable this feature. -# The default value is: YES. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -SOURCE_TOOLTIPS = YES - -# If the USE_HTAGS tag is set to YES then the references to source code will -# point to the HTML generated by the htags(1) tool instead of doxygen built-in -# source browser. The htags tool is part of GNU's global source tagging system -# (see http://www.gnu.org/software/global/global.html). You will need version -# 4.8.6 or higher. -# -# To use it do the following: -# - Install the latest version of global -# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -# - Make sure the INPUT points to the root of the source tree -# - Run doxygen as normal -# -# Doxygen will invoke htags (and that will in turn invoke gtags), so these -# tools must be available from the command line (i.e. in the search path). -# -# The result: instead of the source browser generated by doxygen, the links to -# source code will now point to the output of htags. -# The default value is: NO. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a -# verbatim copy of the header file for each class for which an include is -# specified. Set to NO to disable this. -# See also: Section \class. -# The default value is: YES. - -VERBATIM_HEADERS = NO - -# If the CLANG_ASSISTED_PARSING tag is set to YES, then doxygen will use the -# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the -# cost of reduced performance. This can be particularly helpful with template -# rich C++ code for which doxygen's built-in parser lacks the necessary type -# information. -# Note: The availability of this option depends on whether or not doxygen was -# compiled with the --with-libclang option. -# The default value is: NO. - -CLANG_ASSISTED_PARSING = NO - -# If clang assisted parsing is enabled you can provide the compiler with command -# line options that you would normally use when invoking the compiler. Note that -# the include paths will already be set by doxygen for the files and directories -# specified with INPUT and INCLUDE_PATH. -# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. - -CLANG_OPTIONS = - -#--------------------------------------------------------------------------- -# Configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all -# compounds will be generated. Enable this if the project contains a lot of -# classes, structs, unions or interfaces. -# The default value is: YES. - -ALPHABETICAL_INDEX = YES - -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output -# The default value is: YES. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a -# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of -# it. -# The default directory is: html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -# generated HTML page (for example: .htm, .php, .asp). -# The default value is: .html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a user-defined HTML header file for -# each generated HTML page. If the tag is left blank doxygen will generate a -# standard header. -# -# To get valid HTML the header file that includes any scripts and style sheets -# that doxygen needs, which is dependent on the configuration options used (e.g. -# the setting GENERATE_TREEVIEW). It is highly recommended to start with a -# default header using -# doxygen -w html new_header.html new_footer.html new_stylesheet.css -# YourConfigFile -# and then modify the file new_header.html. See also section "Doxygen usage" -# for information on how to generate the default header that doxygen normally -# uses. -# Note: The header is subject to change so you typically have to regenerate the -# default header when upgrading to a newer version of doxygen. For a description -# of the possible markers and block names see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_HEADER = header.html - -# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each -# generated HTML page. If the tag is left blank doxygen will generate a standard -# footer. See HTML_HEADER for more information on how to generate a default -# footer and what special commands can be used inside the footer. See also -# section "Doxygen usage" for information on how to generate the default footer -# that doxygen normally uses. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FOOTER = footer.html - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style -# sheet that is used by each HTML page. It can be used to fine-tune the look of -# the HTML output. If left blank doxygen will generate a default style sheet. -# See also section "Doxygen usage" for information on how to generate the style -# sheet that doxygen normally uses. -# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -# it is more robust and this tag (HTML_STYLESHEET) will in the future become -# obsolete. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_STYLESHEET = - -# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined -# cascading style sheets that are included after the standard style sheets -# created by doxygen. Using this option one can overrule certain style aspects. -# This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefor more robust against future updates. -# Doxygen will copy the style sheet files to the output directory. -# Note: The order of the extra stylesheet files is of importance (e.g. the last -# stylesheet in the list overrules the setting of the previous ones in the -# list). For an example see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_STYLESHEET = stylesheet-override.css - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that the -# files will be copied as-is; there are no commands or markers available. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the stylesheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see -# http://en.wikipedia.org/wiki/Hue for more information. For instance the value -# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 -# purple, and 360 is red again. -# Minimum value: 0, maximum value: 359, default value: 220. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A -# value of 255 will produce the most vivid colors. -# Minimum value: 0, maximum value: 255, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_SAT = 0 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the -# luminance component of the colors in the HTML output. Values below 100 -# gradually make the output lighter, whereas values above 100 make the output -# darker. The value divided by 100 is the actual gamma applied, so 80 represents -# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not -# change the gamma. -# Minimum value: 40, maximum value: 240, default value: 80. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_GAMMA = 240 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_SECTIONS = NO - -# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries -# shown in the various tree structured indices initially; the user can expand -# and collapse entries dynamically later on. Doxygen will expand the tree to -# such a level that at most the specified number of entries are visible (unless -# a fully collapsed tree already exceeds this amount). So setting the number of -# entries 1 will produce a full collapsed tree by default. 0 is a special value -# representing an infinite number of entries and will result in a full expanded -# tree by default. -# Minimum value: 0, maximum value: 9999, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_INDEX_NUM_ENTRIES = 100 - -# If the GENERATE_DOCSET tag is set to YES, additional index files will be -# generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: http://developer.apple.com/tools/xcode/), introduced with -# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_DOCSET = NO - -# This tag determines the name of the docset feed. A documentation feed provides -# an umbrella under which multiple documentation sets from a single provider -# (such as a company or product suite) can be grouped. -# The default value is: Doxygen generated docs. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# This tag specifies a string that should uniquely identify the documentation -# set bundle. This should be a reverse domain-name style string, e.g. -# com.mycompany.MyDocSet. Doxygen will append .docset to the name. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_BUNDLE_ID = com.amazon.Lumberyard - -# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. -# The default value is: org.doxygen.Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -# The default value is: Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. -# -# The HTML Help Workshop contains a compiler that can convert all HTML output -# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML -# files are now used as the Windows 98 help format, and will replace the old -# Windows help format (.hlp) on all Windows platforms in the future. Compressed -# HTML files also contain an index, a table of contents, and you can search for -# words in the documentation. The HTML workshop also contains a viewer for -# compressed HTML files. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_HTMLHELP = NO - -# The CHM_FILE tag can be used to specify the file name of the resulting .chm -# file. You can add a path in front of the file if the result should not be -# written to the html output directory. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_FILE = - -# The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler ( hhc.exe). If non-empty -# doxygen will try to run the HTML help compiler on the generated index.hhp. -# The file has to be specified with full path. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -HHC_LOCATION = - -# The GENERATE_CHI flag controls if a separate .chi index file is generated ( -# YES) or that it should be included in the master .chm file ( NO). -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -GENERATE_CHI = NO - -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) -# and project file content. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_INDEX_ENCODING = - -# The BINARY_TOC flag controls whether a binary table of contents is generated ( -# YES) or a normal table of contents ( NO) in the .chm file. Furthermore it -# enables the Previous and Next buttons. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members to -# the table of contents of the HTML help documentation and to the tree view. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that -# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help -# (.qch) of the generated HTML documentation. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify -# the file name of the resulting .qch file. The path specified is relative to -# the HTML output folder. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -# Project output. For more information please see Qt Help Project / Namespace -# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -# Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- -# folders). -# The default value is: doc. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_VIRTUAL_FOLDER = doc - -# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -# filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's filter section matches. Qt Help Project / Filter Attributes (see: -# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_SECT_FILTER_ATTRS = - -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be -# generated, together with the HTML files, they form an Eclipse help plugin. To -# install this plugin and make it available under the help contents menu in -# Eclipse, the contents of the directory containing the HTML and XML files needs -# to be copied into the plugins directory of eclipse. The name of the directory -# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. -# After copying Eclipse needs to be restarted before the help appears. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the Eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have this -# name. Each documentation set should have its own identifier. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# If you want full control over the layout of the generated HTML pages it might -# be necessary to disable the index and replace it with your own. The -# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -# of each HTML page. A value of NO enables the index and the value YES disables -# it. Since the tabs in the index contain the same information as the navigation -# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -DISABLE_INDEX = YES - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. If the tag -# value is set to YES, a side panel will be generated containing a tree-like -# index structure (just like the one that is generated for HTML Help). For this -# to work a browser that supports JavaScript, DHTML, CSS and frames is required -# (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_TREEVIEW = YES - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that -# doxygen will group on one line in the generated HTML documentation. -# -# Note that a value of 0 will completely suppress the enum values from appearing -# in the overview section. -# Minimum value: 0, maximum value: 20, default value: 4. -# This tag requires that the tag GENERATE_HTML is set to YES. - -ENUM_VALUES_PER_LINE = 4 - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used -# to set the initial width (in pixels) of the frame in which the tree is shown. -# Minimum value: 0, maximum value: 1500, default value: 250. -# This tag requires that the tag GENERATE_HTML is set to YES. - -TREEVIEW_WIDTH = 250 - -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to -# external symbols imported via tag files in a separate window. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of LaTeX formulas included as images in -# the HTML documentation. When you change the font size after a successful -# doxygen run you need to manually remove any form_*.png images from the HTML -# output directory to force them to be regenerated. -# Minimum value: 8, maximum value: 50, default value: 10. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using prerendered bitmaps. Use this if you do not have LaTeX -# installed or if you want to formulas look prettier in the HTML output. When -# enabled you may also need to install MathJax separately and configure the path -# to it using the MATHJAX_RELPATH option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -USE_MATHJAX = NO - -# When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. -# Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. -# The default value is: HTML-CSS. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_FORMAT = HTML-CSS - -# When MathJax is enabled you need to specify the location relative to the HTML -# output directory using the MATHJAX_RELPATH option. The destination directory -# should contain the MathJax.js script. For instance, if the mathjax directory -# is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax -# Content Delivery Network so you can quickly see the result without installing -# MathJax. However, it is strongly recommended to install a local copy of -# MathJax from http://www.mathjax.org before deployment. -# The default value is: http://cdn.mathjax.org/mathjax/latest. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest - -# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -# extension names that should be enabled during MathJax rendering. For example -# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_EXTENSIONS = - -# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces -# of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -# example see the documentation. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_CODEFILE = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for -# the HTML output. The underlying search engine uses javascript and DHTML and -# should work on any modern browser. Note that when using HTML help -# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) -# there is already a search function so this one should typically be disabled. -# For large projects the javascript based search engine can be slow, then -# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to -# search using the keyboard; to jump to the search box use + S -# (what the is depends on the OS and browser, but it is typically -# , /

- - - - - - diff --git a/Code/Tools/Doxygen/header.html b/Code/Tools/Doxygen/header.html deleted file mode 100644 index 31aae0ea2e..0000000000 --- a/Code/Tools/Doxygen/header.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - -$projectname: $title -$title - - - -$treeview -$search -$mathjax - -$extrastylesheet - - -
- - -
- - - - - - - - - - - - - - - - - - - - - -
-
$projectname -  $projectnumber -
-
$projectbrief
-
-
$projectbrief
-
$searchbox
-
- - diff --git a/Code/Tools/Doxygen/layout.xml b/Code/Tools/Doxygen/layout.xml deleted file mode 100644 index 740548619e..0000000000 --- a/Code/Tools/Doxygen/layout.xml +++ /dev/null @@ -1,194 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Code/Tools/Doxygen/makegroups.sh b/Code/Tools/Doxygen/makegroups.sh deleted file mode 100755 index d72dc6c748..0000000000 --- a/Code/Tools/Doxygen/makegroups.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -# -# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or -# its licensors. -# -# For complete copyright and license terms please see the LICENSE at the root of this -# distribution (the "License"). All use of this software is governed by the License, -# or, if provided, by the license below or the license accompanying this file. Do not -# remove or modify any license notices. This file is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# -# Original file Copyright Crytek GMBH or its affiliates, used under license. -# - -(cd ../../CryEngine; find CryCommon -type d | sort -r) >tmp.dirs -(cd ../../CryEngine; find CryAction -type d | sort -r) >>tmp.dirs - -awk '{ group = $1; - gsub(/[\.\/]/,"_",group); - print $1 ": " group -}' tmp.dirs >group-filter.txt - -awk '{ group = $1; - gsub(/[\.\/]/,"_",group); - M = split($1,parts,"/"); - parent = parts[1] - for (i = 2; i < M; i++) { - parent = parent "_" parts[i] - } - print "/*! @defgroup " group " " parts[M] - print " * @ingroup " parent - print " */" -}' tmp.dirs >doc-inputs/auto-groups.dox -rm tmp.dirs diff --git a/Code/Tools/Doxygen/stylesheet-override.css b/Code/Tools/Doxygen/stylesheet-override.css deleted file mode 100644 index 60d093156f..0000000000 --- a/Code/Tools/Doxygen/stylesheet-override.css +++ /dev/null @@ -1,1440 +0,0 @@ -/* The standard CSS for doxygen 1.8.8 */ - -body, table, div, p, dl { - font: 400 12px/18px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/22px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #4A4A4A; - color: #0A0A0A; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #D8D8D8; - border: 1px solid #686868; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #0F0F0F; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #181818; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #606060; - color: #ffffff; - border: 1px double #494949; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 4px 6px; - margin: 4px 8px 4px 2px; - background-color: #F7F7F7; - border: 1px solid #959595; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.0em; - -webkit-border-radius: .0em; - -moz-border-radius: .0em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #D8D8D8; - font-weight: bold; - border: 1px solid #959595; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #D8D8D8; - border: 1px solid #959595; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #DCDCDC; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #EEEEEE; - border-left: 2px solid #606060; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #686868; -} - -th.dirtab { - background: #D8D8D8; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #1C1C1C; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F3F3F3; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight { - width: 100%; -} - -.memTemplParams { - color: #181818; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #181818; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #D8D8D8; - border: 1px solid #686868; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: bold; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #6E6E6E; - border-left: 1px solid #6E6E6E; - border-right: 1px solid #6E6E6E; - padding: 6px 0px 6px 0px; - color: #030303; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #C7C7C7; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 0px; - border-top-left-radius: 0px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 0px; - -moz-border-radius-topleft: 0px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 0px; - -webkit-border-top-left-radius: 0px; - -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #6E6E6E; - border-left: 1px solid #6E6E6E; - border-right: 1px solid #6E6E6E; - padding: 6px 10px 2px 10px; - background-color: #F7F7F7; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 0px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 0px; - -webkit-border-bottom-right-radius: 0px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #383838; - border-top:1px solid #232323; - border-left:1px solid #232323; - border-right:1px solid #959595; - border-bottom:1px solid #959595; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 0px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #606060; - border-bottom: 1px solid #606060; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #EEEEEE; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #0F0F0F; -} - -.arrow { - color: #606060; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #383838; - color: white; - text-align: center; - border-radius: 0px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #050505; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #060606; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #0B0B0B; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #6E6E6E; - border-spacing: 0px; - -moz-border-radius: 0px; - -webkit-border-radius: 0px; - border-radius: 0px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #6E6E6E; - border-bottom: 1px solid #6E6E6E; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #6E6E6E; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #C7C7C7; - font-size: 90%; - color: #030303; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - -moz-border-radius-topleft: 0px; - -moz-border-radius-topright: 0px; - -webkit-border-top-left-radius: 0px; - -webkit-border-top-right-radius: 0px; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom: 1px solid #6E6E6E; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#4D4D4D; - border:solid 1px #919191; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#0B0B0B; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #040404; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#303030; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#0B0B0B; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F3F3F3; - margin: 0px; - border-bottom: 1px solid #959595; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -dl -{ - padding: 0 0 0 10px; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ -dl.section -{ - margin-left: 0px; - padding-left: 0px; -} - -dl.note -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00D000; -} - -dl.deprecated -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #505050; -} - -dl.todo -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00C0E0; -} - -dl.test -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #3030E0; -} - -dl.bug -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #232323; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #535353; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#090909; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #E9E9E9; - border: 1px solid #B4B4B4; - border-radius: 0px 0px 0px 0px; - float: right; - height: auto; - margin: 0 20px 10px 10px; - width: 200px; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #181818; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 0px 0px 0px 0px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - diff --git a/Code/Tools/Doxygen/stylesheet.css b/Code/Tools/Doxygen/stylesheet.css deleted file mode 100644 index 067edea4c8..0000000000 --- a/Code/Tools/Doxygen/stylesheet.css +++ /dev/null @@ -1,1440 +0,0 @@ -/* The standard CSS for doxygen 1.8.8 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #4A4A4A; - color: #0A0A0A; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #D8D8D8; - border: 1px solid #686868; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #0F0F0F; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #181818; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #606060; - color: #ffffff; - border: 1px double #494949; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 4px 6px; - margin: 4px 8px 4px 2px; - background-color: #F7F7F7; - border: 1px solid #959595; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #D8D8D8; - font-weight: bold; - border: 1px solid #959595; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #D8D8D8; - border: 1px solid #959595; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #DCDCDC; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #EEEEEE; - border-left: 2px solid #606060; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #686868; -} - -th.dirtab { - background: #D8D8D8; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #1C1C1C; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F3F3F3; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight { - width: 100%; -} - -.memTemplParams { - color: #181818; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #181818; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #D8D8D8; - border: 1px solid #686868; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: bold; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #6E6E6E; - border-left: 1px solid #6E6E6E; - border-right: 1px solid #6E6E6E; - padding: 6px 0px 6px 0px; - color: #030303; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #C7C7C7; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - border-top-left-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - -moz-border-radius-topleft: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -webkit-border-top-left-radius: 4px; - -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #6E6E6E; - border-left: 1px solid #6E6E6E; - border-right: 1px solid #6E6E6E; - padding: 6px 10px 2px 10px; - background-color: #F7F7F7; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #383838; - border-top:1px solid #232323; - border-left:1px solid #232323; - border-right:1px solid #959595; - border-bottom:1px solid #959595; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #606060; - border-bottom: 1px solid #606060; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #EEEEEE; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #0F0F0F; -} - -.arrow { - color: #606060; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #383838; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('ftv2doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #050505; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #060606; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #0B0B0B; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #6E6E6E; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #6E6E6E; - border-bottom: 1px solid #6E6E6E; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #6E6E6E; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #C7C7C7; - font-size: 90%; - color: #030303; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #6E6E6E; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#4D4D4D; - border:solid 1px #919191; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#0B0B0B; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #040404; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#303030; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#0B0B0B; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F3F3F3; - margin: 0px; - border-bottom: 1px solid #959595; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -dl -{ - padding: 0 0 0 10px; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ -dl.section -{ - margin-left: 0px; - padding-left: 0px; -} - -dl.note -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00D000; -} - -dl.deprecated -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #505050; -} - -dl.todo -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00C0E0; -} - -dl.test -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #3030E0; -} - -dl.bug -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #232323; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #535353; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#090909; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #E9E9E9; - border: 1px solid #B4B4B4; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 20px 10px 10px; - width: 200px; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #181818; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp index 976850cb87..153c0964c7 100644 --- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp +++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp @@ -11,16 +11,23 @@ */ #include +#include #include #include +#include #include #include #include +#include +#include #include +#include namespace O3DE::ProjectManager { + constexpr const char* k_pathProperty = "Path"; + NewProjectSettingsScreen::NewProjectSettingsScreen(QWidget* parent) : ScreenWidget(parent) { @@ -29,19 +36,27 @@ namespace O3DE::ProjectManager QVBoxLayout* vLayout = new QVBoxLayout(this); - QLabel* projectNameLabel = new QLabel(this); - projectNameLabel->setText("Project Name"); + QLabel* projectNameLabel = new QLabel(tr("Project Name"), this); vLayout->addWidget(projectNameLabel); - QLineEdit* projectNameLineEdit = new QLineEdit(this); - vLayout->addWidget(projectNameLineEdit); + m_projectNameLineEdit = new QLineEdit(tr("New Project"), this); + vLayout->addWidget(m_projectNameLineEdit); - QLabel* projectPathLabel = new QLabel(this); - projectPathLabel->setText("Project Location"); + QLabel* projectPathLabel = new QLabel(tr("Project Location"), this); vLayout->addWidget(projectPathLabel); - QLineEdit* projectPathLineEdit = new QLineEdit(this); - vLayout->addWidget(projectPathLineEdit); + { + QHBoxLayout* projectPathLayout = new QHBoxLayout(this); + + m_projectPathLineEdit = new QLineEdit(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation), this); + projectPathLayout->addWidget(m_projectPathLineEdit); + + QPushButton* browseButton = new QPushButton(tr("Browse"), this); + connect(browseButton, &QPushButton::pressed, this, &NewProjectSettingsScreen::HandleBrowseButton); + projectPathLayout->addWidget(browseButton); + + vLayout->addLayout(projectPathLayout); + } QLabel* projectTemplateLabel = new QLabel(this); projectTemplateLabel->setText("Project Template"); @@ -50,14 +65,21 @@ namespace O3DE::ProjectManager QHBoxLayout* templateLayout = new QHBoxLayout(this); vLayout->addItem(templateLayout); - QRadioButton* projectTemplateStandardRadioButton = new QRadioButton(this); - projectTemplateStandardRadioButton->setText("Standard (Recommened)"); - projectTemplateStandardRadioButton->setChecked(true); - templateLayout->addWidget(projectTemplateStandardRadioButton); + m_projectTemplateButtonGroup = new QButtonGroup(this); + auto templatesResult = PythonBindingsInterface::Get()->GetProjectTemplates(); + if (templatesResult.IsSuccess() && !templatesResult.GetValue().isEmpty()) + { + for (auto projectTemplate : templatesResult.GetValue()) + { + QRadioButton* radioButton = new QRadioButton(projectTemplate.m_name, this); + radioButton->setProperty(k_pathProperty, projectTemplate.m_path); + m_projectTemplateButtonGroup->addButton(radioButton); - QRadioButton* projectTemplateEmptyRadioButton = new QRadioButton(this); - projectTemplateEmptyRadioButton->setText("Empty"); - templateLayout->addWidget(projectTemplateEmptyRadioButton); + templateLayout->addWidget(radioButton); + } + + m_projectTemplateButtonGroup->buttons().first()->setChecked(true); + } QSpacerItem* verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); vLayout->addItem(verticalSpacer); @@ -76,7 +98,57 @@ namespace O3DE::ProjectManager QString NewProjectSettingsScreen::GetNextButtonText() { - return "Create Project"; + return tr("Next"); + } + + void NewProjectSettingsScreen::HandleBrowseButton() + { + QString defaultPath = m_projectPathLineEdit->text(); + if (defaultPath.isEmpty()) + { + defaultPath = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); + } + + QString directory = QDir::toNativeSeparators(QFileDialog::getExistingDirectory(this, tr("New project path"), defaultPath)); + if (!directory.isEmpty()) + { + m_projectPathLineEdit->setText(directory); + } } + ProjectInfo NewProjectSettingsScreen::GetProjectInfo() + { + ProjectInfo projectInfo; + projectInfo.m_projectName = m_projectNameLineEdit->text(); + projectInfo.m_path = QDir::toNativeSeparators(m_projectPathLineEdit->text() + "/" + projectInfo.m_projectName); + return projectInfo; + } + + QString NewProjectSettingsScreen::GetProjectTemplatePath() + { + return m_projectTemplateButtonGroup->checkedButton()->property(k_pathProperty).toString(); + } + + bool NewProjectSettingsScreen::Validate() + { + bool projectNameIsValid = true; + if (m_projectNameLineEdit->text().isEmpty()) + { + projectNameIsValid = false; + } + + bool projectPathIsValid = true; + if (m_projectPathLineEdit->text().isEmpty()) + { + projectPathIsValid = false; + } + + QDir path(QDir::toNativeSeparators(m_projectPathLineEdit->text() + "/" + m_projectNameLineEdit->text())); + if (path.exists() && !path.isEmpty()) + { + projectPathIsValid = false; + } + + return projectNameIsValid && projectPathIsValid; + } } // namespace O3DE::ProjectManager diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h index 2589f00fcd..dbd4388668 100644 --- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h +++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h @@ -13,8 +13,12 @@ #if !defined(Q_MOC_RUN) #include +#include #endif +QT_FORWARD_DECLARE_CLASS(QButtonGroup) +QT_FORWARD_DECLARE_CLASS(QLineEdit) + namespace O3DE::ProjectManager { class NewProjectSettingsScreen @@ -25,6 +29,19 @@ namespace O3DE::ProjectManager ~NewProjectSettingsScreen() = default; ProjectManagerScreen GetScreenEnum() override; QString GetNextButtonText() override; + + ProjectInfo GetProjectInfo(); + QString GetProjectTemplatePath(); + + bool Validate(); + + protected slots: + void HandleBrowseButton(); + + private: + QLineEdit* m_projectNameLineEdit; + QLineEdit* m_projectPathLineEdit; + QButtonGroup* m_projectTemplateButtonGroup; }; } // namespace O3DE::ProjectManager diff --git a/Code/Tools/ProjectManager/Source/ProjectInfo.cpp b/Code/Tools/ProjectManager/Source/ProjectInfo.cpp index 4dc6eaa38b..b0b740fad9 100644 --- a/Code/Tools/ProjectManager/Source/ProjectInfo.cpp +++ b/Code/Tools/ProjectManager/Source/ProjectInfo.cpp @@ -14,12 +14,11 @@ namespace O3DE::ProjectManager { - ProjectInfo::ProjectInfo(const QString& path, const QString& projectName, const QString& productName, const AZ::Uuid projectId, + ProjectInfo::ProjectInfo(const QString& path, const QString& projectName, const QString& displayName, const QString& imagePath, const QString& backgroundImagePath, bool isNew) : m_path(path) , m_projectName(projectName) - , m_productName(productName) - , m_projectId(projectId) + , m_displayName(displayName) , m_imagePath(imagePath) , m_backgroundImagePath(backgroundImagePath) , m_isNew(isNew) @@ -28,6 +27,6 @@ namespace O3DE::ProjectManager bool ProjectInfo::IsValid() const { - return !m_path.isEmpty() && !m_projectId.IsNull(); + return !m_path.isEmpty() && !m_projectName.isEmpty(); } } // namespace O3DE::ProjectManager diff --git a/Code/Tools/ProjectManager/Source/ProjectInfo.h b/Code/Tools/ProjectManager/Source/ProjectInfo.h index d86991e76e..92a7459d78 100644 --- a/Code/Tools/ProjectManager/Source/ProjectInfo.h +++ b/Code/Tools/ProjectManager/Source/ProjectInfo.h @@ -23,7 +23,7 @@ namespace O3DE::ProjectManager { public: ProjectInfo() = default; - ProjectInfo(const QString& path, const QString& projectName, const QString& productName, const AZ::Uuid projectId, + ProjectInfo(const QString& path, const QString& projectName, const QString& displayName, const QString& imagePath, const QString& backgroundImagePath, bool isNew); bool IsValid() const; @@ -33,8 +33,7 @@ namespace O3DE::ProjectManager // From project.json QString m_projectName; - QString m_productName; - AZ::Uuid m_projectId; + QString m_displayName; // Used on projects home screen QString m_imagePath; diff --git a/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.cpp b/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.cpp index 1dccabb484..fd1013c871 100644 --- a/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.cpp +++ b/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.cpp @@ -12,10 +12,13 @@ #include #include +#include +#include #include #include #include +#include namespace O3DE::ProjectManager { @@ -65,7 +68,8 @@ namespace O3DE::ProjectManager } void ProjectSettingsCtrl::HandleNextButton() { - ProjectManagerScreen screenEnum = m_screensCtrl->GetCurrentScreen()->GetScreenEnum(); + ScreenWidget* currentScreen = m_screensCtrl->GetCurrentScreen(); + ProjectManagerScreen screenEnum = currentScreen->GetScreenEnum(); auto screenOrderIter = m_screensOrder.begin(); for (; screenOrderIter != m_screensOrder.end(); ++screenOrderIter) { @@ -76,6 +80,22 @@ namespace O3DE::ProjectManager } } + if (screenEnum == ProjectManagerScreen::NewProjectSettings) + { + auto newProjectScreen = reinterpret_cast(currentScreen); + if (newProjectScreen) + { + if (!newProjectScreen->Validate()) + { + QMessageBox::critical(this, tr("Invalid project settings"), tr("Invalid project settings")); + return; + } + + m_projectInfo = newProjectScreen->GetProjectInfo(); + m_projectTemplatePath = newProjectScreen->GetProjectTemplatePath(); + } + } + if (screenOrderIter != m_screensOrder.end()) { m_screensCtrl->ChangeToScreen(*screenOrderIter); @@ -83,7 +103,15 @@ namespace O3DE::ProjectManager } else { - emit ChangeScreenRequest(ProjectManagerScreen::ProjectsHome); + auto result = PythonBindingsInterface::Get()->CreateProject(m_projectTemplatePath, m_projectInfo); + if (result.IsSuccess()) + { + emit ChangeScreenRequest(ProjectManagerScreen::ProjectsHome); + } + else + { + QMessageBox::critical(this, tr("Project creation failed"), tr("Failed to create project.")); + } } } diff --git a/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.h b/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.h index 0b46436df1..42f1ce1978 100644 --- a/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.h +++ b/Code/Tools/ProjectManager/Source/ProjectSettingsCtrl.h @@ -12,13 +12,13 @@ #pragma once #if !defined(Q_MOC_RUN) +#include "ProjectInfo.h" #include - #include - #include #endif + namespace O3DE::ProjectManager { class ProjectSettingsCtrl @@ -40,6 +40,9 @@ namespace O3DE::ProjectManager QPushButton* m_backButton; QPushButton* m_nextButton; QVector m_screensOrder; + + QString m_projectTemplatePath; + ProjectInfo m_projectInfo; }; } // namespace O3DE::ProjectManager diff --git a/Code/Tools/ProjectManager/Source/PythonBindings.cpp b/Code/Tools/ProjectManager/Source/PythonBindings.cpp index b6945e012e..a25db506f4 100644 --- a/Code/Tools/ProjectManager/Source/PythonBindings.cpp +++ b/Code/Tools/ProjectManager/Source/PythonBindings.cpp @@ -53,6 +53,173 @@ namespace Platform #define Py_To_String(obj) obj.cast().c_str() #define Py_To_String_Optional(dict, key, default_string) dict.contains(key) ? Py_To_String(dict[key]) : default_string +namespace RedirectOutput +{ + using RedirectOutputFunc = AZStd::function; + + struct RedirectOutput + { + PyObject_HEAD RedirectOutputFunc write; + }; + + PyObject* RedirectWrite(PyObject* self, PyObject* args) + { + std::size_t written(0); + RedirectOutput* selfimpl = reinterpret_cast(self); + if (selfimpl->write) + { + char* data; + if (!PyArg_ParseTuple(args, "s", &data)) + { + return PyLong_FromSize_t(0); + } + selfimpl->write(data); + written = strlen(data); + } + return PyLong_FromSize_t(written); + } + + PyObject* RedirectFlush([[maybe_unused]] PyObject* self,[[maybe_unused]] PyObject* args) + { + // no-op + return Py_BuildValue(""); + } + + PyMethodDef RedirectMethods[] = { + {"write", RedirectWrite, METH_VARARGS, "sys.stdout.write"}, + {"flush", RedirectFlush, METH_VARARGS, "sys.stdout.flush"}, + {"write", RedirectWrite, METH_VARARGS, "sys.stderr.write"}, + {"flush", RedirectFlush, METH_VARARGS, "sys.stderr.flush"}, + {0, 0, 0, 0} // sentinel + }; + + PyTypeObject RedirectOutputType = { + PyVarObject_HEAD_INIT(0, 0) "azlmbr_redirect.RedirectOutputType", // tp_name + sizeof(RedirectOutput), /* tp_basicsize */ + 0, /* tp_itemsize */ + 0, /* tp_dealloc */ + 0, /* tp_print */ + 0, /* tp_getattr */ + 0, /* tp_setattr */ + 0, /* tp_reserved */ + 0, /* tp_repr */ + 0, /* tp_as_number */ + 0, /* tp_as_sequence */ + 0, /* tp_as_mapping */ + 0, /* tp_hash */ + 0, /* tp_call */ + 0, /* tp_str */ + 0, /* tp_getattro */ + 0, /* tp_setattro */ + 0, /* tp_as_buffer */ + Py_TPFLAGS_DEFAULT, /* tp_flags */ + "azlmbr_redirect objects", /* tp_doc */ + 0, /* tp_traverse */ + 0, /* tp_clear */ + 0, /* tp_richcompare */ + 0, /* tp_weaklistoffset */ + 0, /* tp_iter */ + 0, /* tp_iternext */ + RedirectMethods, /* tp_methods */ + 0, /* tp_members */ + 0, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + 0 /* tp_new */ + }; + + PyModuleDef RedirectOutputModule = { + PyModuleDef_HEAD_INIT, "azlmbr_redirect", 0, -1, 0, + }; + + // Internal state + PyObject* g_redirect_stdout = nullptr; + PyObject* g_redirect_stdout_saved = nullptr; + PyObject* g_redirect_stderr = nullptr; + PyObject* g_redirect_stderr_saved = nullptr; + + PyMODINIT_FUNC PyInit_RedirectOutput(void) + { + g_redirect_stdout = nullptr; + g_redirect_stdout_saved = nullptr; + g_redirect_stderr = nullptr; + g_redirect_stderr_saved = nullptr; + + RedirectOutputType.tp_new = PyType_GenericNew; + if (PyType_Ready(&RedirectOutputType) < 0) + { + return 0; + } + + PyObject* redirectModule = PyModule_Create(&RedirectOutputModule); + if (redirectModule) + { + Py_INCREF(&RedirectOutputType); + PyModule_AddObject(redirectModule, "Redirect", reinterpret_cast(&RedirectOutputType)); + } + return redirectModule; + } + + void SetRedirection(const char* funcname, PyObject*& saved, PyObject*& current, RedirectOutputFunc func) + { + if (PyType_Ready(&RedirectOutputType) < 0) + { + AZ_Warning("python", false, "RedirectOutputType not ready!"); + return; + } + + if (!current) + { + saved = PySys_GetObject(funcname); // borrowed + current = RedirectOutputType.tp_new(&RedirectOutputType, 0, 0); + } + + RedirectOutput* redirectOutput = reinterpret_cast(current); + redirectOutput->write = func; + PySys_SetObject(funcname, current); + } + + void ResetRedirection(const char* funcname, PyObject*& saved, PyObject*& current) + { + if (current) + { + PySys_SetObject(funcname, saved); + } + Py_XDECREF(current); + current = nullptr; + } + + PyObject* s_RedirectModule = nullptr; + + void Intialize(PyObject* module) + { + s_RedirectModule = module; + + SetRedirection("stdout", g_redirect_stdout_saved, g_redirect_stdout, [](const char* msg) { + AZ_TracePrintf("Python", msg); + }); + + SetRedirection("stderr", g_redirect_stderr_saved, g_redirect_stderr, [](const char* msg) { + AZ_TracePrintf("Python", msg); + }); + + PySys_WriteStdout("RedirectOutput installed"); + } + + void Shutdown() + { + ResetRedirection("stdout", g_redirect_stdout_saved, g_redirect_stdout); + ResetRedirection("stderr", g_redirect_stderr_saved, g_redirect_stderr); + Py_XDECREF(s_RedirectModule); + s_RedirectModule = nullptr; + } +} // namespace RedirectOutput + namespace O3DE::ProjectManager { PythonBindings::PythonBindings(const AZ::IO::PathView& enginePath) @@ -92,6 +259,8 @@ namespace O3DE::ProjectManager AZ_TracePrintf("python", "Py_GetExecPrefix=%ls \n", Py_GetExecPrefix()); AZ_TracePrintf("python", "Py_GetProgramFullPath=%ls \n", Py_GetProgramFullPath()); + PyImport_AppendInittab("azlmbr_redirect", RedirectOutput::PyInit_RedirectOutput); + try { // ignore system location for sites site-packages @@ -101,6 +270,8 @@ namespace O3DE::ProjectManager const bool initializeSignalHandlers = true; pybind11::initialize_interpreter(initializeSignalHandlers); + RedirectOutput::Intialize(PyImport_ImportModule("azlmbr_redirect")); + // Acquire GIL before calling Python code AZStd::lock_guard lock(m_lock); pybind11::gil_scoped_acquire acquire; @@ -113,6 +284,7 @@ namespace O3DE::ProjectManager // import required modules m_registration = pybind11::module::import("cmake.Tools.registration"); + m_engineTemplate = pybind11::module::import("cmake.Tools.engine_template"); return result == 0 && !PyErr_Occurred(); } catch ([[maybe_unused]] const std::exception& e) @@ -126,6 +298,7 @@ namespace O3DE::ProjectManager { if (Py_IsInitialized()) { + RedirectOutput::Shutdown(); pybind11::finalize_interpreter(); } else @@ -204,9 +377,28 @@ namespace O3DE::ProjectManager } } - AZ::Outcome PythonBindings::CreateProject([[maybe_unused]] const ProjectTemplateInfo& projectTemplate,[[maybe_unused]] const ProjectInfo& projectInfo) + AZ::Outcome PythonBindings::CreateProject(const QString& projectTemplatePath, const ProjectInfo& projectInfo) { - return AZ::Failure(); + ProjectInfo createdProjectInfo; + bool result = ExecuteWithLock([&] { + + pybind11::str projectPath = projectInfo.m_path.toStdString(); + pybind11::str templatePath = projectTemplatePath.toStdString(); + auto createProjectResult = m_engineTemplate.attr("create_project")(projectPath, templatePath); + if (createProjectResult.cast() == 0) + { + createdProjectInfo = ProjectInfoFromPath(projectPath); + } + }); + + if (!result || !createdProjectInfo.IsValid()) + { + return AZ::Failure(); + } + else + { + return AZ::Success(AZStd::move(createdProjectInfo)); + } } AZ::Outcome PythonBindings::GetProject(const QString& path) @@ -275,10 +467,8 @@ namespace O3DE::ProjectManager { try { - // required fields - projectInfo.m_productName = Py_To_String(projectData["product_name"]); projectInfo.m_projectName = Py_To_String(projectData["project_name"]); - projectInfo.m_projectId = AZ::Uuid(Py_To_String(projectData["project_id"])); + projectInfo.m_displayName = Py_To_String_Optional(projectData,"display_name", projectInfo.m_projectName); } catch ([[maybe_unused]] const std::exception& e) { diff --git a/Code/Tools/ProjectManager/Source/PythonBindings.h b/Code/Tools/ProjectManager/Source/PythonBindings.h index 9183ca2424..ffabf99b49 100644 --- a/Code/Tools/ProjectManager/Source/PythonBindings.h +++ b/Code/Tools/ProjectManager/Source/PythonBindings.h @@ -43,7 +43,7 @@ namespace O3DE::ProjectManager AZ::Outcome> GetGems() override; // Project - AZ::Outcome CreateProject(const ProjectTemplateInfo& projectTemplate, const ProjectInfo& projectInfo) override; + AZ::Outcome CreateProject(const QString& projectTemplatePath, const ProjectInfo& projectInfo) override; AZ::Outcome GetProject(const QString& path) override; AZ::Outcome> GetProjects() override; bool UpdateProject(const ProjectInfo& projectInfo) override; @@ -62,6 +62,7 @@ namespace O3DE::ProjectManager bool StopPython(); AZ::IO::FixedMaxPath m_enginePath; + pybind11::handle m_engineTemplate; AZStd::recursive_mutex m_lock; pybind11::handle m_registration; }; diff --git a/Code/Tools/ProjectManager/Source/PythonBindingsInterface.h b/Code/Tools/ProjectManager/Source/PythonBindingsInterface.h index f696ea958d..2377da1461 100644 --- a/Code/Tools/ProjectManager/Source/PythonBindingsInterface.h +++ b/Code/Tools/ProjectManager/Source/PythonBindingsInterface.h @@ -70,11 +70,11 @@ namespace O3DE::ProjectManager /** * Create a project - * @param projectTemplate the project template to use + * @param projectTemplatePath the path to the project template to use * @param projectInfo the project info to use * @return an outcome with ProjectInfo on success */ - virtual AZ::Outcome CreateProject(const ProjectTemplateInfo& projectTemplate, const ProjectInfo& projectInfo) = 0; + virtual AZ::Outcome CreateProject(const QString& projectTemplatePath, const ProjectInfo& projectInfo) = 0; /** * Get info about a project diff --git a/Code/Tools/SerializeContextTools/SliceConverter.cpp b/Code/Tools/SerializeContextTools/SliceConverter.cpp index 2df3888607..7631eabf22 100644 --- a/Code/Tools/SerializeContextTools/SliceConverter.cpp +++ b/Code/Tools/SerializeContextTools/SliceConverter.cpp @@ -143,7 +143,7 @@ namespace AZ if (packOpened) { [[maybe_unused]] bool closeResult = archiveInterface->ClosePack(filePath); - AZ_Warning("Convert-Slice", !closeResult, "Failed to close '%s'.", filePath.c_str()); + AZ_Warning("Convert-Slice", closeResult, "Failed to close '%s'.", filePath.c_str()); } AZ_Printf("Convert-Slice", "Finished converting '%s' to '%s'\n", filePath.c_str(), outputPath.c_str()); @@ -166,14 +166,16 @@ namespace AZ } // Get all of the entities from the slice. - SliceComponent::EntityList sliceEntities; - bool getEntitiesResult = sliceComponent->GetEntities(sliceEntities); - if ((!getEntitiesResult) || (sliceEntities.empty())) + SliceComponent::EntityList sliceEntities = sliceComponent->GetNewEntities(); + if (sliceEntities.empty()) { AZ_Printf("Convert-Slice", " File not converted: Slice entities could not be retrieved.\n"); return false; } + const SliceComponent::SliceList& sliceList = sliceComponent->GetSlices(); + AZ_Warning("Convert-Slice", sliceList.empty(), " Slice depends on other slices, this conversion will lose data.\n"); + // Create the Prefab with the entities from the slice AZStd::unique_ptr sourceInstance( prefabSystemComponent->CreatePrefab(sliceEntities, {}, outputPath)); diff --git a/Docs/doxygen/doxyfile-ly-api b/Docs/doxygen/doxyfile-ly-api deleted file mode 100644 index bad2a077c7..0000000000 --- a/Docs/doxygen/doxyfile-ly-api +++ /dev/null @@ -1,2449 +0,0 @@ -# Doxyfile 1.8.12 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a double hash (##) is considered a comment and is placed in -# front of the TAG it is preceding. -# -# All text after a single hash (#) is considered a comment and will be ignored. -# The format is: -# TAG = value [value, ...] -# For lists, items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (\" \"). - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all text -# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv -# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv -# for the list of possible encodings. -# The default value is: UTF-8. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by -# double-quotes, unless you are using Doxywizard) that should identify the -# project for which the documentation is generated. This name is used in the -# title of most generated pages and in a few other places. -# The default value is: My Project. - -PROJECT_NAME = "Lumberyard C++ API Reference" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -# could be handy for archiving the generated documentation or if some version -# control system is used. - -PROJECT_NUMBER = - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer a -# quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = - -# With the PROJECT_LOGO tag one can specify a logo or an icon that is included -# in the documentation. The maximum height of the logo should not exceed 55 -# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy -# the logo to the output directory. - -PROJECT_LOGO = - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path -# into which the generated documentation will be written. If a relative path is -# entered, it will be relative to the location where doxygen was started. If -# left blank the current directory will be used. - -OUTPUT_DIRECTORY = ../ - -# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this -# option can be useful when feeding doxygen a huge amount of source files, where -# putting all generated files in the same directory would otherwise causes -# performance problems for the file system. -# The default value is: NO. - -CREATE_SUBDIRS = NO - -# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII -# characters to appear in the names of generated files. If set to NO, non-ASCII -# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode -# U+3044. -# The default value is: NO. - -ALLOW_UNICODE_NAMES = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. -# The default value is: English. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member -# descriptions after the members that are listed in the file and class -# documentation (similar to Javadoc). Set to NO to disable this. -# The default value is: YES. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief -# description of a member or function before the detailed description -# -# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. -# The default value is: YES. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator that is -# used to form the text in various listings. Each string in this list, if found -# as the leading text of the brief description, will be stripped from the text -# and the result, after processing the whole list, is used as the annotated -# text. Otherwise, the brief description is used as-is. If left blank, the -# following values are used ($name is automatically replaced with the name of -# the entity):The $name class, The $name widget, The $name file, is, provides, -# specifies, contains, represents, a, an and the. - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# doxygen will generate a detailed section even if there is only a brief -# description. -# The default value is: NO. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. -# The default value is: NO. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path -# before files name in the file list and in the header files. If set to NO the -# shortest path that makes the file name unique will be used -# The default value is: YES. - -FULL_PATH_NAMES = YES - -# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. -# Stripping is only done if one of the specified strings matches the left-hand -# part of the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the path to -# strip. -# -# Note that you can specify absolute paths here, but also relative paths, which -# will be relative from the directory where doxygen is started. -# This tag requires that the tag FULL_PATH_NAMES is set to YES. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the -# path mentioned in the documentation of a class, which tells the reader which -# header file to include in order to use a class. If left blank only the name of -# the header file containing the class definition is used. Otherwise one should -# specify the list of include paths that are normally passed to the compiler -# using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -# less readable) file names. This can be useful is your file systems doesn't -# support long names like on DOS, Mac, or CD-ROM. -# The default value is: NO. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the -# first line (until the first dot) of a Javadoc-style comment as the brief -# description. If set to NO, the Javadoc-style will behave just like regular Qt- -# style comments (thus requiring an explicit @brief command for a brief -# description.) -# The default value is: NO. - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first -# line (until the first dot) of a Qt-style comment as the brief description. If -# set to NO, the Qt-style will behave just like regular Qt-style comments (thus -# requiring an explicit \brief command for a brief description.) -# The default value is: NO. - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a -# multi-line C++ special comment block (i.e. a block of //! or /// comments) as -# a brief description. This used to be the default behavior. The new default is -# to treat a multi-line C++ comment block as a detailed description. Set this -# tag to YES if you prefer the old behavior instead. -# -# Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. -# The default value is: NO. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -# documentation from any documented member that it re-implements. -# The default value is: YES. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new -# page for each member. If set to NO, the documentation of a member will be part -# of the file/class/namespace that contains it. -# The default value is: NO. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen -# uses this value to replace tabs by spaces in code fragments. -# Minimum value: 1, maximum value: 16, default value: 4. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that act as commands in -# the documentation. An alias has the form: -# name=value -# For example adding -# "sideeffect=@par Side Effects:\n" -# will allow you to put the command \sideeffect (or @sideeffect) in the -# documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding "class=itcl::class" -# will allow you to use the command class in the itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. For -# instance, some of the names that are used will be different. The list of all -# members will be omitted, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or -# Python sources only. Doxygen will then generate output that is more tailored -# for that language. For instance, namespaces will be presented as packages, -# qualified scopes will look different, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources. Doxygen will then generate output that is tailored for Fortran. -# The default value is: NO. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for VHDL. -# The default value is: NO. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given -# extension. Doxygen has a built-in mapping, but you can override or extend it -# using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: -# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: -# Fortran. In the later case the parser tries to guess whether the code is fixed -# or free formatted code, this is the default for Fortran type files), VHDL. For -# instance to make doxygen treat .inc files as Fortran files (default is PHP), -# and .f files as C (default is Fortran), use: inc=Fortran f=C. -# -# Note: For files without extension you can use no_extension as a placeholder. -# -# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments -# according to the Markdown format, which allows for more readable -# documentation. See http://daringfireball.net/projects/markdown/ for details. -# The output of markdown processing is further processed by doxygen, so you can -# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in -# case of backward compatibilities issues. -# The default value is: YES. - -MARKDOWN_SUPPORT = YES - -# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up -# to that level are automatically included in the table of contents, even if -# they do not have an id attribute. -# Note: This feature currently applies only to Markdown headings. -# Minimum value: 0, maximum value: 99, default value: 0. -# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. - -TOC_INCLUDE_HEADINGS = 0 - -# When enabled doxygen tries to link words that correspond to documented -# classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by putting a % sign in front of the word or -# globally by setting AUTOLINK_SUPPORT to NO. -# The default value is: YES. - -AUTOLINK_SUPPORT = YES - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should set this -# tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); -# versus func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. -# The default value is: NO. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. -# The default value is: NO. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen -# will parse them like normal C++ but will assume all classes use public instead -# of private inheritance when no explicit protection keyword is present. -# The default value is: NO. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate -# getter and setter methods for a property. Setting this option to YES will make -# doxygen to replace the get and set methods by a property in the documentation. -# This will only work if the methods are indeed getting or setting a simple -# type. If this is not the case, or you want to show the methods anyway, you -# should set this option to NO. -# The default value is: YES. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. -# The default value is: NO. - -DISTRIBUTE_GROUP_DOC = NO - -# If one adds a struct or class to a group and this option is enabled, then also -# any nested class or struct is added to the same group. By default this option -# is disabled and one has to add nested compounds explicitly via \ingroup. -# The default value is: NO. - -GROUP_NESTED_COMPOUNDS = NO - -# Set the SUBGROUPING tag to YES to allow class member groups of the same type -# (for instance a group of public functions) to be put as a subgroup of that -# type (e.g. under the Public Functions section). Set it to NO to prevent -# subgrouping. Alternatively, this can be done per class using the -# \nosubgrouping command. -# The default value is: YES. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions -# are shown inside the group in which they are included (e.g. using \ingroup) -# instead of on a separate page (for HTML and Man pages) or section (for LaTeX -# and RTF). -# -# Note that this feature does not work in combination with -# SEPARATE_MEMBER_PAGES. -# The default value is: NO. - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions -# with only public data fields or simple typedef fields will be shown inline in -# the documentation of the scope in which they are defined (i.e. file, -# namespace, or group documentation), provided this scope is documented. If set -# to NO, structs, classes, and unions are shown on a separate page (for HTML and -# Man pages) or section (for LaTeX and RTF). -# The default value is: NO. - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or -# enum is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically be -# useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. -# The default value is: NO. - -TYPEDEF_HIDES_STRUCT = NO - -# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This -# cache is used to resolve symbols given their name and scope. Since this can be -# an expensive process and often the same symbol appears multiple times in the -# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small -# doxygen will become slower. If the cache is too large, memory is wasted. The -# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range -# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 -# symbols. At the end of a run doxygen will report the cache usage and suggest -# the optimal cache size from a speed point of view. -# Minimum value: 0, maximum value: 9, default value: 0. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in -# documentation are documented, even if no documentation was available. Private -# class members and static file members will be hidden unless the -# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. -# Note: This will also disable the warnings about undocumented members that are -# normally produced when WARNINGS is set to YES. -# The default value is: NO. - -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will -# be included in the documentation. -# The default value is: NO. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal -# scope will be included in the documentation. -# The default value is: NO. - -EXTRACT_PACKAGE = NO - -# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be -# included in the documentation. -# The default value is: NO. - -EXTRACT_STATIC = YES - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO, -# only classes defined in header files are included. Does not have any effect -# for Java sources. -# The default value is: YES. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. If set to YES, local methods, -# which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO, only methods in the interface are -# included. -# The default value is: NO. - -EXTRACT_LOCAL_METHODS = YES - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base name of -# the file that contains the anonymous namespace. By default anonymous namespace -# are hidden. -# The default value is: NO. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -# undocumented members inside documented classes or files. If set to NO these -# members will be included in the various overviews, but no documentation -# section is generated. This option has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. If set -# to NO, these classes will be included in the various overviews. This option -# has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO, these declarations will be -# included in the documentation. -# The default value is: NO. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO, these -# blocks will be appended to the function's detailed documentation block. -# The default value is: NO. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation that is typed after a -# \internal command is included. If the tag is set to NO then the documentation -# will be excluded. Set it to YES to include the internal documentation. -# The default value is: NO. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES, upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. -# The default value is: system dependent. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES, the -# scope will be hidden. -# The default value is: NO. - -HIDE_SCOPE_NAMES = NO - -# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will -# append additional text to a page's title, such as Class Reference. If set to -# YES the compound reference will be hidden. -# The default value is: NO. - -HIDE_COMPOUND_REFERENCE= NO - -# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -# the files that are included by a file in the documentation of that file. -# The default value is: YES. - -SHOW_INCLUDE_FILES = NO - -# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -# grouped member an include statement to the documentation, telling the reader -# which file to include in order to use the member. -# The default value is: NO. - -SHOW_GROUPED_MEMB_INC = NO - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include -# files with double quotes in the documentation rather than with sharp brackets. -# The default value is: NO. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -# documentation for inline members. -# The default value is: YES. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the -# (detailed) documentation of file and class members alphabetically by member -# name. If set to NO, the members will appear in declaration order. -# The default value is: YES. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -# descriptions of file, namespace and class members alphabetically by member -# name. If set to NO, the members will appear in declaration order. Note that -# this will also influence the order of the classes in the class list. -# The default value is: NO. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the -# (brief and detailed) documentation of class members so that constructors and -# destructors are listed first. If set to NO the constructors will appear in the -# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -# member documentation. -# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -# detailed member documentation. -# The default value is: NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy -# of group names into alphabetical order. If set to NO the group names will -# appear in their defined order. -# The default value is: NO. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by -# fully-qualified names, including namespaces. If set to NO, the class list will -# be sorted only by class name, not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the alphabetical -# list. -# The default value is: NO. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper -# type resolution of all parameters of a function it will reject a match between -# the prototype and the implementation of a member function even if there is -# only one candidate or it is obvious which candidate to choose by doing a -# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still -# accept a match between prototype and implementation in such cases. -# The default value is: NO. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo -# list. This list is created by putting \todo commands in the documentation. -# The default value is: YES. - -GENERATE_TODOLIST = NO - -# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test -# list. This list is created by putting \test commands in the documentation. -# The default value is: YES. - -GENERATE_TESTLIST = NO - -# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug -# list. This list is created by putting \bug commands in the documentation. -# The default value is: YES. - -GENERATE_BUGLIST = NO - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) -# the deprecated list. This list is created by putting \deprecated commands in -# the documentation. -# The default value is: YES. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional documentation -# sections, marked by \if ... \endif and \cond -# ... \endcond blocks. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the -# initial value of a variable or macro / define can have for it to appear in the -# documentation. If the initializer consists of more lines than specified here -# it will be hidden. Use a value of 0 to hide initializers completely. The -# appearance of the value of individual variables and macros / defines can be -# controlled using \showinitializer or \hideinitializer command in the -# documentation regardless of this setting. -# Minimum value: 0, maximum value: 10000, default value: 30. - -MAX_INITIALIZER_LINES = 0 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES, the -# list will mention the files that were used to generate the documentation. -# The default value is: YES. - -SHOW_USED_FILES = YES - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This -# will remove the Files entry from the Quick Index and from the Folder Tree View -# (if specified). -# The default value is: YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces -# page. This will remove the Namespaces entry from the Quick Index and from the -# Folder Tree View (if specified). -# The default value is: YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the -# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -# by doxygen. Whatever the program writes to standard output is used as the file -# version. For an example see the documentation. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. To create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. You can -# optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. -# -# Note that if you run doxygen from a directory containing a file called -# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -# tag is left empty. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -# the reference definitions. This must be a list of .bib files. The .bib -# extension is automatically appended if omitted. This requires the bibtex tool -# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. -# For LaTeX the style of the bibliography can be controlled using -# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. See also \cite for info how to create references. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# Configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated to -# standard output by doxygen. If QUIET is set to YES this implies that the -# messages are off. -# The default value is: NO. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES -# this implies that the warnings are on. -# -# Tip: Turn warnings on while writing the documentation. -# The default value is: YES. - -WARNINGS = YES - -# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate -# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag -# will automatically be disabled. -# The default value is: YES. - -WARN_IF_UNDOCUMENTED = YES - -# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. -# The default value is: YES. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that -# are documented, but have no documentation for their parameters or return -# value. If set to NO, doxygen will only warn about wrong or incomplete -# parameter documentation, but not about the absence of documentation. -# The default value is: NO. - -WARN_NO_PARAMDOC = NO - -# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when -# a warning is encountered. -# The default value is: NO. - -WARN_AS_ERROR = NO - -# The WARN_FORMAT tag determines the format of the warning messages that doxygen -# can produce. The string should contain the $file, $line, and $text tags, which -# will be replaced by the file and line number from which the warning originated -# and the warning text. Optionally the format may contain $version, which will -# be replaced by the version of the file (if it could be obtained via -# FILE_VERSION_FILTER) -# The default value is: $file:$line: $text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning and error -# messages should be written. If left blank the output is written to standard -# error (stderr). - -WARN_LOGFILE = doxygen-warnings.txt - -#--------------------------------------------------------------------------- -# Configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag is used to specify the files and/or directories that contain -# documented source files. You may enter file names like myfile.cpp or -# directories like /usr/src/myproject. Separate the files or directories with -# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING -# Note: If this tag is empty the current directory is searched. - -INPUT = ../../Code/Framework - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: http://www.gnu.org/software/libiconv) for the list of -# possible encodings. -# The default value is: UTF-8. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# read by doxygen. -# -# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, -# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, -# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, -# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, -# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf. - -FILE_PATTERNS = *.h \ - *.inl - -# The RECURSIVE tag can be used to specify whether or not subdirectories should -# be searched for input files as well. -# The default value is: NO. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. -# The default value is: NO. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories for example use the pattern */test/* - -EXCLUDE_PATTERNS = *test* \ - *ReleaseNotes* \ - docs.h - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* - -EXCLUDE_SYMBOLS = AZ::Internal* \ - AZStd::Internal* \ - AZStd::hash<*> - -# The EXAMPLE_PATH tag can be used to specify one or more files or directories -# that contain example code fragments that are included (see the \include -# command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank all -# files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude commands -# irrespective of the value of the RECURSIVE tag. -# The default value is: NO. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or directories -# that contain images that are to be included in the documentation (see the -# \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command: -# -# -# -# where is the value of the INPUT_FILTER tag, and is the -# name of an input file. Doxygen will then use the output that the filter -# program writes to standard output. If FILTER_PATTERNS is specified, this tag -# will be ignored. -# -# Note that the filter must not add or remove lines; it is applied before the -# code is scanned, but not when the output code is generated. If lines are added -# or removed, the anchors will not be placed correctly. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# properly processed by doxygen. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: pattern=filter -# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how -# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -# patterns match the file name, INPUT_FILTER is applied. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# properly processed by doxygen. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will also be used to filter the input files that are used for -# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -# The default value is: NO. - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and -# it is also possible to disable source filtering for a specific pattern using -# *.ext= (so without naming a filter). -# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. - -FILTER_SOURCE_PATTERNS = - -# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that -# is part of the input, its contents will be placed on the main page -# (index.html). This can be useful if you have a project on for instance GitHub -# and want to reuse the introduction page also for the doxygen output. - -USE_MDFILE_AS_MAINPAGE = - -#--------------------------------------------------------------------------- -# Configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will be -# generated. Documented entities will be cross-referenced with these sources. -# -# Note: To get rid of all source code in the generated output, make sure that -# also VERBATIM_HEADERS is set to NO. -# The default value is: NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. -# The default value is: NO. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any -# special comment blocks from generated source code fragments. Normal C, C++ and -# Fortran comments will always remain visible. -# The default value is: YES. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -# function all documented functions referencing it will be listed. -# The default value is: NO. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES then for each documented function -# all documented entities called/used by that function will be listed. -# The default value is: NO. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES then the hyperlinks from functions in REFERENCES_RELATION and -# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will -# link to the documentation. -# The default value is: YES. - -REFERENCES_LINK_SOURCE = NO - -# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the -# source code will show a tooltip with additional information such as prototype, -# brief description and links to the definition and documentation. Since this -# will make the HTML file larger and loading of large files a bit slower, you -# can opt to disable this feature. -# The default value is: YES. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -SOURCE_TOOLTIPS = YES - -# If the USE_HTAGS tag is set to YES then the references to source code will -# point to the HTML generated by the htags(1) tool instead of doxygen built-in -# source browser. The htags tool is part of GNU's global source tagging system -# (see http://www.gnu.org/software/global/global.html). You will need version -# 4.8.6 or higher. -# -# To use it do the following: -# - Install the latest version of global -# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -# - Make sure the INPUT points to the root of the source tree -# - Run doxygen as normal -# -# Doxygen will invoke htags (and that will in turn invoke gtags), so these -# tools must be available from the command line (i.e. in the search path). -# -# The result: instead of the source browser generated by doxygen, the links to -# source code will now point to the output of htags. -# The default value is: NO. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a -# verbatim copy of the header file for each class for which an include is -# specified. Set to NO to disable this. -# See also: Section \class. -# The default value is: YES. - -VERBATIM_HEADERS = NO - -# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the -# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the -# cost of reduced performance. This can be particularly helpful with template -# rich C++ code for which doxygen's built-in parser lacks the necessary type -# information. -# Note: The availability of this option depends on whether or not doxygen was -# generated with the -Duse-libclang=ON option for CMake. -# The default value is: NO. - -CLANG_ASSISTED_PARSING = NO - -# If clang assisted parsing is enabled you can provide the compiler with command -# line options that you would normally use when invoking the compiler. Note that -# the include paths will already be set by doxygen for the files and directories -# specified with INPUT and INCLUDE_PATH. -# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. - -CLANG_OPTIONS = - -#--------------------------------------------------------------------------- -# Configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all -# compounds will be generated. Enable this if the project contains a lot of -# classes, structs, unions or interfaces. -# The default value is: YES. - -ALPHABETICAL_INDEX = YES - -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 1 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output -# The default value is: YES. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a -# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of -# it. -# The default directory is: html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_OUTPUT = html-doxygen-generated - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -# generated HTML page (for example: .htm, .php, .asp). -# The default value is: .html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a user-defined HTML header file for -# each generated HTML page. If the tag is left blank doxygen will generate a -# standard header. -# -# To get valid HTML the header file that includes any scripts and style sheets -# that doxygen needs, which is dependent on the configuration options used (e.g. -# the setting GENERATE_TREEVIEW). It is highly recommended to start with a -# default header using -# doxygen -w html new_header.html new_footer.html new_stylesheet.css -# YourConfigFile -# and then modify the file new_header.html. See also section "Doxygen usage" -# for information on how to generate the default header that doxygen normally -# uses. -# Note: The header is subject to change so you typically have to regenerate the -# default header when upgrading to a newer version of doxygen. For a description -# of the possible markers and block names see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_HEADER = header-awsdocs.html - -# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each -# generated HTML page. If the tag is left blank doxygen will generate a standard -# footer. See HTML_HEADER for more information on how to generate a default -# footer and what special commands can be used inside the footer. See also -# section "Doxygen usage" for information on how to generate the default footer -# that doxygen normally uses. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FOOTER = footer-awsdocs.html - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style -# sheet that is used by each HTML page. It can be used to fine-tune the look of -# the HTML output. If left blank doxygen will generate a default style sheet. -# See also section "Doxygen usage" for information on how to generate the style -# sheet that doxygen normally uses. -# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -# it is more robust and this tag (HTML_STYLESHEET) will in the future become -# obsolete. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_STYLESHEET = - -# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined -# cascading style sheets that are included after the standard style sheets -# created by doxygen. Using this option one can overrule certain style aspects. -# This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefore more robust against future updates. -# Doxygen will copy the style sheet files to the output directory. -# Note: The order of the extra style sheet files is of importance (e.g. the last -# style sheet in the list overrules the setting of the previous ones in the -# list). For an example see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_STYLESHEET = - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that the -# files will be copied as-is; there are no commands or markers available. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the style sheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see -# http://en.wikipedia.org/wiki/Hue for more information. For instance the value -# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 -# purple, and 360 is red again. -# Minimum value: 0, maximum value: 359, default value: 220. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A -# value of 255 will produce the most vivid colors. -# Minimum value: 0, maximum value: 255, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the -# luminance component of the colors in the HTML output. Values below 100 -# gradually make the output lighter, whereas values above 100 make the output -# darker. The value divided by 100 is the actual gamma applied, so 80 represents -# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not -# change the gamma. -# Minimum value: 40, maximum value: 240, default value: 80. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to YES can help to show when doxygen was last run and thus if the -# documentation is up to date. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = NO - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_SECTIONS = NO - -# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries -# shown in the various tree structured indices initially; the user can expand -# and collapse entries dynamically later on. Doxygen will expand the tree to -# such a level that at most the specified number of entries are visible (unless -# a fully collapsed tree already exceeds this amount). So setting the number of -# entries 1 will produce a full collapsed tree by default. 0 is a special value -# representing an infinite number of entries and will result in a full expanded -# tree by default. -# Minimum value: 0, maximum value: 9999, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_INDEX_NUM_ENTRIES = 100 - -# If the GENERATE_DOCSET tag is set to YES, additional index files will be -# generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: http://developer.apple.com/tools/xcode/), introduced with -# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_DOCSET = NO - -# This tag determines the name of the docset feed. A documentation feed provides -# an umbrella under which multiple documentation sets from a single provider -# (such as a company or product suite) can be grouped. -# The default value is: Doxygen generated docs. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# This tag specifies a string that should uniquely identify the documentation -# set bundle. This should be a reverse domain-name style string, e.g. -# com.mycompany.MyDocSet. Doxygen will append .docset to the name. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. -# The default value is: org.doxygen.Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -# The default value is: Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. -# -# The HTML Help Workshop contains a compiler that can convert all HTML output -# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML -# files are now used as the Windows 98 help format, and will replace the old -# Windows help format (.hlp) on all Windows platforms in the future. Compressed -# HTML files also contain an index, a table of contents, and you can search for -# words in the documentation. The HTML workshop also contains a viewer for -# compressed HTML files. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_HTMLHELP = NO - -# The CHM_FILE tag can be used to specify the file name of the resulting .chm -# file. You can add a path in front of the file if the result should not be -# written to the html output directory. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_FILE = - -# The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler (hhc.exe). If non-empty, -# doxygen will try to run the HTML help compiler on the generated index.hhp. -# The file has to be specified with full path. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -HHC_LOCATION = - -# The GENERATE_CHI flag controls if a separate .chi index file is generated -# (YES) or that it should be included in the master .chm file (NO). -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -GENERATE_CHI = NO - -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) -# and project file content. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_INDEX_ENCODING = - -# The BINARY_TOC flag controls whether a binary table of contents is generated -# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it -# enables the Previous and Next buttons. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members to -# the table of contents of the HTML help documentation and to the tree view. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that -# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help -# (.qch) of the generated HTML documentation. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify -# the file name of the resulting .qch file. The path specified is relative to -# the HTML output folder. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -# Project output. For more information please see Qt Help Project / Namespace -# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -# Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- -# folders). -# The default value is: doc. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_VIRTUAL_FOLDER = doc - -# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -# filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's filter section matches. Qt Help Project / Filter Attributes (see: -# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_SECT_FILTER_ATTRS = - -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be -# generated, together with the HTML files, they form an Eclipse help plugin. To -# install this plugin and make it available under the help contents menu in -# Eclipse, the contents of the directory containing the HTML and XML files needs -# to be copied into the plugins directory of eclipse. The name of the directory -# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. -# After copying Eclipse needs to be restarted before the help appears. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the Eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have this -# name. Each documentation set should have its own identifier. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# If you want full control over the layout of the generated HTML pages it might -# be necessary to disable the index and replace it with your own. The -# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -# of each HTML page. A value of NO enables the index and the value YES disables -# it. Since the tabs in the index contain the same information as the navigation -# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -DISABLE_INDEX = YES - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. If the tag -# value is set to YES, a side panel will be generated containing a tree-like -# index structure (just like the one that is generated for HTML Help). For this -# to work a browser that supports JavaScript, DHTML, CSS and frames is required -# (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_TREEVIEW = NO - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that -# doxygen will group on one line in the generated HTML documentation. -# -# Note that a value of 0 will completely suppress the enum values from appearing -# in the overview section. -# Minimum value: 0, maximum value: 20, default value: 4. -# This tag requires that the tag GENERATE_HTML is set to YES. - -ENUM_VALUES_PER_LINE = 4 - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used -# to set the initial width (in pixels) of the frame in which the tree is shown. -# Minimum value: 0, maximum value: 1500, default value: 250. -# This tag requires that the tag GENERATE_HTML is set to YES. - -TREEVIEW_WIDTH = 250 - -# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to -# external symbols imported via tag files in a separate window. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of LaTeX formulas included as images in -# the HTML documentation. When you change the font size after a successful -# doxygen run you need to manually remove any form_*.png images from the HTML -# output directory to force them to be regenerated. -# Minimum value: 8, maximum value: 50, default value: 10. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX -# installed or if you want to formulas look prettier in the HTML output. When -# enabled you may also need to install MathJax separately and configure the path -# to it using the MATHJAX_RELPATH option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -USE_MATHJAX = NO - -# When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. -# Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. -# The default value is: HTML-CSS. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_FORMAT = HTML-CSS - -# When MathJax is enabled you need to specify the location relative to the HTML -# output directory using the MATHJAX_RELPATH option. The destination directory -# should contain the MathJax.js script. For instance, if the mathjax directory -# is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax -# Content Delivery Network so you can quickly see the result without installing -# MathJax. However, it is strongly recommended to install a local copy of -# MathJax from http://www.mathjax.org before deployment. -# The default value is: http://cdn.mathjax.org/mathjax/latest. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest - -# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -# extension names that should be enabled during MathJax rendering. For example -# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_EXTENSIONS = - -# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces -# of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -# example see the documentation. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_CODEFILE = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for -# the HTML output. The underlying search engine uses javascript and DHTML and -# should work on any modern browser. Note that when using HTML help -# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) -# there is already a search function so this one should typically be disabled. -# For large projects the javascript based search engine can be slow, then -# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to -# search using the keyboard; to jump to the search box use + S -# (what the is depends on the OS and browser, but it is typically -# , /
-
-
- - - - - \ No newline at end of file diff --git a/Docs/doxygen/header-awsdocs.html b/Docs/doxygen/header-awsdocs.html deleted file mode 100644 index 7b6ecd9df9..0000000000 --- a/Docs/doxygen/header-awsdocs.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - TOPIC_TITLE_PLACEHOLDER - - - - - - - - - - - - - - - - - - - - - - -
- -
    -
-
-
-
-
-
Lumberyard
- -
C++ API Reference (Version API_VERSION_PLACEHOLDER)
-
-
-
-
-
-
- -
-
-
-
-
-
\ No newline at end of file diff --git a/Docs/html/css/awsdocs.css b/Docs/html/css/awsdocs.css deleted file mode 100644 index 8a4a35c150..0000000000 --- a/Docs/html/css/awsdocs.css +++ /dev/null @@ -1,1332 +0,0 @@ -/* Global vars */ -/* fonts */ -/* lines */ -/* spacing */ -/* base */ -/* ------------------ AWS Marketing Top Nav Styles: TO BE REMOVED ------------------ */ -/* ------------------ START AWS Marketing Top Nav Mockup ------------------ */ -/* -/* These rules style the placeholder top nav, to be replaced by styles provided -/* by PartsService team when we integrate their top nav. -/* -/* Additional styles for the language selector and the top nav flyout menu are -/* are at the end of jquery-ui.theme.css. -/* -/* ------------------------------------------------------------------------ */ -.aws-nav-header { - position: relative; - width: 100%; - height: 68px; - border-bottom: 1px solid #ccc; - font-size: 14px; - background-color: #f7f7f7; - -moz-box-shadow: #e6e6e6 0 1px 3px; - -webkit-box-shadow: #e6e6e6 0 1px 3px; - box-shadow: #e6e6e6 0 1px 3px; - z-index: 6000; } - -.aws-nav-header .aws-nav-header-left { - float: left; } - -.aws-nav-header-left .aws-nav-flyout-trigger { - position: relative; - float: left; - display: block; - height: 43px; - margin: 0; - padding: 25px 22px 0 53px; - border-right: 1px solid #e2e2e2; - line-height: 1.9; - text-align: center; - font-size: 14px; - font-family: "HelveticaNeueBold", "Helvetica", Helvetica, Arial, sans-serif; - font-weight: 800; - text-shadow: rgba(255, 255, 255, 0.7) 0 1px 0; - cursor: pointer; - outline: 0; - -webkit-user-select: none; - -webkit-font-smoothing: antialiased; } - -.aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger::before { - content: ''; - position: absolute; - top: 0; - right: 0; - display: block; - width: 1px; - height: 67px; - border-right: 1px solid white; } - -.aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger::after { - content: ''; - position: absolute; - top: 0; - right: -2px; - display: block; - width: 1px; - height: 67px; - border-right: 1px solid white; } - -.no-touch .aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger::after { - border-right: 1px solid #fefefe; } - -.aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger .fa-bars { - position: absolute; - top: 19px; - left: 22px; - display: block; - width: 21px; - height: 35px; - margin: 0; - padding: 0; - line-height: 1.4; - font-family: FontAwesome; - font-style: normal; - font-size: 25px; } - -.aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger:hover, .aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger.active { - color: #333333; } - -.aws-nav-header .aws-nav-header-left .aws-nav-flyout-trigger.active { - color: #e47911; } - -.aws-nav-header .aws-nav-header-left .aws-nav-logo { - float: left; - width: 105px; - margin: 14px 0 0 20px; } - -.aws-nav-header .aws-nav-header-left .aws-nav-logo a { - display: block; } - -.aws-nav-header .aws-nav-header-left .aws-nav-logo span { - display: block; - width: 105px; - height: 39px; - border: 0; - background: transparent url("../images/aws_logo_105x39.png") no-repeat scroll 0 0; - overflow: hidden; } - -.aws-nav-header .aws-nav-header-left .aws-nav-logo span:before { - content: ''; - display: block; - width: 0; - height: 150%; } - -.aws-nav-header .aws-nav-header-right { - position: absolute; - top: 1px; - right: 0; - height: 66px; - padding-right: 30px; - background-color: #f7f7f7; - z-index: 6100; } - -.aws-nav-header .aws-nav-header-right .aws-nav-popover-trigger { - float: right; - margin-top: 17px; } - -.aws-nav-header .aws-nav-header-right .aws-nav-cta-button-outer { - float: right; } - -.aws-nav-header .aws-nav-header-right .aws-nav-button { - display: inline-block; - margin: 17px 0 0 15px; - padding: 7px 16px 5px; - border: 1px solid; - border-color: #be952c #a68226 #9b7924; - line-height: 1.4; - vertical-align: middle; - text-align: center; - font-size: 1em; - font-family: "HelveticaNeueBold", "Helvetica", Helvetica, Arial, sans-serif; - font-weight: 500; - text-shadow: rbga(255, 255, 255, 0.8) 0 1px 0; - text-decoration: none !important; - background: #eeba37; - background-size: 100%; - background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fee6b0), color-stop(100%, #eeba37)); - background-image: -moz-linear-gradient(#fee6b0 0%, #eeba37 100%); - background-image: -webkit-linear-gradient(#fee6b0 0%, #eeba37 100%); - background-image: linear-gradient(#fee6b0 0%, #eeba37 100%); - filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#fee6b0', endColorstr='#eeba37'); - -moz-box-shadow: rgba(255, 255, 255, 0.6) 0 1px 0 inset; - -webkit-box-shadow: rgba(255, 255, 255, 0.6) 0 1px 0 inset; - box-shadow: rgba(255, 255, 255, 0.6) 0 1px 0 inset; - border-radius: 3px; - cursor: pointer; - -webkit-font-smoothing: antialiased; } - -#aws-nav-cta-button { - color: #333; - font-weight: 600; - font-size: 14px; } - -a#aws-nav-cta-button:hover { - text-decoration: none; - background: #eeba37; - background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fedb7f), color-stop(100%, #ffc20d)); - background-image: -moz-linear-gradient(#fedb7f 0%, #ffc20d 100%); - background-image: -webkit-linear-gradient(#fedb7f 0%, #ffc20d 100%); - background-image: linear-gradient(#fedb7f 0%, #ffc20d 100%); } - -div#aws-nav.aws-nav-header span { - font-size: 14px; } - -#aws-nav { - position: static; - top: 0px; } - -#aws-nav-flyout-trigger { - display: none; } - -/*--------------------------------------------------------------------------------------------------------------------------*/ -/* media queries / breakpoints */ -/*--------------------------------------------------------------------------------------------------------------------------*/ -@media all and (max-width: 600px) { - .aws-nav-cta-button-outer { - display: none; } } -@media all and (min-width: 1025px) { - #aws-nav-flyout-trigger { - display: block; } - - #aws-nav { - position: fixed; - /*Header is sticky only if flyout is visible*/ - top: 0px; } } -/*Removing flyout trigger on ipad landscape view*/ -@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) and (-webkit-min-device-pixel-ratio: 1) { - #aws-nav-flyout-trigger { - display: none; } } -/* feedback pages */ -/*-------------------- basic html elements and classes --------------------*/ -#fbheading { - margin-top: 69px; - overflow: hidden; - padding-left: 5px; } - -#fbheading h2 { - padding-top: 0px; } - -/*-------------------- basic html elements and classes --------------------*/ -html, -body { - margin: 0; - padding: 0; - background-color: #ffffff; } - -body, -div { - font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; - font-size: 16px; - color: #444444; } - -p { - font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; - color: #444444; - font-size: 16px; - line-height: 1.5em; - } - -p.title { - margin-bottom: 12px; } - -#language-filter { - float: right; - margin-top: 5px; } - -li, dt a, dt span { - font-size: 16px; - line-height: 1.5em; } - -/*------------------ Headings -------------------*/ -h1, h2, h3 { - font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; - color: #444444; } - -h1 { - font-size: 20px; - font-weight: bold; - padding-top: 12px; } - -h2 { - font-size: 18px; - font-weight: bold; - padding-top: 0.5em; - margin: 1em 0; - color: #cc6600; - } - -h3 { - font-size: 16px; - font-weight: bold; - color: #007697; } - -h3.orange { - color: #cc6600; } - -h4 { - color: #cc6600; - font-size: 16px; - font-style: italic; - font-weight: bold; } - -h5 { - color: #333333; - font-size: 16px; - font-style: italic; - font-weight: bold; } - -img { - border-style: hidden; - border-width: 0px 0px 0px 0px; - border-color: #ffffff; - /* white */ - padding: 0px 0px 0px 0px; - margin: 0px 0px 0px 0px; } - -.topictitle { - font-size: 24px; - font-weight: bold; - color: #e47911; - padding: 0 0 10px 0; } - -/*------------ Banners -----------------*/ -div#divRegionDisclaimer { - border: solid #ccc; - margin: 20px 0px; - border-width: 1px 1px 1px 5px; - padding: 20px; - border-color: #cc6600; } - -div#SEARegionDisclaimer { - border-top: 1px solid #ccc; - margin-top: 6px; - padding-top: 10px; - padding-bottom: 10px; - padding-left: 5px; - font-weight: bold; - font-style: italic; - font-size: 16px; - background-color: #e47911; - color: white; - vertical-align: middle; } - -div#SEARegionDisclaimer a.SEADisclaimerLink { - color: white !important; } - -div#DCARegionDisclaimer { - border-top: 1px solid #ccc; - margin-top: 6px; - padding-top: 10px; - padding-bottom: 10px; - padding-left: 5px; - font-weight: normal; - background-color: #009900; - color: white; - vertical-align: middle; } - -div#DCARegionDisclaimer a.DCADisclaimerLink { - color: white !important; } - -#awsdocs-banner-info { - border: solid #ccc; - margin: 20px 0px; - border-width: 1px 1px 1px 5px; - padding: 20px; - border-color: #cc6600; } - -/*-------------------- ids --------------------*/ -#content-container { - margin-top: 69px; - overflow: hidden; } - -#doc-conventions { - float: left; - padding-top: 10px; - font-size: 12px; } - -#feedback-feedback-button { - display: inline; - padding-left: 10px; } - -#feedback-feedback-button .awstoc.btn.btn-default::before { - content: "\f003"; - font-family: "FontAwesome"; - margin: 0 5px 0 0; } - -#feedback-message { - display: none; - margin-right: 5px; } - -div#feedback div { - font-size: 12px; } - -#feedback-yesno-buttons { - display: none; } - -#finegrainedSearch { - padding-top: 1em; - padding-bottom: 1em; - border-bottom: 1px solid #ccc; - border-right: none; - display: block; } - -#footer { - padding: 5px 10px 10px 10px; - width: 100%; - border-top: 1px solid #DDD; - background-color: #F7F7F7; - bottom: 0px; - position: fixed; - height: 25px; } - -#footer.shortFooter { - width: 35px; - border-right: 1px solid rgba(221, 221, 221, 0.5); - border-top: 1px solid rgba(221, 221, 221, 0.5); - padding: 5px 0px 10px 10px; - background-color: rgba(247, 247, 247, 0.5); } - -#footer.shortFooter > #footer-right { - display: none; } - -#footer.shortFooter > #footer-left { - display: none; } - -#footer.shortFooter_ht { - width: 35px; - height: 50px; - border-right: 1px solid rgba(221, 221, 221, 0.5); - border-top: 1px solid rgba(221, 221, 221, 0.5); - padding: 5px 0px 10px 10px; - background-color: rgba(247, 247, 247, 0.5); } - -#footer.shortFooter_ht > #footer-right { - display: none; } - -#footer.shortFooter_ht > #footer-left { - display: none; } - -#footer-left { - float: left; - padding: 5px; - display: none; - font-size: 12px; } - -#copyright-main-footer { - display: block; - float: left; - padding-top: 10px; - padding-left: 5px; - font-size: 12px; } - -#footer-right { - padding-right: 20px; - float: right; } - -#footer_short_fb { - display: block; - padding-bottom: 5px; - padding-left: 5px; } - -#footer_short_fb:hover { - cursor: pointer; - cursor: hand; } - -#footer_short_fb.hide { - display: none; } - -#footer_toggle { - float: left; - display: inline; - padding-left: 5px; } - -#footer_toggle:hover { - cursor: hand; - cursor: pointer; } - -#footer_toggle_img { - padding-right: 20px; - padding-top: 5px; } - -#footer_toggle_img_collapse { - padding-top: 5px; - padding-right: 20px; } - -#footer_toggle_img.hide { - display: none; } - -#footer_toggle_img_collapse.hide { - display: none; } - -#forums { - padding-right: 30px; - display: none; } - -#guides { - font-size: 16px; - color: #333333; - display: inline; - height: 30px; } - -#guide-info { - font-size: 12px; - padding-top: .5em; } - -#insideSearch { - padding-bottom: 10px; } - -#left-column { - background-color: #ffffff; } - -#left-col-top-content { - padding-top: 20px; - padding-bottom: 12px; - border-bottom: 1px solid #ccc; - border-right: none; - margin-bottom: 3px; } - -#left-col-header { - padding-left: 40px; - padding-right: 20px; } - -#main { - width: 100%; - padding-top: 10px; - padding-bottom: 56px; - float: left; - background-color: #ffffff; } - -#main-column { - position: relative; } - -#main-col-body { - clear: both; - border-bottom: 1px solid #ccc; } - -#main-col-footer { - display: inline; - font-size: 14px; } - -#main-content { - padding-left: 40px; - padding-right: 20px; } - -#next { - float: right; - padding-top: 10px; - font-size: 12px; } - -#next a:last-child { - padding-left: 8px; } - -#pagetoc { - background-color: #F7F7F7; - padding: 0 0 10px 5px; - margin-right: 20px; - margin-bottom: 130px; - word-wrap: break-word; } - -#right-content-wrapper { - width: 225px; - position: fixed; - overflow: auto; - height: 100%; } - -#right-col-header { - padding-top: 10px; - padding-bottom: 50px; - font-size: 14px; } - -#right-expanded { - display: none; - width: 25%; - float: right; - height: 100%; } - -div#left-col-top-content div#search { - margin-left: 20px; - float: right; - display: inline; - cursor: pointer; - font-size: 12px; } - -#search-button { - position: relative; - top: 5px; } - -#search-form { - font-size: .500em; } - -#search-query { - width: 95%; - width: calc(100% - 24px); - padding: 2px 0; - border: thin solid darkgray; } - -#search-select { - width: 100%; - padding: 2px 0; } - -#service-name { - font-size: 18px; - font-weight: bold; - color: #333333; - display: inline; } - -#toc { - padding-left: 40px; - padding-right: 20px; - margin-bottom: 25px; } - -#toc.open { - display: block; } - -#toggle-contents { - display: block; } - -div.ui-resizable-e { - right: 0px; } - -/*-------------------- breadcrumb classes --------------------*/ -div.breadcrumb { - display: inline; - font-size: 12px; } - -div.breadcrumb a { - font-size: 12px; } - -div.breadcrumb.current { - font-weight: bold; } - -/*-------------------- various content classes --------------------*/ -.formpara { - font-weight: bold; } - -.listitem p { - margin: 0px; } - -.mediaobject img { - margin-bottom: 1em; - max-width: 100%; } - -div.mediaobject { - max-width: 100%; } - -.replaceable { - color: #FF0000; - font-style: italic; } - -/*-------------------- buttons --------------------*/ -.btn { - border-radius: 4px; - color: #222; - cursor: pointer; - display: inline-block; - font-size: 1.0em; - font-weight: 700; - margin-right: 3px; - margin-bottom: 1rem; - padding: 5px 10px; - text-align: center; - text-decoration: none; } - -.btn-default { - border-style: solid; - border-right: 1px solid #C5C5C5; - border-color: #DEDEDE #C5C5C5 #C5C5C5; - -moz-border-top-colors: none; - -moz-border-right-colors: none; - -moz-border-bottom-colors: none; - -moz-border-left-colors: none; - border-image: none; - color: #444; - background-color: #DEDEDE; - background-image: linear-gradient(white, #dedede); - border-width: 1px; } - -.btn-default:visited { - color: #444; } - -.btn-gold:visited { - color: #333333; } - -.btn-gold { - border-style: solid; - border-right: 1px solid #C5C5C5; - border-color: #BE952C #A68226 #9B7924; - -moz-border-top-colors: none; - -moz-border-right-colors: none; - -moz-border-bottom-colors: none; - -moz-border-left-colors: none; - border-image: none; - color: #333333; - background-color: #EEBA37; - background-image: linear-gradient(#fee6b0, #eeba37); - border-width: 1px; } - -.btn.btn-default:hover { - background-image: none; - color: #444; - text-decoration: none; } - -.btn.btn-gold:hover { - background-image: none; - color: #333333; - text-decoration: none; } - -/*-------------------- main toc (left) --------------------*/ -ul.awstoc { - padding: 0px 15px; - margin: 0; - padding-left: 15px; - background-color: #fff; - list-style: none; } - -li.awstoc { - padding-top: 5px; - margin-bottom: 10px; - cursor: pointer; - background-color: #fff; - font: normal 11px "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; } - -li.awstoc.leaf { - cursor: auto; } - -li.awstoc.opened:before { - font-family: 'FontAwesome'; - content: "\f146"; - margin: 0 5px 0 -15px; - color: #e47911; } - -li.awstoc.closed:before { - font-family: 'FontAwesome'; - content: "\f0fe"; - margin: 0 5px 0 -15px; - color: #e47911; } - -li.awstoc.leaf:before { - font-family: 'FontAwesome'; - content: "\f096"; - margin: 0 5px 0 -15px; - color: #e47911; } - -#toc ul a.awstoc { - margin: 3px 0px; - display: inline; - cursor: pointer; } - -#toc ul li.awstoc { - font-size: 14px; } - -a.awstoc { - text-decoration: none; } - -a.awstoc.selected { - color: black; - font-weight: bold; - cursor: default; - outline: none; - text-decoration: none; } - -.awstoc ::-moz-selection { - color: #036; - text-decoration: none; - font-weight: bold; } - -/*-------------------- page toc (right) --------------------*/ -ul.pagetoc { - padding: 0px 15px; } - -#pagetoc ul li.pagetoc { - list-style: none; } - -#pagetoc ul a.pagetoc.selected { - border-left: 2px solid #666; - padding-left: 8px; - margin-left: -10px; } - -#pagetoc ul a.pagetoc:hover { - border-left: 2px solid #ccc; - margin-left: -10px; - padding-left: 8px; } - -#pagetoc ul a.pagetoc { - margin: 3px 0px; - display: block; - cursor: pointer; } - -#pagetoc ul li.pagetoc { - font-size: 14px; } - -ul.pagetoc { - margin: 0; - padding-left: 15px; } - -li.pagetoc { - padding-top: 5px; - cursor: pointer; - font: normal 11px "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; } - -a.pagetoc { - text-decoration: none; } - -a.pagetoc.selected { - color: black; - font-weight: bold; - cursor: default; - outline: none; - text-decoration: none; } - -/*-------------------- anchors --------------------*/ -a { - color: #004B91; - text-decoration: underline; } - -:target { - padding-top: 69px; } - -a:visited { - color: #963; } - -a:hover { - color: #e47911; - text-decoration: underline; } - -a, p a, li a, dt a { - text-decoration: none; - color: #0087CC; } - -a:hover, p a:hover, li a:hover, dt a:hover { - text-decoration: underline; - color: #FF7B29; } - -pre a { - text-decoration: none; } - -table a { - font-size: 16px; } - -/*-------------------- code, notes, examples, formatting, etc. --------------------*/ -pre { - font-size: 14px; - font-weight: normal; - font-family: "Courier New", Courier, mono; - background-color: #f0f0f0; - border: 1px solid #e1e1e8; - border-radius: 3px; - color: #444; - padding: .5em; - line-height: normal; } - -pre.programlisting { - overflow: auto; } - -pre .replaceable span.str, -pre .replaceable span.com, -pre .replaceable span.pln, -pre .replaceable span.pun { - color: #F00; } - -pre.programlisting span { - font-family: "Courier New", Courier, mono; } - -code { - font-family: "Courier New", Courier, mono; - overflow: auto; } - -/** admonitions **/ -div.aws-note { - margin: 0.5em 2.7em 1em; - padding: 0; } - -div.aws-note p { - margin: 0.5em 0 0; - padding: 0; } - -div.aws-note p.aws-note { - font-weight: bold; } - -.guilabel { - font-weight: bold; } - -span.underline { - text-decoration: underline; } - -.topcom { - font-weight: bold; } - -/*-------------------- table styles --------------------*/ -table { - margin-bottom: 10px; - border-collapse: collapse; } - -table p { - font-size: 16px; } - -td p:first-child { - margin-top: 0px; } - -td p:last-child { - margin-bottom: 0px; } - -td ul:first-child { - margin-top: 0px; - /* new 8/22/07 */ } - -td ol:first-child { - margin-top: 0px; - /* new 8/22/07 */ } - -div.table { - position: relative; } - -div.informaltable { - position: relative; } - -.table-expand-icon { - position: absolute; - right: -20px; - font-size: 24px; - background: #cccccc; - float: right; - bottom: 0; - cursor: pointer; } - -.table-contents table { - border-top: 1px solid #cccccc; - /* medium gray */ - border-left: 1px solid #cccccc; - /* medium gray */ - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.table-contents td { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-bottom: 1px solid #cccccc; - /* medium gray */ - border-right: 1px solid #cccccc; - /* medium gray */ - border-left: 0px; - border-top: 0px; - vertical-align: top; } - -.table-contents th { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-bottom: 1px solid #cccccc; - /* medium gray */ - border-right: 1px solid #cccccc; - /* medium gray */ - border-left: 0px; - border-top: 0px; - vertical-align: top; - background-color: #eeeeee; - /* light gray */ - color: #333333; - /* Dark gray */ - font-size: 16px; - font-weight: bold; - text-align: left; } - -/* div around tables to allow scrolling for long nonbreaking strings */ -div.informaltable-contents { - width: 100%; - overflow-x: auto; - -ms-overflow-style: -ms-autohiding-scrollbar; - -webkit-overflow-scrolling: touch; } - -div.table-contents { - width: 100%; - overflow-x: auto; - -ms-overflow-style: -ms-autohiding-scrollbar; - -webkit-overflow-scrolling: touch; } - -/* borderless tables */ -.simplesect table { - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.simplesect td { - font-size: 16px; - padding: 0px 0px 0px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; } - -.informaltable table { - border-top: 1px solid #cccccc; - /* medium gray */ - border-left: 1px solid #cccccc; - /* medium gray */ - border-bottom: 1px solid #cccccc; - /* medium gray */ - border-right: 1px solid #cccccc; - /* medium gray */ - border-spacing: 0px; } - -.informaltable td { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-top: 1px solid #cccccc; - /* medium gray */ - border-left: 1px solid #cccccc; - /* medium gray */ - border-bottom: 1px solid #cccccc; - /* medium gray */ - border-right: 1px solid #cccccc; - /* medium gray */ - vertical-align: top; } - -.informaltable th { - padding: 5px 5px 5px 5px; - border-right: 1px solid #cccccc; - /* medium gray */ - border-left: 1px solid #cccccc; - /* medium gray */ - border-top: 1px solid #cccccc; - /* medium gray */ - border-bottom: 1px solid #cccccc; - /* medium gray */ - vertical-align: top; - background-color: #eeeeee; - /* light gray */ - color: #333333; - /* Dark gray */ - font-size: 16px; - font-weight: bold; - text-align: left; } - -/*--------------------------------------------------------------------------------------------------------------------------*/ -/* media queries / breakpoints */ -/*--------------------------------------------------------------------------------------------------------------------------*/ -/* Allow devices down to 320 pixels wide. Below that, no promises. */ -@media all and (max-width: 319px) { - #search-query { - padding: 2px 0; } - - #search-select { - width: 100%; - padding: 2px 0; } - - table { - border: 0; - white-space: pre-wrap; - white-space: -moz-pre-wrap; - word-wrap: break-word; } - - table thead { - display: none; } - - table col { - height: 0px; - display: none; } - - table col.c1 { - height: 100%; - display: table-column; } - - table tr { - margin-bottom: 10px; - border-bottom: 2px solid #ddd; } - - table td { - display: block; - text-align: right; - border-bottom: 1px solid #ccc; } - - table td:last-child { - border-bottom: 0; } - - table td:before { - content: attr(data-label); - float: left; - text-transform: uppercase; - font-weight: bold; } } -@media all and (min-width: 450px) { - #feedback-yesno-buttons, - #feedback-message { - display: inline; } } -/* -@media all and (min-width: 768px) { - #left-col-top-content { - padding-bottom: 12px; - } -} -*/ -@media all and (min-width: 900px) { - #footer-left { - display: inline; } - - #footer.shortFooter > #footer-left { - display: none; } - - #copyright-main-footer { - display: none; } } -@media all and (min-width: 1025px) { - #left-column { - position: fixed; - float: left; - width: 350px; - height: 100%; - height: calc(100% - 110px); - overflow-y: auto; - max-width: 900px; - min-width: 100px; } - - #left-col-header { - padding-right: 30px; } - - #main-column { - margin-left: 350px; } - - #main-content { - padding: 0 30px 0 30px; - border-left-width: 1px; - border-left-style: solid; - border-left-color: #ccc; } - - #toc { - display: block; - padding-right: 30px; } - - #toggle-contents { - display: none; } } -@media all and (min-width: 1100px) { - #forums { - display: inline; } } -@media all and (min-width: 1301px) { - #content-container { - max-width: 1600px; - margin-left: auto; - margin-right: auto; } - - #main { - width: 75%; } - - #right-expanded { - display: block; } } -@media all and (max-width: 1024px) { - #language-filter { - float: none; - margin-top: 5px; } - - #breadcrumbs { - display: none; } - - #toggle-contents { - top: 7px; - font-size: 16px; - line-height: 1.6em; - border: 1px solid #ccc; - border-radius: 5px; - background-color: #fff; - text-align: center; - cursor: pointer; } - - #content-button { - width: 30px; - margin-left: auto; - margin-right: auto; - display: inline; - float: right; } - - #toc { - display: none; } - - #toc > ul.awstoc > li.awstoc { - border-bottom: 1px solid #ddd; } - - #main-column { - margin-left: 0px !important; } - - #left-column { - position: relative; - float: none; - width: auto !important; - max-width: none; - min-width: none; } - - #content-container { - margin-top: 0px; } } -/*Media query for ipad and ipad mini's landscape view*/ -@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) and (-webkit-min-device-pixel-ratio: 1) { - #language-filter { - float: none; - margin-top: 5px; } - - #breadcrumbs { - display: none; } - - #toggle-contents { - top: 7px; - font-size: 16px; - line-height: 1.6em; - border: 1px solid #ccc; - border-radius: 5px; - background-color: #fff; - text-align: center; - cursor: pointer; - display: block; } - - #content-button { - width: 30px; - margin-left: auto; - margin-right: auto; - display: inline; - float: right; } - - #toc { - display: none; } - - #toc > ul.awstoc > li.awstoc { - border-bottom: 1px solid #ddd; } } -@media print { - #aws-nav, #left-column, #language-filter, #breadcrumbs, #right-expanded, #forums, #footer-right { - display: none; } - - #content-container { - margin-top: 0px; - width: 100%; } - - #footer { - position: relative; } - - #footer-left { - display: inline; - position: static; } - - #copyright-main-footer { - display: none; } } -/*--------------------------------------------------------------------------------------------------------------------------*/ -/* Admonition Tables */ -/* ATTENTION! These must be the very last styles in the entire style sheet, so that they can */ -/* override all preceding table formattings */ -/*--------------------------------------------------------------------------------------------------------------------------*/ -.caution table { - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.caution td { - font-size: 16px; - padding: 0px 0px 0px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; } - -.caution th { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; - background-color: #fff; - font-weight: bold; - text-align: left; } - -.important table { - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.important td { - font-size: 16px; - padding: 0px 0px 0px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; } - -.important th { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; - background-color: #fff; - font-weight: bold; - text-align: left; } - -.note table { - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.note td { - font-size: 16px; - padding: 0px 0px 0px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; } - -.note th { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; - background-color: #fff; - font-weight: bold; - text-align: left; } - -.tip table { - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; } - -.tip td { - font-size: 16px; - padding: 0px 0px 0px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; } - -.tip th { - font-size: 16px; - padding: 5px 5px 5px 5px; - border-top: 0px; - border-left: 0px; - border-bottom: 0px; - border-right: 0px; - border-spacing: 0px; - vertical-align: top; - background-color: #fff; - font-weight: bold; - text-align: left; } diff --git a/Docs/html/css/colorbox.css b/Docs/html/css/colorbox.css deleted file mode 100644 index 889f20fea0..0000000000 --- a/Docs/html/css/colorbox.css +++ /dev/null @@ -1,58 +0,0 @@ -/* - Colorbox Core Style: - The following CSS is consistent between example themes and should not be altered. -*/ -#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;} -#cboxWrapper {max-width:none;} -#cboxOverlay{position:fixed; width:100%; height:100%;} -#cboxMiddleLeft, #cboxBottomLeft{clear:left;} -#cboxContent{position:relative;} -#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;} -#cboxTitle{margin:0;} -#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;} -#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;} -.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;} -.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;} -#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;} - -/* - User Style: - Change the following styles to modify the appearance of Colorbox. They are - ordered & tabbed in a way that represents the nesting of the generated HTML. -*/ -#cboxOverlay{background:#000; opacity: 0.9; filter: alpha(opacity = 90);} -#colorbox{outline:0;} - #cboxTopLeft{width:14px; height:14px; background:url(images/controls.png) no-repeat 0 0;} - #cboxTopCenter{height:14px; background:url(images/border.png) repeat-x top left;} - #cboxTopRight{width:14px; height:14px; background:url(images/controls.png) no-repeat -36px 0;} - #cboxBottomLeft{width:14px; height:43px; background:url(images/controls.png) no-repeat 0 -32px;} - #cboxBottomCenter{height:43px; background:url(images/border.png) repeat-x bottom left;} - #cboxBottomRight{width:14px; height:43px; background:url(images/controls.png) no-repeat -36px -32px;} - #cboxMiddleLeft{width:14px; background:url(images/controls.png) repeat-y -175px 0;} - #cboxMiddleRight{width:14px; background:url(images/controls.png) repeat-y -211px 0;} - #cboxContent{background:#fff; overflow:visible;} - .cboxIframe{background:#fff;} - #cboxError{padding:50px; border:1px solid #ccc;} - #cboxLoadedContent{margin-bottom:5px;} - #cboxLoadingOverlay{background:url(images/loading_background.png) no-repeat center center;} - #cboxLoadingGraphic{background:url(images/loading.gif) no-repeat center center;} - #cboxTitle{position:absolute; bottom:-25px; left:0; text-align:center; width:100%; font-weight:bold; color:#7C7C7C;} - #cboxCurrent{position:absolute; bottom:-25px; left:58px; font-weight:bold; color:#7C7C7C;} - - /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */ - #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; position:absolute; bottom:-29px; background:url(images/controls.png) no-repeat 0px 0px; width:23px; height:23px; text-indent:-9999px;} - - /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */ - #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;} - - #cboxPrevious{left:0px; background-position: -51px -25px;} - #cboxPrevious:hover{background-position:-51px 0px;} - #cboxNext{left:27px; background-position:-75px -25px;} - #cboxNext:hover{background-position:-75px 0px;} - #cboxClose{right:0; background-position:-100px -25px;} - #cboxClose:hover{background-position:-100px 0px;} - - .cboxSlideshow_on #cboxSlideshow{background-position:-125px 0px; right:27px;} - .cboxSlideshow_on #cboxSlideshow:hover{background-position:-150px 0px;} - .cboxSlideshow_off #cboxSlideshow{background-position:-150px -25px; right:27px;} - .cboxSlideshow_off #cboxSlideshow:hover{background-position:-125px 0px;} \ No newline at end of file diff --git a/Docs/html/css/doxygen.css b/Docs/html/css/doxygen.css deleted file mode 100644 index efcce33a4d..0000000000 --- a/Docs/html/css/doxygen.css +++ /dev/null @@ -1,1572 +0,0 @@ -/* The standard CSS for doxygen 1.8.12 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font-size: 21px; - font-weight: bold; - color: #e47911; - padding: 10px 0 35px 0; -} - -h2.groupheader { - border-bottom: 1px solid #879ECB; - color: #354C7B; - font-size: 130%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; - font-size: 100%; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; - font-size: 98%; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -div.textblock a { - color: #3D578C; - font-weight: bold; - text-decoration: none; - font-size: 100%; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 10px; - margin: 4px 8px 11px 2px; - background-color: #FBFCFD; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.3; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line:after { - content:"\000A"; - white-space: pre; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -.lineno { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -div.ah, span.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); -} - -div.classindex ul { - list-style: none; - padding-left: 0; -} - -div.classindex span.ai { - display: inline-block; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -div.contents p { - font-size: 93%; -} - -div.contents p a { - font-size: 93%; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; - width: 100%; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: white; - border: none; - margin: 4px; - padding: 1px 0 0 0px; - font-size: 100%; -} - - -.mdescLeft a, .mdescRight a { - font-size: 100%; -} - -.mdescLeftLandingPage, .mdescRightLandingPage, -.memItemLeftLandingPage, .memItemRightLandingPage { - background-color: white; - border: none; - margin: 4px; - padding: 1px 0 0 0px; - font-size: 100%; -} - -.mdescLeftLandingPage, .mdescRightLandingPage { - padding: 0px 8px 4px 0px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight { - width: 100%; -} - -.memItemRightLandingPage { - width: 100%; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtitle { - padding: 8px; - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - margin-bottom: -1px; - background-image: url('nav_f.png'); - background-repeat: repeat-x; - background-color: #f7fafa; - line-height: 1.25; - font-weight: 300; - float:left; -} - -.permalink -{ - font-size: 65%; - display: inline-block; - vertical-align: middle; -} - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: 400; - margin-left: 6px; -} - -.memname td { - vertical-align: middle; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 1px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-color: white; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -} - -.overload { - font-family: "courier new",courier,monospace; - font-size: 65%; -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 1px 10px 1px 10px; - background-color: #FBFCFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.memdoc li { - font-size: 91%; - padding: 0px 0px 6px 0px; -} - -.textblock li { - font-size: 95%; - padding: 0px 0px 8px 0px; -} - -.textblock li ul li { - font-size: 100%; - padding: 6px 0px 6px 0px; -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #AC5800; - white-space: nowrap; - padding: 0px 0px 0px 0px; -} - -table.params, table.tparams td.paramname td { - padding: 1px 6px 0px 0px; -} - -table.params td.paramname, table.tparams td.paramname { - vertical-align: top; - padding: 1px 10px 0px 0px; -} - -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname, .tparams .paramname { - font-weight: bold; - vertical-align: middle; -} - -.params .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; - padding-top: 2px; - padding-right: 3px; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 1px 6px 11px 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #728DC1; - border-top:1px solid #5373B4; - border-left:1px solid #5373B4; - border-right:1px solid #C4CFE5; - border-bottom:1px solid #C4CFE5; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #9CAFD4; - border-bottom: 1px solid #9CAFD4; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #F7F8FB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #3D578C; -} - -.arrow { - color: #9CAFD4; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #728DC1; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable caption { - caption-side: top; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #A8B8D9; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #A8B8D9; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - font-size: 90%; - color: #253555; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - font-weight: 400; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #A8B8D9; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 10px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:25px; - line-height:25px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #283A5D; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; - font-size: 90%; -} - -.navpath li.navelem a:hover -{ - color:#6884BD; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#364D7C; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -table.classindex -{ - margin: 10px; - white-space: nowrap; - margin-left: 3%; - margin-right: 3%; - width: 94%; - border: 0; - border-spacing: 0; - padding: 0; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: white; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 16px 5px 5px 10px; -} - -dl -{ - padding: 0 0 0 10px; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ -dl.section -{ - margin-left: 0px; - padding-left: 0px; -} - -dl.note -{ - margin-left:0px; - padding-left: 3px; - font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial; - -} - -dl.warning, dl.attention -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00D000; -} - -dl.deprecated -{ - margin-left:-7px; - padding-left: 3px; -} - -dl.todo -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00C0E0; -} - -dl.test -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #3030E0; -} - -dl.bug -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectalign -{ - vertical-align: middle; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #5373B4; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #90A5CE; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#334975; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #F4F6FA; - border: 1px solid #D8DFEE; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 8px 10px 10px; - width: 200px; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #4665A2; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - top { display: none; } - side-nav { display: none; } - nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - diff --git a/Docs/html/css/google-font.css b/Docs/html/css/google-font.css deleted file mode 100644 index 69cb99d42e..0000000000 --- a/Docs/html/css/google-font.css +++ /dev/null @@ -1,12 +0,0 @@ -@font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 400; - src: local('Open Sans'), local('OpenSans'), url(../font/fonts/Open_Sans/OpenSans.woff) format('woff'); -} -@font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 700; - src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../font/fonts/Open_Sans/OpenSans-Bold.woff) format('woff'); -} \ No newline at end of file diff --git a/Docs/html/css/highlight-default.css b/Docs/html/css/highlight-default.css deleted file mode 100644 index 212965cf93..0000000000 --- a/Docs/html/css/highlight-default.css +++ /dev/null @@ -1,160 +0,0 @@ -/* -Original style from softwaremaniacs.org (c) Ivan Sagalaev -*/ - -/* modified by AWSDevDocs team */ - -.hljs { - display: block; - overflow-x: auto; - padding: 0.5em; - background: #f0f0f0; - -webkit-text-size-adjust: none; -} - -.hljs, -.hljs-subst, -.hljs-tag .hljs-title, -.nginx .hljs-title { - color: black; -} - -/*.hljs-string,*/ -.hljs-title, -.hljs-constant, -.hljs-parent, -.hljs-tag .hljs-value, -.hljs-rule .hljs-value, -.hljs-preprocessor, -.hljs-pragma, -.hljs-name, -.haml .hljs-symbol, -.ruby .hljs-symbol, -.ruby .hljs-symbol .hljs-string, -.hljs-template_tag, -.django .hljs-variable, -.smalltalk .hljs-class, -.hljs-addition, -.hljs-flow, -.hljs-stream, -.bash .hljs-variable, -.pf .hljs-variable, -.apache .hljs-tag, -.apache .hljs-cbracket, -.tex .hljs-command, -.tex .hljs-special, -.erlang_repl .hljs-function_or_atom, -.asciidoc .hljs-header, -.markdown .hljs-header, -.coffeescript .hljs-attribute, -.tp .hljs-variable { - color: #800; -} - -.smartquote, -.hljs-comment, -.hljs-annotation, -.diff .hljs-header, -.hljs-chunk, -.asciidoc .hljs-blockquote, -.markdown .hljs-blockquote { - color: #888; -} - -.hljs-string { - color: #006A00; -} - -.hljs-number, -.hljs-date, -.hljs-regexp, -.hljs-literal, -.hljs-hexcolor, -.smalltalk .hljs-symbol, -.smalltalk .hljs-char, -.go .hljs-constant, -.hljs-change, -.lasso .hljs-variable, -.makefile .hljs-variable, -.asciidoc .hljs-bullet, -.markdown .hljs-bullet, -.asciidoc .hljs-link_url, -.markdown .hljs-link_url { - /*color: #080;*/ - color: #000080; -} - -.hljs-label, -.ruby .hljs-string, -.hljs-decorator, -.hljs-filter .hljs-argument, -.hljs-localvars, -.hljs-array, -.hljs-attr_selector, -.hljs-important, -.hljs-pseudo, -.hljs-pi, -.haml .hljs-bullet, -.hljs-doctype, -.hljs-deletion, -.hljs-envvar, -.hljs-shebang, -.apache .hljs-sqbracket, -.nginx .hljs-built_in, -.tex .hljs-formula, -.erlang_repl .hljs-reserved, -.hljs-prompt, -.asciidoc .hljs-link_label, -.markdown .hljs-link_label, -.vhdl .hljs-attribute, -.clojure .hljs-attribute, -.asciidoc .hljs-attribute, -.lasso .hljs-attribute, -.coffeescript .hljs-property, -.hljs-phony { - color: #88f; -} - -.hljs-keyword, -.hljs-id, -.hljs-title, -.hljs-built_in, -.css .hljs-tag, -.hljs-doctag, -.smalltalk .hljs-class, -.hljs-winutils, -.bash .hljs-variable, -.pf .hljs-variable, -.apache .hljs-tag, -.hljs-type, -.hljs-typename, -.tex .hljs-command, -.asciidoc .hljs-strong, -.markdown .hljs-strong, -.hljs-request, -.hljs-status, -.tp .hljs-data, -.tp .hljs-io { - font-weight: bold; -} - -.asciidoc .hljs-emphasis, -.markdown .hljs-emphasis, -.tp .hljs-units { - font-style: italic; -} - -.nginx .hljs-built_in { - font-weight: normal; -} - -.coffeescript .javascript, -.javascript .xml, -.lasso .markup, -.tex .hljs-formula, -.xml .javascript, -.xml .vbscript, -.xml .css, -.xml .hljs-cdata { - opacity: 0.5; -} \ No newline at end of file diff --git a/Docs/html/css/images/border.png b/Docs/html/css/images/border.png deleted file mode 100644 index 0e106031fc..0000000000 --- a/Docs/html/css/images/border.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:24d48b9d1d8ce538d088c98b9a22cd2b48337ee773c30271661dfea7e7ec04db -size 139 diff --git a/Docs/html/css/images/close.png b/Docs/html/css/images/close.png deleted file mode 100644 index 51a9d154c5..0000000000 --- a/Docs/html/css/images/close.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5d62e6c90005bfb71f6abb440f9e4753681cb23bbd5e60477ab6f442d2f0e69c -size 280 diff --git a/Docs/html/css/images/controls.png b/Docs/html/css/images/controls.png deleted file mode 100644 index 41b7ad137a..0000000000 --- a/Docs/html/css/images/controls.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0407411806f2c4be431c65b208fd71c7cdcd38dda5eb0325b2ede7863bda756e -size 2027 diff --git a/Docs/html/css/images/loading.gif b/Docs/html/css/images/loading.gif deleted file mode 100644 index 4445f9fd44..0000000000 --- a/Docs/html/css/images/loading.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:27a69b744b2ab154dcfe222f588a1235cf36f59242407c350370346125d392e0 -size 8685 diff --git a/Docs/html/css/images/loading_background.png b/Docs/html/css/images/loading_background.png deleted file mode 100644 index 1141bc3062..0000000000 --- a/Docs/html/css/images/loading_background.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3c95a8d994224bd35102bbf1201ebe86911a2aab3d081be256eb7cde08165ea1 -size 131 diff --git a/Docs/html/css/images/next.png b/Docs/html/css/images/next.png deleted file mode 100644 index 8340150aae..0000000000 --- a/Docs/html/css/images/next.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:15b869b02c6fbaa8c6c26445a2dd2d9bad80fd27b1409f8179e5dd89dc89d90a -size 1350 diff --git a/Docs/html/css/images/prev.png b/Docs/html/css/images/prev.png deleted file mode 100644 index d0ecb46550..0000000000 --- a/Docs/html/css/images/prev.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7fd9273f20fdb1229c224341271a119020a5eee74ccf6b4605730917c864caf2 -size 1360 diff --git a/Docs/html/css/images/ui-bg_flat_0_aaaaaa_40x100.png b/Docs/html/css/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index ac35171a78..0000000000 --- a/Docs/html/css/images/ui-bg_flat_0_aaaaaa_40x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8fdb0cc519ca98ddd75e52d63c12d76210d9b1c83afc79f6ac20c29662a384cd -size 212 diff --git a/Docs/html/css/images/ui-bg_flat_75_ffffff_40x100.png b/Docs/html/css/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index 5b6379c824..0000000000 --- a/Docs/html/css/images/ui-bg_flat_75_ffffff_40x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9d19f4445beb52c7898b6d5bd6daae9ae097de2ce7040a58de00db97ec32951a -size 208 diff --git a/Docs/html/css/images/ui-bg_glass_55_fbf9ee_1x400.png b/Docs/html/css/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index eb7a6c84d0..0000000000 --- a/Docs/html/css/images/ui-bg_glass_55_fbf9ee_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ff0ddb8dce6068a9a49b7f5f657182a5abf43e71c5ad49a4176f77d77547a46 -size 322 diff --git a/Docs/html/css/images/ui-bg_glass_65_ffffff_1x400.png b/Docs/html/css/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index c4fbd161a8..0000000000 --- a/Docs/html/css/images/ui-bg_glass_65_ffffff_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:06839d6763aaa6c414aacb752fc6fd44bd5c76230f1ee1461cc3537721e56431 -size 207 diff --git a/Docs/html/css/images/ui-bg_glass_75_dadada_1x400.png b/Docs/html/css/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index fec7b22a61..0000000000 --- a/Docs/html/css/images/ui-bg_glass_75_dadada_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:367a584f7a6508dd92838dd49d1988f291e9b92f13826eb79a46e0b9807a0def -size 260 diff --git a/Docs/html/css/images/ui-bg_glass_75_e6e6e6_1x400.png b/Docs/html/css/images/ui-bg_glass_75_e6e6e6_1x400.png deleted file mode 100644 index ef28bb4808..0000000000 --- a/Docs/html/css/images/ui-bg_glass_75_e6e6e6_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69cbb5f178f417a3bb8af29418ef2df8a01218640574df00a523aee691c573ad -size 254 diff --git a/Docs/html/css/images/ui-bg_glass_95_fef1ec_1x400.png b/Docs/html/css/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index cca0d03ade..0000000000 --- a/Docs/html/css/images/ui-bg_glass_95_fef1ec_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cd086ee8637b8416fac528e11ca8815af805e1b6912d96b40c027f58559b6248 -size 324 diff --git a/Docs/html/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/Docs/html/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 785583a192..0000000000 --- a/Docs/html/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dbc12f1348f1fcff3f9c82964cce174d63dee86b1685857f43808b1c78540f13 -size 256 diff --git a/Docs/html/css/images/ui-icons_222222_256x240.png b/Docs/html/css/images/ui-icons_222222_256x240.png deleted file mode 100644 index 6734ec716b..0000000000 --- a/Docs/html/css/images/ui-icons_222222_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:da8e0c644fe264852262118711a1350039deb064c145dbb4a9f7e66399c2513c -size 4439 diff --git a/Docs/html/css/images/ui-icons_2e83ff_256x240.png b/Docs/html/css/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index 5e24bb8fa8..0000000000 --- a/Docs/html/css/images/ui-icons_2e83ff_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b7501305e204cbb0d49adb95466e8e4109571c3b54873f0e164cbcf55f663c32 -size 4439 diff --git a/Docs/html/css/images/ui-icons_454545_256x240.png b/Docs/html/css/images/ui-icons_454545_256x240.png deleted file mode 100644 index 74b1b75050..0000000000 --- a/Docs/html/css/images/ui-icons_454545_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1f9541c3287343897cdbf327b7d2b5a79d93ed268f2155f85bf5ed8e258d2eb0 -size 4439 diff --git a/Docs/html/css/images/ui-icons_888888_256x240.png b/Docs/html/css/images/ui-icons_888888_256x240.png deleted file mode 100644 index 87c0fbe760..0000000000 --- a/Docs/html/css/images/ui-icons_888888_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c923b503781f2a15c9bbca7cbcedd01fb04e85c6d125415e8cd9248ec287b791 -size 4439 diff --git a/Docs/html/css/images/ui-icons_E47911_256x240.png b/Docs/html/css/images/ui-icons_E47911_256x240.png deleted file mode 100644 index 24f2c3c95f..0000000000 --- a/Docs/html/css/images/ui-icons_E47911_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6cbb3b5b3bd6088ac3e7e92349b38466f1bcb920abbe560f869d05cda38a8261 -size 4439 diff --git a/Docs/html/css/images/ui-icons_cd0a0a_256x240.png b/Docs/html/css/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index b352c44fed..0000000000 --- a/Docs/html/css/images/ui-icons_cd0a0a_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f8705a03ea0ad35e1c51fa5c744c89d233db3fba5d55d5d7afd33f3032e5c9d7 -size 4439 diff --git a/Docs/html/css/jquery-ui-1.10.0.custom.css b/Docs/html/css/jquery-ui-1.10.0.custom.css deleted file mode 100644 index 4551ec05bc..0000000000 --- a/Docs/html/css/jquery-ui-1.10.0.custom.css +++ /dev/null @@ -1,1174 +0,0 @@ -/*! jQuery UI - v1.10.0 - 2013-02-04 -* http://jqueryui.com -* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px -* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { - display: none; -} -.ui-helper-hidden-accessible { - border: 0; - clip: rect(0 0 0 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; -} -.ui-helper-reset { - margin: 0; - padding: 0; - border: 0; - outline: 0; - line-height: 1.3; - text-decoration: none; - font-size: 100%; - list-style: none; -} -.ui-helper-clearfix:before, -.ui-helper-clearfix:after { - content: ""; - display: table; -} -.ui-helper-clearfix:after { - clear: both; -} -.ui-helper-clearfix { - min-height: 0; /* support: IE7 */ -} -.ui-helper-zfix { - width: 100%; - height: 100%; - top: 0; - left: 0; - position: absolute; - opacity: 0; - filter:Alpha(Opacity=0); -} - -.ui-front { - z-index: 100; -} - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { - cursor: default !important; -} - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - display: block; - text-indent: -99999px; - overflow: hidden; - background-repeat: no-repeat; -} - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; -} -.ui-resizable { - position: relative; -} -.ui-resizable-handle { - position: absolute; - font-size: 0.1px; - display: block; -} -.ui-resizable-disabled .ui-resizable-handle, -.ui-resizable-autohide .ui-resizable-handle { - display: none; -} -.ui-resizable-n { - cursor: n-resize; - height: 7px; - width: 100%; - top: -5px; - left: 0; -} -.ui-resizable-s { - cursor: s-resize; - height: 7px; - width: 100%; - bottom: -5px; - left: 0; -} -.ui-resizable-e { - cursor: e-resize; - width: 7px; - right: -5px; - top: 0; - height: 100%; -} -.ui-resizable-w { - cursor: w-resize; - width: 7px; - left: -5px; - top: 0; - height: 100%; -} -.ui-resizable-se { - cursor: se-resize; - width: 12px; - height: 12px; - right: 1px; - bottom: 1px; -} -.ui-resizable-sw { - cursor: sw-resize; - width: 9px; - height: 9px; - left: -5px; - bottom: -5px; -} -.ui-resizable-nw { - cursor: nw-resize; - width: 9px; - height: 9px; - left: -5px; - top: -5px; -} -.ui-resizable-ne { - cursor: ne-resize; - width: 9px; - height: 9px; - right: -5px; - top: -5px; -} -.ui-selectable-helper { - position: absolute; - z-index: 100; - border: 1px dotted black; -} -.ui-accordion .ui-accordion-header { - display: block; - cursor: pointer; - position: relative; - margin-top: 2px; - padding: .5em .5em .5em .7em; - min-height: 0; /* support: IE7 */ -} -.ui-accordion .ui-accordion-icons { - padding-left: 2.2em; -} -.ui-accordion .ui-accordion-noicons { - padding-left: .7em; -} -.ui-accordion .ui-accordion-icons .ui-accordion-icons { - padding-left: 2.2em; -} -.ui-accordion .ui-accordion-header .ui-accordion-header-icon { - position: absolute; - left: .5em; - top: 50%; - margin-top: -8px; -} -.ui-accordion .ui-accordion-content { - padding: 1em 2.2em; - border-top: 0; - overflow: auto; -} -.ui-autocomplete { - position: absolute; - top: 0; - left: 0; - cursor: default; -} -.ui-button { - display: inline-block; - position: relative; - padding: 0; - line-height: normal; - margin-right: .1em; - cursor: pointer; - vertical-align: middle; - text-align: center; - overflow: visible; /* removes extra width in IE */ -} -.ui-button, -.ui-button:link, -.ui-button:visited, -.ui-button:hover, -.ui-button:active { - text-decoration: none; -} -/* to make room for the icon, a width needs to be set here */ -.ui-button-icon-only { - width: 2.2em; -} -/* button elements seem to need a little more width */ -button.ui-button-icon-only { - width: 2.4em; -} -.ui-button-icons-only { - width: 3.4em; -} -button.ui-button-icons-only { - width: 3.7em; -} - -/* button text element */ -.ui-button .ui-button-text { - display: block; - line-height: normal; -} -.ui-button-text-only .ui-button-text { - padding: .4em 1em; -} -.ui-button-icon-only .ui-button-text, -.ui-button-icons-only .ui-button-text { - padding: .4em; - text-indent: -9999999px; -} -.ui-button-text-icon-primary .ui-button-text, -.ui-button-text-icons .ui-button-text { - padding: .4em 1em .4em 2.1em; -} -.ui-button-text-icon-secondary .ui-button-text, -.ui-button-text-icons .ui-button-text { - padding: .4em 2.1em .4em 1em; -} -.ui-button-text-icons .ui-button-text { - padding-left: 2.1em; - padding-right: 2.1em; -} -/* no icon support for input elements, provide padding by default */ -input.ui-button { - padding: .4em 1em; -} - -/* button icon element(s) */ -.ui-button-icon-only .ui-icon, -.ui-button-text-icon-primary .ui-icon, -.ui-button-text-icon-secondary .ui-icon, -.ui-button-text-icons .ui-icon, -.ui-button-icons-only .ui-icon { - position: absolute; - top: 50%; - margin-top: -8px; -} -.ui-button-icon-only .ui-icon { - left: 50%; - margin-left: -8px; -} -.ui-button-text-icon-primary .ui-button-icon-primary, -.ui-button-text-icons .ui-button-icon-primary, -.ui-button-icons-only .ui-button-icon-primary { - left: .5em; -} -.ui-button-text-icon-secondary .ui-button-icon-secondary, -.ui-button-text-icons .ui-button-icon-secondary, -.ui-button-icons-only .ui-button-icon-secondary { - right: .5em; -} - -/* button sets */ -.ui-buttonset { - margin-right: 7px; -} -.ui-buttonset .ui-button { - margin-left: 0; - margin-right: -.3em; -} - -/* workarounds */ -/* reset extra padding in Firefox, see h5bp.com/l */ -input.ui-button::-moz-focus-inner, -button.ui-button::-moz-focus-inner { - border: 0; - padding: 0; -} -.ui-datepicker { - width: 17em; - padding: .2em .2em 0; - display: none; -} -.ui-datepicker .ui-datepicker-header { - position: relative; - padding: .2em 0; -} -.ui-datepicker .ui-datepicker-prev, -.ui-datepicker .ui-datepicker-next { - position: absolute; - top: 2px; - width: 1.8em; - height: 1.8em; -} -.ui-datepicker .ui-datepicker-prev-hover, -.ui-datepicker .ui-datepicker-next-hover { - top: 1px; -} -.ui-datepicker .ui-datepicker-prev { - left: 2px; -} -.ui-datepicker .ui-datepicker-next { - right: 2px; -} -.ui-datepicker .ui-datepicker-prev-hover { - left: 1px; -} -.ui-datepicker .ui-datepicker-next-hover { - right: 1px; -} -.ui-datepicker .ui-datepicker-prev span, -.ui-datepicker .ui-datepicker-next span { - display: block; - position: absolute; - left: 50%; - margin-left: -8px; - top: 50%; - margin-top: -8px; -} -.ui-datepicker .ui-datepicker-title { - margin: 0 2.3em; - line-height: 1.8em; - text-align: center; -} -.ui-datepicker .ui-datepicker-title select { - font-size: 1em; - margin: 1px 0; -} -.ui-datepicker select.ui-datepicker-month-year { - width: 100%; -} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { - width: 49%; -} -.ui-datepicker table { - width: 100%; - font-size: .9em; - border-collapse: collapse; - margin: 0 0 .4em; -} -.ui-datepicker th { - padding: .7em .3em; - text-align: center; - font-weight: bold; - border: 0; -} -.ui-datepicker td { - border: 0; - padding: 1px; -} -.ui-datepicker td span, -.ui-datepicker td a { - display: block; - padding: .2em; - text-align: right; - text-decoration: none; -} -.ui-datepicker .ui-datepicker-buttonpane { - background-image: none; - margin: .7em 0 0 0; - padding: 0 .2em; - border-left: 0; - border-right: 0; - border-bottom: 0; -} -.ui-datepicker .ui-datepicker-buttonpane button { - float: right; - margin: .5em .2em .4em; - cursor: pointer; - padding: .2em .6em .3em .6em; - width: auto; - overflow: visible; -} -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { - float: left; -} - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { - width: auto; -} -.ui-datepicker-multi .ui-datepicker-group { - float: left; -} -.ui-datepicker-multi .ui-datepicker-group table { - width: 95%; - margin: 0 auto .4em; -} -.ui-datepicker-multi-2 .ui-datepicker-group { - width: 50%; -} -.ui-datepicker-multi-3 .ui-datepicker-group { - width: 33.3%; -} -.ui-datepicker-multi-4 .ui-datepicker-group { - width: 25%; -} -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header, -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { - border-left-width: 0; -} -.ui-datepicker-multi .ui-datepicker-buttonpane { - clear: left; -} -.ui-datepicker-row-break { - clear: both; - width: 100%; - font-size: 0; -} - -/* RTL support */ -.ui-datepicker-rtl { - direction: rtl; -} -.ui-datepicker-rtl .ui-datepicker-prev { - right: 2px; - left: auto; -} -.ui-datepicker-rtl .ui-datepicker-next { - left: 2px; - right: auto; -} -.ui-datepicker-rtl .ui-datepicker-prev:hover { - right: 1px; - left: auto; -} -.ui-datepicker-rtl .ui-datepicker-next:hover { - left: 1px; - right: auto; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane { - clear: right; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane button { - float: left; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current, -.ui-datepicker-rtl .ui-datepicker-group { - float: right; -} -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header, -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { - border-right-width: 0; - border-left-width: 1px; -} -.ui-dialog { - position: absolute; - top: 0; - left: 0; - padding: .2em; - outline: 0; -} -.ui-dialog .ui-dialog-titlebar { - padding: .4em 1em; - position: relative; -} -.ui-dialog .ui-dialog-title { - float: left; - margin: .1em 0; - white-space: nowrap; - width: 90%; - overflow: hidden; - text-overflow: ellipsis; -} -.ui-dialog .ui-dialog-titlebar-close { - position: absolute; - right: .3em; - top: 50%; - width: 21px; - margin: -10px 0 0 0; - padding: 1px; - height: 20px; -} -.ui-dialog .ui-dialog-content { - position: relative; - border: 0; - padding: .5em 1em; - background: none; - overflow: auto; -} -.ui-dialog .ui-dialog-buttonpane { - text-align: left; - border-width: 1px 0 0 0; - background-image: none; - margin-top: .5em; - padding: .3em 1em .5em .4em; -} -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { - float: right; -} -.ui-dialog .ui-dialog-buttonpane button { - margin: .5em .4em .5em 0; - cursor: pointer; -} -.ui-dialog .ui-resizable-se { - width: 12px; - height: 12px; - right: -5px; - bottom: -5px; - background-position: 16px 16px; -} -.ui-draggable .ui-dialog-titlebar { - cursor: move; -} -.ui-menu { - list-style: none; - padding: 2px; - margin: 0; - display: block; - outline: none; -} -.ui-menu .ui-menu { - margin-top: -3px; - position: absolute; -} -.ui-menu .ui-menu-item { - margin: 0; - padding: 0; - width: 100%; -} -.ui-menu .ui-menu-divider { - margin: 5px -2px 5px -2px; - height: 0; - font-size: 0; - line-height: 0; - border-width: 1px 0 0 0; -} -.ui-menu .ui-menu-item a { - text-decoration: none; - display: block; - padding: 2px .4em; - line-height: 1.5; - min-height: 0; /* support: IE7 */ - font-weight: normal; -} -.ui-menu .ui-menu-item a.ui-state-focus, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; -} - -.ui-menu .ui-state-disabled { - font-weight: normal; - margin: .4em 0 .2em; - line-height: 1.5; -} -.ui-menu .ui-state-disabled a { - cursor: default; -} - -/* icon support */ -.ui-menu-icons { - position: relative; -} -.ui-menu-icons .ui-menu-item a { - position: relative; - padding-left: 2em; -} - -/* left-aligned */ -.ui-menu .ui-icon { - position: absolute; - top: .2em; - left: .2em; -} - -/* right-aligned */ -.ui-menu .ui-menu-icon { - position: static; - float: right; -} -.ui-progressbar { - height: 2em; - text-align: left; - overflow: hidden; -} -.ui-progressbar .ui-progressbar-value { - margin: -1px; - height: 100%; -} -.ui-progressbar .ui-progressbar-overlay { - background: url("images/animated-overlay.gif"); - height: 100%; - filter: alpha(opacity=25); - opacity: 0.25; -} -.ui-progressbar-indeterminate .ui-progressbar-value { - background-image: none; -} -.ui-slider { - position: relative; - text-align: left; -} -.ui-slider .ui-slider-handle { - position: absolute; - z-index: 2; - width: 1.2em; - height: 1.2em; - cursor: default; -} -.ui-slider .ui-slider-range { - position: absolute; - z-index: 1; - font-size: .7em; - display: block; - border: 0; - background-position: 0 0; -} - -/* For IE8 - See #6727 */ -.ui-slider.ui-state-disabled .ui-slider-handle, -.ui-slider.ui-state-disabled .ui-slider-range { - filter: inherit; -} - -.ui-slider-horizontal { - height: .8em; -} -.ui-slider-horizontal .ui-slider-handle { - top: -.3em; - margin-left: -.6em; -} -.ui-slider-horizontal .ui-slider-range { - top: 0; - height: 100%; -} -.ui-slider-horizontal .ui-slider-range-min { - left: 0; -} -.ui-slider-horizontal .ui-slider-range-max { - right: 0; -} - -.ui-slider-vertical { - width: .8em; - height: 100px; -} -.ui-slider-vertical .ui-slider-handle { - left: -.3em; - margin-left: 0; - margin-bottom: -.6em; -} -.ui-slider-vertical .ui-slider-range { - left: 0; - width: 100%; -} -.ui-slider-vertical .ui-slider-range-min { - bottom: 0; -} -.ui-slider-vertical .ui-slider-range-max { - top: 0; -} -.ui-spinner { - position: relative; - display: inline-block; - overflow: hidden; - padding: 0; - vertical-align: middle; -} -.ui-spinner-input { - border: none; - background: none; - color: inherit; - padding: 0; - margin: .2em 0; - vertical-align: middle; - margin-left: .4em; - margin-right: 22px; -} -.ui-spinner-button { - width: 16px; - height: 50%; - font-size: .5em; - padding: 0; - margin: 0; - text-align: center; - position: absolute; - cursor: default; - display: block; - overflow: hidden; - right: 0; -} -/* more specificity required here to overide default borders */ -.ui-spinner a.ui-spinner-button { - border-top: none; - border-bottom: none; - border-right: none; -} -/* vertical centre icon */ -.ui-spinner .ui-icon { - position: absolute; - margin-top: -8px; - top: 50%; - left: 0; -} -.ui-spinner-up { - top: 0; -} -.ui-spinner-down { - bottom: 0; -} - -/* TR overrides */ -.ui-spinner .ui-icon-triangle-1-s { - /* need to fix icons sprite */ - background-position: -65px -16px; -} -.ui-tabs { - position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ - padding: .2em; -} -.ui-tabs .ui-tabs-nav { - margin: 0; - padding: .2em .2em 0; -} -.ui-tabs .ui-tabs-nav li { - list-style: none; - float: left; - position: relative; - top: 0; - margin: 1px .2em 0 0; - border-bottom: 0; - padding: 0; - white-space: nowrap; -} -.ui-tabs .ui-tabs-nav li a { - float: left; - padding: .5em 1em; - text-decoration: none; -} -.ui-tabs .ui-tabs-nav li.ui-tabs-active { - margin-bottom: -1px; - padding-bottom: 1px; -} -.ui-tabs .ui-tabs-nav li.ui-tabs-active a, -.ui-tabs .ui-tabs-nav li.ui-state-disabled a, -.ui-tabs .ui-tabs-nav li.ui-tabs-loading a { - cursor: text; -} -.ui-tabs .ui-tabs-nav li a, /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ -.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a { - cursor: pointer; -} -.ui-tabs .ui-tabs-panel { - display: block; - border-width: 0; - padding: 1em 1.4em; - background: none; -} -.ui-tooltip { - padding: 8px; - position: absolute; - z-index: 9999; - max-width: 300px; - -webkit-box-shadow: 0 0 5px #aaa; - box-shadow: 0 0 5px #aaa; -} -body .ui-tooltip { - border-width: 2px; -} - -/* Component containers -----------------------------------*/ -.ui-widget { - font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; - font-size: 1.1em; -} -.ui-widget .ui-widget { - font-size: 1em; -} -.ui-widget input, -.ui-widget select, -.ui-widget textarea, -.ui-widget button { - font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; - font-size: 1em; -} -.ui-widget-content { - border: 1px solid #dddddd; - background: #eeeeee url(images/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x; - color: #333333; -} -.ui-widget-content a { - color: #333333; -} -.ui-widget-header { - border: 1px solid #e78f08; - background: #f6a828 url(images/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x; - color: #ffffff; - font-weight: bold; -} -.ui-widget-header a { - color: #ffffff; -} - -/* Interaction states -----------------------------------*/ -.ui-state-default, -.ui-widget-content .ui-state-default, -.ui-widget-header .ui-state-default { - border: 1px solid #cccccc; - background: #f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; - font-weight: bold; - color: #1c94c4; -} -.ui-state-default a, -.ui-state-default a:link, -.ui-state-default a:visited { - color: #1c94c4; - text-decoration: none; -} -.ui-state-hover, -.ui-widget-content .ui-state-hover, -.ui-widget-header .ui-state-hover, -.ui-state-focus, -.ui-widget-content .ui-state-focus, -.ui-widget-header .ui-state-focus { - border: 1px solid #fbcb09; - background: #fdf5ce url(images/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x; - font-weight: bold; - color: #c77405; -} -.ui-state-hover a, -.ui-state-hover a:hover, -.ui-state-hover a:link, -.ui-state-hover a:visited { - color: #c77405; - text-decoration: none; -} -.ui-state-active, -.ui-widget-content .ui-state-active, -.ui-widget-header .ui-state-active { - border: 1px solid #fbd850; - background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; - font-weight: bold; - color: #eb8f00; -} -.ui-state-active a, -.ui-state-active a:link, -.ui-state-active a:visited { - color: #eb8f00; - text-decoration: none; -} - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, -.ui-widget-content .ui-state-highlight, -.ui-widget-header .ui-state-highlight { - border: 1px solid #fed22f; - background: #ffe45c url(images/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; - color: #363636; -} -.ui-state-highlight a, -.ui-widget-content .ui-state-highlight a, -.ui-widget-header .ui-state-highlight a { - color: #363636; -} -.ui-state-error, -.ui-widget-content .ui-state-error, -.ui-widget-header .ui-state-error { - border: 1px solid #cd0a0a; - background: #b81900 url(images/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat; - color: #ffffff; -} -.ui-state-error a, -.ui-widget-content .ui-state-error a, -.ui-widget-header .ui-state-error a { - color: #ffffff; -} -.ui-state-error-text, -.ui-widget-content .ui-state-error-text, -.ui-widget-header .ui-state-error-text { - color: #ffffff; -} -.ui-priority-primary, -.ui-widget-content .ui-priority-primary, -.ui-widget-header .ui-priority-primary { - font-weight: bold; -} -.ui-priority-secondary, -.ui-widget-content .ui-priority-secondary, -.ui-widget-header .ui-priority-secondary { - opacity: .7; - filter:Alpha(Opacity=70); - font-weight: normal; -} -.ui-state-disabled, -.ui-widget-content .ui-state-disabled, -.ui-widget-header .ui-state-disabled { - opacity: .35; - filter:Alpha(Opacity=35); - background-image: none; -} -.ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* For IE8 - See #6059 */ -} - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - width: 16px; - height: 16px; - background-position: 16px 16px; -} -.ui-icon, -.ui-widget-content .ui-icon { - background-image: url(images/ui-icons_222222_256x240.png); -} -.ui-widget-header .ui-icon { - background-image: url(images/ui-icons_ffffff_256x240.png); -} -.ui-state-default .ui-icon { - background-image: url(images/ui-icons_ef8c08_256x240.png); -} -.ui-state-hover .ui-icon, -.ui-state-focus .ui-icon { - background-image: url(images/ui-icons_ef8c08_256x240.png); -} -.ui-state-active .ui-icon { - background-image: url(images/ui-icons_ef8c08_256x240.png); -} -.ui-state-highlight .ui-icon { - background-image: url(images/ui-icons_228ef1_256x240.png); -} -.ui-state-error .ui-icon, -.ui-state-error-text .ui-icon { - background-image: url(images/ui-icons_ffd27a_256x240.png); -} - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-on { background-position: -96px -144px; } -.ui-icon-radio-off { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, -.ui-corner-top, -.ui-corner-left, -.ui-corner-tl { - border-top-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-top, -.ui-corner-right, -.ui-corner-tr { - border-top-right-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-left, -.ui-corner-bl { - border-bottom-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-br { - border-bottom-right-radius: 4px; -} - -/* Overlays */ -.ui-widget-overlay { - background: #666666 url(images/ui-bg_diagonals-thick_20_666666_40x40.png) 50% 50% repeat; - opacity: .5; - filter: Alpha(Opacity=50); -} -.ui-widget-shadow { - margin: -5px 0 0 -5px; - padding: 5px; - background: #000000 url(images/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x; - opacity: .2; - filter: Alpha(Opacity=20); - border-radius: 5px; -} diff --git a/Docs/html/css/jquery-ui.min.css b/Docs/html/css/jquery-ui.min.css deleted file mode 100644 index 23b5a94974..0000000000 --- a/Docs/html/css/jquery-ui.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.11.4 - 2015-07-14 -* http://jqueryui.com -* Includes: core.css, draggable.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, menu.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ - -.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_888888_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px} \ No newline at end of file diff --git a/Docs/html/css/jquery-ui.theme.css b/Docs/html/css/jquery-ui.theme.css deleted file mode 100644 index 3c1e0cbb74..0000000000 --- a/Docs/html/css/jquery-ui.theme.css +++ /dev/null @@ -1,542 +0,0 @@ -/*! - * Customize the appearance of jQueryUI components here. Styles for the flyout menu and the - * language selector are contained at the end of this file. - * ********************************************************** - * jQuery UI CSS Framework 1.11.4 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/category/theming/ - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px - */ - -/* Component containers -----------------------------------*/ -.ui-widget { - font-family: Verdana,Arial,sans-serif; - font-size: 1.1em; -} -.ui-widget .ui-widget { - font-size: 1em; -} -.ui-widget input, -.ui-widget select, -.ui-widget textarea, -.ui-widget button { - font-family: Verdana,Arial,sans-serif; - font-size: 1em; -} -.ui-widget-content { - border: 1px solid #aaaaaa; - background: #F7F7F7; - /*background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;*/ - color: #222222; -} -.ui-widget-content a { - color: #222222; -} -.ui-widget-header { - border: 1px solid #aaaaaa; - background: #cccccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x; - color: #222222; - font-weight: bold; -} -.ui-widget-header a { - color: #222222; -} - -/* Interaction states -----------------------------------*/ -.ui-state-default, -.ui-widget-content .ui-state-default, -.ui-widget-header .ui-state-default { - border: 1px solid #d3d3d3; - background: #e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #555555; -} -.ui-state-default a, -.ui-state-default a:link, -.ui-state-default a:visited { - color: #555555; - text-decoration: none; -} -.ui-state-hover, -.ui-widget-content .ui-state-hover, -.ui-widget-header .ui-state-hover, -.ui-state-focus, -.ui-widget-content .ui-state-focus, -.ui-widget-header .ui-state-focus { - border: 1px solid #999999; - background: #dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #212121; -} -.ui-state-hover a, -.ui-state-hover a:hover, -.ui-state-hover a:link, -.ui-state-hover a:visited, -.ui-state-focus a, -.ui-state-focus a:hover, -.ui-state-focus a:link, -.ui-state-focus a:visited { - color: #212121; - text-decoration: none; -} -.ui-state-active, -.ui-widget-content .ui-state-active, -.ui-widget-header .ui-state-active { - border: 1px solid #aaaaaa; - background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #212121; -} -.ui-state-active a, -.ui-state-active a:link, -.ui-state-active a:visited { - color: #212121; - text-decoration: none; -} - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, -.ui-widget-content .ui-state-highlight, -.ui-widget-header .ui-state-highlight { - border: 1px solid #fcefa1; - background: #fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x; - color: #363636; -} -.ui-state-highlight a, -.ui-widget-content .ui-state-highlight a, -.ui-widget-header .ui-state-highlight a { - color: #363636; -} -.ui-state-error, -.ui-widget-content .ui-state-error, -.ui-widget-header .ui-state-error { - border: 1px solid #cd0a0a; - background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x; - color: #cd0a0a; -} -.ui-state-error a, -.ui-widget-content .ui-state-error a, -.ui-widget-header .ui-state-error a { - color: #cd0a0a; -} -.ui-state-error-text, -.ui-widget-content .ui-state-error-text, -.ui-widget-header .ui-state-error-text { - color: #cd0a0a; -} -.ui-priority-primary, -.ui-widget-content .ui-priority-primary, -.ui-widget-header .ui-priority-primary { - font-weight: bold; -} -.ui-priority-secondary, -.ui-widget-content .ui-priority-secondary, -.ui-widget-header .ui-priority-secondary { - opacity: .7; - filter:Alpha(Opacity=70); /* support: IE8 */ - font-weight: normal; -} -.ui-state-disabled, -.ui-widget-content .ui-state-disabled, -.ui-widget-header .ui-state-disabled { - opacity: .35; - filter:Alpha(Opacity=35); /* support: IE8 */ - background-image: none; -} -.ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ -} - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - width: 16px; /* originally 16px*/ - height: 16px; /* originally 16px*/ -} -.ui-icon, -.ui-widget-content .ui-icon { - background-image: url("images/ui-icons_222222_256x240.png"); -} -.ui-widget-header .ui-icon { - background-image: url("images/ui-icons_222222_256x240.png"); -} -.ui-state-default .ui-icon { - background-image: url("images/ui-icons_888888_256x240.png"); -} -.ui-state-hover .ui-icon, -.ui-state-focus .ui-icon { - background-image: url("images/ui-icons_454545_256x240.png"); -} -.ui-state-active .ui-icon { - background-image: url("images/ui-icons_454545_256x240.png"); -} -.ui-state-highlight .ui-icon { - background-image: url("images/ui-icons_2e83ff_256x240.png"); -} -.ui-state-error .ui-icon, -.ui-state-error-text .ui-icon { - background-image: url("images/ui-icons_cd0a0a_256x240.png"); -} - -/* positioning */ -.ui-icon-blank { background-position: 16px 16px; } -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-on { background-position: -96px -144px; } -.ui-icon-radio-off { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, -.ui-corner-top, -.ui-corner-left, -.ui-corner-tl { - border-top-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-top, -.ui-corner-right, -.ui-corner-tr { - border-top-right-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-left, -.ui-corner-bl { - border-bottom-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-br { - border-bottom-right-radius: 4px; -} - -/* Overlays */ -.ui-widget-overlay { - background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ -} -.ui-widget-shadow { - margin: -8px 0 0 -8px; - padding: 8px; - background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ - border-radius: 8px; -} - -/*-------------------------------------------------------------------------------------------------------------------*/ -/* styles and overrides for language selector */ -/*-------------------------------------------------------------------------------------------------------------------*/ - -.ui-selectmenu-button { /* derived from btn styles in _base.scss */ - border-radius: 4px; - color: #222; - cursor: pointer; - display: inline-block; - font-size: 1.0em; - font-weight: 700; - margin-bottom: 1rem; - padding: 6px 10px; - text-align: center; - text-decoration: none; - - border-style: solid; - border-right: 1px solid #C5C5C5; - border-color: #DEDEDE #C5C5C5 #C5C5C5; - -moz-border-top-colors: none; - -moz-border-right-colors: none; - -moz-border-bottom-colors: none; - -moz-border-left-colors: none; - border-image: none; - color: #444; - background-color: #DEDEDE; - background-image: linear-gradient(#FFF, #DEDEDE); - border-width: 1px; -} - -.ui-selectmenu-button:visited { - color: #444; -} - -.ui-selectmenu-button:hover { - background-image: none; - color: #444; - text-decoration: none; -} - -.ui-selectmenu-button span.ui-selectmenu-text { - overflow: auto; - padding: 0px; -} - -.ui-selectmenu-menu { - z-index: 7000; -} - -#languageSelection-button { - width: 90px !important; -} - -/*-------------------------------------------------------------------------------------------------------------------*/ -/* styles and overrides for top nav flyout menu */ -/*-------------------------------------------------------------------------------------------------------------------*/ - - -#topnav-flyout-menu-container { - background-color: #F7F7F7; - border-right: 1px solid #AAA; - border-bottom: none; - position: fixed; - top: 68px; - bottom: 41px; - width: 301px; - display: none; -} - -#topnav-flyout-menu { - background-color: #F7F7F7; - border-bottom: none; - width: 300px; - padding-top: 15px; - font-family: "HelveticaNeue","Helvetica",Helvetica,Arial,sans-serif; - line-height: 1.3; -} - -#topnav-flyout-menu a { - color: #333; -} - -ul.ui-menu { - width: 250px; -} - -li.ui-menu-item { - padding-right: 30px; -} - -.ui-widget, -.ui-widget-content { - color: #333; - font-family: "HelveticaNeue","Helvetica",Helvetica,Arial,sans-serif; - line-height: 1.3; -} - -.ui-menu .ui-menu-item { - padding: 7px 30px; - text-shadow: 0px 1px 0px #FFF; - line-height: 1.6em; - font-size: 15px; - -} - -.ui-menu .ui-menu-icon { - left: auto; - right: 15px; -} - -ul#topnav-flyout-menu li.ui-menu-item:hover, -ul#topnav-flyout-menu li.ui-menu-item:hover a, -ul#topnav-flyout-menu li.ui-menu-item:hover span.ui-icon-carat-1-e { - color: #E47911; -} - -ul#topnav-flyout-menu li.ui-menu-item:hover ul.ui-menu li.ui-menu-item a { - color: #333; -} - -ul#topnav-flyout-menu li.ui-menu-item ul.ui-menu li.ui-menu-item:hover a { - color: #E47911; -} - -ul#topnav-flyout-menu li.ui-menu-item:hover .ui-icon, -ul#topnav-flyout-menu li.ui-menu-item:hover .ui-widget-content .ui-icon { - background-image: url("images/ui-icons_E47911_256x240.png"); -} \ No newline at end of file diff --git a/Docs/html/feedback/feedbackno.html b/Docs/html/feedback/feedbackno.html deleted file mode 100644 index f4aeb53671..0000000000 --- a/Docs/html/feedback/feedbackno.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - Lumberyard API Reference - - - - - - - - - - - - - - - - - - - - - - -
- -
    -
-
-
-
-
-

Thank you!

-

Your feedback helps us prioritize the API documentation you need most.

-

Feel free to provide additional details on how we can improve our documentation.

- -
- - - - - \ No newline at end of file diff --git a/Docs/html/feedback/feedbackyes.html b/Docs/html/feedback/feedbackyes.html deleted file mode 100644 index f4aeb53671..0000000000 --- a/Docs/html/feedback/feedbackyes.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - Lumberyard API Reference - - - - - - - - - - - - - - - - - - - - - - -
- -
    -
-
-
-
-
-

Thank you!

-

Your feedback helps us prioritize the API documentation you need most.

-

Feel free to provide additional details on how we can improve our documentation.

- -
- - - - - \ No newline at end of file diff --git a/Docs/html/font/css/font-awesome.min.css b/Docs/html/font/css/font-awesome.min.css deleted file mode 100644 index 24fcc04c4e..0000000000 --- a/Docs/html/font/css/font-awesome.min.css +++ /dev/null @@ -1,4 +0,0 @@ -/*! - * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.3.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.3.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.3.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.3.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.3.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-genderless:before,.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"} \ No newline at end of file diff --git a/Docs/html/font/fonts/FontAwesome.otf b/Docs/html/font/fonts/FontAwesome.otf deleted file mode 100644 index 2d380558ab..0000000000 --- a/Docs/html/font/fonts/FontAwesome.otf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bdc5d0b9f397be83e886c74b0141d1954aa4384b359dce49829994c4a2e1f7bf -size 93888 diff --git a/Docs/html/font/fonts/Open_Sans/OpenSans-Bold.woff b/Docs/html/font/fonts/Open_Sans/OpenSans-Bold.woff deleted file mode 100644 index ca2f1c277d..0000000000 Binary files a/Docs/html/font/fonts/Open_Sans/OpenSans-Bold.woff and /dev/null differ diff --git a/Docs/html/font/fonts/Open_Sans/OpenSans.woff b/Docs/html/font/fonts/Open_Sans/OpenSans.woff deleted file mode 100644 index ac2b2c65e3..0000000000 Binary files a/Docs/html/font/fonts/Open_Sans/OpenSans.woff and /dev/null differ diff --git a/Docs/html/font/fonts/fontawesome-webfont.eot b/Docs/html/font/fonts/fontawesome-webfont.eot deleted file mode 100644 index 33b2bb8005..0000000000 Binary files a/Docs/html/font/fonts/fontawesome-webfont.eot and /dev/null differ diff --git a/Docs/html/font/fonts/fontawesome-webfont.svg b/Docs/html/font/fonts/fontawesome-webfont.svg deleted file mode 100644 index 1ee89d4368..0000000000 --- a/Docs/html/font/fonts/fontawesome-webfont.svg +++ /dev/null @@ -1,565 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Docs/html/font/fonts/fontawesome-webfont.ttf b/Docs/html/font/fonts/fontawesome-webfont.ttf deleted file mode 100644 index b5846e3466..0000000000 --- a/Docs/html/font/fonts/fontawesome-webfont.ttf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9e540a087924a6e64790149d735cac022640e4fa6bff6bd65f5e9f41529bf0b3 -size 122092 diff --git a/Docs/html/font/fonts/fontawesome-webfont.woff b/Docs/html/font/fonts/fontawesome-webfont.woff deleted file mode 100644 index 8b280b98fa..0000000000 Binary files a/Docs/html/font/fonts/fontawesome-webfont.woff and /dev/null differ diff --git a/Docs/html/font/fonts/fontawesome-webfont.woff2 b/Docs/html/font/fonts/fontawesome-webfont.woff2 deleted file mode 100644 index 3311d58514..0000000000 Binary files a/Docs/html/font/fonts/fontawesome-webfont.woff2 and /dev/null differ diff --git a/Docs/html/images/AWS_LOGO_RGB_200px.jpg b/Docs/html/images/AWS_LOGO_RGB_200px.jpg deleted file mode 100644 index d4246a9001..0000000000 --- a/Docs/html/images/AWS_LOGO_RGB_200px.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e888f663123fa8563d11215d165efa2488d0d82165b336942a5c2becda02b20e -size 13205 diff --git a/Docs/html/images/aeb-vs-create-newapp-template.png b/Docs/html/images/aeb-vs-create-newapp-template.png deleted file mode 100644 index c276cc6fa5..0000000000 --- a/Docs/html/images/aeb-vs-create-newapp-template.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4603f8322083c8a3e4d3fcc58032d169d3d1774f743232cd8961ea125cce1d12 -size 29376 diff --git a/Docs/html/images/aeb-vs-create-sqldb.png b/Docs/html/images/aeb-vs-create-sqldb.png deleted file mode 100644 index 9ea718df11..0000000000 --- a/Docs/html/images/aeb-vs-create-sqldb.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bcdb21a0673f7543ce33f41bd914b97ef7a6c905015d739dded3dbd638c34683 -size 24748 diff --git a/Docs/html/images/aeb-vs-db-engine-connect.png b/Docs/html/images/aeb-vs-db-engine-connect.png deleted file mode 100644 index f34493474b..0000000000 --- a/Docs/html/images/aeb-vs-db-engine-connect.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae6479dc55b8f9fca324a0e24e199291a002cc0918fa1f3a4438c790564f7d33 -size 39776 diff --git a/Docs/html/images/aeb-vs-db-engineselect.png b/Docs/html/images/aeb-vs-db-engineselect.png deleted file mode 100644 index b3f1a44532..0000000000 --- a/Docs/html/images/aeb-vs-db-engineselect.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a59381fde087bc29502e46af80b03a531d3ece9b22501a942f2f6b8016251e06 -size 38590 diff --git a/Docs/html/images/aeb-vs-db-select.png b/Docs/html/images/aeb-vs-db-select.png deleted file mode 100644 index 03b27f63a5..0000000000 --- a/Docs/html/images/aeb-vs-db-select.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e0bdc020bc361fcdd79891eecb71aaaba4070a32083dc8ba1cb261f01da95e2a -size 41399 diff --git a/Docs/html/images/aeb-vs-db-toolbar-connect.png b/Docs/html/images/aeb-vs-db-toolbar-connect.png deleted file mode 100644 index 9b09dc2b09..0000000000 --- a/Docs/html/images/aeb-vs-db-toolbar-connect.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a0fc77208a300809ecbe77c8290e8eebdce151cf822b766f7fc770bc3a929c2b -size 32459 diff --git a/Docs/html/images/aeb-vs-db-toolbar-execute.png b/Docs/html/images/aeb-vs-db-toolbar-execute.png deleted file mode 100644 index 1a5c552459..0000000000 --- a/Docs/html/images/aeb-vs-db-toolbar-execute.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8d5ed6ced2892cf91c88b84ba06fc1e465f3af14ecb6f30787b0b66f09581e30 -size 7564 diff --git a/Docs/html/images/aeb-vs-nerddinner-env.png b/Docs/html/images/aeb-vs-nerddinner-env.png deleted file mode 100644 index 3aeba121bf..0000000000 --- a/Docs/html/images/aeb-vs-nerddinner-env.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2192d32d2260ae395188759ae4d7f08e72d0aab7bebe692a25161f0b93b43cc7 -size 34069 diff --git a/Docs/html/images/aeb-vs-nerddinner-host.png b/Docs/html/images/aeb-vs-nerddinner-host.png deleted file mode 100644 index d38ff525a3..0000000000 --- a/Docs/html/images/aeb-vs-nerddinner-host.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:696e151c0293280a48a807453b7faa2338c5c3df3462c480d39136fcaef13264 -size 54988 diff --git a/Docs/html/images/aeb-vs-nerddinner-publish1.png b/Docs/html/images/aeb-vs-nerddinner-publish1.png deleted file mode 100644 index 9065442485..0000000000 --- a/Docs/html/images/aeb-vs-nerddinner-publish1.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:874a1b51b0bda67f5dc2706b7bcd8d7edf9d6eafd062ae572b3e27b0c76065f6 -size 13120 diff --git a/Docs/html/images/aeb-vs-nerddinner-publish2.png b/Docs/html/images/aeb-vs-nerddinner-publish2.png deleted file mode 100644 index 818c141dec..0000000000 --- a/Docs/html/images/aeb-vs-nerddinner-publish2.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9dc8d2985f8d4b3a081e579a93ce37991afbc5a17fb53d9c3370def282323911 -size 14747 diff --git a/Docs/html/images/aeb-vs-publish-beanstalk5b.png b/Docs/html/images/aeb-vs-publish-beanstalk5b.png deleted file mode 100644 index 32ec40fa11..0000000000 --- a/Docs/html/images/aeb-vs-publish-beanstalk5b.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7a4da94c547ef384241404422b93fb4108d565ba35b8301e8d7691a7c6132f37 -size 9768 diff --git a/Docs/html/images/animated-overlay.gif b/Docs/html/images/animated-overlay.gif deleted file mode 100644 index 2c1e878338..0000000000 --- a/Docs/html/images/animated-overlay.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c7bcc76fb23c0430b36ec448eb79f8bc34129dae95da10f3c14ed0eacdf2f1b9 -size 1738 diff --git a/Docs/html/images/aws_logo_105x39.png b/Docs/html/images/aws_logo_105x39.png deleted file mode 100644 index 092b998176..0000000000 --- a/Docs/html/images/aws_logo_105x39.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:250fed6fe4f8ebc8a968f648091009237515dee276db1fba24f8e745a1eb2377 -size 3080 diff --git a/Docs/html/images/aws_singlebox_01.png b/Docs/html/images/aws_singlebox_01.png deleted file mode 100644 index 198ad96932..0000000000 --- a/Docs/html/images/aws_singlebox_01.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2adb36c7de25672b048581b21e5933d8828f8ca34d863149c6e113cf258fab18 -size 347 diff --git a/Docs/html/images/callouts/1.png b/Docs/html/images/callouts/1.png deleted file mode 100644 index d6479ed489..0000000000 --- a/Docs/html/images/callouts/1.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2b7c9830752c9c772c0523683c53466c430c36b571a22055773d234b12c491cc -size 745 diff --git a/Docs/html/images/callouts/10.png b/Docs/html/images/callouts/10.png deleted file mode 100644 index bfabeb42b3..0000000000 --- a/Docs/html/images/callouts/10.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b1e613ea0713205842328dbf6962f4cc7b953fb88cfd3b4d1cf8c90c0c27b622 -size 878 diff --git a/Docs/html/images/callouts/11.png b/Docs/html/images/callouts/11.png deleted file mode 100644 index 992a516f84..0000000000 --- a/Docs/html/images/callouts/11.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:20f003f35c6bfe056e29497043a0f56edc7fa3d73c280abc672275e068f4a592 -size 820 diff --git a/Docs/html/images/callouts/12.png b/Docs/html/images/callouts/12.png deleted file mode 100644 index 7ca7b54760..0000000000 --- a/Docs/html/images/callouts/12.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:417d2075349bfe8e37f733d521c5f770ddc2d1698178f082835bb1dcc79d119c -size 865 diff --git a/Docs/html/images/callouts/13.png b/Docs/html/images/callouts/13.png deleted file mode 100644 index 9e3809999e..0000000000 --- a/Docs/html/images/callouts/13.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:65b21161e01409e281ea0dc35436d006806533de5d4059a6947167f3fa6d27d7 -size 873 diff --git a/Docs/html/images/callouts/14.png b/Docs/html/images/callouts/14.png deleted file mode 100644 index 7ca38dcb9c..0000000000 --- a/Docs/html/images/callouts/14.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a41abad37b940e056b73ff0a9a801e965085e3d7444d5d5a02c8a77e060a09a1 -size 873 diff --git a/Docs/html/images/callouts/15.png b/Docs/html/images/callouts/15.png deleted file mode 100644 index b05ac15a1a..0000000000 --- a/Docs/html/images/callouts/15.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4cd8cceec227620cb247d7c9e16d826f5dbcab721e3eda8dc21e8e4c8f7914f1 -size 885 diff --git a/Docs/html/images/callouts/2.png b/Docs/html/images/callouts/2.png deleted file mode 100644 index a83123c821..0000000000 --- a/Docs/html/images/callouts/2.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dee6435b459449939681e3b72d328312c31ba1aa69287503c8e0db4a04f51c3d -size 776 diff --git a/Docs/html/images/callouts/3.png b/Docs/html/images/callouts/3.png deleted file mode 100644 index 9b81d164a8..0000000000 --- a/Docs/html/images/callouts/3.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4558d61ce14cf2db3f2263117dc6a5e148a20e025e8d2444822dc6ea4e508d81 -size 786 diff --git a/Docs/html/images/callouts/4.png b/Docs/html/images/callouts/4.png deleted file mode 100644 index 607e0855d5..0000000000 --- a/Docs/html/images/callouts/4.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:050c994d3c6131f7713b9650330ace84b8f505f069589e1c9abc927acc00fde3 -size 778 diff --git a/Docs/html/images/callouts/5.png b/Docs/html/images/callouts/5.png deleted file mode 100644 index 9137d0481f..0000000000 --- a/Docs/html/images/callouts/5.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0b5fa3105ace449dcb9cd1ffacffce2ade422158777ec9de11c7e99206677266 -size 797 diff --git a/Docs/html/images/callouts/6.png b/Docs/html/images/callouts/6.png deleted file mode 100644 index 9a8297ae20..0000000000 --- a/Docs/html/images/callouts/6.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:23401e6f467b5f7f6865894c077d84fe881cb674c06a5d1effcf081ca6a78d1d -size 808 diff --git a/Docs/html/images/callouts/7.png b/Docs/html/images/callouts/7.png deleted file mode 100644 index a87b7a1097..0000000000 --- a/Docs/html/images/callouts/7.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:30af66ef5a2a96b181cc829d9a39c41553ed87bb44de07e685ab952b93a5e801 -size 771 diff --git a/Docs/html/images/callouts/8.png b/Docs/html/images/callouts/8.png deleted file mode 100644 index 0d0e61ffdc..0000000000 --- a/Docs/html/images/callouts/8.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b2fe3697fdb4e7a98a6ff3bf775b8468dcd27eb61d3e2fc950d0a803b3a43e82 -size 775 diff --git a/Docs/html/images/callouts/9.png b/Docs/html/images/callouts/9.png deleted file mode 100644 index cf21c75bab..0000000000 --- a/Docs/html/images/callouts/9.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c2c0494efc3902e3b2316e081b6ceb5b547f11e676903a5682a3d3d5761f30a2 -size 806 diff --git a/Docs/html/images/callouts/Thumbs.db b/Docs/html/images/callouts/Thumbs.db deleted file mode 100644 index d01f3f11e6..0000000000 Binary files a/Docs/html/images/callouts/Thumbs.db and /dev/null differ diff --git a/Docs/html/images/caution.png b/Docs/html/images/caution.png deleted file mode 100644 index 4774d45c87..0000000000 --- a/Docs/html/images/caution.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7c3e3a8c2f587b11cfdb59ae8c54248a00c43dc14db63d011a9eafc5501545b8 -size 1615 diff --git a/Docs/html/images/delicious.png b/Docs/html/images/delicious.png deleted file mode 100644 index f47668a3e6..0000000000 --- a/Docs/html/images/delicious.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a2351cf229a32f320322286326a771ac96596192f0d58a365a1220adf0151984 -size 399 diff --git a/Docs/html/images/digg.png b/Docs/html/images/digg.png deleted file mode 100644 index 3a474c4e61..0000000000 --- a/Docs/html/images/digg.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f4bfccf10a08194f7169e8300ba437f629d309358cd48bfe11ca5d9dd1d4477d -size 357 diff --git a/Docs/html/images/documentation_logo200x29.png b/Docs/html/images/documentation_logo200x29.png deleted file mode 100644 index cf36e95597..0000000000 --- a/Docs/html/images/documentation_logo200x29.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:295bbbed2d752e9833f71fbc52d16f2105f95f0087a391164644594eea92dd25 -size 6553 diff --git a/Docs/html/images/download_to_kindle.png b/Docs/html/images/download_to_kindle.png deleted file mode 100644 index 29012c30bc..0000000000 --- a/Docs/html/images/download_to_kindle.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16c2c9bb9fab3fa3884300489f8343d8a9d4f6e5cfbce22b45410277c275008e -size 4461 diff --git a/Docs/html/images/email.png b/Docs/html/images/email.png deleted file mode 100644 index f2e5b58200..0000000000 --- a/Docs/html/images/email.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bef6a251604eafda937de99655b0e26eedf5b6f73c2c28276bc11f1d396428b8 -size 396 diff --git a/Docs/html/images/expanderarrow.png b/Docs/html/images/expanderarrow.png deleted file mode 100644 index b7de3e68f7..0000000000 --- a/Docs/html/images/expanderarrow.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d94b0b814214731dc41d7d62a0afd93166ea3763cfc4d8b83142bfd66e8585dc -size 2845 diff --git a/Docs/html/images/expanderarrowleft.png b/Docs/html/images/expanderarrowleft.png deleted file mode 100644 index 4463c8bf66..0000000000 --- a/Docs/html/images/expanderarrowleft.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:11ca0c4a55c7b3360a2d2c554fe68955bff1fbba8be08d15fd270cc89bac6c99 -size 2852 diff --git a/Docs/html/images/expanderarrowright.png b/Docs/html/images/expanderarrowright.png deleted file mode 100644 index 68cc5b4241..0000000000 --- a/Docs/html/images/expanderarrowright.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4577ee2b8ecb17c13bc20a82fbdc04572a483bad12da538c269eac3dee807f84 -size 2849 diff --git a/Docs/html/images/facebook.png b/Docs/html/images/facebook.png deleted file mode 100644 index 4832dcfe7e..0000000000 --- a/Docs/html/images/facebook.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e0bc76a4976c9b9ae93985a85427e6b606f4efb23a8d4f51b25c18d6dc353bbd -size 403 diff --git a/Docs/html/images/faux-button-sprite.png b/Docs/html/images/faux-button-sprite.png deleted file mode 100644 index f70e7dc058..0000000000 --- a/Docs/html/images/faux-button-sprite.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:56de42184e09c8cdebb274abe4300ce2cdfdf583742627c29c42c1484fc15e28 -size 1930 diff --git a/Docs/html/images/forum_button.png b/Docs/html/images/forum_button.png deleted file mode 100644 index 19f109a92c..0000000000 --- a/Docs/html/images/forum_button.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:99ed8c873c8e846af7038d73187a63b761386efa424587c4fc959959f729c2a0 -size 4295 diff --git a/Docs/html/images/forums.png b/Docs/html/images/forums.png deleted file mode 100644 index 6d6eb582a9..0000000000 --- a/Docs/html/images/forums.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:baaae3ef3697af2278b1a066fd19b01984a296a48457609aa5be6702dd783c73 -size 3012 diff --git a/Docs/html/images/home.gif b/Docs/html/images/home.gif deleted file mode 100644 index 996ecb0bc0..0000000000 --- a/Docs/html/images/home.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6a08342e7647c968780da5faa642472a00d6b350484de543ed59d49dda4fe829 -size 999 diff --git a/Docs/html/images/icon_offsite.png b/Docs/html/images/icon_offsite.png deleted file mode 100644 index a2f5db57d2..0000000000 --- a/Docs/html/images/icon_offsite.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fa44ab3365f9e897c3e056264e3c366e890c1bd28d8f504676d9c6f4e92e4b68 -size 184 diff --git a/Docs/html/images/important.png b/Docs/html/images/important.png deleted file mode 100644 index d98f0e4fd9..0000000000 --- a/Docs/html/images/important.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d9f9d2471fe0449f13f73b24095ba0b778a413bed4cdcd7440c8f2d45be8a3a6 -size 1613 diff --git a/Docs/html/images/language-filter.gif b/Docs/html/images/language-filter.gif deleted file mode 100644 index 7e0a1a1a7f..0000000000 --- a/Docs/html/images/language-filter.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fda4d3ec46494cdb809f760d481da97323c17712be877090a0d83573b84f0e84 -size 2674 diff --git a/Docs/html/images/note.png b/Docs/html/images/note.png deleted file mode 100644 index cad1011e19..0000000000 --- a/Docs/html/images/note.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4cb5e9646c6b702285d78fbf5ef5f9c1ae0c4b65d7034052995f778bf3869603 -size 1886 diff --git a/Docs/html/images/orange_bullet.png b/Docs/html/images/orange_bullet.png deleted file mode 100644 index 2d09d7a360..0000000000 --- a/Docs/html/images/orange_bullet.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dbb7e01ab0b06b7acaf2eeb002e112ef3f5280662edfb085cb0666aa83c0913d -size 2804 diff --git a/Docs/html/images/pdf.png b/Docs/html/images/pdf.png deleted file mode 100644 index 6c6416f64f..0000000000 --- a/Docs/html/images/pdf.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aeabee24b7e3f333cc0a0405f5d60fdcb2a0662133b133266678de83b65b0e97 -size 3038 diff --git a/Docs/html/images/pdf_button.png b/Docs/html/images/pdf_button.png deleted file mode 100644 index a4e82f6e73..0000000000 --- a/Docs/html/images/pdf_button.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ee589a12467811c4ff36f94f7d2e4ae4bc54d499a579a8c23d966c79b91dab07 -size 4350 diff --git a/Docs/html/images/print.png b/Docs/html/images/print.png deleted file mode 100644 index f5c2b6368b..0000000000 --- a/Docs/html/images/print.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fa7a299ed583a2daac83e32aa6b79a5b74cbc7c57bcd5ad570fdac4b80045a08 -size 3143 diff --git a/Docs/html/images/reddit.png b/Docs/html/images/reddit.png deleted file mode 100644 index 8bd68581d3..0000000000 --- a/Docs/html/images/reddit.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e171442a96474bfd5f4a0305d75848e6304033f0dfa8f5331f1092494f0026ee -size 834 diff --git a/Docs/html/images/search-api-ref.png b/Docs/html/images/search-api-ref.png deleted file mode 100644 index f6a8714f4b..0000000000 --- a/Docs/html/images/search-api-ref.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3f68471844ba460985c5fb0cb8ab2001fe005aa03dbd3ff26d0725848e3efdf5 -size 23362 diff --git a/Docs/html/images/search-button.png b/Docs/html/images/search-button.png deleted file mode 100644 index 892eabfad6..0000000000 --- a/Docs/html/images/search-button.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1f2a9c36f3990cb24c47f4e272373cb654d734026c4f1e28e4d82f35d0ab5419 -size 6706 diff --git a/Docs/html/images/support-create-case-console-1.png b/Docs/html/images/support-create-case-console-1.png deleted file mode 100644 index 18d6553390..0000000000 --- a/Docs/html/images/support-create-case-console-1.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:04c44619e61ac2bdb0e57a8cf47d188e4db013ae554d8e728722bb451f534b76 -size 61131 diff --git a/Docs/html/images/support-create-case-console-2.png b/Docs/html/images/support-create-case-console-2.png deleted file mode 100644 index 7c6a7b24f0..0000000000 --- a/Docs/html/images/support-create-case-console-2.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:721bfe0a2013fb9ebba9a8c240459d02f2e8dea635af789b41e226d684f8d961 -size 109559 diff --git a/Docs/html/images/support-create-case-example.png b/Docs/html/images/support-create-case-example.png deleted file mode 100644 index 945f2d2947..0000000000 --- a/Docs/html/images/support-create-case-example.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:27e89908b574d4432f02acbcf619ec0c214630beaa744f63c8ec5843faaa95dd -size 121290 diff --git a/Docs/html/images/tip.png b/Docs/html/images/tip.png deleted file mode 100644 index 069cc8bff6..0000000000 --- a/Docs/html/images/tip.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6823dab47c42bd9de59c5a20002d3a0a1ff80d7a188390f47d9c4bdbe24db62b -size 1585 diff --git a/Docs/html/images/title-swoosh-logo-not-latest.gif b/Docs/html/images/title-swoosh-logo-not-latest.gif deleted file mode 100644 index 1ca0bf2354..0000000000 --- a/Docs/html/images/title-swoosh-logo-not-latest.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:177a3df9568a1b9b8bd3d839f0a97968f3aa38dc74cb21e385de980f3b5b5705 -size 5859 diff --git a/Docs/html/images/title-swoosh-logo.gif b/Docs/html/images/title-swoosh-logo.gif deleted file mode 100644 index 1ca0bf2354..0000000000 --- a/Docs/html/images/title-swoosh-logo.gif +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:177a3df9568a1b9b8bd3d839f0a97968f3aa38dc74cb21e385de980f3b5b5705 -size 5859 diff --git a/Docs/html/images/twitter.png b/Docs/html/images/twitter.png deleted file mode 100644 index efdcff3e59..0000000000 --- a/Docs/html/images/twitter.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b64e7582bfd5cd8aae7f9ab31b2b12aff640857b6670873d94c15d0ce70533d9 -size 658 diff --git a/Docs/html/images/ui-bg_diagonals-thick_18_b81900_40x40.png b/Docs/html/images/ui-bg_diagonals-thick_18_b81900_40x40.png deleted file mode 100644 index eeee291bab..0000000000 --- a/Docs/html/images/ui-bg_diagonals-thick_18_b81900_40x40.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9f9940fe49c7221cbb52a1e2116e34561a435f9618e7af41409273f5c1e84db9 -size 412 diff --git a/Docs/html/images/ui-bg_diagonals-thick_20_666666_40x40.png b/Docs/html/images/ui-bg_diagonals-thick_20_666666_40x40.png deleted file mode 100644 index a5a9e6d66e..0000000000 --- a/Docs/html/images/ui-bg_diagonals-thick_20_666666_40x40.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b64f3e44db8f9af287ccc9241f14e9d13aef97b58a1e98e74d7e69978ac00992 -size 356 diff --git a/Docs/html/images/ui-bg_flat_10_000000_40x100.png b/Docs/html/images/ui-bg_flat_10_000000_40x100.png deleted file mode 100644 index 6310b95dc2..0000000000 --- a/Docs/html/images/ui-bg_flat_10_000000_40x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5a331da9ff2cea4f2d1231b52518b4e0237d6d172659721658e3f24160bec015 -size 273 diff --git a/Docs/html/images/ui-bg_glass_100_f6f6f6_1x400.png b/Docs/html/images/ui-bg_glass_100_f6f6f6_1x400.png deleted file mode 100644 index 9d097f1f58..0000000000 --- a/Docs/html/images/ui-bg_glass_100_f6f6f6_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a113f19a92268798ab52c3d01751cdc52c7eae6d402f24faf6af8a4490475dbd -size 308 diff --git a/Docs/html/images/ui-bg_glass_100_fdf5ce_1x400.png b/Docs/html/images/ui-bg_glass_100_fdf5ce_1x400.png deleted file mode 100644 index c360049a24..0000000000 --- a/Docs/html/images/ui-bg_glass_100_fdf5ce_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4a1da00a695b2f8cbc6e825b65d74bc4770bb067927d8fde0749ed2ee1332f17 -size 382 diff --git a/Docs/html/images/ui-bg_glass_65_ffffff_1x400.png b/Docs/html/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 3f7b33039a..0000000000 --- a/Docs/html/images/ui-bg_glass_65_ffffff_1x400.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:21b78f0c3648ebf69ca81713b4d172cf7c9293b0d8750349adc64230d64d1704 -size 271 diff --git a/Docs/html/images/ui-bg_gloss-wave_35_f6a828_500x100.png b/Docs/html/images/ui-bg_gloss-wave_35_f6a828_500x100.png deleted file mode 100644 index bcb3592eda..0000000000 --- a/Docs/html/images/ui-bg_gloss-wave_35_f6a828_500x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:af7b2999eb6c5bc5203e03ae31596e7c622b20c40c0bf6841e826ef6e9cf9fcd -size 5304 diff --git a/Docs/html/images/ui-bg_highlight-soft_100_eeeeee_1x100.png b/Docs/html/images/ui-bg_highlight-soft_100_eeeeee_1x100.png deleted file mode 100644 index 89784dfb39..0000000000 --- a/Docs/html/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:53bcf969a60af46d7cac4fc8bd4522434e19b5986fba33e6d806c1eb8b68c575 -size 310 diff --git a/Docs/html/images/ui-bg_highlight-soft_75_ffe45c_1x100.png b/Docs/html/images/ui-bg_highlight-soft_75_ffe45c_1x100.png deleted file mode 100644 index 52c4b2b527..0000000000 --- a/Docs/html/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2bb9e237ff22b5f0a2f8b08efb96181305291f71436e94782cec3f7e5bceca16 -size 355 diff --git a/Docs/html/images/ui-icons_222222_256x240.png b/Docs/html/images/ui-icons_222222_256x240.png deleted file mode 100644 index 46c063090e..0000000000 --- a/Docs/html/images/ui-icons_222222_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:19505e2d0adb7140878e288670efd8eaf5de1ac16b1eeccc30c8cd5818991559 -size 4217 diff --git a/Docs/html/images/ui-icons_228ef1_256x240.png b/Docs/html/images/ui-icons_228ef1_256x240.png deleted file mode 100644 index 80fe48012e..0000000000 --- a/Docs/html/images/ui-icons_228ef1_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d7ffb140845cb8a051800367a73442801b13ad889e4009e8c6fdacc12ca04de1 -size 4217 diff --git a/Docs/html/images/ui-icons_ef8c08_256x240.png b/Docs/html/images/ui-icons_ef8c08_256x240.png deleted file mode 100644 index d79ef381a4..0000000000 --- a/Docs/html/images/ui-icons_ef8c08_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b60b2b98b616cc638704b80f72b23638e009c510641091f2ebe2e9556d98a22a -size 4217 diff --git a/Docs/html/images/ui-icons_ffd27a_256x240.png b/Docs/html/images/ui-icons_ffd27a_256x240.png deleted file mode 100644 index 40d647a99b..0000000000 --- a/Docs/html/images/ui-icons_ffd27a_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7d715c12e4468c219e59bb4233af0ec87ba025564935acc6708aeb4f1f1edcda -size 4217 diff --git a/Docs/html/images/ui-icons_ffffff_256x240.png b/Docs/html/images/ui-icons_ffffff_256x240.png deleted file mode 100644 index 27d4c5eca1..0000000000 --- a/Docs/html/images/ui-icons_ffffff_256x240.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:91f6b12beae21053495d1a833942571b4186c7fbcd23a5b2d78fadb25ed95696 -size 4217 diff --git a/Docs/html/images/unabletoconnect.png b/Docs/html/images/unabletoconnect.png deleted file mode 100644 index 0c7240ca0a..0000000000 --- a/Docs/html/images/unabletoconnect.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:177345b3c73c55e782ad7c336db2dc01e3bfe784ff4fa627e2b6cf81cbb75fc5 -size 27213 diff --git a/Docs/html/js/awsdocs.js b/Docs/html/js/awsdocs.js deleted file mode 100644 index 34b8175cac..0000000000 --- a/Docs/html/js/awsdocs.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Created by huntsper on 4/10/15. - */ - - - -/*$('#pdf-and-forum-show').click(function(){ - $('#pdf-and-forum').toggleClass('visible'); - $('#pdf-and-forum-show').toggleClass("fa-caret-square-o-up fa-caret-square-o-down"); -});*/ - -$('#feedback-show').click(function(){ - $('#feedback').toggleClass('visible'); -}); - -$('#toggle-contents').click(function(){ - $('#toc').toggleClass('visible'); -}); diff --git a/Docs/html/js/awsdocs.min.js b/Docs/html/js/awsdocs.min.js deleted file mode 100644 index a6613a97dc..0000000000 --- a/Docs/html/js/awsdocs.min.js +++ /dev/null @@ -1 +0,0 @@ -function searchFormSubmit(a){var b=$("#search-select").val();if(0===b.indexOf("documentation")){var c=$("#this_doc_product").val(),d=$("#this_doc_guide").val(),e="",f="";("documentation-product"===b||"documentation-guide"===b)&&(e+="?doc_product="+encodeURIComponent(c),f+="#facet_doc_product="+encodeURIComponent(c),"documentation-guide"===b&&(e+="&doc_guide="+encodeURIComponent(d),f+="&facet_doc_guide="+encodeURIComponent(d)));var g=window.navigator.userAgent,h=g.indexOf("MSIE "),i=g.indexOf("Trident/"),j=g.indexOf("Edge/");if(h>0||i>0||j>0){var k=$("#search-query").val();return e+="&searchPath="+encodeURIComponent(b),e+="&searchQuery="+encodeURIComponent(k),window.location.href="/search/doc-search.html"+e+f,!1}a.action="/search/doc-search.html"+f}else a.action="http://aws.amazon.com/search";return!0}function SetCookie(a,b,c){var d=14,e=new Date;e.setTime(e.getTime()+24*d*60*60*1e3),1==c?document.cookie=a+"="+b+";path=/":document.cookie=a+"="+b+";expires="+e.toUTCString()+";path=/"}function CheckRegistrationCookie(){var a="regStatus",b=getCookie(a);"pre-register"==b?($("#span-conosole-signin").css("display","none"),$("#span-conosole-signup").css("display","inline")):($("#span-conosole-signin").css("display","inline"),$("#span-conosole-signup").css("display","none"))}function CheckLanguageCookie(){try{var a="aws-doc-lang",b=getCookie(a),c=$("#languageSelection").val(),d=c.substring(1,6),e=c.substring(6),f="/"+b+e,g=location.href,h=g.indexOf(e);if(h>=6){var i=h-5,j=g.substring(i,h),k=g.substring(i-1,i);"/"==k&&"_"==j.substring(2,3)||""!=b&&b!=d&&(location.href=f)}if(5==b.length){var l=$('select[id="languageSelection"]').find('option[value="'+f+'"]');SetCookie(a,b,0),l.html(l.text()+" ✓")}}catch(m){}}function getCookie(a){for(var b=a+"=",c=document.cookie.split(";"),d=0;d0&&this.href.indexOf("?")>0){var e=this.href,d=this.hash;e=e.replace(d,"");var f=e.split("?")[0],g=e.split("?")[1];paramList=g.split("&");for(var h=paramList.length-1;h>=0;h--)paramList[h]===b&¶mList.splice(h,1);paramList.length>0?this.href=f+"?"+paramList.join("&")+d:this.href=f+d}}),$("#toggle-contents").click(function(){$("#toc").toggleClass("open")}),$("#footer_toggle").click(function(){$("#footer_toggle_img").toggleClass("hide"),$("#footer_toggle_img_collapse").toggleClass("hide"),$("#footer_short_fb").toggleClass("hide"),$("#footer_toggle_img.hide").length&&($("#footer_short_fb").length?$("#footer").addClass("shortFooter_ht"):$("#footer").addClass("shortFooter"),SetCookie("aws-doc-footer-short","1",1)),$("#footer_toggle_img_collapse.hide").length&&($("#footer_short_fb").length?$("#footer").removeClass("shortFooter_ht"):$("#footer").removeClass("shortFooter"),SetCookie("aws-doc-footer-short","0",1))})});var AWSDocs=AWSDocs||{};$(document).ready(function(){$("li.awstoc.closed ul").hide(),$("li.awstoc").bind("click",function(a){a.stopPropagation(),"LI"==a.target.nodeName&&($(a.target).hasClass("closed")||$(a.target).hasClass("opened"))&&($(a.target).toggleClass("closed opened"),$(a.target).hasClass("closed")&&$(a.target).children("ul").hide(),$(a.target).hasClass("opened")&&$(a.target).children("ul").show())}),AWSDocs.setTocScroll(),$("#search-icon").click(AWSDocs.resizeSearchQueryBox);var a=navigator.userAgent.toLowerCase(),b=-1!=a.indexOf("mobile");b||(b=-1!=a.indexOf("silk")),b||$("#left-column").resizable({handles:"e"}),AWSDocs.resizePanes(),window.onresize=AWSDocs.resizePanes,-1!=a.indexOf("silk")&&($("#aws-nav").css("position","relative"),$("#content-container").css("margin-top","0px"))}),$(window).unload(function(){AWSDocs.setTocCookies()}),AWSDocs.setTocCookies=function(){var a=window.location.href;a=a.split("#").pop().split("?").pop();var b=a.substring(a.lastIndexOf("/")+1),c=a.indexOf(b),d=a.substring(0,c);SetCookie("aws-doc-toc-pos",$("#left-column").scrollTop(),0),SetCookie("aws-doc-toc-url",d,0)},AWSDocs.setTocScroll=function(){try{var a="aws-doc-toc-pos",b=getCookie(a),c="aws-doc-toc-url",d=getCookie(c),e=window.location.href;e=e.split("#").pop().split("?").pop();var f=e.substring(e.lastIndexOf("/")+1),g=e.indexOf(f),h=e.substring(0,g);null!==b.length&&null!==d.length&&h===d&&$("#left-column").scrollTop(b)}catch(i){}},AWSDocs.resizePanes=function(){var a=($("#left-column"),$("#left-column").width()),b=$("#main-column"),c=($("#main"),$("#left-column").position());(null!==a||"fixed"==c)&&(leftWidthInPx=a+"px",b.css("margin-left",leftWidthInPx));var d=$("div#main-col-body").width();$("div.table table").each(function(){var a=$(this).width(),b=$(this).parent(),c=$(this)[0].getAttribute("id"),e=b[0].getAttribute("class");if(a>d){0==b.siblings("i.table-expand-icon").length&&(b.after(""),b.siblings("i.table-expand-icon").colorbox({maxWidth:"95%",maxHeight:"95%",inline:!0,className:e}));var f=b.siblings("i.table-expand-icon"),g=b.position();f.css({top:g.top})}else{$(this).removeClass("cboxElement");var h=$(this).parent();h.siblings("i.table-expand-icon").length>0&&h.siblings("i.table-expand-icon").remove()}}),$("div.informaltable table").each(function(){var a=$(this).width(),b=$(this).parent(),c=$(this)[0].getAttribute("id"),e=b.parent()[0].getAttribute("class");if(a>d){0==b.siblings("i.table-expand-icon").length&&(b.after(""),b.siblings("i.table-expand-icon").colorbox({maxWidth:"95%",maxHeight:"95%",inline:!0,className:e}));var f=b.siblings("i.table-expand-icon"),g=b.position();f.css({top:g.top})}else{$(this).removeClass("cboxElement");var h=$(this).parent();h.siblings("i.table-expand-icon").length>0&&h.siblings("i.table-expand-icon").remove()}})},AWSDocs.resizeSearchQueryBox=function(){$("#finegrainedSearch").toggle()};var AWSDocs=AWSDocs||{};AWSDocs.rightNavLinks,AWSDocs.sections,$(document).ready(function(){$("a.pagetoc").click(function(){$("a.pagetoc.selected").removeClass("selected"),$(this).addClass("selected");var a=$(this).attr("href"),b=window.location.hash.replace("#","");a=="#"+b&&AWSDocs.adjustFragmentUrl()}),AWSDocs.rightNavLinks=$("a.pagetoc"),AWSDocs.sections=$("h2")}),AWSDocs.isElementInViewport=function(a){var b=a.getBoundingClientRect();return b.top>=0&&b.bottom<=$(window).height()},$(window).on("DOMContentLoaded load resize scroll",function(){if(AWSDocs.sections)for(var a=AWSDocs.sections.length,b=0;a>b;b++){var c=AWSDocs.sections[b],d=$(document).height()-$(window).height()-$(window).scrollTop();if(0==d)$("a.pagetoc.selected").removeClass("selected"),$(AWSDocs.rightNavLinks[a-1]).addClass("selected");else if(AWSDocs.isElementInViewport(c))for(var e=$(c).attr("id"),f=0;f0)for(var h=0;h0)for(var h=0;h0&&($("#language-filter").show(),AWSDocs.setupFilter())}),$(document).ready(function(){CheckLanguageCookie(),CheckRegistrationCookie()});var AWSDocs=AWSDocs||{};AWSDocs.feedbackOnload=function(){var a=top.document.location.search.substr(1);if(a.length>0){var b=a.match(/topic_url=([^=\;\"#\?\s]+)/);if(2==b.length){var c=document.getElementById("fblink");c.href=c.href+"&topic_url="+b[1]}}},$(document).ready(function(){"undefined"!=typeof hljs&&hljs.initHighlighting(),$("em.replaceable code, em.replaceable code span, a.xref code").removeClass(),$("code.nohighlight code, code.nohighlight span").removeClass()}); \ No newline at end of file diff --git a/Docs/html/js/contentfilter.js b/Docs/html/js/contentfilter.js deleted file mode 100644 index 7d08e7bfc8..0000000000 --- a/Docs/html/js/contentfilter.js +++ /dev/null @@ -1,148 +0,0 @@ -/** - * functionality for language filtering - */ - -var AWSDocs = AWSDocs || {}; - -AWSDocs.hasSectionMatch = function (selected) { // check to see if the cookie matches a filterable section on the page - - var filterableEls = $(".langfilter"); - - for (var l = 0; l < filterableEls.length; l++) { - - var filterableSection = filterableEls[l]; - var filterableSectionName = $(filterableSection).attr("name"); - if (filterableSectionName == selected) { - return true; - } - } - return false; -} - -AWSDocs.filterContent = function (selected) { - - var filterableEls = $(".langfilter"); - var rightTocLinks = $("li.pagetoc"); - - var hasSectionMatch = (function () { - for (var l = 0; l < filterableEls.length; l++) { - - var filterableSection = filterableEls[l]; - var filterableSectionName = $(filterableSection).attr("name"); - if (filterableSectionName == selected) { - return true; - } - } - return false; - })(); - - if (selected == "All") { // if the selected filter is "All", show all sections - filterableEls.show(); - rightTocLinks.show(); - } - - else if ((selected !== "All") && (hasSectionMatch === false)) { // if the selected filter is not "All" and does NOT match a filterable section, show all sections - - filterableEls.show(); - rightTocLinks.show(); - } - - else { // if the selected filter is not "All" and DOES match a filterable section, show the section - - for (var i = 0; i < filterableEls.length; i++) { - - var filterableSection = filterableEls[i]; - var filterableSectionName = $(filterableSection).attr("name"); - - if (filterableSectionName == selected) { // if a section is selected ... - $(filterableSection).show(); // show the section ... - if (rightTocLinks.length > 0) { - for (var j = 0; j < rightTocLinks.length; j++) { - - if ($(rightTocLinks[j]).attr("name") == filterableSectionName) { - $(rightTocLinks[j]).show(); // and show the corresponding right ToC item - } - } - } - } - - else { // if a section is not selected ... - $(filterableSection).hide(); // hide the section ... - - if (rightTocLinks.length > 0) { - - for (var j = 0; j < rightTocLinks.length; j++) { - - if ($(rightTocLinks[j]).attr("name") == filterableSectionName) { - $(rightTocLinks[j]).hide(); // and hide the corresponding right ToC item - } - } - } - } - - } - } -} - -AWSDocs.setFilterCookie = function (cookieVal) { - - document.cookie = "awsdocs_content_filter=" + encodeURIComponent(cookieVal); - -} - -AWSDocs.getFilterCookie = function () { - - var awsDocsContentFilterCookieKey = "awsdocs_content_filter="; - var cookieArray = document.cookie.split(';'); - for (var i = 0; i < cookieArray.length; i++) { - var cookie = cookieArray[i]; - while (cookie.charAt(0) == ' ') { // get rid of spaces before the cookie value - cookie = cookie.substring(1, cookie.length); - } - if (cookie.indexOf(awsDocsContentFilterCookieKey) == 0) { - var cookieVal = decodeURIComponent(cookie.substring(awsDocsContentFilterCookieKey.length, cookie.length)); - - return cookieVal; // return the cookie value, or null if no cookie is set - } - } - return null; - -} - -AWSDocs.setupFilter = function () { - - var cookieVal = AWSDocs.getFilterCookie(); - if (cookieVal) { - - if (AWSDocs.hasSectionMatch(cookieVal)) { - $("#filter-select").val(cookieVal); - } else { - $("#filter-select").val("All"); - } - - AWSDocs.filterContent(cookieVal); // if a cookie is available, filter with that value on page load - - } else { - - $("#filter-select").val("All"); - } - - $("#filter-select").change(function () { - - var selected = $(this).val(); - AWSDocs.setFilterCookie(selected); - AWSDocs.filterContent(selected); // filter again whenever an item is selected from the filter menu - - }); -} - -$(document).ready(function () { - - var filterableEls = $(".langfilter"); - if (filterableEls.length > 0) { // check if there are filterable sections on the page ... - - $("#language-filter").show(); // if so, show the filter menu and set up the filter - AWSDocs.setupFilter(); - - } -}); \ No newline at end of file diff --git a/Docs/html/js/dynsections.js b/Docs/html/js/dynsections.js deleted file mode 100644 index 85e1836909..0000000000 --- a/Docs/html/js/dynsections.js +++ /dev/null @@ -1,97 +0,0 @@ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} - -function toggleLevel(level) -{ - $('table.directory tr').each(function() { - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l 0) { - var docfile = myPage.match(/topic_url=([^=\;\"#\?\s]+)/); - if (docfile.length == 2) { - var fblink = document.getElementById("fblink"); - fblink.href = fblink.href + "&topic_url=" + docfile[1]; - } - } -}; diff --git a/Docs/html/js/handlebars.js b/Docs/html/js/handlebars.js deleted file mode 100644 index 78f8d78dba..0000000000 --- a/Docs/html/js/handlebars.js +++ /dev/null @@ -1,4131 +0,0 @@ -/*! - - handlebars v3.0.3 - -Copyright (C) 2011-2014 by Yehuda Katz - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -@license -*/ -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if(typeof define === 'function' && define.amd) - define(factory); - else if(typeof exports === 'object') - exports["Handlebars"] = factory(); - else - root["Handlebars"] = factory(); -})(this, function() { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; - -/******/ // The require function -/******/ function __webpack_require__(moduleId) { - -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) -/******/ return installedModules[moduleId].exports; - -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ exports: {}, -/******/ id: moduleId, -/******/ loaded: false -/******/ }; - -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); - -/******/ // Flag the module as loaded -/******/ module.loaded = true; - -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } - - -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; - -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; - -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; - -/******/ // Load entry module and return exports -/******/ return __webpack_require__(0); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - - var _runtime = __webpack_require__(1); - - var _runtime2 = _interopRequireDefault(_runtime); - - // Compiler imports - - var _AST = __webpack_require__(2); - - var _AST2 = _interopRequireDefault(_AST); - - var _Parser$parse = __webpack_require__(3); - - var _Compiler$compile$precompile = __webpack_require__(4); - - var _JavaScriptCompiler = __webpack_require__(5); - - var _JavaScriptCompiler2 = _interopRequireDefault(_JavaScriptCompiler); - - var _Visitor = __webpack_require__(6); - - var _Visitor2 = _interopRequireDefault(_Visitor); - - var _noConflict = __webpack_require__(7); - - var _noConflict2 = _interopRequireDefault(_noConflict); - - var _create = _runtime2['default'].create; - function create() { - var hb = _create(); - - hb.compile = function (input, options) { - return _Compiler$compile$precompile.compile(input, options, hb); - }; - hb.precompile = function (input, options) { - return _Compiler$compile$precompile.precompile(input, options, hb); - }; - - hb.AST = _AST2['default']; - hb.Compiler = _Compiler$compile$precompile.Compiler; - hb.JavaScriptCompiler = _JavaScriptCompiler2['default']; - hb.Parser = _Parser$parse.parser; - hb.parse = _Parser$parse.parse; - - return hb; - } - - var inst = create(); - inst.create = create; - - _noConflict2['default'](inst); - - inst.Visitor = _Visitor2['default']; - - inst['default'] = inst; - - exports['default'] = inst; - module.exports = exports['default']; - -/***/ }, -/* 1 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireWildcard = __webpack_require__(9)['default']; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - - var _import = __webpack_require__(10); - - var base = _interopRequireWildcard(_import); - - // Each of these augment the Handlebars object. No need to setup here. - // (This is done to easily share code between commonjs and browse envs) - - var _SafeString = __webpack_require__(11); - - var _SafeString2 = _interopRequireDefault(_SafeString); - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var _import2 = __webpack_require__(13); - - var Utils = _interopRequireWildcard(_import2); - - var _import3 = __webpack_require__(14); - - var runtime = _interopRequireWildcard(_import3); - - var _noConflict = __webpack_require__(7); - - var _noConflict2 = _interopRequireDefault(_noConflict); - - // For compatibility and usage outside of module systems, make the Handlebars object a namespace - function create() { - var hb = new base.HandlebarsEnvironment(); - - Utils.extend(hb, base); - hb.SafeString = _SafeString2['default']; - hb.Exception = _Exception2['default']; - hb.Utils = Utils; - hb.escapeExpression = Utils.escapeExpression; - - hb.VM = runtime; - hb.template = function (spec) { - return runtime.template(spec, hb); - }; - - return hb; - } - - var inst = create(); - inst.create = create; - - _noConflict2['default'](inst); - - inst['default'] = inst; - - exports['default'] = inst; - module.exports = exports['default']; - -/***/ }, -/* 2 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - exports.__esModule = true; - var AST = { - Program: function Program(statements, blockParams, strip, locInfo) { - this.loc = locInfo; - this.type = 'Program'; - this.body = statements; - - this.blockParams = blockParams; - this.strip = strip; - }, - - MustacheStatement: function MustacheStatement(path, params, hash, escaped, strip, locInfo) { - this.loc = locInfo; - this.type = 'MustacheStatement'; - - this.path = path; - this.params = params || []; - this.hash = hash; - this.escaped = escaped; - - this.strip = strip; - }, - - BlockStatement: function BlockStatement(path, params, hash, program, inverse, openStrip, inverseStrip, closeStrip, locInfo) { - this.loc = locInfo; - this.type = 'BlockStatement'; - - this.path = path; - this.params = params || []; - this.hash = hash; - this.program = program; - this.inverse = inverse; - - this.openStrip = openStrip; - this.inverseStrip = inverseStrip; - this.closeStrip = closeStrip; - }, - - PartialStatement: function PartialStatement(name, params, hash, strip, locInfo) { - this.loc = locInfo; - this.type = 'PartialStatement'; - - this.name = name; - this.params = params || []; - this.hash = hash; - - this.indent = ''; - this.strip = strip; - }, - - ContentStatement: function ContentStatement(string, locInfo) { - this.loc = locInfo; - this.type = 'ContentStatement'; - this.original = this.value = string; - }, - - CommentStatement: function CommentStatement(comment, strip, locInfo) { - this.loc = locInfo; - this.type = 'CommentStatement'; - this.value = comment; - - this.strip = strip; - }, - - SubExpression: function SubExpression(path, params, hash, locInfo) { - this.loc = locInfo; - - this.type = 'SubExpression'; - this.path = path; - this.params = params || []; - this.hash = hash; - }, - - PathExpression: function PathExpression(data, depth, parts, original, locInfo) { - this.loc = locInfo; - this.type = 'PathExpression'; - - this.data = data; - this.original = original; - this.parts = parts; - this.depth = depth; - }, - - StringLiteral: function StringLiteral(string, locInfo) { - this.loc = locInfo; - this.type = 'StringLiteral'; - this.original = this.value = string; - }, - - NumberLiteral: function NumberLiteral(number, locInfo) { - this.loc = locInfo; - this.type = 'NumberLiteral'; - this.original = this.value = Number(number); - }, - - BooleanLiteral: function BooleanLiteral(bool, locInfo) { - this.loc = locInfo; - this.type = 'BooleanLiteral'; - this.original = this.value = bool === 'true'; - }, - - UndefinedLiteral: function UndefinedLiteral(locInfo) { - this.loc = locInfo; - this.type = 'UndefinedLiteral'; - this.original = this.value = undefined; - }, - - NullLiteral: function NullLiteral(locInfo) { - this.loc = locInfo; - this.type = 'NullLiteral'; - this.original = this.value = null; - }, - - Hash: function Hash(pairs, locInfo) { - this.loc = locInfo; - this.type = 'Hash'; - this.pairs = pairs; - }, - HashPair: function HashPair(key, value, locInfo) { - this.loc = locInfo; - this.type = 'HashPair'; - this.key = key; - this.value = value; - }, - - // Public API used to evaluate derived attributes regarding AST nodes - helpers: { - // a mustache is definitely a helper if: - // * it is an eligible helper, and - // * it has at least one parameter or hash segment - helperExpression: function helperExpression(node) { - return !!(node.type === 'SubExpression' || node.params.length || node.hash); - }, - - scopedId: function scopedId(path) { - return /^\.|this\b/.test(path.original); - }, - - // an ID is simple if it only has one part, and that part is not - // `..` or `this`. - simpleId: function simpleId(path) { - return path.parts.length === 1 && !AST.helpers.scopedId(path) && !path.depth; - } - } - }; - - // Must be exported as an object rather than the root of the module as the jison lexer - // must modify the object to operate properly. - exports['default'] = AST; - module.exports = exports['default']; - -/***/ }, -/* 3 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - var _interopRequireWildcard = __webpack_require__(9)['default']; - - exports.__esModule = true; - exports.parse = parse; - - var _parser = __webpack_require__(15); - - var _parser2 = _interopRequireDefault(_parser); - - var _AST = __webpack_require__(2); - - var _AST2 = _interopRequireDefault(_AST); - - var _WhitespaceControl = __webpack_require__(16); - - var _WhitespaceControl2 = _interopRequireDefault(_WhitespaceControl); - - var _import = __webpack_require__(17); - - var Helpers = _interopRequireWildcard(_import); - - var _extend = __webpack_require__(13); - - exports.parser = _parser2['default']; - - var yy = {}; - _extend.extend(yy, Helpers, _AST2['default']); - - function parse(input, options) { - // Just return if an already-compiled AST was passed in. - if (input.type === 'Program') { - return input; - } - - _parser2['default'].yy = yy; - - // Altering the shared object here, but this is ok as parser is a sync operation - yy.locInfo = function (locInfo) { - return new yy.SourceLocation(options && options.srcName, locInfo); - }; - - var strip = new _WhitespaceControl2['default'](); - return strip.accept(_parser2['default'].parse(input)); - } - -/***/ }, -/* 4 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - exports.Compiler = Compiler; - exports.precompile = precompile; - exports.compile = compile; - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var _isArray$indexOf = __webpack_require__(13); - - var _AST = __webpack_require__(2); - - var _AST2 = _interopRequireDefault(_AST); - - var slice = [].slice; - - function Compiler() {} - - // the foundHelper register will disambiguate helper lookup from finding a - // function in a context. This is necessary for mustache compatibility, which - // requires that context functions in blocks are evaluated by blockHelperMissing, - // and then proceed as if the resulting value was provided to blockHelperMissing. - - Compiler.prototype = { - compiler: Compiler, - - equals: function equals(other) { - var len = this.opcodes.length; - if (other.opcodes.length !== len) { - return false; - } - - for (var i = 0; i < len; i++) { - var opcode = this.opcodes[i], - otherOpcode = other.opcodes[i]; - if (opcode.opcode !== otherOpcode.opcode || !argEquals(opcode.args, otherOpcode.args)) { - return false; - } - } - - // We know that length is the same between the two arrays because they are directly tied - // to the opcode behavior above. - len = this.children.length; - for (var i = 0; i < len; i++) { - if (!this.children[i].equals(other.children[i])) { - return false; - } - } - - return true; - }, - - guid: 0, - - compile: function compile(program, options) { - this.sourceNode = []; - this.opcodes = []; - this.children = []; - this.options = options; - this.stringParams = options.stringParams; - this.trackIds = options.trackIds; - - options.blockParams = options.blockParams || []; - - // These changes will propagate to the other compiler components - var knownHelpers = options.knownHelpers; - options.knownHelpers = { - helperMissing: true, - blockHelperMissing: true, - each: true, - 'if': true, - unless: true, - 'with': true, - log: true, - lookup: true - }; - if (knownHelpers) { - for (var _name in knownHelpers) { - if (_name in knownHelpers) { - options.knownHelpers[_name] = knownHelpers[_name]; - } - } - } - - return this.accept(program); - }, - - compileProgram: function compileProgram(program) { - var childCompiler = new this.compiler(), - // eslint-disable-line new-cap - result = childCompiler.compile(program, this.options), - guid = this.guid++; - - this.usePartial = this.usePartial || result.usePartial; - - this.children[guid] = result; - this.useDepths = this.useDepths || result.useDepths; - - return guid; - }, - - accept: function accept(node) { - this.sourceNode.unshift(node); - var ret = this[node.type](node); - this.sourceNode.shift(); - return ret; - }, - - Program: function Program(program) { - this.options.blockParams.unshift(program.blockParams); - - var body = program.body, - bodyLength = body.length; - for (var i = 0; i < bodyLength; i++) { - this.accept(body[i]); - } - - this.options.blockParams.shift(); - - this.isSimple = bodyLength === 1; - this.blockParams = program.blockParams ? program.blockParams.length : 0; - - return this; - }, - - BlockStatement: function BlockStatement(block) { - transformLiteralToPath(block); - - var program = block.program, - inverse = block.inverse; - - program = program && this.compileProgram(program); - inverse = inverse && this.compileProgram(inverse); - - var type = this.classifySexpr(block); - - if (type === 'helper') { - this.helperSexpr(block, program, inverse); - } else if (type === 'simple') { - this.simpleSexpr(block); - - // now that the simple mustache is resolved, we need to - // evaluate it by executing `blockHelperMissing` - this.opcode('pushProgram', program); - this.opcode('pushProgram', inverse); - this.opcode('emptyHash'); - this.opcode('blockValue', block.path.original); - } else { - this.ambiguousSexpr(block, program, inverse); - - // now that the simple mustache is resolved, we need to - // evaluate it by executing `blockHelperMissing` - this.opcode('pushProgram', program); - this.opcode('pushProgram', inverse); - this.opcode('emptyHash'); - this.opcode('ambiguousBlockValue'); - } - - this.opcode('append'); - }, - - PartialStatement: function PartialStatement(partial) { - this.usePartial = true; - - var params = partial.params; - if (params.length > 1) { - throw new _Exception2['default']('Unsupported number of partial arguments: ' + params.length, partial); - } else if (!params.length) { - params.push({ type: 'PathExpression', parts: [], depth: 0 }); - } - - var partialName = partial.name.original, - isDynamic = partial.name.type === 'SubExpression'; - if (isDynamic) { - this.accept(partial.name); - } - - this.setupFullMustacheParams(partial, undefined, undefined, true); - - var indent = partial.indent || ''; - if (this.options.preventIndent && indent) { - this.opcode('appendContent', indent); - indent = ''; - } - - this.opcode('invokePartial', isDynamic, partialName, indent); - this.opcode('append'); - }, - - MustacheStatement: function MustacheStatement(mustache) { - this.SubExpression(mustache); // eslint-disable-line new-cap - - if (mustache.escaped && !this.options.noEscape) { - this.opcode('appendEscaped'); - } else { - this.opcode('append'); - } - }, - - ContentStatement: function ContentStatement(content) { - if (content.value) { - this.opcode('appendContent', content.value); - } - }, - - CommentStatement: function CommentStatement() {}, - - SubExpression: function SubExpression(sexpr) { - transformLiteralToPath(sexpr); - var type = this.classifySexpr(sexpr); - - if (type === 'simple') { - this.simpleSexpr(sexpr); - } else if (type === 'helper') { - this.helperSexpr(sexpr); - } else { - this.ambiguousSexpr(sexpr); - } - }, - ambiguousSexpr: function ambiguousSexpr(sexpr, program, inverse) { - var path = sexpr.path, - name = path.parts[0], - isBlock = program != null || inverse != null; - - this.opcode('getContext', path.depth); - - this.opcode('pushProgram', program); - this.opcode('pushProgram', inverse); - - this.accept(path); - - this.opcode('invokeAmbiguous', name, isBlock); - }, - - simpleSexpr: function simpleSexpr(sexpr) { - this.accept(sexpr.path); - this.opcode('resolvePossibleLambda'); - }, - - helperSexpr: function helperSexpr(sexpr, program, inverse) { - var params = this.setupFullMustacheParams(sexpr, program, inverse), - path = sexpr.path, - name = path.parts[0]; - - if (this.options.knownHelpers[name]) { - this.opcode('invokeKnownHelper', params.length, name); - } else if (this.options.knownHelpersOnly) { - throw new _Exception2['default']('You specified knownHelpersOnly, but used the unknown helper ' + name, sexpr); - } else { - path.falsy = true; - - this.accept(path); - this.opcode('invokeHelper', params.length, path.original, _AST2['default'].helpers.simpleId(path)); - } - }, - - PathExpression: function PathExpression(path) { - this.addDepth(path.depth); - this.opcode('getContext', path.depth); - - var name = path.parts[0], - scoped = _AST2['default'].helpers.scopedId(path), - blockParamId = !path.depth && !scoped && this.blockParamIndex(name); - - if (blockParamId) { - this.opcode('lookupBlockParam', blockParamId, path.parts); - } else if (!name) { - // Context reference, i.e. `{{foo .}}` or `{{foo ..}}` - this.opcode('pushContext'); - } else if (path.data) { - this.options.data = true; - this.opcode('lookupData', path.depth, path.parts); - } else { - this.opcode('lookupOnContext', path.parts, path.falsy, scoped); - } - }, - - StringLiteral: function StringLiteral(string) { - this.opcode('pushString', string.value); - }, - - NumberLiteral: function NumberLiteral(number) { - this.opcode('pushLiteral', number.value); - }, - - BooleanLiteral: function BooleanLiteral(bool) { - this.opcode('pushLiteral', bool.value); - }, - - UndefinedLiteral: function UndefinedLiteral() { - this.opcode('pushLiteral', 'undefined'); - }, - - NullLiteral: function NullLiteral() { - this.opcode('pushLiteral', 'null'); - }, - - Hash: function Hash(hash) { - var pairs = hash.pairs, - i = 0, - l = pairs.length; - - this.opcode('pushHash'); - - for (; i < l; i++) { - this.pushParam(pairs[i].value); - } - while (i--) { - this.opcode('assignToHash', pairs[i].key); - } - this.opcode('popHash'); - }, - - // HELPERS - opcode: function opcode(name) { - this.opcodes.push({ opcode: name, args: slice.call(arguments, 1), loc: this.sourceNode[0].loc }); - }, - - addDepth: function addDepth(depth) { - if (!depth) { - return; - } - - this.useDepths = true; - }, - - classifySexpr: function classifySexpr(sexpr) { - var isSimple = _AST2['default'].helpers.simpleId(sexpr.path); - - var isBlockParam = isSimple && !!this.blockParamIndex(sexpr.path.parts[0]); - - // a mustache is an eligible helper if: - // * its id is simple (a single part, not `this` or `..`) - var isHelper = !isBlockParam && _AST2['default'].helpers.helperExpression(sexpr); - - // if a mustache is an eligible helper but not a definite - // helper, it is ambiguous, and will be resolved in a later - // pass or at runtime. - var isEligible = !isBlockParam && (isHelper || isSimple); - - // if ambiguous, we can possibly resolve the ambiguity now - // An eligible helper is one that does not have a complex path, i.e. `this.foo`, `../foo` etc. - if (isEligible && !isHelper) { - var _name2 = sexpr.path.parts[0], - options = this.options; - - if (options.knownHelpers[_name2]) { - isHelper = true; - } else if (options.knownHelpersOnly) { - isEligible = false; - } - } - - if (isHelper) { - return 'helper'; - } else if (isEligible) { - return 'ambiguous'; - } else { - return 'simple'; - } - }, - - pushParams: function pushParams(params) { - for (var i = 0, l = params.length; i < l; i++) { - this.pushParam(params[i]); - } - }, - - pushParam: function pushParam(val) { - var value = val.value != null ? val.value : val.original || ''; - - if (this.stringParams) { - if (value.replace) { - value = value.replace(/^(\.?\.\/)*/g, '').replace(/\//g, '.'); - } - - if (val.depth) { - this.addDepth(val.depth); - } - this.opcode('getContext', val.depth || 0); - this.opcode('pushStringParam', value, val.type); - - if (val.type === 'SubExpression') { - // SubExpressions get evaluated and passed in - // in string params mode. - this.accept(val); - } - } else { - if (this.trackIds) { - var blockParamIndex = undefined; - if (val.parts && !_AST2['default'].helpers.scopedId(val) && !val.depth) { - blockParamIndex = this.blockParamIndex(val.parts[0]); - } - if (blockParamIndex) { - var blockParamChild = val.parts.slice(1).join('.'); - this.opcode('pushId', 'BlockParam', blockParamIndex, blockParamChild); - } else { - value = val.original || value; - if (value.replace) { - value = value.replace(/^\.\//g, '').replace(/^\.$/g, ''); - } - - this.opcode('pushId', val.type, value); - } - } - this.accept(val); - } - }, - - setupFullMustacheParams: function setupFullMustacheParams(sexpr, program, inverse, omitEmpty) { - var params = sexpr.params; - this.pushParams(params); - - this.opcode('pushProgram', program); - this.opcode('pushProgram', inverse); - - if (sexpr.hash) { - this.accept(sexpr.hash); - } else { - this.opcode('emptyHash', omitEmpty); - } - - return params; - }, - - blockParamIndex: function blockParamIndex(name) { - for (var depth = 0, len = this.options.blockParams.length; depth < len; depth++) { - var blockParams = this.options.blockParams[depth], - param = blockParams && _isArray$indexOf.indexOf(blockParams, name); - if (blockParams && param >= 0) { - return [depth, param]; - } - } - } - }; - - function precompile(input, options, env) { - if (input == null || typeof input !== 'string' && input.type !== 'Program') { - throw new _Exception2['default']('You must pass a string or Handlebars AST to Handlebars.precompile. You passed ' + input); - } - - options = options || {}; - if (!('data' in options)) { - options.data = true; - } - if (options.compat) { - options.useDepths = true; - } - - var ast = env.parse(input, options), - environment = new env.Compiler().compile(ast, options); - return new env.JavaScriptCompiler().compile(environment, options); - } - - function compile(input, _x, env) { - var options = arguments[1] === undefined ? {} : arguments[1]; - - if (input == null || typeof input !== 'string' && input.type !== 'Program') { - throw new _Exception2['default']('You must pass a string or Handlebars AST to Handlebars.compile. You passed ' + input); - } - - if (!('data' in options)) { - options.data = true; - } - if (options.compat) { - options.useDepths = true; - } - - var compiled = undefined; - - function compileInput() { - var ast = env.parse(input, options), - environment = new env.Compiler().compile(ast, options), - templateSpec = new env.JavaScriptCompiler().compile(environment, options, undefined, true); - return env.template(templateSpec); - } - - // Template is only compiled on first use and cached after that point. - function ret(context, execOptions) { - if (!compiled) { - compiled = compileInput(); - } - return compiled.call(this, context, execOptions); - } - ret._setup = function (setupOptions) { - if (!compiled) { - compiled = compileInput(); - } - return compiled._setup(setupOptions); - }; - ret._child = function (i, data, blockParams, depths) { - if (!compiled) { - compiled = compileInput(); - } - return compiled._child(i, data, blockParams, depths); - }; - return ret; - } - - function argEquals(a, b) { - if (a === b) { - return true; - } - - if (_isArray$indexOf.isArray(a) && _isArray$indexOf.isArray(b) && a.length === b.length) { - for (var i = 0; i < a.length; i++) { - if (!argEquals(a[i], b[i])) { - return false; - } - } - return true; - } - } - - function transformLiteralToPath(sexpr) { - if (!sexpr.path.parts) { - var literal = sexpr.path; - // Casting to string here to make false and 0 literal values play nicely with the rest - // of the system. - sexpr.path = new _AST2['default'].PathExpression(false, 0, [literal.original + ''], literal.original + '', literal.loc); - } - } - -/***/ }, -/* 5 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - - var _COMPILER_REVISION$REVISION_CHANGES = __webpack_require__(10); - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var _isArray = __webpack_require__(13); - - var _CodeGen = __webpack_require__(18); - - var _CodeGen2 = _interopRequireDefault(_CodeGen); - - function Literal(value) { - this.value = value; - } - - function JavaScriptCompiler() {} - - JavaScriptCompiler.prototype = { - // PUBLIC API: You can override these methods in a subclass to provide - // alternative compiled forms for name lookup and buffering semantics - nameLookup: function nameLookup(parent, name /* , type*/) { - if (JavaScriptCompiler.isValidJavaScriptVariableName(name)) { - return [parent, '.', name]; - } else { - return [parent, '[\'', name, '\']']; - } - }, - depthedLookup: function depthedLookup(name) { - return [this.aliasable('this.lookup'), '(depths, "', name, '")']; - }, - - compilerInfo: function compilerInfo() { - var revision = _COMPILER_REVISION$REVISION_CHANGES.COMPILER_REVISION, - versions = _COMPILER_REVISION$REVISION_CHANGES.REVISION_CHANGES[revision]; - return [revision, versions]; - }, - - appendToBuffer: function appendToBuffer(source, location, explicit) { - // Force a source as this simplifies the merge logic. - if (!_isArray.isArray(source)) { - source = [source]; - } - source = this.source.wrap(source, location); - - if (this.environment.isSimple) { - return ['return ', source, ';']; - } else if (explicit) { - // This is a case where the buffer operation occurs as a child of another - // construct, generally braces. We have to explicitly output these buffer - // operations to ensure that the emitted code goes in the correct location. - return ['buffer += ', source, ';']; - } else { - source.appendToBuffer = true; - return source; - } - }, - - initializeBuffer: function initializeBuffer() { - return this.quotedString(''); - }, - // END PUBLIC API - - compile: function compile(environment, options, context, asObject) { - this.environment = environment; - this.options = options; - this.stringParams = this.options.stringParams; - this.trackIds = this.options.trackIds; - this.precompile = !asObject; - - this.name = this.environment.name; - this.isChild = !!context; - this.context = context || { - programs: [], - environments: [] - }; - - this.preamble(); - - this.stackSlot = 0; - this.stackVars = []; - this.aliases = {}; - this.registers = { list: [] }; - this.hashes = []; - this.compileStack = []; - this.inlineStack = []; - this.blockParams = []; - - this.compileChildren(environment, options); - - this.useDepths = this.useDepths || environment.useDepths || this.options.compat; - this.useBlockParams = this.useBlockParams || environment.useBlockParams; - - var opcodes = environment.opcodes, - opcode = undefined, - firstLoc = undefined, - i = undefined, - l = undefined; - - for (i = 0, l = opcodes.length; i < l; i++) { - opcode = opcodes[i]; - - this.source.currentLocation = opcode.loc; - firstLoc = firstLoc || opcode.loc; - this[opcode.opcode].apply(this, opcode.args); - } - - // Flush any trailing content that might be pending. - this.source.currentLocation = firstLoc; - this.pushSource(''); - - /* istanbul ignore next */ - if (this.stackSlot || this.inlineStack.length || this.compileStack.length) { - throw new _Exception2['default']('Compile completed with content left on stack'); - } - - var fn = this.createFunctionContext(asObject); - if (!this.isChild) { - var ret = { - compiler: this.compilerInfo(), - main: fn - }; - var programs = this.context.programs; - for (i = 0, l = programs.length; i < l; i++) { - if (programs[i]) { - ret[i] = programs[i]; - } - } - - if (this.environment.usePartial) { - ret.usePartial = true; - } - if (this.options.data) { - ret.useData = true; - } - if (this.useDepths) { - ret.useDepths = true; - } - if (this.useBlockParams) { - ret.useBlockParams = true; - } - if (this.options.compat) { - ret.compat = true; - } - - if (!asObject) { - ret.compiler = JSON.stringify(ret.compiler); - - this.source.currentLocation = { start: { line: 1, column: 0 } }; - ret = this.objectLiteral(ret); - - if (options.srcName) { - ret = ret.toStringWithSourceMap({ file: options.destName }); - ret.map = ret.map && ret.map.toString(); - } else { - ret = ret.toString(); - } - } else { - ret.compilerOptions = this.options; - } - - return ret; - } else { - return fn; - } - }, - - preamble: function preamble() { - // track the last context pushed into place to allow skipping the - // getContext opcode when it would be a noop - this.lastContext = 0; - this.source = new _CodeGen2['default'](this.options.srcName); - }, - - createFunctionContext: function createFunctionContext(asObject) { - var varDeclarations = ''; - - var locals = this.stackVars.concat(this.registers.list); - if (locals.length > 0) { - varDeclarations += ', ' + locals.join(', '); - } - - // Generate minimizer alias mappings - // - // When using true SourceNodes, this will update all references to the given alias - // as the source nodes are reused in situ. For the non-source node compilation mode, - // aliases will not be used, but this case is already being run on the client and - // we aren't concern about minimizing the template size. - var aliasCount = 0; - for (var alias in this.aliases) { - // eslint-disable-line guard-for-in - var node = this.aliases[alias]; - - if (this.aliases.hasOwnProperty(alias) && node.children && node.referenceCount > 1) { - varDeclarations += ', alias' + ++aliasCount + '=' + alias; - node.children[0] = 'alias' + aliasCount; - } - } - - var params = ['depth0', 'helpers', 'partials', 'data']; - - if (this.useBlockParams || this.useDepths) { - params.push('blockParams'); - } - if (this.useDepths) { - params.push('depths'); - } - - // Perform a second pass over the output to merge content when possible - var source = this.mergeSource(varDeclarations); - - if (asObject) { - params.push(source); - - return Function.apply(this, params); - } else { - return this.source.wrap(['function(', params.join(','), ') {\n ', source, '}']); - } - }, - mergeSource: function mergeSource(varDeclarations) { - var isSimple = this.environment.isSimple, - appendOnly = !this.forceBuffer, - appendFirst = undefined, - sourceSeen = undefined, - bufferStart = undefined, - bufferEnd = undefined; - this.source.each(function (line) { - if (line.appendToBuffer) { - if (bufferStart) { - line.prepend(' + '); - } else { - bufferStart = line; - } - bufferEnd = line; - } else { - if (bufferStart) { - if (!sourceSeen) { - appendFirst = true; - } else { - bufferStart.prepend('buffer += '); - } - bufferEnd.add(';'); - bufferStart = bufferEnd = undefined; - } - - sourceSeen = true; - if (!isSimple) { - appendOnly = false; - } - } - }); - - if (appendOnly) { - if (bufferStart) { - bufferStart.prepend('return '); - bufferEnd.add(';'); - } else if (!sourceSeen) { - this.source.push('return "";'); - } - } else { - varDeclarations += ', buffer = ' + (appendFirst ? '' : this.initializeBuffer()); - - if (bufferStart) { - bufferStart.prepend('return buffer + '); - bufferEnd.add(';'); - } else { - this.source.push('return buffer;'); - } - } - - if (varDeclarations) { - this.source.prepend('var ' + varDeclarations.substring(2) + (appendFirst ? '' : ';\n')); - } - - return this.source.merge(); - }, - - // [blockValue] - // - // On stack, before: hash, inverse, program, value - // On stack, after: return value of blockHelperMissing - // - // The purpose of this opcode is to take a block of the form - // `{{#this.foo}}...{{/this.foo}}`, resolve the value of `foo`, and - // replace it on the stack with the result of properly - // invoking blockHelperMissing. - blockValue: function blockValue(name) { - var blockHelperMissing = this.aliasable('helpers.blockHelperMissing'), - params = [this.contextName(0)]; - this.setupHelperArgs(name, 0, params); - - var blockName = this.popStack(); - params.splice(1, 0, blockName); - - this.push(this.source.functionCall(blockHelperMissing, 'call', params)); - }, - - // [ambiguousBlockValue] - // - // On stack, before: hash, inverse, program, value - // Compiler value, before: lastHelper=value of last found helper, if any - // On stack, after, if no lastHelper: same as [blockValue] - // On stack, after, if lastHelper: value - ambiguousBlockValue: function ambiguousBlockValue() { - // We're being a bit cheeky and reusing the options value from the prior exec - var blockHelperMissing = this.aliasable('helpers.blockHelperMissing'), - params = [this.contextName(0)]; - this.setupHelperArgs('', 0, params, true); - - this.flushInline(); - - var current = this.topStack(); - params.splice(1, 0, current); - - this.pushSource(['if (!', this.lastHelper, ') { ', current, ' = ', this.source.functionCall(blockHelperMissing, 'call', params), '}']); - }, - - // [appendContent] - // - // On stack, before: ... - // On stack, after: ... - // - // Appends the string value of `content` to the current buffer - appendContent: function appendContent(content) { - if (this.pendingContent) { - content = this.pendingContent + content; - } else { - this.pendingLocation = this.source.currentLocation; - } - - this.pendingContent = content; - }, - - // [append] - // - // On stack, before: value, ... - // On stack, after: ... - // - // Coerces `value` to a String and appends it to the current buffer. - // - // If `value` is truthy, or 0, it is coerced into a string and appended - // Otherwise, the empty string is appended - append: function append() { - if (this.isInline()) { - this.replaceStack(function (current) { - return [' != null ? ', current, ' : ""']; - }); - - this.pushSource(this.appendToBuffer(this.popStack())); - } else { - var local = this.popStack(); - this.pushSource(['if (', local, ' != null) { ', this.appendToBuffer(local, undefined, true), ' }']); - if (this.environment.isSimple) { - this.pushSource(['else { ', this.appendToBuffer('\'\'', undefined, true), ' }']); - } - } - }, - - // [appendEscaped] - // - // On stack, before: value, ... - // On stack, after: ... - // - // Escape `value` and append it to the buffer - appendEscaped: function appendEscaped() { - this.pushSource(this.appendToBuffer([this.aliasable('this.escapeExpression'), '(', this.popStack(), ')'])); - }, - - // [getContext] - // - // On stack, before: ... - // On stack, after: ... - // Compiler value, after: lastContext=depth - // - // Set the value of the `lastContext` compiler value to the depth - getContext: function getContext(depth) { - this.lastContext = depth; - }, - - // [pushContext] - // - // On stack, before: ... - // On stack, after: currentContext, ... - // - // Pushes the value of the current context onto the stack. - pushContext: function pushContext() { - this.pushStackLiteral(this.contextName(this.lastContext)); - }, - - // [lookupOnContext] - // - // On stack, before: ... - // On stack, after: currentContext[name], ... - // - // Looks up the value of `name` on the current context and pushes - // it onto the stack. - lookupOnContext: function lookupOnContext(parts, falsy, scoped) { - var i = 0; - - if (!scoped && this.options.compat && !this.lastContext) { - // The depthed query is expected to handle the undefined logic for the root level that - // is implemented below, so we evaluate that directly in compat mode - this.push(this.depthedLookup(parts[i++])); - } else { - this.pushContext(); - } - - this.resolvePath('context', parts, i, falsy); - }, - - // [lookupBlockParam] - // - // On stack, before: ... - // On stack, after: blockParam[name], ... - // - // Looks up the value of `parts` on the given block param and pushes - // it onto the stack. - lookupBlockParam: function lookupBlockParam(blockParamId, parts) { - this.useBlockParams = true; - - this.push(['blockParams[', blockParamId[0], '][', blockParamId[1], ']']); - this.resolvePath('context', parts, 1); - }, - - // [lookupData] - // - // On stack, before: ... - // On stack, after: data, ... - // - // Push the data lookup operator - lookupData: function lookupData(depth, parts) { - if (!depth) { - this.pushStackLiteral('data'); - } else { - this.pushStackLiteral('this.data(data, ' + depth + ')'); - } - - this.resolvePath('data', parts, 0, true); - }, - - resolvePath: function resolvePath(type, parts, i, falsy) { - var _this = this; - - if (this.options.strict || this.options.assumeObjects) { - this.push(strictLookup(this.options.strict, this, parts, type)); - return; - } - - var len = parts.length; - for (; i < len; i++) { - /*eslint-disable no-loop-func */ - this.replaceStack(function (current) { - var lookup = _this.nameLookup(current, parts[i], type); - // We want to ensure that zero and false are handled properly if the context (falsy flag) - // needs to have the special handling for these values. - if (!falsy) { - return [' != null ? ', lookup, ' : ', current]; - } else { - // Otherwise we can use generic falsy handling - return [' && ', lookup]; - } - }); - /*eslint-enable no-loop-func */ - } - }, - - // [resolvePossibleLambda] - // - // On stack, before: value, ... - // On stack, after: resolved value, ... - // - // If the `value` is a lambda, replace it on the stack by - // the return value of the lambda - resolvePossibleLambda: function resolvePossibleLambda() { - this.push([this.aliasable('this.lambda'), '(', this.popStack(), ', ', this.contextName(0), ')']); - }, - - // [pushStringParam] - // - // On stack, before: ... - // On stack, after: string, currentContext, ... - // - // This opcode is designed for use in string mode, which - // provides the string value of a parameter along with its - // depth rather than resolving it immediately. - pushStringParam: function pushStringParam(string, type) { - this.pushContext(); - this.pushString(type); - - // If it's a subexpression, the string result - // will be pushed after this opcode. - if (type !== 'SubExpression') { - if (typeof string === 'string') { - this.pushString(string); - } else { - this.pushStackLiteral(string); - } - } - }, - - emptyHash: function emptyHash(omitEmpty) { - if (this.trackIds) { - this.push('{}'); // hashIds - } - if (this.stringParams) { - this.push('{}'); // hashContexts - this.push('{}'); // hashTypes - } - this.pushStackLiteral(omitEmpty ? 'undefined' : '{}'); - }, - pushHash: function pushHash() { - if (this.hash) { - this.hashes.push(this.hash); - } - this.hash = { values: [], types: [], contexts: [], ids: [] }; - }, - popHash: function popHash() { - var hash = this.hash; - this.hash = this.hashes.pop(); - - if (this.trackIds) { - this.push(this.objectLiteral(hash.ids)); - } - if (this.stringParams) { - this.push(this.objectLiteral(hash.contexts)); - this.push(this.objectLiteral(hash.types)); - } - - this.push(this.objectLiteral(hash.values)); - }, - - // [pushString] - // - // On stack, before: ... - // On stack, after: quotedString(string), ... - // - // Push a quoted version of `string` onto the stack - pushString: function pushString(string) { - this.pushStackLiteral(this.quotedString(string)); - }, - - // [pushLiteral] - // - // On stack, before: ... - // On stack, after: value, ... - // - // Pushes a value onto the stack. This operation prevents - // the compiler from creating a temporary variable to hold - // it. - pushLiteral: function pushLiteral(value) { - this.pushStackLiteral(value); - }, - - // [pushProgram] - // - // On stack, before: ... - // On stack, after: program(guid), ... - // - // Push a program expression onto the stack. This takes - // a compile-time guid and converts it into a runtime-accessible - // expression. - pushProgram: function pushProgram(guid) { - if (guid != null) { - this.pushStackLiteral(this.programExpression(guid)); - } else { - this.pushStackLiteral(null); - } - }, - - // [invokeHelper] - // - // On stack, before: hash, inverse, program, params..., ... - // On stack, after: result of helper invocation - // - // Pops off the helper's parameters, invokes the helper, - // and pushes the helper's return value onto the stack. - // - // If the helper is not found, `helperMissing` is called. - invokeHelper: function invokeHelper(paramSize, name, isSimple) { - var nonHelper = this.popStack(), - helper = this.setupHelper(paramSize, name), - simple = isSimple ? [helper.name, ' || '] : ''; - - var lookup = ['('].concat(simple, nonHelper); - if (!this.options.strict) { - lookup.push(' || ', this.aliasable('helpers.helperMissing')); - } - lookup.push(')'); - - this.push(this.source.functionCall(lookup, 'call', helper.callParams)); - }, - - // [invokeKnownHelper] - // - // On stack, before: hash, inverse, program, params..., ... - // On stack, after: result of helper invocation - // - // This operation is used when the helper is known to exist, - // so a `helperMissing` fallback is not required. - invokeKnownHelper: function invokeKnownHelper(paramSize, name) { - var helper = this.setupHelper(paramSize, name); - this.push(this.source.functionCall(helper.name, 'call', helper.callParams)); - }, - - // [invokeAmbiguous] - // - // On stack, before: hash, inverse, program, params..., ... - // On stack, after: result of disambiguation - // - // This operation is used when an expression like `{{foo}}` - // is provided, but we don't know at compile-time whether it - // is a helper or a path. - // - // This operation emits more code than the other options, - // and can be avoided by passing the `knownHelpers` and - // `knownHelpersOnly` flags at compile-time. - invokeAmbiguous: function invokeAmbiguous(name, helperCall) { - this.useRegister('helper'); - - var nonHelper = this.popStack(); - - this.emptyHash(); - var helper = this.setupHelper(0, name, helperCall); - - var helperName = this.lastHelper = this.nameLookup('helpers', name, 'helper'); - - var lookup = ['(', '(helper = ', helperName, ' || ', nonHelper, ')']; - if (!this.options.strict) { - lookup[0] = '(helper = '; - lookup.push(' != null ? helper : ', this.aliasable('helpers.helperMissing')); - } - - this.push(['(', lookup, helper.paramsInit ? ['),(', helper.paramsInit] : [], '),', '(typeof helper === ', this.aliasable('"function"'), ' ? ', this.source.functionCall('helper', 'call', helper.callParams), ' : helper))']); - }, - - // [invokePartial] - // - // On stack, before: context, ... - // On stack after: result of partial invocation - // - // This operation pops off a context, invokes a partial with that context, - // and pushes the result of the invocation back. - invokePartial: function invokePartial(isDynamic, name, indent) { - var params = [], - options = this.setupParams(name, 1, params, false); - - if (isDynamic) { - name = this.popStack(); - delete options.name; - } - - if (indent) { - options.indent = JSON.stringify(indent); - } - options.helpers = 'helpers'; - options.partials = 'partials'; - - if (!isDynamic) { - params.unshift(this.nameLookup('partials', name, 'partial')); - } else { - params.unshift(name); - } - - if (this.options.compat) { - options.depths = 'depths'; - } - options = this.objectLiteral(options); - params.push(options); - - this.push(this.source.functionCall('this.invokePartial', '', params)); - }, - - // [assignToHash] - // - // On stack, before: value, ..., hash, ... - // On stack, after: ..., hash, ... - // - // Pops a value off the stack and assigns it to the current hash - assignToHash: function assignToHash(key) { - var value = this.popStack(), - context = undefined, - type = undefined, - id = undefined; - - if (this.trackIds) { - id = this.popStack(); - } - if (this.stringParams) { - type = this.popStack(); - context = this.popStack(); - } - - var hash = this.hash; - if (context) { - hash.contexts[key] = context; - } - if (type) { - hash.types[key] = type; - } - if (id) { - hash.ids[key] = id; - } - hash.values[key] = value; - }, - - pushId: function pushId(type, name, child) { - if (type === 'BlockParam') { - this.pushStackLiteral('blockParams[' + name[0] + '].path[' + name[1] + ']' + (child ? ' + ' + JSON.stringify('.' + child) : '')); - } else if (type === 'PathExpression') { - this.pushString(name); - } else if (type === 'SubExpression') { - this.pushStackLiteral('true'); - } else { - this.pushStackLiteral('null'); - } - }, - - // HELPERS - - compiler: JavaScriptCompiler, - - compileChildren: function compileChildren(environment, options) { - var children = environment.children, - child = undefined, - compiler = undefined; - - for (var i = 0, l = children.length; i < l; i++) { - child = children[i]; - compiler = new this.compiler(); // eslint-disable-line new-cap - - var index = this.matchExistingProgram(child); - - if (index == null) { - this.context.programs.push(''); // Placeholder to prevent name conflicts for nested children - index = this.context.programs.length; - child.index = index; - child.name = 'program' + index; - this.context.programs[index] = compiler.compile(child, options, this.context, !this.precompile); - this.context.environments[index] = child; - - this.useDepths = this.useDepths || compiler.useDepths; - this.useBlockParams = this.useBlockParams || compiler.useBlockParams; - } else { - child.index = index; - child.name = 'program' + index; - - this.useDepths = this.useDepths || child.useDepths; - this.useBlockParams = this.useBlockParams || child.useBlockParams; - } - } - }, - matchExistingProgram: function matchExistingProgram(child) { - for (var i = 0, len = this.context.environments.length; i < len; i++) { - var environment = this.context.environments[i]; - if (environment && environment.equals(child)) { - return i; - } - } - }, - - programExpression: function programExpression(guid) { - var child = this.environment.children[guid], - programParams = [child.index, 'data', child.blockParams]; - - if (this.useBlockParams || this.useDepths) { - programParams.push('blockParams'); - } - if (this.useDepths) { - programParams.push('depths'); - } - - return 'this.program(' + programParams.join(', ') + ')'; - }, - - useRegister: function useRegister(name) { - if (!this.registers[name]) { - this.registers[name] = true; - this.registers.list.push(name); - } - }, - - push: function push(expr) { - if (!(expr instanceof Literal)) { - expr = this.source.wrap(expr); - } - - this.inlineStack.push(expr); - return expr; - }, - - pushStackLiteral: function pushStackLiteral(item) { - this.push(new Literal(item)); - }, - - pushSource: function pushSource(source) { - if (this.pendingContent) { - this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent), this.pendingLocation)); - this.pendingContent = undefined; - } - - if (source) { - this.source.push(source); - } - }, - - replaceStack: function replaceStack(callback) { - var prefix = ['('], - stack = undefined, - createdStack = undefined, - usedLiteral = undefined; - - /* istanbul ignore next */ - if (!this.isInline()) { - throw new _Exception2['default']('replaceStack on non-inline'); - } - - // We want to merge the inline statement into the replacement statement via ',' - var top = this.popStack(true); - - if (top instanceof Literal) { - // Literals do not need to be inlined - stack = [top.value]; - prefix = ['(', stack]; - usedLiteral = true; - } else { - // Get or create the current stack name for use by the inline - createdStack = true; - var _name = this.incrStack(); - - prefix = ['((', this.push(_name), ' = ', top, ')']; - stack = this.topStack(); - } - - var item = callback.call(this, stack); - - if (!usedLiteral) { - this.popStack(); - } - if (createdStack) { - this.stackSlot--; - } - this.push(prefix.concat(item, ')')); - }, - - incrStack: function incrStack() { - this.stackSlot++; - if (this.stackSlot > this.stackVars.length) { - this.stackVars.push('stack' + this.stackSlot); - } - return this.topStackName(); - }, - topStackName: function topStackName() { - return 'stack' + this.stackSlot; - }, - flushInline: function flushInline() { - var inlineStack = this.inlineStack; - this.inlineStack = []; - for (var i = 0, len = inlineStack.length; i < len; i++) { - var entry = inlineStack[i]; - /* istanbul ignore if */ - if (entry instanceof Literal) { - this.compileStack.push(entry); - } else { - var stack = this.incrStack(); - this.pushSource([stack, ' = ', entry, ';']); - this.compileStack.push(stack); - } - } - }, - isInline: function isInline() { - return this.inlineStack.length; - }, - - popStack: function popStack(wrapped) { - var inline = this.isInline(), - item = (inline ? this.inlineStack : this.compileStack).pop(); - - if (!wrapped && item instanceof Literal) { - return item.value; - } else { - if (!inline) { - /* istanbul ignore next */ - if (!this.stackSlot) { - throw new _Exception2['default']('Invalid stack pop'); - } - this.stackSlot--; - } - return item; - } - }, - - topStack: function topStack() { - var stack = this.isInline() ? this.inlineStack : this.compileStack, - item = stack[stack.length - 1]; - - /* istanbul ignore if */ - if (item instanceof Literal) { - return item.value; - } else { - return item; - } - }, - - contextName: function contextName(context) { - if (this.useDepths && context) { - return 'depths[' + context + ']'; - } else { - return 'depth' + context; - } - }, - - quotedString: function quotedString(str) { - return this.source.quotedString(str); - }, - - objectLiteral: function objectLiteral(obj) { - return this.source.objectLiteral(obj); - }, - - aliasable: function aliasable(name) { - var ret = this.aliases[name]; - if (ret) { - ret.referenceCount++; - return ret; - } - - ret = this.aliases[name] = this.source.wrap(name); - ret.aliasable = true; - ret.referenceCount = 1; - - return ret; - }, - - setupHelper: function setupHelper(paramSize, name, blockHelper) { - var params = [], - paramsInit = this.setupHelperArgs(name, paramSize, params, blockHelper); - var foundHelper = this.nameLookup('helpers', name, 'helper'); - - return { - params: params, - paramsInit: paramsInit, - name: foundHelper, - callParams: [this.contextName(0)].concat(params) - }; - }, - - setupParams: function setupParams(helper, paramSize, params) { - var options = {}, - contexts = [], - types = [], - ids = [], - param = undefined; - - options.name = this.quotedString(helper); - options.hash = this.popStack(); - - if (this.trackIds) { - options.hashIds = this.popStack(); - } - if (this.stringParams) { - options.hashTypes = this.popStack(); - options.hashContexts = this.popStack(); - } - - var inverse = this.popStack(), - program = this.popStack(); - - // Avoid setting fn and inverse if neither are set. This allows - // helpers to do a check for `if (options.fn)` - if (program || inverse) { - options.fn = program || 'this.noop'; - options.inverse = inverse || 'this.noop'; - } - - // The parameters go on to the stack in order (making sure that they are evaluated in order) - // so we need to pop them off the stack in reverse order - var i = paramSize; - while (i--) { - param = this.popStack(); - params[i] = param; - - if (this.trackIds) { - ids[i] = this.popStack(); - } - if (this.stringParams) { - types[i] = this.popStack(); - contexts[i] = this.popStack(); - } - } - - if (this.trackIds) { - options.ids = this.source.generateArray(ids); - } - if (this.stringParams) { - options.types = this.source.generateArray(types); - options.contexts = this.source.generateArray(contexts); - } - - if (this.options.data) { - options.data = 'data'; - } - if (this.useBlockParams) { - options.blockParams = 'blockParams'; - } - return options; - }, - - setupHelperArgs: function setupHelperArgs(helper, paramSize, params, useRegister) { - var options = this.setupParams(helper, paramSize, params, true); - options = this.objectLiteral(options); - if (useRegister) { - this.useRegister('options'); - params.push('options'); - return ['options=', options]; - } else { - params.push(options); - return ''; - } - } - }; - - (function () { - var reservedWords = ('break else new var' + ' case finally return void' + ' catch for switch while' + ' continue function this with' + ' default if throw' + ' delete in try' + ' do instanceof typeof' + ' abstract enum int short' + ' boolean export interface static' + ' byte extends long super' + ' char final native synchronized' + ' class float package throws' + ' const goto private transient' + ' debugger implements protected volatile' + ' double import public let yield await' + ' null true false').split(' '); - - var compilerWords = JavaScriptCompiler.RESERVED_WORDS = {}; - - for (var i = 0, l = reservedWords.length; i < l; i++) { - compilerWords[reservedWords[i]] = true; - } - })(); - - JavaScriptCompiler.isValidJavaScriptVariableName = function (name) { - return !JavaScriptCompiler.RESERVED_WORDS[name] && /^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(name); - }; - - function strictLookup(requireTerminal, compiler, parts, type) { - var stack = compiler.popStack(), - i = 0, - len = parts.length; - if (requireTerminal) { - len--; - } - - for (; i < len; i++) { - stack = compiler.nameLookup(stack, parts[i], type); - } - - if (requireTerminal) { - return [compiler.aliasable('this.strict'), '(', stack, ', ', compiler.quotedString(parts[i]), ')']; - } else { - return stack; - } - } - - exports['default'] = JavaScriptCompiler; - module.exports = exports['default']; - -/***/ }, -/* 6 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var _AST = __webpack_require__(2); - - var _AST2 = _interopRequireDefault(_AST); - - function Visitor() { - this.parents = []; - } - - Visitor.prototype = { - constructor: Visitor, - mutating: false, - - // Visits a given value. If mutating, will replace the value if necessary. - acceptKey: function acceptKey(node, name) { - var value = this.accept(node[name]); - if (this.mutating) { - // Hacky sanity check: - if (value && (!value.type || !_AST2['default'][value.type])) { - throw new _Exception2['default']('Unexpected node type "' + value.type + '" found when accepting ' + name + ' on ' + node.type); - } - node[name] = value; - } - }, - - // Performs an accept operation with added sanity check to ensure - // required keys are not removed. - acceptRequired: function acceptRequired(node, name) { - this.acceptKey(node, name); - - if (!node[name]) { - throw new _Exception2['default'](node.type + ' requires ' + name); - } - }, - - // Traverses a given array. If mutating, empty respnses will be removed - // for child elements. - acceptArray: function acceptArray(array) { - for (var i = 0, l = array.length; i < l; i++) { - this.acceptKey(array, i); - - if (!array[i]) { - array.splice(i, 1); - i--; - l--; - } - } - }, - - accept: function accept(object) { - if (!object) { - return; - } - - if (this.current) { - this.parents.unshift(this.current); - } - this.current = object; - - var ret = this[object.type](object); - - this.current = this.parents.shift(); - - if (!this.mutating || ret) { - return ret; - } else if (ret !== false) { - return object; - } - }, - - Program: function Program(program) { - this.acceptArray(program.body); - }, - - MustacheStatement: function MustacheStatement(mustache) { - this.acceptRequired(mustache, 'path'); - this.acceptArray(mustache.params); - this.acceptKey(mustache, 'hash'); - }, - - BlockStatement: function BlockStatement(block) { - this.acceptRequired(block, 'path'); - this.acceptArray(block.params); - this.acceptKey(block, 'hash'); - - this.acceptKey(block, 'program'); - this.acceptKey(block, 'inverse'); - }, - - PartialStatement: function PartialStatement(partial) { - this.acceptRequired(partial, 'name'); - this.acceptArray(partial.params); - this.acceptKey(partial, 'hash'); - }, - - ContentStatement: function ContentStatement() {}, - CommentStatement: function CommentStatement() {}, - - SubExpression: function SubExpression(sexpr) { - this.acceptRequired(sexpr, 'path'); - this.acceptArray(sexpr.params); - this.acceptKey(sexpr, 'hash'); - }, - - PathExpression: function PathExpression() {}, - - StringLiteral: function StringLiteral() {}, - NumberLiteral: function NumberLiteral() {}, - BooleanLiteral: function BooleanLiteral() {}, - UndefinedLiteral: function UndefinedLiteral() {}, - NullLiteral: function NullLiteral() {}, - - Hash: function Hash(hash) { - this.acceptArray(hash.pairs); - }, - HashPair: function HashPair(pair) { - this.acceptRequired(pair, 'value'); - } - }; - - exports['default'] = Visitor; - module.exports = exports['default']; - /* content */ /* comment */ /* path */ /* string */ /* number */ /* bool */ /* literal */ /* literal */ - -/***/ }, -/* 7 */ -/***/ function(module, exports, __webpack_require__) { - - /* WEBPACK VAR INJECTION */(function(global) {'use strict'; - - exports.__esModule = true; - /*global window */ - - exports['default'] = function (Handlebars) { - /* istanbul ignore next */ - var root = typeof global !== 'undefined' ? global : window, - $Handlebars = root.Handlebars; - /* istanbul ignore next */ - Handlebars.noConflict = function () { - if (root.Handlebars === Handlebars) { - root.Handlebars = $Handlebars; - } - }; - }; - - module.exports = exports['default']; - /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) - -/***/ }, -/* 8 */ -/***/ function(module, exports, __webpack_require__) { - - "use strict"; - - exports["default"] = function (obj) { - return obj && obj.__esModule ? obj : { - "default": obj - }; - }; - - exports.__esModule = true; - -/***/ }, -/* 9 */ -/***/ function(module, exports, __webpack_require__) { - - "use strict"; - - exports["default"] = function (obj) { - if (obj && obj.__esModule) { - return obj; - } else { - var newObj = {}; - - if (typeof obj === "object" && obj !== null) { - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; - } - } - - newObj["default"] = obj; - return newObj; - } - }; - - exports.__esModule = true; - -/***/ }, -/* 10 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireWildcard = __webpack_require__(9)['default']; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - exports.HandlebarsEnvironment = HandlebarsEnvironment; - exports.createFrame = createFrame; - - var _import = __webpack_require__(13); - - var Utils = _interopRequireWildcard(_import); - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var VERSION = '3.0.1'; - exports.VERSION = VERSION; - var COMPILER_REVISION = 6; - - exports.COMPILER_REVISION = COMPILER_REVISION; - var REVISION_CHANGES = { - 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it - 2: '== 1.0.0-rc.3', - 3: '== 1.0.0-rc.4', - 4: '== 1.x.x', - 5: '== 2.0.0-alpha.x', - 6: '>= 2.0.0-beta.1' - }; - - exports.REVISION_CHANGES = REVISION_CHANGES; - var isArray = Utils.isArray, - isFunction = Utils.isFunction, - toString = Utils.toString, - objectType = '[object Object]'; - - function HandlebarsEnvironment(helpers, partials) { - this.helpers = helpers || {}; - this.partials = partials || {}; - - registerDefaultHelpers(this); - } - - HandlebarsEnvironment.prototype = { - constructor: HandlebarsEnvironment, - - logger: logger, - log: log, - - registerHelper: function registerHelper(name, fn) { - if (toString.call(name) === objectType) { - if (fn) { - throw new _Exception2['default']('Arg not supported with multiple helpers'); - } - Utils.extend(this.helpers, name); - } else { - this.helpers[name] = fn; - } - }, - unregisterHelper: function unregisterHelper(name) { - delete this.helpers[name]; - }, - - registerPartial: function registerPartial(name, partial) { - if (toString.call(name) === objectType) { - Utils.extend(this.partials, name); - } else { - if (typeof partial === 'undefined') { - throw new _Exception2['default']('Attempting to register a partial as undefined'); - } - this.partials[name] = partial; - } - }, - unregisterPartial: function unregisterPartial(name) { - delete this.partials[name]; - } - }; - - function registerDefaultHelpers(instance) { - instance.registerHelper('helperMissing', function () { - if (arguments.length === 1) { - // A missing field in a {{foo}} constuct. - return undefined; - } else { - // Someone is actually trying to call something, blow up. - throw new _Exception2['default']('Missing helper: "' + arguments[arguments.length - 1].name + '"'); - } - }); - - instance.registerHelper('blockHelperMissing', function (context, options) { - var inverse = options.inverse, - fn = options.fn; - - if (context === true) { - return fn(this); - } else if (context === false || context == null) { - return inverse(this); - } else if (isArray(context)) { - if (context.length > 0) { - if (options.ids) { - options.ids = [options.name]; - } - - return instance.helpers.each(context, options); - } else { - return inverse(this); - } - } else { - if (options.data && options.ids) { - var data = createFrame(options.data); - data.contextPath = Utils.appendContextPath(options.data.contextPath, options.name); - options = { data: data }; - } - - return fn(context, options); - } - }); - - instance.registerHelper('each', function (context, options) { - if (!options) { - throw new _Exception2['default']('Must pass iterator to #each'); - } - - var fn = options.fn, - inverse = options.inverse, - i = 0, - ret = '', - data = undefined, - contextPath = undefined; - - if (options.data && options.ids) { - contextPath = Utils.appendContextPath(options.data.contextPath, options.ids[0]) + '.'; - } - - if (isFunction(context)) { - context = context.call(this); - } - - if (options.data) { - data = createFrame(options.data); - } - - function execIteration(field, index, last) { - if (data) { - data.key = field; - data.index = index; - data.first = index === 0; - data.last = !!last; - - if (contextPath) { - data.contextPath = contextPath + field; - } - } - - ret = ret + fn(context[field], { - data: data, - blockParams: Utils.blockParams([context[field], field], [contextPath + field, null]) - }); - } - - if (context && typeof context === 'object') { - if (isArray(context)) { - for (var j = context.length; i < j; i++) { - execIteration(i, i, i === context.length - 1); - } - } else { - var priorKey = undefined; - - for (var key in context) { - if (context.hasOwnProperty(key)) { - // We're running the iterations one step out of sync so we can detect - // the last iteration without have to scan the object twice and create - // an itermediate keys array. - if (priorKey) { - execIteration(priorKey, i - 1); - } - priorKey = key; - i++; - } - } - if (priorKey) { - execIteration(priorKey, i - 1, true); - } - } - } - - if (i === 0) { - ret = inverse(this); - } - - return ret; - }); - - instance.registerHelper('if', function (conditional, options) { - if (isFunction(conditional)) { - conditional = conditional.call(this); - } - - // Default behavior is to render the positive path if the value is truthy and not empty. - // The `includeZero` option may be set to treat the condtional as purely not empty based on the - // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative. - if (!options.hash.includeZero && !conditional || Utils.isEmpty(conditional)) { - return options.inverse(this); - } else { - return options.fn(this); - } - }); - - instance.registerHelper('unless', function (conditional, options) { - return instance.helpers['if'].call(this, conditional, { fn: options.inverse, inverse: options.fn, hash: options.hash }); - }); - - instance.registerHelper('with', function (context, options) { - if (isFunction(context)) { - context = context.call(this); - } - - var fn = options.fn; - - if (!Utils.isEmpty(context)) { - if (options.data && options.ids) { - var data = createFrame(options.data); - data.contextPath = Utils.appendContextPath(options.data.contextPath, options.ids[0]); - options = { data: data }; - } - - return fn(context, options); - } else { - return options.inverse(this); - } - }); - - instance.registerHelper('log', function (message, options) { - var level = options.data && options.data.level != null ? parseInt(options.data.level, 10) : 1; - instance.log(level, message); - }); - - instance.registerHelper('lookup', function (obj, field) { - return obj && obj[field]; - }); - } - - var logger = { - methodMap: { 0: 'debug', 1: 'info', 2: 'warn', 3: 'error' }, - - // State enum - DEBUG: 0, - INFO: 1, - WARN: 2, - ERROR: 3, - level: 1, - - // Can be overridden in the host environment - log: function log(level, message) { - if (typeof console !== 'undefined' && logger.level <= level) { - var method = logger.methodMap[level]; - (console[method] || console.log).call(console, message); // eslint-disable-line no-console - } - } - }; - - exports.logger = logger; - var log = logger.log; - - exports.log = log; - - function createFrame(object) { - var frame = Utils.extend({}, object); - frame._parent = object; - return frame; - } - - /* [args, ]options */ - -/***/ }, -/* 11 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - exports.__esModule = true; - // Build out our basic SafeString type - function SafeString(string) { - this.string = string; - } - - SafeString.prototype.toString = SafeString.prototype.toHTML = function () { - return '' + this.string; - }; - - exports['default'] = SafeString; - module.exports = exports['default']; - -/***/ }, -/* 12 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - exports.__esModule = true; - - var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack']; - - function Exception(message, node) { - var loc = node && node.loc, - line = undefined, - column = undefined; - if (loc) { - line = loc.start.line; - column = loc.start.column; - - message += ' - ' + line + ':' + column; - } - - var tmp = Error.prototype.constructor.call(this, message); - - // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work. - for (var idx = 0; idx < errorProps.length; idx++) { - this[errorProps[idx]] = tmp[errorProps[idx]]; - } - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, Exception); - } - - if (loc) { - this.lineNumber = line; - this.column = column; - } - } - - Exception.prototype = new Error(); - - exports['default'] = Exception; - module.exports = exports['default']; - -/***/ }, -/* 13 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - exports.__esModule = true; - exports.extend = extend; - - // Older IE versions do not directly support indexOf so we must implement our own, sadly. - exports.indexOf = indexOf; - exports.escapeExpression = escapeExpression; - exports.isEmpty = isEmpty; - exports.blockParams = blockParams; - exports.appendContextPath = appendContextPath; - var escape = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - '\'': ''', - '`': '`' - }; - - var badChars = /[&<>"'`]/g, - possible = /[&<>"'`]/; - - function escapeChar(chr) { - return escape[chr]; - } - - function extend(obj /* , ...source */) { - for (var i = 1; i < arguments.length; i++) { - for (var key in arguments[i]) { - if (Object.prototype.hasOwnProperty.call(arguments[i], key)) { - obj[key] = arguments[i][key]; - } - } - } - - return obj; - } - - var toString = Object.prototype.toString; - - exports.toString = toString; - // Sourced from lodash - // https://github.com/bestiejs/lodash/blob/master/LICENSE.txt - /*eslint-disable func-style, no-var */ - var isFunction = function isFunction(value) { - return typeof value === 'function'; - }; - // fallback for older versions of Chrome and Safari - /* istanbul ignore next */ - if (isFunction(/x/)) { - exports.isFunction = isFunction = function (value) { - return typeof value === 'function' && toString.call(value) === '[object Function]'; - }; - } - var isFunction; - exports.isFunction = isFunction; - /*eslint-enable func-style, no-var */ - - /* istanbul ignore next */ - var isArray = Array.isArray || function (value) { - return value && typeof value === 'object' ? toString.call(value) === '[object Array]' : false; - };exports.isArray = isArray; - - function indexOf(array, value) { - for (var i = 0, len = array.length; i < len; i++) { - if (array[i] === value) { - return i; - } - } - return -1; - } - - function escapeExpression(string) { - if (typeof string !== 'string') { - // don't escape SafeStrings, since they're already safe - if (string && string.toHTML) { - return string.toHTML(); - } else if (string == null) { - return ''; - } else if (!string) { - return string + ''; - } - - // Force a string conversion as this will be done by the append regardless and - // the regex test will do this transparently behind the scenes, causing issues if - // an object's to string has escaped characters in it. - string = '' + string; - } - - if (!possible.test(string)) { - return string; - } - return string.replace(badChars, escapeChar); - } - - function isEmpty(value) { - if (!value && value !== 0) { - return true; - } else if (isArray(value) && value.length === 0) { - return true; - } else { - return false; - } - } - - function blockParams(params, ids) { - params.path = ids; - return params; - } - - function appendContextPath(contextPath, id) { - return (contextPath ? contextPath + '.' : '') + id; - } - -/***/ }, -/* 14 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireWildcard = __webpack_require__(9)['default']; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - exports.checkRevision = checkRevision; - - // TODO: Remove this line and break up compilePartial - - exports.template = template; - exports.wrapProgram = wrapProgram; - exports.resolvePartial = resolvePartial; - exports.invokePartial = invokePartial; - exports.noop = noop; - - var _import = __webpack_require__(13); - - var Utils = _interopRequireWildcard(_import); - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - var _COMPILER_REVISION$REVISION_CHANGES$createFrame = __webpack_require__(10); - - function checkRevision(compilerInfo) { - var compilerRevision = compilerInfo && compilerInfo[0] || 1, - currentRevision = _COMPILER_REVISION$REVISION_CHANGES$createFrame.COMPILER_REVISION; - - if (compilerRevision !== currentRevision) { - if (compilerRevision < currentRevision) { - var runtimeVersions = _COMPILER_REVISION$REVISION_CHANGES$createFrame.REVISION_CHANGES[currentRevision], - compilerVersions = _COMPILER_REVISION$REVISION_CHANGES$createFrame.REVISION_CHANGES[compilerRevision]; - throw new _Exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').'); - } else { - // Use the embedded version info since the runtime doesn't know about this revision yet - throw new _Exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').'); - } - } - } - - function template(templateSpec, env) { - /* istanbul ignore next */ - if (!env) { - throw new _Exception2['default']('No environment passed to template'); - } - if (!templateSpec || !templateSpec.main) { - throw new _Exception2['default']('Unknown template object: ' + typeof templateSpec); - } - - // Note: Using env.VM references rather than local var references throughout this section to allow - // for external users to override these as psuedo-supported APIs. - env.VM.checkRevision(templateSpec.compiler); - - function invokePartialWrapper(partial, context, options) { - if (options.hash) { - context = Utils.extend({}, context, options.hash); - } - - partial = env.VM.resolvePartial.call(this, partial, context, options); - var result = env.VM.invokePartial.call(this, partial, context, options); - - if (result == null && env.compile) { - options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env); - result = options.partials[options.name](context, options); - } - if (result != null) { - if (options.indent) { - var lines = result.split('\n'); - for (var i = 0, l = lines.length; i < l; i++) { - if (!lines[i] && i + 1 === l) { - break; - } - - lines[i] = options.indent + lines[i]; - } - result = lines.join('\n'); - } - return result; - } else { - throw new _Exception2['default']('The partial ' + options.name + ' could not be compiled when running in runtime-only mode'); - } - } - - // Just add water - var container = { - strict: function strict(obj, name) { - if (!(name in obj)) { - throw new _Exception2['default']('"' + name + '" not defined in ' + obj); - } - return obj[name]; - }, - lookup: function lookup(depths, name) { - var len = depths.length; - for (var i = 0; i < len; i++) { - if (depths[i] && depths[i][name] != null) { - return depths[i][name]; - } - } - }, - lambda: function lambda(current, context) { - return typeof current === 'function' ? current.call(context) : current; - }, - - escapeExpression: Utils.escapeExpression, - invokePartial: invokePartialWrapper, - - fn: function fn(i) { - return templateSpec[i]; - }, - - programs: [], - program: function program(i, data, declaredBlockParams, blockParams, depths) { - var programWrapper = this.programs[i], - fn = this.fn(i); - if (data || depths || blockParams || declaredBlockParams) { - programWrapper = wrapProgram(this, i, fn, data, declaredBlockParams, blockParams, depths); - } else if (!programWrapper) { - programWrapper = this.programs[i] = wrapProgram(this, i, fn); - } - return programWrapper; - }, - - data: function data(value, depth) { - while (value && depth--) { - value = value._parent; - } - return value; - }, - merge: function merge(param, common) { - var obj = param || common; - - if (param && common && param !== common) { - obj = Utils.extend({}, common, param); - } - - return obj; - }, - - noop: env.VM.noop, - compilerInfo: templateSpec.compiler - }; - - function ret(context) { - var options = arguments[1] === undefined ? {} : arguments[1]; - - var data = options.data; - - ret._setup(options); - if (!options.partial && templateSpec.useData) { - data = initData(context, data); - } - var depths = undefined, - blockParams = templateSpec.useBlockParams ? [] : undefined; - if (templateSpec.useDepths) { - depths = options.depths ? [context].concat(options.depths) : [context]; - } - - return templateSpec.main.call(container, context, container.helpers, container.partials, data, blockParams, depths); - } - ret.isTop = true; - - ret._setup = function (options) { - if (!options.partial) { - container.helpers = container.merge(options.helpers, env.helpers); - - if (templateSpec.usePartial) { - container.partials = container.merge(options.partials, env.partials); - } - } else { - container.helpers = options.helpers; - container.partials = options.partials; - } - }; - - ret._child = function (i, data, blockParams, depths) { - if (templateSpec.useBlockParams && !blockParams) { - throw new _Exception2['default']('must pass block params'); - } - if (templateSpec.useDepths && !depths) { - throw new _Exception2['default']('must pass parent depths'); - } - - return wrapProgram(container, i, templateSpec[i], data, 0, blockParams, depths); - }; - return ret; - } - - function wrapProgram(container, i, fn, data, declaredBlockParams, blockParams, depths) { - function prog(context) { - var options = arguments[1] === undefined ? {} : arguments[1]; - - return fn.call(container, context, container.helpers, container.partials, options.data || data, blockParams && [options.blockParams].concat(blockParams), depths && [context].concat(depths)); - } - prog.program = i; - prog.depth = depths ? depths.length : 0; - prog.blockParams = declaredBlockParams || 0; - return prog; - } - - function resolvePartial(partial, context, options) { - if (!partial) { - partial = options.partials[options.name]; - } else if (!partial.call && !options.name) { - // This is a dynamic partial that returned a string - options.name = partial; - partial = options.partials[partial]; - } - return partial; - } - - function invokePartial(partial, context, options) { - options.partial = true; - - if (partial === undefined) { - throw new _Exception2['default']('The partial ' + options.name + ' could not be found'); - } else if (partial instanceof Function) { - return partial(context, options); - } - } - - function noop() { - return ''; - } - - function initData(context, data) { - if (!data || !('root' in data)) { - data = data ? _COMPILER_REVISION$REVISION_CHANGES$createFrame.createFrame(data) : {}; - data.root = context; - } - return data; - } - -/***/ }, -/* 15 */ -/***/ function(module, exports, __webpack_require__) { - - "use strict"; - - exports.__esModule = true; - /* istanbul ignore next */ - /* Jison generated parser */ - var handlebars = (function () { - var parser = { trace: function trace() {}, - yy: {}, - symbols_: { error: 2, root: 3, program: 4, EOF: 5, program_repetition0: 6, statement: 7, mustache: 8, block: 9, rawBlock: 10, partial: 11, content: 12, COMMENT: 13, CONTENT: 14, openRawBlock: 15, END_RAW_BLOCK: 16, OPEN_RAW_BLOCK: 17, helperName: 18, openRawBlock_repetition0: 19, openRawBlock_option0: 20, CLOSE_RAW_BLOCK: 21, openBlock: 22, block_option0: 23, closeBlock: 24, openInverse: 25, block_option1: 26, OPEN_BLOCK: 27, openBlock_repetition0: 28, openBlock_option0: 29, openBlock_option1: 30, CLOSE: 31, OPEN_INVERSE: 32, openInverse_repetition0: 33, openInverse_option0: 34, openInverse_option1: 35, openInverseChain: 36, OPEN_INVERSE_CHAIN: 37, openInverseChain_repetition0: 38, openInverseChain_option0: 39, openInverseChain_option1: 40, inverseAndProgram: 41, INVERSE: 42, inverseChain: 43, inverseChain_option0: 44, OPEN_ENDBLOCK: 45, OPEN: 46, mustache_repetition0: 47, mustache_option0: 48, OPEN_UNESCAPED: 49, mustache_repetition1: 50, mustache_option1: 51, CLOSE_UNESCAPED: 52, OPEN_PARTIAL: 53, partialName: 54, partial_repetition0: 55, partial_option0: 56, param: 57, sexpr: 58, OPEN_SEXPR: 59, sexpr_repetition0: 60, sexpr_option0: 61, CLOSE_SEXPR: 62, hash: 63, hash_repetition_plus0: 64, hashSegment: 65, ID: 66, EQUALS: 67, blockParams: 68, OPEN_BLOCK_PARAMS: 69, blockParams_repetition_plus0: 70, CLOSE_BLOCK_PARAMS: 71, path: 72, dataName: 73, STRING: 74, NUMBER: 75, BOOLEAN: 76, UNDEFINED: 77, NULL: 78, DATA: 79, pathSegments: 80, SEP: 81, $accept: 0, $end: 1 }, - terminals_: { 2: "error", 5: "EOF", 13: "COMMENT", 14: "CONTENT", 16: "END_RAW_BLOCK", 17: "OPEN_RAW_BLOCK", 21: "CLOSE_RAW_BLOCK", 27: "OPEN_BLOCK", 31: "CLOSE", 32: "OPEN_INVERSE", 37: "OPEN_INVERSE_CHAIN", 42: "INVERSE", 45: "OPEN_ENDBLOCK", 46: "OPEN", 49: "OPEN_UNESCAPED", 52: "CLOSE_UNESCAPED", 53: "OPEN_PARTIAL", 59: "OPEN_SEXPR", 62: "CLOSE_SEXPR", 66: "ID", 67: "EQUALS", 69: "OPEN_BLOCK_PARAMS", 71: "CLOSE_BLOCK_PARAMS", 74: "STRING", 75: "NUMBER", 76: "BOOLEAN", 77: "UNDEFINED", 78: "NULL", 79: "DATA", 81: "SEP" }, - productions_: [0, [3, 2], [4, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [12, 1], [10, 3], [15, 5], [9, 4], [9, 4], [22, 6], [25, 6], [36, 6], [41, 2], [43, 3], [43, 1], [24, 3], [8, 5], [8, 5], [11, 5], [57, 1], [57, 1], [58, 5], [63, 1], [65, 3], [68, 3], [18, 1], [18, 1], [18, 1], [18, 1], [18, 1], [18, 1], [18, 1], [54, 1], [54, 1], [73, 2], [72, 1], [80, 3], [80, 1], [6, 0], [6, 2], [19, 0], [19, 2], [20, 0], [20, 1], [23, 0], [23, 1], [26, 0], [26, 1], [28, 0], [28, 2], [29, 0], [29, 1], [30, 0], [30, 1], [33, 0], [33, 2], [34, 0], [34, 1], [35, 0], [35, 1], [38, 0], [38, 2], [39, 0], [39, 1], [40, 0], [40, 1], [44, 0], [44, 1], [47, 0], [47, 2], [48, 0], [48, 1], [50, 0], [50, 2], [51, 0], [51, 1], [55, 0], [55, 2], [56, 0], [56, 1], [60, 0], [60, 2], [61, 0], [61, 1], [64, 1], [64, 2], [70, 1], [70, 2]], - performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { - - var $0 = $$.length - 1; - switch (yystate) { - case 1: - return $$[$0 - 1]; - break; - case 2: - this.$ = new yy.Program($$[$0], null, {}, yy.locInfo(this._$)); - break; - case 3: - this.$ = $$[$0]; - break; - case 4: - this.$ = $$[$0]; - break; - case 5: - this.$ = $$[$0]; - break; - case 6: - this.$ = $$[$0]; - break; - case 7: - this.$ = $$[$0]; - break; - case 8: - this.$ = new yy.CommentStatement(yy.stripComment($$[$0]), yy.stripFlags($$[$0], $$[$0]), yy.locInfo(this._$)); - break; - case 9: - this.$ = new yy.ContentStatement($$[$0], yy.locInfo(this._$)); - break; - case 10: - this.$ = yy.prepareRawBlock($$[$0 - 2], $$[$0 - 1], $$[$0], this._$); - break; - case 11: - this.$ = { path: $$[$0 - 3], params: $$[$0 - 2], hash: $$[$0 - 1] }; - break; - case 12: - this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], false, this._$); - break; - case 13: - this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], true, this._$); - break; - case 14: - this.$ = { path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) }; - break; - case 15: - this.$ = { path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) }; - break; - case 16: - this.$ = { path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) }; - break; - case 17: - this.$ = { strip: yy.stripFlags($$[$0 - 1], $$[$0 - 1]), program: $$[$0] }; - break; - case 18: - var inverse = yy.prepareBlock($$[$0 - 2], $$[$0 - 1], $$[$0], $$[$0], false, this._$), - program = new yy.Program([inverse], null, {}, yy.locInfo(this._$)); - program.chained = true; - - this.$ = { strip: $$[$0 - 2].strip, program: program, chain: true }; - - break; - case 19: - this.$ = $$[$0]; - break; - case 20: - this.$ = { path: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 2], $$[$0]) }; - break; - case 21: - this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$); - break; - case 22: - this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$); - break; - case 23: - this.$ = new yy.PartialStatement($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], yy.stripFlags($$[$0 - 4], $$[$0]), yy.locInfo(this._$)); - break; - case 24: - this.$ = $$[$0]; - break; - case 25: - this.$ = $$[$0]; - break; - case 26: - this.$ = new yy.SubExpression($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], yy.locInfo(this._$)); - break; - case 27: - this.$ = new yy.Hash($$[$0], yy.locInfo(this._$)); - break; - case 28: - this.$ = new yy.HashPair(yy.id($$[$0 - 2]), $$[$0], yy.locInfo(this._$)); - break; - case 29: - this.$ = yy.id($$[$0 - 1]); - break; - case 30: - this.$ = $$[$0]; - break; - case 31: - this.$ = $$[$0]; - break; - case 32: - this.$ = new yy.StringLiteral($$[$0], yy.locInfo(this._$)); - break; - case 33: - this.$ = new yy.NumberLiteral($$[$0], yy.locInfo(this._$)); - break; - case 34: - this.$ = new yy.BooleanLiteral($$[$0], yy.locInfo(this._$)); - break; - case 35: - this.$ = new yy.UndefinedLiteral(yy.locInfo(this._$)); - break; - case 36: - this.$ = new yy.NullLiteral(yy.locInfo(this._$)); - break; - case 37: - this.$ = $$[$0]; - break; - case 38: - this.$ = $$[$0]; - break; - case 39: - this.$ = yy.preparePath(true, $$[$0], this._$); - break; - case 40: - this.$ = yy.preparePath(false, $$[$0], this._$); - break; - case 41: - $$[$0 - 2].push({ part: yy.id($$[$0]), original: $$[$0], separator: $$[$0 - 1] });this.$ = $$[$0 - 2]; - break; - case 42: - this.$ = [{ part: yy.id($$[$0]), original: $$[$0] }]; - break; - case 43: - this.$ = []; - break; - case 44: - $$[$0 - 1].push($$[$0]); - break; - case 45: - this.$ = []; - break; - case 46: - $$[$0 - 1].push($$[$0]); - break; - case 53: - this.$ = []; - break; - case 54: - $$[$0 - 1].push($$[$0]); - break; - case 59: - this.$ = []; - break; - case 60: - $$[$0 - 1].push($$[$0]); - break; - case 65: - this.$ = []; - break; - case 66: - $$[$0 - 1].push($$[$0]); - break; - case 73: - this.$ = []; - break; - case 74: - $$[$0 - 1].push($$[$0]); - break; - case 77: - this.$ = []; - break; - case 78: - $$[$0 - 1].push($$[$0]); - break; - case 81: - this.$ = []; - break; - case 82: - $$[$0 - 1].push($$[$0]); - break; - case 85: - this.$ = []; - break; - case 86: - $$[$0 - 1].push($$[$0]); - break; - case 89: - this.$ = [$$[$0]]; - break; - case 90: - $$[$0 - 1].push($$[$0]); - break; - case 91: - this.$ = [$$[$0]]; - break; - case 92: - $$[$0 - 1].push($$[$0]); - break; - } - }, - table: [{ 3: 1, 4: 2, 5: [2, 43], 6: 3, 13: [2, 43], 14: [2, 43], 17: [2, 43], 27: [2, 43], 32: [2, 43], 46: [2, 43], 49: [2, 43], 53: [2, 43] }, { 1: [3] }, { 5: [1, 4] }, { 5: [2, 2], 7: 5, 8: 6, 9: 7, 10: 8, 11: 9, 12: 10, 13: [1, 11], 14: [1, 18], 15: 16, 17: [1, 21], 22: 14, 25: 15, 27: [1, 19], 32: [1, 20], 37: [2, 2], 42: [2, 2], 45: [2, 2], 46: [1, 12], 49: [1, 13], 53: [1, 17] }, { 1: [2, 1] }, { 5: [2, 44], 13: [2, 44], 14: [2, 44], 17: [2, 44], 27: [2, 44], 32: [2, 44], 37: [2, 44], 42: [2, 44], 45: [2, 44], 46: [2, 44], 49: [2, 44], 53: [2, 44] }, { 5: [2, 3], 13: [2, 3], 14: [2, 3], 17: [2, 3], 27: [2, 3], 32: [2, 3], 37: [2, 3], 42: [2, 3], 45: [2, 3], 46: [2, 3], 49: [2, 3], 53: [2, 3] }, { 5: [2, 4], 13: [2, 4], 14: [2, 4], 17: [2, 4], 27: [2, 4], 32: [2, 4], 37: [2, 4], 42: [2, 4], 45: [2, 4], 46: [2, 4], 49: [2, 4], 53: [2, 4] }, { 5: [2, 5], 13: [2, 5], 14: [2, 5], 17: [2, 5], 27: [2, 5], 32: [2, 5], 37: [2, 5], 42: [2, 5], 45: [2, 5], 46: [2, 5], 49: [2, 5], 53: [2, 5] }, { 5: [2, 6], 13: [2, 6], 14: [2, 6], 17: [2, 6], 27: [2, 6], 32: [2, 6], 37: [2, 6], 42: [2, 6], 45: [2, 6], 46: [2, 6], 49: [2, 6], 53: [2, 6] }, { 5: [2, 7], 13: [2, 7], 14: [2, 7], 17: [2, 7], 27: [2, 7], 32: [2, 7], 37: [2, 7], 42: [2, 7], 45: [2, 7], 46: [2, 7], 49: [2, 7], 53: [2, 7] }, { 5: [2, 8], 13: [2, 8], 14: [2, 8], 17: [2, 8], 27: [2, 8], 32: [2, 8], 37: [2, 8], 42: [2, 8], 45: [2, 8], 46: [2, 8], 49: [2, 8], 53: [2, 8] }, { 18: 22, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 18: 33, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 4: 34, 6: 3, 13: [2, 43], 14: [2, 43], 17: [2, 43], 27: [2, 43], 32: [2, 43], 37: [2, 43], 42: [2, 43], 45: [2, 43], 46: [2, 43], 49: [2, 43], 53: [2, 43] }, { 4: 35, 6: 3, 13: [2, 43], 14: [2, 43], 17: [2, 43], 27: [2, 43], 32: [2, 43], 42: [2, 43], 45: [2, 43], 46: [2, 43], 49: [2, 43], 53: [2, 43] }, { 12: 36, 14: [1, 18] }, { 18: 38, 54: 37, 58: 39, 59: [1, 40], 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 5: [2, 9], 13: [2, 9], 14: [2, 9], 16: [2, 9], 17: [2, 9], 27: [2, 9], 32: [2, 9], 37: [2, 9], 42: [2, 9], 45: [2, 9], 46: [2, 9], 49: [2, 9], 53: [2, 9] }, { 18: 41, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 18: 42, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 18: 43, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 31: [2, 73], 47: 44, 59: [2, 73], 66: [2, 73], 74: [2, 73], 75: [2, 73], 76: [2, 73], 77: [2, 73], 78: [2, 73], 79: [2, 73] }, { 21: [2, 30], 31: [2, 30], 52: [2, 30], 59: [2, 30], 62: [2, 30], 66: [2, 30], 69: [2, 30], 74: [2, 30], 75: [2, 30], 76: [2, 30], 77: [2, 30], 78: [2, 30], 79: [2, 30] }, { 21: [2, 31], 31: [2, 31], 52: [2, 31], 59: [2, 31], 62: [2, 31], 66: [2, 31], 69: [2, 31], 74: [2, 31], 75: [2, 31], 76: [2, 31], 77: [2, 31], 78: [2, 31], 79: [2, 31] }, { 21: [2, 32], 31: [2, 32], 52: [2, 32], 59: [2, 32], 62: [2, 32], 66: [2, 32], 69: [2, 32], 74: [2, 32], 75: [2, 32], 76: [2, 32], 77: [2, 32], 78: [2, 32], 79: [2, 32] }, { 21: [2, 33], 31: [2, 33], 52: [2, 33], 59: [2, 33], 62: [2, 33], 66: [2, 33], 69: [2, 33], 74: [2, 33], 75: [2, 33], 76: [2, 33], 77: [2, 33], 78: [2, 33], 79: [2, 33] }, { 21: [2, 34], 31: [2, 34], 52: [2, 34], 59: [2, 34], 62: [2, 34], 66: [2, 34], 69: [2, 34], 74: [2, 34], 75: [2, 34], 76: [2, 34], 77: [2, 34], 78: [2, 34], 79: [2, 34] }, { 21: [2, 35], 31: [2, 35], 52: [2, 35], 59: [2, 35], 62: [2, 35], 66: [2, 35], 69: [2, 35], 74: [2, 35], 75: [2, 35], 76: [2, 35], 77: [2, 35], 78: [2, 35], 79: [2, 35] }, { 21: [2, 36], 31: [2, 36], 52: [2, 36], 59: [2, 36], 62: [2, 36], 66: [2, 36], 69: [2, 36], 74: [2, 36], 75: [2, 36], 76: [2, 36], 77: [2, 36], 78: [2, 36], 79: [2, 36] }, { 21: [2, 40], 31: [2, 40], 52: [2, 40], 59: [2, 40], 62: [2, 40], 66: [2, 40], 69: [2, 40], 74: [2, 40], 75: [2, 40], 76: [2, 40], 77: [2, 40], 78: [2, 40], 79: [2, 40], 81: [1, 45] }, { 66: [1, 32], 80: 46 }, { 21: [2, 42], 31: [2, 42], 52: [2, 42], 59: [2, 42], 62: [2, 42], 66: [2, 42], 69: [2, 42], 74: [2, 42], 75: [2, 42], 76: [2, 42], 77: [2, 42], 78: [2, 42], 79: [2, 42], 81: [2, 42] }, { 50: 47, 52: [2, 77], 59: [2, 77], 66: [2, 77], 74: [2, 77], 75: [2, 77], 76: [2, 77], 77: [2, 77], 78: [2, 77], 79: [2, 77] }, { 23: 48, 36: 50, 37: [1, 52], 41: 51, 42: [1, 53], 43: 49, 45: [2, 49] }, { 26: 54, 41: 55, 42: [1, 53], 45: [2, 51] }, { 16: [1, 56] }, { 31: [2, 81], 55: 57, 59: [2, 81], 66: [2, 81], 74: [2, 81], 75: [2, 81], 76: [2, 81], 77: [2, 81], 78: [2, 81], 79: [2, 81] }, { 31: [2, 37], 59: [2, 37], 66: [2, 37], 74: [2, 37], 75: [2, 37], 76: [2, 37], 77: [2, 37], 78: [2, 37], 79: [2, 37] }, { 31: [2, 38], 59: [2, 38], 66: [2, 38], 74: [2, 38], 75: [2, 38], 76: [2, 38], 77: [2, 38], 78: [2, 38], 79: [2, 38] }, { 18: 58, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 28: 59, 31: [2, 53], 59: [2, 53], 66: [2, 53], 69: [2, 53], 74: [2, 53], 75: [2, 53], 76: [2, 53], 77: [2, 53], 78: [2, 53], 79: [2, 53] }, { 31: [2, 59], 33: 60, 59: [2, 59], 66: [2, 59], 69: [2, 59], 74: [2, 59], 75: [2, 59], 76: [2, 59], 77: [2, 59], 78: [2, 59], 79: [2, 59] }, { 19: 61, 21: [2, 45], 59: [2, 45], 66: [2, 45], 74: [2, 45], 75: [2, 45], 76: [2, 45], 77: [2, 45], 78: [2, 45], 79: [2, 45] }, { 18: 65, 31: [2, 75], 48: 62, 57: 63, 58: 66, 59: [1, 40], 63: 64, 64: 67, 65: 68, 66: [1, 69], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 66: [1, 70] }, { 21: [2, 39], 31: [2, 39], 52: [2, 39], 59: [2, 39], 62: [2, 39], 66: [2, 39], 69: [2, 39], 74: [2, 39], 75: [2, 39], 76: [2, 39], 77: [2, 39], 78: [2, 39], 79: [2, 39], 81: [1, 45] }, { 18: 65, 51: 71, 52: [2, 79], 57: 72, 58: 66, 59: [1, 40], 63: 73, 64: 67, 65: 68, 66: [1, 69], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 24: 74, 45: [1, 75] }, { 45: [2, 50] }, { 4: 76, 6: 3, 13: [2, 43], 14: [2, 43], 17: [2, 43], 27: [2, 43], 32: [2, 43], 37: [2, 43], 42: [2, 43], 45: [2, 43], 46: [2, 43], 49: [2, 43], 53: [2, 43] }, { 45: [2, 19] }, { 18: 77, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 4: 78, 6: 3, 13: [2, 43], 14: [2, 43], 17: [2, 43], 27: [2, 43], 32: [2, 43], 45: [2, 43], 46: [2, 43], 49: [2, 43], 53: [2, 43] }, { 24: 79, 45: [1, 75] }, { 45: [2, 52] }, { 5: [2, 10], 13: [2, 10], 14: [2, 10], 17: [2, 10], 27: [2, 10], 32: [2, 10], 37: [2, 10], 42: [2, 10], 45: [2, 10], 46: [2, 10], 49: [2, 10], 53: [2, 10] }, { 18: 65, 31: [2, 83], 56: 80, 57: 81, 58: 66, 59: [1, 40], 63: 82, 64: 67, 65: 68, 66: [1, 69], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 59: [2, 85], 60: 83, 62: [2, 85], 66: [2, 85], 74: [2, 85], 75: [2, 85], 76: [2, 85], 77: [2, 85], 78: [2, 85], 79: [2, 85] }, { 18: 65, 29: 84, 31: [2, 55], 57: 85, 58: 66, 59: [1, 40], 63: 86, 64: 67, 65: 68, 66: [1, 69], 69: [2, 55], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 18: 65, 31: [2, 61], 34: 87, 57: 88, 58: 66, 59: [1, 40], 63: 89, 64: 67, 65: 68, 66: [1, 69], 69: [2, 61], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 18: 65, 20: 90, 21: [2, 47], 57: 91, 58: 66, 59: [1, 40], 63: 92, 64: 67, 65: 68, 66: [1, 69], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 31: [1, 93] }, { 31: [2, 74], 59: [2, 74], 66: [2, 74], 74: [2, 74], 75: [2, 74], 76: [2, 74], 77: [2, 74], 78: [2, 74], 79: [2, 74] }, { 31: [2, 76] }, { 21: [2, 24], 31: [2, 24], 52: [2, 24], 59: [2, 24], 62: [2, 24], 66: [2, 24], 69: [2, 24], 74: [2, 24], 75: [2, 24], 76: [2, 24], 77: [2, 24], 78: [2, 24], 79: [2, 24] }, { 21: [2, 25], 31: [2, 25], 52: [2, 25], 59: [2, 25], 62: [2, 25], 66: [2, 25], 69: [2, 25], 74: [2, 25], 75: [2, 25], 76: [2, 25], 77: [2, 25], 78: [2, 25], 79: [2, 25] }, { 21: [2, 27], 31: [2, 27], 52: [2, 27], 62: [2, 27], 65: 94, 66: [1, 95], 69: [2, 27] }, { 21: [2, 89], 31: [2, 89], 52: [2, 89], 62: [2, 89], 66: [2, 89], 69: [2, 89] }, { 21: [2, 42], 31: [2, 42], 52: [2, 42], 59: [2, 42], 62: [2, 42], 66: [2, 42], 67: [1, 96], 69: [2, 42], 74: [2, 42], 75: [2, 42], 76: [2, 42], 77: [2, 42], 78: [2, 42], 79: [2, 42], 81: [2, 42] }, { 21: [2, 41], 31: [2, 41], 52: [2, 41], 59: [2, 41], 62: [2, 41], 66: [2, 41], 69: [2, 41], 74: [2, 41], 75: [2, 41], 76: [2, 41], 77: [2, 41], 78: [2, 41], 79: [2, 41], 81: [2, 41] }, { 52: [1, 97] }, { 52: [2, 78], 59: [2, 78], 66: [2, 78], 74: [2, 78], 75: [2, 78], 76: [2, 78], 77: [2, 78], 78: [2, 78], 79: [2, 78] }, { 52: [2, 80] }, { 5: [2, 12], 13: [2, 12], 14: [2, 12], 17: [2, 12], 27: [2, 12], 32: [2, 12], 37: [2, 12], 42: [2, 12], 45: [2, 12], 46: [2, 12], 49: [2, 12], 53: [2, 12] }, { 18: 98, 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 36: 50, 37: [1, 52], 41: 51, 42: [1, 53], 43: 100, 44: 99, 45: [2, 71] }, { 31: [2, 65], 38: 101, 59: [2, 65], 66: [2, 65], 69: [2, 65], 74: [2, 65], 75: [2, 65], 76: [2, 65], 77: [2, 65], 78: [2, 65], 79: [2, 65] }, { 45: [2, 17] }, { 5: [2, 13], 13: [2, 13], 14: [2, 13], 17: [2, 13], 27: [2, 13], 32: [2, 13], 37: [2, 13], 42: [2, 13], 45: [2, 13], 46: [2, 13], 49: [2, 13], 53: [2, 13] }, { 31: [1, 102] }, { 31: [2, 82], 59: [2, 82], 66: [2, 82], 74: [2, 82], 75: [2, 82], 76: [2, 82], 77: [2, 82], 78: [2, 82], 79: [2, 82] }, { 31: [2, 84] }, { 18: 65, 57: 104, 58: 66, 59: [1, 40], 61: 103, 62: [2, 87], 63: 105, 64: 67, 65: 68, 66: [1, 69], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 30: 106, 31: [2, 57], 68: 107, 69: [1, 108] }, { 31: [2, 54], 59: [2, 54], 66: [2, 54], 69: [2, 54], 74: [2, 54], 75: [2, 54], 76: [2, 54], 77: [2, 54], 78: [2, 54], 79: [2, 54] }, { 31: [2, 56], 69: [2, 56] }, { 31: [2, 63], 35: 109, 68: 110, 69: [1, 108] }, { 31: [2, 60], 59: [2, 60], 66: [2, 60], 69: [2, 60], 74: [2, 60], 75: [2, 60], 76: [2, 60], 77: [2, 60], 78: [2, 60], 79: [2, 60] }, { 31: [2, 62], 69: [2, 62] }, { 21: [1, 111] }, { 21: [2, 46], 59: [2, 46], 66: [2, 46], 74: [2, 46], 75: [2, 46], 76: [2, 46], 77: [2, 46], 78: [2, 46], 79: [2, 46] }, { 21: [2, 48] }, { 5: [2, 21], 13: [2, 21], 14: [2, 21], 17: [2, 21], 27: [2, 21], 32: [2, 21], 37: [2, 21], 42: [2, 21], 45: [2, 21], 46: [2, 21], 49: [2, 21], 53: [2, 21] }, { 21: [2, 90], 31: [2, 90], 52: [2, 90], 62: [2, 90], 66: [2, 90], 69: [2, 90] }, { 67: [1, 96] }, { 18: 65, 57: 112, 58: 66, 59: [1, 40], 66: [1, 32], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 5: [2, 22], 13: [2, 22], 14: [2, 22], 17: [2, 22], 27: [2, 22], 32: [2, 22], 37: [2, 22], 42: [2, 22], 45: [2, 22], 46: [2, 22], 49: [2, 22], 53: [2, 22] }, { 31: [1, 113] }, { 45: [2, 18] }, { 45: [2, 72] }, { 18: 65, 31: [2, 67], 39: 114, 57: 115, 58: 66, 59: [1, 40], 63: 116, 64: 67, 65: 68, 66: [1, 69], 69: [2, 67], 72: 23, 73: 24, 74: [1, 25], 75: [1, 26], 76: [1, 27], 77: [1, 28], 78: [1, 29], 79: [1, 31], 80: 30 }, { 5: [2, 23], 13: [2, 23], 14: [2, 23], 17: [2, 23], 27: [2, 23], 32: [2, 23], 37: [2, 23], 42: [2, 23], 45: [2, 23], 46: [2, 23], 49: [2, 23], 53: [2, 23] }, { 62: [1, 117] }, { 59: [2, 86], 62: [2, 86], 66: [2, 86], 74: [2, 86], 75: [2, 86], 76: [2, 86], 77: [2, 86], 78: [2, 86], 79: [2, 86] }, { 62: [2, 88] }, { 31: [1, 118] }, { 31: [2, 58] }, { 66: [1, 120], 70: 119 }, { 31: [1, 121] }, { 31: [2, 64] }, { 14: [2, 11] }, { 21: [2, 28], 31: [2, 28], 52: [2, 28], 62: [2, 28], 66: [2, 28], 69: [2, 28] }, { 5: [2, 20], 13: [2, 20], 14: [2, 20], 17: [2, 20], 27: [2, 20], 32: [2, 20], 37: [2, 20], 42: [2, 20], 45: [2, 20], 46: [2, 20], 49: [2, 20], 53: [2, 20] }, { 31: [2, 69], 40: 122, 68: 123, 69: [1, 108] }, { 31: [2, 66], 59: [2, 66], 66: [2, 66], 69: [2, 66], 74: [2, 66], 75: [2, 66], 76: [2, 66], 77: [2, 66], 78: [2, 66], 79: [2, 66] }, { 31: [2, 68], 69: [2, 68] }, { 21: [2, 26], 31: [2, 26], 52: [2, 26], 59: [2, 26], 62: [2, 26], 66: [2, 26], 69: [2, 26], 74: [2, 26], 75: [2, 26], 76: [2, 26], 77: [2, 26], 78: [2, 26], 79: [2, 26] }, { 13: [2, 14], 14: [2, 14], 17: [2, 14], 27: [2, 14], 32: [2, 14], 37: [2, 14], 42: [2, 14], 45: [2, 14], 46: [2, 14], 49: [2, 14], 53: [2, 14] }, { 66: [1, 125], 71: [1, 124] }, { 66: [2, 91], 71: [2, 91] }, { 13: [2, 15], 14: [2, 15], 17: [2, 15], 27: [2, 15], 32: [2, 15], 42: [2, 15], 45: [2, 15], 46: [2, 15], 49: [2, 15], 53: [2, 15] }, { 31: [1, 126] }, { 31: [2, 70] }, { 31: [2, 29] }, { 66: [2, 92], 71: [2, 92] }, { 13: [2, 16], 14: [2, 16], 17: [2, 16], 27: [2, 16], 32: [2, 16], 37: [2, 16], 42: [2, 16], 45: [2, 16], 46: [2, 16], 49: [2, 16], 53: [2, 16] }], - defaultActions: { 4: [2, 1], 49: [2, 50], 51: [2, 19], 55: [2, 52], 64: [2, 76], 73: [2, 80], 78: [2, 17], 82: [2, 84], 92: [2, 48], 99: [2, 18], 100: [2, 72], 105: [2, 88], 107: [2, 58], 110: [2, 64], 111: [2, 11], 123: [2, 70], 124: [2, 29] }, - parseError: function parseError(str, hash) { - throw new Error(str); - }, - parse: function parse(input) { - var self = this, - stack = [0], - vstack = [null], - lstack = [], - table = this.table, - yytext = "", - yylineno = 0, - yyleng = 0, - recovering = 0, - TERROR = 2, - EOF = 1; - this.lexer.setInput(input); - this.lexer.yy = this.yy; - this.yy.lexer = this.lexer; - this.yy.parser = this; - if (typeof this.lexer.yylloc == "undefined") this.lexer.yylloc = {}; - var yyloc = this.lexer.yylloc; - lstack.push(yyloc); - var ranges = this.lexer.options && this.lexer.options.ranges; - if (typeof this.yy.parseError === "function") this.parseError = this.yy.parseError; - function popStack(n) { - stack.length = stack.length - 2 * n; - vstack.length = vstack.length - n; - lstack.length = lstack.length - n; - } - function lex() { - var token; - token = self.lexer.lex() || 1; - if (typeof token !== "number") { - token = self.symbols_[token] || token; - } - return token; - } - var symbol, - preErrorSymbol, - state, - action, - a, - r, - yyval = {}, - p, - len, - newState, - expected; - while (true) { - state = stack[stack.length - 1]; - if (this.defaultActions[state]) { - action = this.defaultActions[state]; - } else { - if (symbol === null || typeof symbol == "undefined") { - symbol = lex(); - } - action = table[state] && table[state][symbol]; - } - if (typeof action === "undefined" || !action.length || !action[0]) { - var errStr = ""; - if (!recovering) { - expected = []; - for (p in table[state]) if (this.terminals_[p] && p > 2) { - expected.push("'" + this.terminals_[p] + "'"); - } - if (this.lexer.showPosition) { - errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; - } else { - errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1 ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); - } - this.parseError(errStr, { text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected: expected }); - } - } - if (action[0] instanceof Array && action.length > 1) { - throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); - } - switch (action[0]) { - case 1: - stack.push(symbol); - vstack.push(this.lexer.yytext); - lstack.push(this.lexer.yylloc); - stack.push(action[1]); - symbol = null; - if (!preErrorSymbol) { - yyleng = this.lexer.yyleng; - yytext = this.lexer.yytext; - yylineno = this.lexer.yylineno; - yyloc = this.lexer.yylloc; - if (recovering > 0) recovering--; - } else { - symbol = preErrorSymbol; - preErrorSymbol = null; - } - break; - case 2: - len = this.productions_[action[1]][1]; - yyval.$ = vstack[vstack.length - len]; - yyval._$ = { first_line: lstack[lstack.length - (len || 1)].first_line, last_line: lstack[lstack.length - 1].last_line, first_column: lstack[lstack.length - (len || 1)].first_column, last_column: lstack[lstack.length - 1].last_column }; - if (ranges) { - yyval._$.range = [lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1]]; - } - r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack); - if (typeof r !== "undefined") { - return r; - } - if (len) { - stack = stack.slice(0, -1 * len * 2); - vstack = vstack.slice(0, -1 * len); - lstack = lstack.slice(0, -1 * len); - } - stack.push(this.productions_[action[1]][0]); - vstack.push(yyval.$); - lstack.push(yyval._$); - newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; - stack.push(newState); - break; - case 3: - return true; - } - } - return true; - } - }; - /* Jison generated lexer */ - var lexer = (function () { - var lexer = { EOF: 1, - parseError: function parseError(str, hash) { - if (this.yy.parser) { - this.yy.parser.parseError(str, hash); - } else { - throw new Error(str); - } - }, - setInput: function setInput(input) { - this._input = input; - this._more = this._less = this.done = false; - this.yylineno = this.yyleng = 0; - this.yytext = this.matched = this.match = ""; - this.conditionStack = ["INITIAL"]; - this.yylloc = { first_line: 1, first_column: 0, last_line: 1, last_column: 0 }; - if (this.options.ranges) this.yylloc.range = [0, 0]; - this.offset = 0; - return this; - }, - input: function input() { - var ch = this._input[0]; - this.yytext += ch; - this.yyleng++; - this.offset++; - this.match += ch; - this.matched += ch; - var lines = ch.match(/(?:\r\n?|\n).*/g); - if (lines) { - this.yylineno++; - this.yylloc.last_line++; - } else { - this.yylloc.last_column++; - } - if (this.options.ranges) this.yylloc.range[1]++; - - this._input = this._input.slice(1); - return ch; - }, - unput: function unput(ch) { - var len = ch.length; - var lines = ch.split(/(?:\r\n?|\n)/g); - - this._input = ch + this._input; - this.yytext = this.yytext.substr(0, this.yytext.length - len - 1); - //this.yyleng -= len; - this.offset -= len; - var oldLines = this.match.split(/(?:\r\n?|\n)/g); - this.match = this.match.substr(0, this.match.length - 1); - this.matched = this.matched.substr(0, this.matched.length - 1); - - if (lines.length - 1) this.yylineno -= lines.length - 1; - var r = this.yylloc.range; - - this.yylloc = { first_line: this.yylloc.first_line, - last_line: this.yylineno + 1, - first_column: this.yylloc.first_column, - last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len - }; - - if (this.options.ranges) { - this.yylloc.range = [r[0], r[0] + this.yyleng - len]; - } - return this; - }, - more: function more() { - this._more = true; - return this; - }, - less: function less(n) { - this.unput(this.match.slice(n)); - }, - pastInput: function pastInput() { - var past = this.matched.substr(0, this.matched.length - this.match.length); - return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); - }, - upcomingInput: function upcomingInput() { - var next = this.match; - if (next.length < 20) { - next += this._input.substr(0, 20 - next.length); - } - return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); - }, - showPosition: function showPosition() { - var pre = this.pastInput(); - var c = new Array(pre.length + 1).join("-"); - return pre + this.upcomingInput() + "\n" + c + "^"; - }, - next: function next() { - if (this.done) { - return this.EOF; - } - if (!this._input) this.done = true; - - var token, match, tempMatch, index, col, lines; - if (!this._more) { - this.yytext = ""; - this.match = ""; - } - var rules = this._currentRules(); - for (var i = 0; i < rules.length; i++) { - tempMatch = this._input.match(this.rules[rules[i]]); - if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { - match = tempMatch; - index = i; - if (!this.options.flex) break; - } - } - if (match) { - lines = match[0].match(/(?:\r\n?|\n).*/g); - if (lines) this.yylineno += lines.length; - this.yylloc = { first_line: this.yylloc.last_line, - last_line: this.yylineno + 1, - first_column: this.yylloc.last_column, - last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length }; - this.yytext += match[0]; - this.match += match[0]; - this.matches = match; - this.yyleng = this.yytext.length; - if (this.options.ranges) { - this.yylloc.range = [this.offset, this.offset += this.yyleng]; - } - this._more = false; - this._input = this._input.slice(match[0].length); - this.matched += match[0]; - token = this.performAction.call(this, this.yy, this, rules[index], this.conditionStack[this.conditionStack.length - 1]); - if (this.done && this._input) this.done = false; - if (token) { - return token; - } else { - return; - } - } - if (this._input === "") { - return this.EOF; - } else { - return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { text: "", token: null, line: this.yylineno }); - } - }, - lex: function lex() { - var r = this.next(); - if (typeof r !== "undefined") { - return r; - } else { - return this.lex(); - } - }, - begin: function begin(condition) { - this.conditionStack.push(condition); - }, - popState: function popState() { - return this.conditionStack.pop(); - }, - _currentRules: function _currentRules() { - return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; - }, - topState: function topState() { - return this.conditionStack[this.conditionStack.length - 2]; - }, - pushState: function begin(condition) { - this.begin(condition); - } }; - lexer.options = {}; - lexer.performAction = function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { - - function strip(start, end) { - return yy_.yytext = yy_.yytext.substr(start, yy_.yyleng - end); - } - - var YYSTATE = YY_START; - switch ($avoiding_name_collisions) { - case 0: - if (yy_.yytext.slice(-2) === "\\\\") { - strip(0, 1); - this.begin("mu"); - } else if (yy_.yytext.slice(-1) === "\\") { - strip(0, 1); - this.begin("emu"); - } else { - this.begin("mu"); - } - if (yy_.yytext) { - return 14; - }break; - case 1: - return 14; - break; - case 2: - this.popState(); - return 14; - - break; - case 3: - yy_.yytext = yy_.yytext.substr(5, yy_.yyleng - 9); - this.popState(); - return 16; - - break; - case 4: - return 14; - break; - case 5: - this.popState(); - return 13; - - break; - case 6: - return 59; - break; - case 7: - return 62; - break; - case 8: - return 17; - break; - case 9: - this.popState(); - this.begin("raw"); - return 21; - - break; - case 10: - return 53; - break; - case 11: - return 27; - break; - case 12: - return 45; - break; - case 13: - this.popState();return 42; - break; - case 14: - this.popState();return 42; - break; - case 15: - return 32; - break; - case 16: - return 37; - break; - case 17: - return 49; - break; - case 18: - return 46; - break; - case 19: - this.unput(yy_.yytext); - this.popState(); - this.begin("com"); - - break; - case 20: - this.popState(); - return 13; - - break; - case 21: - return 46; - break; - case 22: - return 67; - break; - case 23: - return 66; - break; - case 24: - return 66; - break; - case 25: - return 81; - break; - case 26: - // ignore whitespace - break; - case 27: - this.popState();return 52; - break; - case 28: - this.popState();return 31; - break; - case 29: - yy_.yytext = strip(1, 2).replace(/\\"/g, "\"");return 74; - break; - case 30: - yy_.yytext = strip(1, 2).replace(/\\'/g, "'");return 74; - break; - case 31: - return 79; - break; - case 32: - return 76; - break; - case 33: - return 76; - break; - case 34: - return 77; - break; - case 35: - return 78; - break; - case 36: - return 75; - break; - case 37: - return 69; - break; - case 38: - return 71; - break; - case 39: - return 66; - break; - case 40: - return 66; - break; - case 41: - return "INVALID"; - break; - case 42: - return 5; - break; - } - }; - lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/, /^(?:[^\x00]+)/, /^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/, /^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/, /^(?:[^\x00]*?(?=(\{\{\{\{\/)))/, /^(?:[\s\S]*?--(~)?\}\})/, /^(?:\()/, /^(?:\))/, /^(?:\{\{\{\{)/, /^(?:\}\}\}\})/, /^(?:\{\{(~)?>)/, /^(?:\{\{(~)?#)/, /^(?:\{\{(~)?\/)/, /^(?:\{\{(~)?\^\s*(~)?\}\})/, /^(?:\{\{(~)?\s*else\s*(~)?\}\})/, /^(?:\{\{(~)?\^)/, /^(?:\{\{(~)?\s*else\b)/, /^(?:\{\{(~)?\{)/, /^(?:\{\{(~)?&)/, /^(?:\{\{(~)?!--)/, /^(?:\{\{(~)?![\s\S]*?\}\})/, /^(?:\{\{(~)?)/, /^(?:=)/, /^(?:\.\.)/, /^(?:\.(?=([=~}\s\/.)|])))/, /^(?:[\/.])/, /^(?:\s+)/, /^(?:\}(~)?\}\})/, /^(?:(~)?\}\})/, /^(?:"(\\["]|[^"])*")/, /^(?:'(\\[']|[^'])*')/, /^(?:@)/, /^(?:true(?=([~}\s)])))/, /^(?:false(?=([~}\s)])))/, /^(?:undefined(?=([~}\s)])))/, /^(?:null(?=([~}\s)])))/, /^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/, /^(?:as\s+\|)/, /^(?:\|)/, /^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/, /^(?:\[[^\]]*\])/, /^(?:.)/, /^(?:$)/]; - lexer.conditions = { mu: { rules: [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42], inclusive: false }, emu: { rules: [2], inclusive: false }, com: { rules: [5], inclusive: false }, raw: { rules: [3, 4], inclusive: false }, INITIAL: { rules: [0, 1, 42], inclusive: true } }; - return lexer; - })(); - parser.lexer = lexer; - function Parser() { - this.yy = {}; - }Parser.prototype = parser;parser.Parser = Parser; - return new Parser(); - })();exports["default"] = handlebars; - module.exports = exports["default"]; - -/***/ }, -/* 16 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - - var _Visitor = __webpack_require__(6); - - var _Visitor2 = _interopRequireDefault(_Visitor); - - function WhitespaceControl() {} - WhitespaceControl.prototype = new _Visitor2['default'](); - - WhitespaceControl.prototype.Program = function (program) { - var isRoot = !this.isRootSeen; - this.isRootSeen = true; - - var body = program.body; - for (var i = 0, l = body.length; i < l; i++) { - var current = body[i], - strip = this.accept(current); - - if (!strip) { - continue; - } - - var _isPrevWhitespace = isPrevWhitespace(body, i, isRoot), - _isNextWhitespace = isNextWhitespace(body, i, isRoot), - openStandalone = strip.openStandalone && _isPrevWhitespace, - closeStandalone = strip.closeStandalone && _isNextWhitespace, - inlineStandalone = strip.inlineStandalone && _isPrevWhitespace && _isNextWhitespace; - - if (strip.close) { - omitRight(body, i, true); - } - if (strip.open) { - omitLeft(body, i, true); - } - - if (inlineStandalone) { - omitRight(body, i); - - if (omitLeft(body, i)) { - // If we are on a standalone node, save the indent info for partials - if (current.type === 'PartialStatement') { - // Pull out the whitespace from the final line - current.indent = /([ \t]+$)/.exec(body[i - 1].original)[1]; - } - } - } - if (openStandalone) { - omitRight((current.program || current.inverse).body); - - // Strip out the previous content node if it's whitespace only - omitLeft(body, i); - } - if (closeStandalone) { - // Always strip the next node - omitRight(body, i); - - omitLeft((current.inverse || current.program).body); - } - } - - return program; - }; - WhitespaceControl.prototype.BlockStatement = function (block) { - this.accept(block.program); - this.accept(block.inverse); - - // Find the inverse program that is involed with whitespace stripping. - var program = block.program || block.inverse, - inverse = block.program && block.inverse, - firstInverse = inverse, - lastInverse = inverse; - - if (inverse && inverse.chained) { - firstInverse = inverse.body[0].program; - - // Walk the inverse chain to find the last inverse that is actually in the chain. - while (lastInverse.chained) { - lastInverse = lastInverse.body[lastInverse.body.length - 1].program; - } - } - - var strip = { - open: block.openStrip.open, - close: block.closeStrip.close, - - // Determine the standalone candiacy. Basically flag our content as being possibly standalone - // so our parent can determine if we actually are standalone - openStandalone: isNextWhitespace(program.body), - closeStandalone: isPrevWhitespace((firstInverse || program).body) - }; - - if (block.openStrip.close) { - omitRight(program.body, null, true); - } - - if (inverse) { - var inverseStrip = block.inverseStrip; - - if (inverseStrip.open) { - omitLeft(program.body, null, true); - } - - if (inverseStrip.close) { - omitRight(firstInverse.body, null, true); - } - if (block.closeStrip.open) { - omitLeft(lastInverse.body, null, true); - } - - // Find standalone else statments - if (isPrevWhitespace(program.body) && isNextWhitespace(firstInverse.body)) { - omitLeft(program.body); - omitRight(firstInverse.body); - } - } else if (block.closeStrip.open) { - omitLeft(program.body, null, true); - } - - return strip; - }; - - WhitespaceControl.prototype.MustacheStatement = function (mustache) { - return mustache.strip; - }; - - WhitespaceControl.prototype.PartialStatement = WhitespaceControl.prototype.CommentStatement = function (node) { - /* istanbul ignore next */ - var strip = node.strip || {}; - return { - inlineStandalone: true, - open: strip.open, - close: strip.close - }; - }; - - function isPrevWhitespace(body, i, isRoot) { - if (i === undefined) { - i = body.length; - } - - // Nodes that end with newlines are considered whitespace (but are special - // cased for strip operations) - var prev = body[i - 1], - sibling = body[i - 2]; - if (!prev) { - return isRoot; - } - - if (prev.type === 'ContentStatement') { - return (sibling || !isRoot ? /\r?\n\s*?$/ : /(^|\r?\n)\s*?$/).test(prev.original); - } - } - function isNextWhitespace(body, i, isRoot) { - if (i === undefined) { - i = -1; - } - - var next = body[i + 1], - sibling = body[i + 2]; - if (!next) { - return isRoot; - } - - if (next.type === 'ContentStatement') { - return (sibling || !isRoot ? /^\s*?\r?\n/ : /^\s*?(\r?\n|$)/).test(next.original); - } - } - - // Marks the node to the right of the position as omitted. - // I.e. {{foo}}' ' will mark the ' ' node as omitted. - // - // If i is undefined, then the first child will be marked as such. - // - // If mulitple is truthy then all whitespace will be stripped out until non-whitespace - // content is met. - function omitRight(body, i, multiple) { - var current = body[i == null ? 0 : i + 1]; - if (!current || current.type !== 'ContentStatement' || !multiple && current.rightStripped) { - return; - } - - var original = current.value; - current.value = current.value.replace(multiple ? /^\s+/ : /^[ \t]*\r?\n?/, ''); - current.rightStripped = current.value !== original; - } - - // Marks the node to the left of the position as omitted. - // I.e. ' '{{foo}} will mark the ' ' node as omitted. - // - // If i is undefined then the last child will be marked as such. - // - // If mulitple is truthy then all whitespace will be stripped out until non-whitespace - // content is met. - function omitLeft(body, i, multiple) { - var current = body[i == null ? body.length - 1 : i - 1]; - if (!current || current.type !== 'ContentStatement' || !multiple && current.leftStripped) { - return; - } - - // We omit the last node if it's whitespace only and not preceeded by a non-content node. - var original = current.value; - current.value = current.value.replace(multiple ? /\s+$/ : /[ \t]+$/, ''); - current.leftStripped = current.value !== original; - return current.leftStripped; - } - - exports['default'] = WhitespaceControl; - module.exports = exports['default']; - -/***/ }, -/* 17 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _interopRequireDefault = __webpack_require__(8)['default']; - - exports.__esModule = true; - exports.SourceLocation = SourceLocation; - exports.id = id; - exports.stripFlags = stripFlags; - exports.stripComment = stripComment; - exports.preparePath = preparePath; - exports.prepareMustache = prepareMustache; - exports.prepareRawBlock = prepareRawBlock; - exports.prepareBlock = prepareBlock; - - var _Exception = __webpack_require__(12); - - var _Exception2 = _interopRequireDefault(_Exception); - - function SourceLocation(source, locInfo) { - this.source = source; - this.start = { - line: locInfo.first_line, - column: locInfo.first_column - }; - this.end = { - line: locInfo.last_line, - column: locInfo.last_column - }; - } - - function id(token) { - if (/^\[.*\]$/.test(token)) { - return token.substr(1, token.length - 2); - } else { - return token; - } - } - - function stripFlags(open, close) { - return { - open: open.charAt(2) === '~', - close: close.charAt(close.length - 3) === '~' - }; - } - - function stripComment(comment) { - return comment.replace(/^\{\{~?\!-?-?/, '').replace(/-?-?~?\}\}$/, ''); - } - - function preparePath(data, parts, locInfo) { - locInfo = this.locInfo(locInfo); - - var original = data ? '@' : '', - dig = [], - depth = 0, - depthString = ''; - - for (var i = 0, l = parts.length; i < l; i++) { - var part = parts[i].part, - - // If we have [] syntax then we do not treat path references as operators, - // i.e. foo.[this] resolves to approximately context.foo['this'] - isLiteral = parts[i].original !== part; - original += (parts[i].separator || '') + part; - - if (!isLiteral && (part === '..' || part === '.' || part === 'this')) { - if (dig.length > 0) { - throw new _Exception2['default']('Invalid path: ' + original, { loc: locInfo }); - } else if (part === '..') { - depth++; - depthString += '../'; - } - } else { - dig.push(part); - } - } - - return new this.PathExpression(data, depth, dig, original, locInfo); - } - - function prepareMustache(path, params, hash, open, strip, locInfo) { - // Must use charAt to support IE pre-10 - var escapeFlag = open.charAt(3) || open.charAt(2), - escaped = escapeFlag !== '{' && escapeFlag !== '&'; - - return new this.MustacheStatement(path, params, hash, escaped, strip, this.locInfo(locInfo)); - } - - function prepareRawBlock(openRawBlock, content, close, locInfo) { - if (openRawBlock.path.original !== close) { - var errorNode = { loc: openRawBlock.path.loc }; - - throw new _Exception2['default'](openRawBlock.path.original + ' doesn\'t match ' + close, errorNode); - } - - locInfo = this.locInfo(locInfo); - var program = new this.Program([content], null, {}, locInfo); - - return new this.BlockStatement(openRawBlock.path, openRawBlock.params, openRawBlock.hash, program, undefined, {}, {}, {}, locInfo); - } - - function prepareBlock(openBlock, program, inverseAndProgram, close, inverted, locInfo) { - // When we are chaining inverse calls, we will not have a close path - if (close && close.path && openBlock.path.original !== close.path.original) { - var errorNode = { loc: openBlock.path.loc }; - - throw new _Exception2['default'](openBlock.path.original + ' doesn\'t match ' + close.path.original, errorNode); - } - - program.blockParams = openBlock.blockParams; - - var inverse = undefined, - inverseStrip = undefined; - - if (inverseAndProgram) { - if (inverseAndProgram.chain) { - inverseAndProgram.program.body[0].closeStrip = close.strip; - } - - inverseStrip = inverseAndProgram.strip; - inverse = inverseAndProgram.program; - } - - if (inverted) { - inverted = inverse; - inverse = program; - program = inverted; - } - - return new this.BlockStatement(openBlock.path, openBlock.params, openBlock.hash, program, inverse, openBlock.strip, inverseStrip, close && close.strip, this.locInfo(locInfo)); - } - -/***/ }, -/* 18 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - exports.__esModule = true; - /*global define */ - - var _isArray = __webpack_require__(13); - - var SourceNode = undefined; - - try { - /* istanbul ignore next */ - if (false) { - // We don't support this in AMD environments. For these environments, we asusme that - // they are running on the browser and thus have no need for the source-map library. - var SourceMap = require('source-map'); - SourceNode = SourceMap.SourceNode; - } - } catch (err) {} - - /* istanbul ignore if: tested but not covered in istanbul due to dist build */ - if (!SourceNode) { - SourceNode = function (line, column, srcFile, chunks) { - this.src = ''; - if (chunks) { - this.add(chunks); - } - }; - /* istanbul ignore next */ - SourceNode.prototype = { - add: function add(chunks) { - if (_isArray.isArray(chunks)) { - chunks = chunks.join(''); - } - this.src += chunks; - }, - prepend: function prepend(chunks) { - if (_isArray.isArray(chunks)) { - chunks = chunks.join(''); - } - this.src = chunks + this.src; - }, - toStringWithSourceMap: function toStringWithSourceMap() { - return { code: this.toString() }; - }, - toString: function toString() { - return this.src; - } - }; - } - - function castChunk(chunk, codeGen, loc) { - if (_isArray.isArray(chunk)) { - var ret = []; - - for (var i = 0, len = chunk.length; i < len; i++) { - ret.push(codeGen.wrap(chunk[i], loc)); - } - return ret; - } else if (typeof chunk === 'boolean' || typeof chunk === 'number') { - // Handle primitives that the SourceNode will throw up on - return chunk + ''; - } - return chunk; - } - - function CodeGen(srcFile) { - this.srcFile = srcFile; - this.source = []; - } - - CodeGen.prototype = { - prepend: function prepend(source, loc) { - this.source.unshift(this.wrap(source, loc)); - }, - push: function push(source, loc) { - this.source.push(this.wrap(source, loc)); - }, - - merge: function merge() { - var source = this.empty(); - this.each(function (line) { - source.add([' ', line, '\n']); - }); - return source; - }, - - each: function each(iter) { - for (var i = 0, len = this.source.length; i < len; i++) { - iter(this.source[i]); - } - }, - - empty: function empty() { - var loc = arguments[0] === undefined ? this.currentLocation || { start: {} } : arguments[0]; - - return new SourceNode(loc.start.line, loc.start.column, this.srcFile); - }, - wrap: function wrap(chunk) { - var loc = arguments[1] === undefined ? this.currentLocation || { start: {} } : arguments[1]; - - if (chunk instanceof SourceNode) { - return chunk; - } - - chunk = castChunk(chunk, this, loc); - - return new SourceNode(loc.start.line, loc.start.column, this.srcFile, chunk); - }, - - functionCall: function functionCall(fn, type, params) { - params = this.generateList(params); - return this.wrap([fn, type ? '.' + type + '(' : '(', params, ')']); - }, - - quotedString: function quotedString(str) { - return '"' + (str + '').replace(/\\/g, '\\\\').replace(/"/g, '\\"').replace(/\n/g, '\\n').replace(/\r/g, '\\r').replace(/\u2028/g, '\\u2028') // Per Ecma-262 7.3 + 7.8.4 - .replace(/\u2029/g, '\\u2029') + '"'; - }, - - objectLiteral: function objectLiteral(obj) { - var pairs = []; - - for (var key in obj) { - if (obj.hasOwnProperty(key)) { - var value = castChunk(obj[key], this); - if (value !== 'undefined') { - pairs.push([this.quotedString(key), ':', value]); - } - } - } - - var ret = this.generateList(pairs); - ret.prepend('{'); - ret.add('}'); - return ret; - }, - - generateList: function generateList(entries, loc) { - var ret = this.empty(loc); - - for (var i = 0, len = entries.length; i < len; i++) { - if (i) { - ret.add(','); - } - - ret.add(castChunk(entries[i], this, loc)); - } - - return ret; - }, - - generateArray: function generateArray(entries, loc) { - var ret = this.generateList(entries, loc); - ret.prepend('['); - ret.add(']'); - - return ret; - } - }; - - exports['default'] = CodeGen; - module.exports = exports['default']; - - /* NOP */ - -/***/ } -/******/ ]) -}); -; \ No newline at end of file diff --git a/Docs/html/js/highlight.pack.js b/Docs/html/js/highlight.pack.js deleted file mode 100644 index f63590d435..0000000000 --- a/Docs/html/js/highlight.pack.js +++ /dev/null @@ -1 +0,0 @@ -!function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define("hljs",[],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&").replace(//gm,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){return/no-?highlight|plain|text/.test(e)}function i(e){var n,t,r,i=e.className+" ";if(i+=e.parentNode?e.parentNode.className:"",t=/\blang(?:uage)?-([\w-]+)\b/.exec(i))return E(t[1])?t[1]:"no-highlight";for(i=i.split(/\s+/),n=0,r=i.length;r>n;n++)if(E(i[n])||a(i[n]))return i[n]}function o(e,n){var t,r={};for(t in e)r[t]=e[t];if(n)for(t in n)r[t]=n[t];return r}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3==i.nodeType?a+=i.nodeValue.length:1==i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset"}function u(e){f+=""}function c(e){("start"==e.event?o:u)(e.node)}for(var s=0,f="",l=[];e.length||r.length;){var g=i();if(f+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){l.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g==e&&g.length&&g[0].offset==s);l.reverse().forEach(o)}else"start"==g[0].event?l.push(g[0].node):l.pop(),c(g.splice(0,1)[0])}return f+n(a.substr(s))}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var u={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");u[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):Object.keys(a.k).forEach(function(e){c(e,a.k[e])}),a.k=u}a.lR=t(a.l||/\b\w+\b/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(o(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var f=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=f.length?t(f.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e,n){for(var t=0;t";return i+=e+'">',i+n+o}function p(){if(!L.k)return n(y);var e="",t=0;L.lR.lastIndex=0;for(var r=L.lR.exec(y);r;){e+=n(y.substr(t,r.index-t));var a=g(L,r);a?(B+=a[1],e+=h(a[0],n(r[0]))):e+=n(r[0]),t=L.lR.lastIndex,r=L.lR.exec(y)}return e+n(y.substr(t))}function d(){var e="string"==typeof L.sL;if(e&&!x[L.sL])return n(y);var t=e?f(L.sL,y,!0,M[L.sL]):l(y,L.sL.length?L.sL:void 0);return L.r>0&&(B+=t.r),e&&(M[L.sL]=t.top),h(t.language,t.value,!1,!0)}function b(){return void 0!==L.sL?d():p()}function v(e,t){var r=e.cN?h(e.cN,"",!0):"";e.rB?(k+=r,y=""):e.eB?(k+=n(t)+r,y=""):(k+=r,y=t),L=Object.create(e,{parent:{value:L}})}function m(e,t){if(y+=e,void 0===t)return k+=b(),0;var r=o(t,L);if(r)return k+=b(),v(r,t),r.rB?0:t.length;var a=u(L,t);if(a){var i=L;i.rE||i.eE||(y+=t),k+=b();do L.cN&&(k+=""),B+=L.r,L=L.parent;while(L!=a.parent);return i.eE&&(k+=n(t)),y="",a.starts&&v(a.starts,""),i.rE?0:t.length}if(c(t,L))throw new Error('Illegal lexeme "'+t+'" for mode "'+(L.cN||"")+'"');return y+=t,t.length||1}var N=E(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var R,L=i||N,M={},k="";for(R=L;R!=N;R=R.parent)R.cN&&(k=h(R.cN,"",!0)+k);var y="",B=0;try{for(var C,j,I=0;;){if(L.t.lastIndex=I,C=L.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}for(m(t.substr(I)),R=L;R.parent;R=R.parent)R.cN&&(k+="");return{r:B,value:k,language:e,top:L}}catch(O){if(-1!=O.message.indexOf("Illegal"))return{r:0,value:n(t)};throw O}}function l(e,t){t=t||w.languages||Object.keys(x);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(E(n)){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function g(e){return w.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,w.tabReplace)})),w.useBR&&(e=e.replace(/\n/g,"
")),e}function h(e,n,t){var r=n?R[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function p(e){var n=i(e);if(!a(n)){var t;w.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):t=e;var r=t.textContent,o=n?f(n,r,!0):l(r),s=u(t);if(s.length){var p=document.createElementNS("http://www.w3.org/1999/xhtml","div");p.innerHTML=o.value,o.value=c(s,u(p),r)}o.value=g(o.value),e.innerHTML=o.value,e.className=h(e.className,n,o.language),e.result={language:o.language,re:o.r},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.r})}}function d(e){w=o(w,e)}function b(){if(!b.called){b.called=!0;var e=document.querySelectorAll("pre code");Array.prototype.forEach.call(e,p)}}function v(){addEventListener("DOMContentLoaded",b,!1),addEventListener("load",b,!1)}function m(n,t){var r=x[n]=t(e);r.aliases&&r.aliases.forEach(function(e){R[e]=n})}function N(){return Object.keys(x)}function E(e){return x[e]||x[R[e]]}var w={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},x={},R={};return e.highlight=f,e.highlightAuto=l,e.fixMarkup=g,e.highlightBlock=p,e.configure=d,e.initHighlighting=b,e.initHighlightingOnLoad=v,e.registerLanguage=m,e.listLanguages=N,e.getLanguage=E,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e});hljs.registerLanguage("objectivec",function(e){var t={cN:"built_in",b:"(AV|CA|CF|CG|CI|MK|MP|NS|UI)\\w+"},i={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},o=/[a-zA-Z@][a-zA-Z0-9_]*/,n="@interface @class @protocol @implementation";return{aliases:["mm","objc","obj-c"],k:i,l:o,i:""}]}]},{cN:"class",b:"("+n.split(" ").join("|")+")\\b",e:"({|$)",eE:!0,k:n,l:o,c:[e.UTM]},{cN:"variable",b:"\\."+e.UIR,r:0}]}});hljs.registerLanguage("ini",function(e){var c={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"title",b:/^\s*\[+/,e:/\]+/},{cN:"setting",b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",c:[{cN:"value",eW:!0,k:"on off true false yes no",c:[{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},c,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM],r:0}]}]}});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/-?[a-z\.]+/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",operator:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"shebang",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,e.NM,s,a,t]}});hljs.registerLanguage("go",function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer",constant:"true false iota nil",typename:"bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],k:t,i:"/,sL:"php"},e={eW:!0,i:/]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},t.C("",{r:10}),{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"|$)",e:">",k:{title:"style"},c:[e],starts:{e:"",rE:!0,sL:"css"}},{cN:"tag",b:"|$)",e:">",k:{title:"script"},c:[e],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars"]}},c,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},e]}]}});hljs.registerLanguage("perl",function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",r={cN:"subst",b:"[$@]\\{",e:"\\}",k:t},s={b:"->{",e:"}"},n={cN:"variable",v:[{b:/\$\d/},{b:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{b:/[\$%@][^\s\w{]/,r:0}]},o=[e.BE,r,n],i=[n,e.HCM,e.C("^\\=\\w","\\=cut",{eW:!0}),s,{cN:"string",c:o,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"sub",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",r:5},{cN:"operator",b:"-\\w\\b",r:0},{b:"^__DATA__$",e:"^__END__$",sL:"mojolicious",c:[{b:"^@@.*",e:"$",cN:"comment"}]}];return r.c=i,s.c=i,{aliases:["pl"],k:t,c:i}});hljs.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"header",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"blockquote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{cN:"horizontal_rule",b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"link_label",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link_url",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"link_reference",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:"^\\[.+\\]:",rB:!0,c:[{cN:"link_reference",b:"\\[",e:"\\]:",eB:!0,eE:!0,starts:{cN:"link_url",e:"$"}}]}]}});hljs.registerLanguage("python",function(e){var r={cN:"prompt",b:/^(>>>|\.\.\.) /},b={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[r],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[r],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},l={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},c={cN:"params",b:/\(/,e:/\)/,c:["self",r,l,b]};return{aliases:["py","gyp"],k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)/,c:[r,l,b,e.HCM,{v:[{cN:"function",bK:"def",r:10},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,c]},{cN:"decorator",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}});hljs.registerLanguage("cs",function(e){var r="abstract as base bool break byte case catch char checked const continue decimal dynamic default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long null when object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while async protected public private internal ascending descending from get group into join let orderby partial select set value var where yield",t=e.IR+"(<"+e.IR+">)?";return{aliases:["csharp"],k:r,i:/::/,c:[e.C("///","$",{rB:!0,c:[{cN:"xmlDocTag",v:[{b:"///",r:0},{b:""},{b:""}]}]}),e.CLCM,e.CBCM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line region endregion pragma checksum"},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},e.ASM,e.QSM,e.CNM,{bK:"class interface",e:/[{;=]/,i:/[^\s:]/,c:[e.TM,e.CLCM,e.CBCM]},{bK:"namespace",e:/[{;=]/,i:/[^\s:]/,c:[{cN:"title",b:"[a-zA-Z](\\.?\\w)*",r:0},e.CLCM,e.CBCM]},{bK:"new return throw await",r:0},{cN:"function",b:"("+t+"\\s+)+"+e.IR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:r,c:[{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM],r:0},{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,k:r,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]}]}});hljs.registerLanguage("nginx",function(e){var r={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+e.UIR}]},b={eW:!0,l:"[a-z/_]+",k:{built_in:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[e.HCM,{cN:"string",c:[e.BE,r],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{cN:"url",b:"([a-z]+):/",e:"\\s",eW:!0,eE:!0,c:[r]},{cN:"regexp",c:[e.BE,r],v:[{b:"\\s\\^",e:"\\s|{|;",rE:!0},{b:"~\\*?\\s+",e:"\\s|{|;",rE:!0},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},r]};return{aliases:["nginxconf"],c:[e.HCM,{b:e.UIR+"\\s",e:";|{",rB:!0,c:[{cN:"title",b:e.UIR,starts:b}],r:0}],i:"[^\\s\\}]"}});hljs.registerLanguage("http",function(t){return{aliases:["https"],i:"\\S",c:[{cN:"status",b:"^HTTP/[0-9\\.]+",e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{cN:"request",b:"^[A-Z]+ (.*?) HTTP/[0-9\\.]+$",rB:!0,e:"$",c:[{cN:"string",b:" ",e:" ",eB:!0,eE:!0}]},{cN:"attribute",b:"^\\w",e:": ",eE:!0,i:"\\n|\\s|=",starts:{cN:"string",e:"$"}},{b:"\\n\\n",starts:{sL:[],eW:!0}}]}});hljs.registerLanguage("powershell",function(e){var t={b:"`[\\s\\S]",r:0},r={cN:"variable",v:[{b:/\$[\w\d][\w\d_:]*/}]},o={cN:"string",b:/"/,e:/"/,c:[t,r,{cN:"variable",b:/\$[A-z]/,e:/[^A-z]/}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["ps"],l:/-?[A-z\.\-]+/,cI:!0,k:{keyword:"if else foreach return function do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch",literal:"$null $true $false",built_in:"Add-Content Add-History Add-Member Add-PSSnapin Clear-Content Clear-Item Clear-Item Property Clear-Variable Compare-Object ConvertFrom-SecureString Convert-Path ConvertTo-Html ConvertTo-SecureString Copy-Item Copy-ItemProperty Export-Alias Export-Clixml Export-Console Export-Csv ForEach-Object Format-Custom Format-List Format-Table Format-Wide Get-Acl Get-Alias Get-AuthenticodeSignature Get-ChildItem Get-Command Get-Content Get-Credential Get-Culture Get-Date Get-EventLog Get-ExecutionPolicy Get-Help Get-History Get-Host Get-Item Get-ItemProperty Get-Location Get-Member Get-PfxCertificate Get-Process Get-PSDrive Get-PSProvider Get-PSSnapin Get-Service Get-TraceSource Get-UICulture Get-Unique Get-Variable Get-WmiObject Group-Object Import-Alias Import-Clixml Import-Csv Invoke-Expression Invoke-History Invoke-Item Join-Path Measure-Command Measure-Object Move-Item Move-ItemProperty New-Alias New-Item New-ItemProperty New-Object New-PSDrive New-Service New-TimeSpan New-Variable Out-Default Out-File Out-Host Out-Null Out-Printer Out-String Pop-Location Push-Location Read-Host Remove-Item Remove-ItemProperty Remove-PSDrive Remove-PSSnapin Remove-Variable Rename-Item Rename-ItemProperty Resolve-Path Restart-Service Resume-Service Select-Object Select-String Set-Acl Set-Alias Set-AuthenticodeSignature Set-Content Set-Date Set-ExecutionPolicy Set-Item Set-ItemProperty Set-Location Set-PSDebug Set-Service Set-TraceSource Set-Variable Sort-Object Split-Path Start-Service Start-Sleep Start-Transcript Stop-Process Stop-Service Stop-Transcript Suspend-Service Tee-Object Test-Path Trace-Command Update-FormatData Update-TypeData Where-Object Write-Debug Write-Error Write-Host Write-Output Write-Progress Write-Verbose Write-Warning",operator:"-ne -eq -lt -gt -ge -le -not -like -notlike -match -notmatch -contains -notcontains -in -notin -replace"},c:[e.HCM,e.NM,o,a,r]}});hljs.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>]/,c:[{cN:"operator",bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate savepoint release|0 unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke",e:/;/,eW:!0,k:{keyword:"abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias allocate allow alter always analyze ancillary and any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound buffer_cache buffer_pool build bulk by byte byteordermark bytes c cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle d data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration e each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain export export_set extended extent external external_1 external_2 externally extract f failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function g general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour http i id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists k keep keep_duplicates key keys kill l language large last|0 last_day last_insert_id last_value lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link|0 list|0 listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock|0 locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop|0 low low_priority lower lpad lrtrim ltrim m main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex n name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding p package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise|0 rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release|0 release_lock relies_on relocate rely rem remainder repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second section securefile security seed segment self sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime t table tables tablespace tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null",built_in:"array bigint binary bit blob boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t]},e.CBCM,t]}});hljs.registerLanguage("apache",function(e){var r={cN:"number",b:"[\\$%]\\d+"};return{aliases:["apacheconf"],cI:!0,c:[e.HCM,{cN:"tag",b:""},{cN:"keyword",b:/\w+/,r:0,k:{common:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"sqbracket",b:"\\s\\[",e:"\\]$"},{cN:"cbracket",b:"[\\$%]\\{",e:"\\}",c:["self",r]},r,e.QSM]}}],i:/\S/}});hljs.registerLanguage("php",function(e){var c={cN:"variable",b:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},a={cN:"preprocessor",b:/<\?(php)?|\?>/},i={cN:"string",c:[e.BE,a],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},n={v:[e.BNM,e.CNM]};return{aliases:["php3","php4","php5","php6"],cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.CLCM,e.HCM,e.C("/\\*","\\*/",{c:[{cN:"doctag",b:"@[A-Za-z]+"},a]}),e.C("__halt_compiler.+?;",!1,{eW:!0,k:"__halt_compiler",l:e.UIR}),{cN:"string",b:"<<<['\"]?\\w+['\"]?$",e:"^\\w+;",c:[e.BE]},a,c,{b:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{cN:"function",bK:"function",e:/[;{]/,eE:!0,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",c,e.CBCM,i,n]}]},{cN:"class",bK:"class interface",e:"{",eE:!0,i:/[:\(\$"]/,c:[{bK:"extends implements"},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},i,n]}});hljs.registerLanguage("java",function(e){var a=e.UIR+"(<"+e.UIR+">)?",t="false synchronized int abstract float private char boolean static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private",c="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",r={cN:"number",b:c,r:0};return{aliases:["jsp"],k:t,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+a+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:t,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:t,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},r,{cN:"annotation",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("cpp",function(t){var e={cN:"keyword",b:"\\b[a-z\\d_]*_t\\b"},r={cN:"string",v:[t.inherit(t.QSM,{b:'((u8?|U)|L)?"'}),{b:'(u8?|U)?R"',e:'"',c:[t.BE]},{b:"'\\\\?.",e:"'",i:"."}]},s={cN:"number",v:[{b:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},{b:t.CNR}]},i=t.IR+"\\s*\\(",a={keyword:"int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignof constexpr decltype noexcept static_assert thread_local restrict _Bool complex _Complex _Imaginary atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong",built_in:"std string cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf",literal:"true false nullptr NULL"};return{aliases:["c","cc","h","c++","h++","hpp"],k:a,i:"",i:"\\n"}]},r,s,t.CLCM,t.CBCM]},{b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:a,c:["self",e]},{b:t.IR+"::",k:a},{bK:"new throw return else",r:0},{cN:"function",b:"("+t.IR+"[\\*&\\s]+)+"+i,rB:!0,e:/[{;=]/,eE:!0,k:a,c:[{b:i,rB:!0,c:[t.TM],r:0},{cN:"params",b:/\(/,e:/\)/,k:a,r:0,c:[t.CLCM,t.CBCM,r,s]},t.CLCM,t.CBCM]}]}});hljs.registerLanguage("javascript",function(e){return{aliases:["js"],k:{keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},c:[{cN:"pi",r:10,b:/^\s*['"]use (strict|asm)['"]/},e.ASM,e.QSM,{cN:"string",b:"`",e:"`",c:[e.BE,{cN:"subst",b:"\\$\\{",e:"\\}"}]},e.CLCM,e.CBCM,{cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{b:/\s*[);\]]/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:[e.CLCM,e.CBCM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+e.IR,r:0},{bK:"import",e:"[;$]",k:"import from as",c:[e.ASM,e.QSM]},{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]}],i:/#/}});hljs.registerLanguage("swift",function(e){var i={keyword:"class deinit enum extension func import init let protocol static struct subscript typealias var break case continue default do else fallthrough if in for return switch where while as dynamicType is new super self Self Type __COLUMN__ __FILE__ __FUNCTION__ __LINE__ associativity didSet get infix inout left mutating none nonmutating operator override postfix precedence prefix right set unowned unowned safe unsafe weak willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue assert bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced join lexicographicalCompare map max maxElement min minElement numericCast partition posix print println quickSort reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith strideof strideofValue swap swift toString transcode underestimateCount unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafePointers withVaList"},t={cN:"type",b:"\\b[A-Z][\\w']*",r:0},n=e.C("/\\*","\\*/",{c:["self"]}),r={cN:"subst",b:/\\\(/,e:"\\)",k:i,c:[]},s={cN:"number",b:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",r:0},o=e.inherit(e.QSM,{c:[r,e.BE]});return r.c=[s],{k:i,c:[o,e.CLCM,n,t,s,{cN:"func",bK:"func",e:"{",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/,i:/\(/}),{cN:"generics",b://,i:/>/},{cN:"params",b:/\(/,e:/\)/,endsParent:!0,k:i,c:["self",s,o,e.CBCM,{b:":"}],i:/["']/}],i:/\[|%/},{cN:"class",bK:"struct protocol class extension enum",k:i,e:"\\{",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/})]},{cN:"preprocessor",b:"(@assignment|@class_protocol|@exported|@final|@lazy|@noreturn|@NSCopying|@NSManaged|@objc|@optional|@required|@auto_closure|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix)"}]}});hljs.registerLanguage("ruby",function(e){var c="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r="and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",b={cN:"doctag",b:"@[A-Za-z]+"},a={cN:"value",b:"#<",e:">"},n=[e.C("#","$",{c:[b]}),e.C("^\\=begin","^\\=end",{c:[b],r:10}),e.C("^__END__","\\n$")],s={cN:"subst",b:"#\\{",e:"}",k:r},t={cN:"string",c:[e.BE,s],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:/`/,e:/`/},{b:"%[qQwWx]?\\(",e:"\\)"},{b:"%[qQwWx]?\\[",e:"\\]"},{b:"%[qQwWx]?{",e:"}"},{b:"%[qQwWx]?<",e:">"},{b:"%[qQwWx]?/",e:"/"},{b:"%[qQwWx]?%",e:"%"},{b:"%[qQwWx]?-",e:"-"},{b:"%[qQwWx]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/}]},i={cN:"params",b:"\\(",e:"\\)",k:r},d=[t,a,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+e.IR+"::)?"+e.IR}]}].concat(n)},{cN:"function",bK:"def",e:"$|;",r:0,c:[e.inherit(e.TM,{b:c}),i].concat(n)},{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"symbol",b:":",c:[t,{b:c}],r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+e.RSR+")\\s*",c:[a,{cN:"regexp",c:[e.BE,s],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}].concat(n),r:0}].concat(n);s.c=d,i.c=d;var o="[>?]>",l="[\\w#]+\\(\\w+\\):\\d+:\\d+>",u="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",N=[{b:/^\s*=>/,cN:"status",starts:{e:"$",c:d}},{cN:"prompt",b:"^("+o+"|"+l+"|"+u+")",starts:{e:"$",c:d}}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:r,c:n.concat(N).concat(d)}});hljs.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"chunk",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"header",v:[{b:/Index: /,e:/$/},{b:/=====/,e:/=====$/},{b:/^\-\-\-/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+\+\+/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"change",b:"^\\!",e:"$"}]}});hljs.registerLanguage("css",function(e){var c="[a-zA-Z-][a-zA-Z0-9_-]*",a={cN:"function",b:c+"\\(",rB:!0,eE:!0,e:"\\("},r={cN:"rule",b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{cN:"value",eW:!0,eE:!0,c:[a,e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"hexcolor",b:"#[0-9A-Fa-f]+"},{cN:"important",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,r,{cN:"id",b:/\#[A-Za-z0-9_-]+/},{cN:"class",b:/\.[A-Za-z0-9_-]+/},{cN:"attr_selector",b:/\[/,e:/\]/,i:"$"},{cN:"pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"']+/},{cN:"at_rule",b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{cN:"at_rule",b:"@",e:"[{;]",c:[{cN:"keyword",b:/\S+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[a,e.ASM,e.QSM,e.CSSNM]}]},{cN:"tag",b:c,r:0},{cN:"rules",b:"{",e:"}",i:/\S/,c:[e.CBCM,r]}]}});hljs.registerLanguage("coffeescript",function(e){var c={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",built_in:"npm require console print module global window document"},n="[A-Za-z$_][0-9A-Za-z$_]*",r={cN:"subst",b:/#\{/,e:/}/,k:c},t=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,r]},{b:/"/,e:/"/,c:[e.BE,r]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[r,e.HCM]},{b:"//[gim]*",r:0},{b:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W|$)/}]},{cN:"property",b:"@"+n},{b:"`",e:"`",eB:!0,eE:!0,sL:"javascript"}];r.c=t;var s=e.inherit(e.TM,{b:n}),i="(\\(.*\\))?\\s*\\B[-=]>",o={cN:"params",b:"\\([^\\(]",rB:!0,c:[{b:/\(/,e:/\)/,k:c,c:["self"].concat(t)}]};return{aliases:["coffee","cson","iced"],k:c,i:/\/\*/,c:t.concat([e.C("###","###"),e.HCM,{cN:"function",b:"^\\s*"+n+"\\s*=\\s*"+i,e:"[-=]>",rB:!0,c:[s,o]},{b:/[:\(,=]\s*/,r:0,c:[{cN:"function",b:i,e:"[-=]>",rB:!0,c:[o]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[s]},s]},{cN:"attribute",b:n+":",e:":",rB:!0,rE:!0,r:0}])}});hljs.registerLanguage("makefile",function(e){var a={cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]};return{aliases:["mk","mak"],c:[e.HCM,{b:/^\w+\s*\W*=/,rB:!0,r:0,starts:{cN:"constant",e:/\s*\W*=/,eE:!0,starts:{e:/$/,r:0,c:[a]}}},{cN:"title",b:/^[\w]+:\s*$/},{cN:"phony",b:/^\.PHONY:/,e:/$/,k:".PHONY",l:/[\.\w]+/},{b:/^\t+/,e:/$/,r:0,c:[e.QSM,a]}]}});hljs.registerLanguage("json",function(e){var t={literal:"true false null"},i=[e.QSM,e.CNM],l={cN:"value",e:",",eW:!0,eE:!0,c:i,k:t},c={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:!0,eE:!0,c:[e.BE],i:"\\n",starts:l}],i:"\\S"},n={b:"\\[",e:"\\]",c:[e.inherit(l,{cN:null})],i:"\\S"};return i.splice(i.length,0,c,n),{c:i,k:t,i:"\\S"}}); \ No newline at end of file diff --git a/Docs/html/js/jquery-ui.min.js b/Docs/html/js/jquery-ui.min.js deleted file mode 100644 index 5ccc8a93b4..0000000000 --- a/Docs/html/js/jquery-ui.min.js +++ /dev/null @@ -1,13 +0,0 @@ -/*! jQuery UI - v1.11.4 - 2015-07-12 -* http://jqueryui.com -* Includes: core.js, widget.js, mouse.js, position.js, draggable.js, droppable.js, resizable.js, selectable.js, sortable.js, accordion.js, autocomplete.js, button.js, datepicker.js, dialog.js, menu.js, progressbar.js, selectmenu.js, slider.js, spinner.js, tabs.js, tooltip.js, effect.js, effect-blind.js, effect-bounce.js, effect-clip.js, effect-drop.js, effect-explode.js, effect-fade.js, effect-fold.js, effect-highlight.js, effect-puff.js, effect-pulsate.js, effect-scale.js, effect-shake.js, effect-size.js, effect-slide.js, effect-transfer.js -* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ - -(function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)})(function(e){function t(t,s){var n,a,o,r=t.nodeName.toLowerCase();return"area"===r?(n=t.parentNode,a=n.name,t.href&&a&&"map"===n.nodeName.toLowerCase()?(o=e("img[usemap='#"+a+"']")[0],!!o&&i(o)):!1):(/^(input|select|textarea|button|object)$/.test(r)?!t.disabled:"a"===r?t.href||s:s)&&i(t)}function i(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}function s(e){for(var t,i;e.length&&e[0]!==document;){if(t=e.css("position"),("absolute"===t||"relative"===t||"fixed"===t)&&(i=parseInt(e.css("zIndex"),10),!isNaN(i)&&0!==i))return i;e=e.parent()}return 0}function n(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.regional.en=e.extend(!0,{},this.regional[""]),this.regional["en-US"]=e.extend(!0,{},this.regional.en),this.dpDiv=a(e("
"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",o)}function o(){e.datepicker._isDisabledDatepicker(v.inline?v.dpDiv.parent()[0]:v.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))}function r(t,i){e.extend(t,i);for(var s in i)null==i[s]&&(t[s]=i[s]);return t}function h(e){return function(){var t=this.element.val();e.apply(this,arguments),this._refresh(),t!==this.element.val()&&this._trigger("change")}}e.ui=e.ui||{},e.extend(e.ui,{version:"1.11.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({scrollParent:function(t){var i=this.css("position"),s="absolute"===i,n=t?/(auto|scroll|hidden)/:/(auto|scroll)/,a=this.parents().filter(function(){var t=e(this);return s&&"static"===t.css("position")?!1:n.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==i&&a.length?a:e(this[0].ownerDocument||document)},uniqueId:function(){var e=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++e)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,s){return!!e.data(t,s[3])},focusable:function(i){return t(i,!isNaN(e.attr(i,"tabindex")))},tabbable:function(i){var s=e.attr(i,"tabindex"),n=isNaN(s);return(n||s>=0)&&t(i,!n)}}),e("").outerWidth(1).jquery||e.each(["Width","Height"],function(t,i){function s(t,i,s,a){return e.each(n,function(){i-=parseFloat(e.css(t,"padding"+this))||0,s&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),a&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],a=i.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+i]=function(t){return void 0===t?o["inner"+i].call(this):this.each(function(){e(this).css(a,s(this,t)+"px")})},e.fn["outer"+i]=function(t,n){return"number"!=typeof t?o["outer"+i].call(this,t):this.each(function(){e(this).css(a,s(this,t,!0,n)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.fn.extend({focus:function(t){return function(i,s){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),s&&s.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),disableSelection:function(){var e="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(e+".ui-disableSelection",function(e){e.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(t){if(void 0!==t)return this.css("zIndex",t);if(this.length)for(var i,s,n=e(this[0]);n.length&&n[0]!==document;){if(i=n.css("position"),("absolute"===i||"relative"===i||"fixed"===i)&&(s=parseInt(n.css("zIndex"),10),!isNaN(s)&&0!==s))return s;n=n.parent()}return 0}}),e.ui.plugin={add:function(t,i,s){var n,a=e.ui[t].prototype;for(n in s)a.plugins[n]=a.plugins[n]||[],a.plugins[n].push([i,s[n]])},call:function(e,t,i,s){var n,a=e.plugins[t];if(a&&(s||e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType))for(n=0;a.length>n;n++)e.options[a[n][0]]&&a[n][1].apply(e.element,i)}};var l=0,u=Array.prototype.slice;e.cleanData=function(t){return function(i){var s,n,a;for(a=0;null!=(n=i[a]);a++)try{s=e._data(n,"events"),s&&s.remove&&e(n).triggerHandler("remove")}catch(o){}t(i)}}(e.cleanData),e.widget=function(t,i,s){var n,a,o,r,h={},l=t.split(".")[0];return t=t.split(".")[1],n=l+"-"+t,s||(s=i,i=e.Widget),e.expr[":"][n.toLowerCase()]=function(t){return!!e.data(t,n)},e[l]=e[l]||{},a=e[l][t],o=e[l][t]=function(e,t){return this._createWidget?(arguments.length&&this._createWidget(e,t),void 0):new o(e,t)},e.extend(o,a,{version:s.version,_proto:e.extend({},s),_childConstructors:[]}),r=new i,r.options=e.widget.extend({},r.options),e.each(s,function(t,s){return e.isFunction(s)?(h[t]=function(){var e=function(){return i.prototype[t].apply(this,arguments)},n=function(e){return i.prototype[t].apply(this,e)};return function(){var t,i=this._super,a=this._superApply;return this._super=e,this._superApply=n,t=s.apply(this,arguments),this._super=i,this._superApply=a,t}}(),void 0):(h[t]=s,void 0)}),o.prototype=e.widget.extend(r,{widgetEventPrefix:a?r.widgetEventPrefix||t:t},h,{constructor:o,namespace:l,widgetName:t,widgetFullName:n}),a?(e.each(a._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete a._childConstructors):i._childConstructors.push(o),e.widget.bridge(t,o),o},e.widget.extend=function(t){for(var i,s,n=u.call(arguments,1),a=0,o=n.length;o>a;a++)for(i in n[a])s=n[a][i],n[a].hasOwnProperty(i)&&void 0!==s&&(t[i]=e.isPlainObject(s)?e.isPlainObject(t[i])?e.widget.extend({},t[i],s):e.widget.extend({},s):s);return t},e.widget.bridge=function(t,i){var s=i.prototype.widgetFullName||t;e.fn[t]=function(n){var a="string"==typeof n,o=u.call(arguments,1),r=this;return a?this.each(function(){var i,a=e.data(this,s);return"instance"===n?(r=a,!1):a?e.isFunction(a[n])&&"_"!==n.charAt(0)?(i=a[n].apply(a,o),i!==a&&void 0!==i?(r=i&&i.jquery?r.pushStack(i.get()):i,!1):void 0):e.error("no such method '"+n+"' for "+t+" widget instance"):e.error("cannot call methods on "+t+" prior to initialization; "+"attempted to call method '"+n+"'")}):(o.length&&(n=e.widget.extend.apply(null,[n].concat(o))),this.each(function(){var t=e.data(this,s);t?(t.option(n||{}),t._init&&t._init()):e.data(this,s,new i(n,this))})),r}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{disabled:!1,create:null},_createWidget:function(t,i){i=e(i||this.defaultElement||this)[0],this.element=e(i),this.uuid=l++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=e(),this.hoverable=e(),this.focusable=e(),i!==this&&(e.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===i&&this.destroy()}}),this.document=e(i.style?i.ownerDocument:i.document||i),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(t,i){var s,n,a,o=t;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof t)if(o={},s=t.split("."),t=s.shift(),s.length){for(n=o[t]=e.widget.extend({},this.options[t]),a=0;s.length-1>a;a++)n[s[a]]=n[s[a]]||{},n=n[s[a]];if(t=s.pop(),1===arguments.length)return void 0===n[t]?null:n[t];n[t]=i}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=i}return this._setOptions(o),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,s){var n,a=this;"boolean"!=typeof t&&(s=i,i=t,t=!1),s?(i=n=e(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),e.each(s,function(s,o){function r(){return t||a.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof o?a[o]:o).apply(a,arguments):void 0}"string"!=typeof o&&(r.guid=o.guid=o.guid||r.guid||e.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+a.eventNamespace,u=h[2];u?n.delegate(u,l,r):i.bind(l,r)})},_off:function(t,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.unbind(i).undelegate(i),this.bindings=e(this.bindings.not(t).get()),this.focusable=e(this.focusable.not(t).get()),this.hoverable=e(this.hoverable.not(t).get())},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var n,a,o=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],a=i.originalEvent)for(n in a)n in i||(i[n]=a[n]);return this.element.trigger(i,s),!(e.isFunction(o)&&o.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,n,a){"string"==typeof n&&(n={effect:n});var o,r=n?n===!0||"number"==typeof n?i:n.effect||i:t;n=n||{},"number"==typeof n&&(n={duration:n}),o=!e.isEmptyObject(n),n.complete=a,n.delay&&s.delay(n.delay),o&&e.effects&&e.effects.effect[r]?s[t](n):r!==t&&s[r]?s[r](n.duration,n.easing,a):s.queue(function(i){e(this)[t](),a&&a.call(s[0]),i()})}}),e.widget;var d=!1;e(document).mouseup(function(){d=!1}),e.widget("ui.mouse",{version:"1.11.4",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(i){return!0===e.data(i.target,t.widgetName+".preventClickEvent")?(e.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!d){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var i=this,s=1===t.which,n="string"==typeof this.options.cancel&&t.target.nodeName?e(t.target).closest(this.options.cancel).length:!1;return s&&!n&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(t)!==!1,!this._mouseStarted)?(t.preventDefault(),!0):(!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return i._mouseMove(e)},this._mouseUpDelegate=function(e){return i._mouseUp(e)},this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),d=!0,!0)):!0}},_mouseMove:function(t){if(this._mouseMoved){if(e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button)return this._mouseUp(t);if(!t.which)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){return this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),d=!1,!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),function(){function t(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function i(t,i){return parseInt(e.css(t,i),10)||0}function s(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,a,o=Math.max,r=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,d=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,p=/%$/,f=e.fn.position;e.position={scrollbarWidth:function(){if(void 0!==n)return n;var t,i,s=e("
"),a=s.children()[0];return e("body").append(s),t=a.offsetWidth,s.css("overflow","scroll"),i=a.offsetWidth,t===i&&(i=s[0].clientWidth),s.remove(),n=t-i},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),s=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),n="scroll"===i||"auto"===i&&t.widthi?"left":t>0?"right":"center",vertical:0>a?"top":s>0?"bottom":"middle"};d>m&&m>r(t+i)&&(h.horizontal="center"),c>g&&g>r(s+a)&&(h.vertical="middle"),h.important=o(r(t),r(i))>o(r(s),r(a))?"horizontal":"vertical",n.using.call(this,e,h)}),u.offset(e.extend(M,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=e.left-t.collisionPosition.marginLeft,h=n-r,l=r+t.collisionWidth-a-n;t.collisionWidth>a?h>0&&0>=l?(i=e.left+h+t.collisionWidth-a-n,e.left+=h-i):e.left=l>0&&0>=h?n:h>l?n+a-t.collisionWidth:n:h>0?e.left+=h:l>0?e.left-=l:e.left=o(e.left-r,e.left)},top:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollTop:s.offset.top,a=t.within.height,r=e.top-t.collisionPosition.marginTop,h=n-r,l=r+t.collisionHeight-a-n;t.collisionHeight>a?h>0&&0>=l?(i=e.top+h+t.collisionHeight-a-n,e.top+=h-i):e.top=l>0&&0>=h?n:h>l?n+a-t.collisionHeight:n:h>0?e.top+=h:l>0?e.top-=l:e.top=o(e.top-r,e.top)}},flip:{left:function(e,t){var i,s,n=t.within,a=n.offset.left+n.scrollLeft,o=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,d=l+t.collisionWidth-o-h,c="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,f=-2*t.offset[0];0>u?(i=e.left+c+p+f+t.collisionWidth-o-a,(0>i||r(u)>i)&&(e.left+=c+p+f)):d>0&&(s=e.left-t.collisionPosition.marginLeft+c+p+f-h,(s>0||d>r(s))&&(e.left+=c+p+f))},top:function(e,t){var i,s,n=t.within,a=n.offset.top+n.scrollTop,o=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,d=l+t.collisionHeight-o-h,c="top"===t.my[1],p=c?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,f="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,m=-2*t.offset[1];0>u?(s=e.top+p+f+m+t.collisionHeight-o-a,(0>s||r(u)>s)&&(e.top+=p+f+m)):d>0&&(i=e.top-t.collisionPosition.marginTop+p+f+m-h,(i>0||d>r(i))&&(e.top+=p+f+m))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,n,o,r=document.getElementsByTagName("body")[0],h=document.createElement("div");t=document.createElement(r?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},r&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(o in s)t.style[o]=s[o];t.appendChild(h),i=r||document.documentElement,i.insertBefore(t,i.firstChild),h.style.cssText="position: absolute; left: 10.7432222px;",n=e(h).offset().left,a=n>10&&11>n,t.innerHTML="",i.removeChild(t)}()}(),e.ui.position,e.widget("ui.draggable",e.ui.mouse,{version:"1.11.4",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._setHandleClassName(),this._mouseInit()},_setOption:function(e,t){this._super(e,t),"handle"===e&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(t){var i=this.options;return this._blurActiveElement(t),this.helper||i.disabled||e(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(this._blockFrames(i.iframeFix===!0?"iframe":i.iframeFix),!0):!1)},_blockFrames:function(t){this.iframeBlocks=this.document.find(t).map(function(){var t=e(this);return e("
").css("position","absolute").appendTo(t.parent()).outerWidth(t.outerWidth()).outerHeight(t.outerHeight()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(t){var i=this.document[0];if(this.handleElement.is(t.target))try{i.activeElement&&"body"!==i.activeElement.nodeName.toLowerCase()&&e(i.activeElement).blur()}catch(s){}},_mouseStart:function(t){var i=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===e(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(t),this.originalPosition=this.position=this._generatePosition(t,!1),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._normalizeRightBottom(),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_refreshOffsets:function(e){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:e.pageX-this.offset.left,top:e.pageY-this.offset.top}},_mouseDrag:function(t,i){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",t,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var i=this,s=!1;return e.ui.ddmanager&&!this.options.dropBehaviour&&(s=e.ui.ddmanager.drop(this,t)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",t)!==!1&&i._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1},_mouseUp:function(t){return this._unblockFrames(),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),this.handleElement.is(t.target)&&this.element.focus(),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){return this.options.handle?!!e(t.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper),n=s?e(i.helper.apply(this.element[0],[t])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return n.parents("body").length||n.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s&&n[0]===this.element[0]&&this._setPositionRelative(),n[0]===this.element[0]||/(fixed|absolute)/.test(n.css("position"))||n.css("position","absolute"),n},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_isRootNode:function(e){return/(html|body)/i.test(e.tagName)||e===this.document[0]},_getParentOffset:function(){var t=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var e=this.element.position(),t=this._isRootNode(this.scrollParent[0]);return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+(t?0:this.scrollParent.scrollTop()),left:e.left-(parseInt(this.helper.css("left"),10)||0)+(t?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,n=this.options,a=this.document[0];return this.relativeContainer=null,n.containment?"window"===n.containment?(this.containment=[e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,e(window).scrollLeft()+e(window).width()-this.helperProportions.width-this.margins.left,e(window).scrollTop()+(e(window).height()||a.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===n.containment?(this.containment=[0,0,e(a).width()-this.helperProportions.width-this.margins.left,(e(a).height()||a.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):n.containment.constructor===Array?(this.containment=n.containment,void 0):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=e(n.containment),s=i[0],s&&(t=/(scroll|auto)/.test(i.css("overflow")),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(t?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(e,t){t||(t=this.position);var i="absolute"===e?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:t.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:t.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(e,t){var i,s,n,a,o=this.options,r=this._isRootNode(this.scrollParent[0]),h=e.pageX,l=e.pageY;return r&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),t&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,e.pageX-this.offset.click.lefti[2]&&(h=i[2]+this.offset.click.left),e.pageY-this.offset.click.top>i[3]&&(l=i[3]+this.offset.click.top)),o.grid&&(n=o.grid[1]?this.originalPageY+Math.round((l-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY,l=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-o.grid[1]:n+o.grid[1]:n,a=o.grid[0]?this.originalPageX+Math.round((h-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX,h=i?a-this.offset.click.left>=i[0]||a-this.offset.click.left>i[2]?a:a-this.offset.click.left>=i[0]?a-o.grid[0]:a+o.grid[0]:a),"y"===o.axis&&(h=this.originalPageX),"x"===o.axis&&(l=this.originalPageY)),{top:l-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top),left:h-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)} -},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_normalizeRightBottom:function(){"y"!==this.options.axis&&"auto"!==this.helper.css("right")&&(this.helper.width(this.helper.width()),this.helper.css("right","auto")),"x"!==this.options.axis&&"auto"!==this.helper.css("bottom")&&(this.helper.height(this.helper.height()),this.helper.css("bottom","auto"))},_trigger:function(t,i,s){return s=s||this._uiHash(),e.ui.plugin.call(this,t,[i,s,this],!0),/^(drag|start|stop)/.test(t)&&(this.positionAbs=this._convertPositionTo("absolute"),s.offset=this.positionAbs),e.Widget.prototype._trigger.call(this,t,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,i,s){var n=e.extend({},i,{item:s.element});s.sortables=[],e(s.options.connectToSortable).each(function(){var i=e(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push(i),i.refreshPositions(),i._trigger("activate",t,n))})},stop:function(t,i,s){var n=e.extend({},i,{item:s.element});s.cancelHelperRemoval=!1,e.each(s.sortables,function(){var e=this;e.isOver?(e.isOver=0,s.cancelHelperRemoval=!0,e.cancelHelperRemoval=!1,e._storedCSS={position:e.placeholder.css("position"),top:e.placeholder.css("top"),left:e.placeholder.css("left")},e._mouseStop(t),e.options.helper=e.options._helper):(e.cancelHelperRemoval=!0,e._trigger("deactivate",t,n))})},drag:function(t,i,s){e.each(s.sortables,function(){var n=!1,a=this;a.positionAbs=s.positionAbs,a.helperProportions=s.helperProportions,a.offset.click=s.offset.click,a._intersectsWith(a.containerCache)&&(n=!0,e.each(s.sortables,function(){return this.positionAbs=s.positionAbs,this.helperProportions=s.helperProportions,this.offset.click=s.offset.click,this!==a&&this._intersectsWith(this.containerCache)&&e.contains(a.element[0],this.element[0])&&(n=!1),n})),n?(a.isOver||(a.isOver=1,s._parent=i.helper.parent(),a.currentItem=i.helper.appendTo(a.element).data("ui-sortable-item",!0),a.options._helper=a.options.helper,a.options.helper=function(){return i.helper[0]},t.target=a.currentItem[0],a._mouseCapture(t,!0),a._mouseStart(t,!0,!0),a.offset.click.top=s.offset.click.top,a.offset.click.left=s.offset.click.left,a.offset.parent.left-=s.offset.parent.left-a.offset.parent.left,a.offset.parent.top-=s.offset.parent.top-a.offset.parent.top,s._trigger("toSortable",t),s.dropped=a.element,e.each(s.sortables,function(){this.refreshPositions()}),s.currentItem=s.element,a.fromOutside=s),a.currentItem&&(a._mouseDrag(t),i.position=a.position)):a.isOver&&(a.isOver=0,a.cancelHelperRemoval=!0,a.options._revert=a.options.revert,a.options.revert=!1,a._trigger("out",t,a._uiHash(a)),a._mouseStop(t,!0),a.options.revert=a.options._revert,a.options.helper=a.options._helper,a.placeholder&&a.placeholder.remove(),i.helper.appendTo(s._parent),s._refreshOffsets(t),i.position=s._generatePosition(t,!0),s._trigger("fromSortable",t),s.dropped=!1,e.each(s.sortables,function(){this.refreshPositions()}))})}}),e.ui.plugin.add("draggable","cursor",{start:function(t,i,s){var n=e("body"),a=s.options;n.css("cursor")&&(a._cursor=n.css("cursor")),n.css("cursor",a.cursor)},stop:function(t,i,s){var n=s.options;n._cursor&&e("body").css("cursor",n._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,i,s){var n=e(i.helper),a=s.options;n.css("opacity")&&(a._opacity=n.css("opacity")),n.css("opacity",a.opacity)},stop:function(t,i,s){var n=s.options;n._opacity&&e(i.helper).css("opacity",n._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(e,t,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(t,i,s){var n=s.options,a=!1,o=s.scrollParentNotHidden[0],r=s.document[0];o!==r&&"HTML"!==o.tagName?(n.axis&&"x"===n.axis||(s.overflowOffset.top+o.offsetHeight-t.pageY=0;c--)h=s.snapElements[c].left-s.margins.left,l=h+s.snapElements[c].width,u=s.snapElements[c].top-s.margins.top,d=u+s.snapElements[c].height,h-m>v||g>l+m||u-m>b||y>d+m||!e.contains(s.snapElements[c].item.ownerDocument,s.snapElements[c].item)?(s.snapElements[c].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=!1):("inner"!==f.snapMode&&(n=m>=Math.abs(u-b),a=m>=Math.abs(d-y),o=m>=Math.abs(h-v),r=m>=Math.abs(l-g),n&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top),a&&(i.position.top=s._convertPositionTo("relative",{top:d,left:0}).top),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left)),p=n||a||o||r,"outer"!==f.snapMode&&(n=m>=Math.abs(u-y),a=m>=Math.abs(d-b),o=m>=Math.abs(h-g),r=m>=Math.abs(l-v),n&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top),a&&(i.position.top=s._convertPositionTo("relative",{top:d-s.helperProportions.height,left:0}).top),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left)),!s.snapElements[c].snapping&&(n||a||o||r||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=n||a||o||r||p)}}),e.ui.plugin.add("draggable","stack",{start:function(t,i,s){var n,a=s.options,o=e.makeArray(e(a.stack)).sort(function(t,i){return(parseInt(e(t).css("zIndex"),10)||0)-(parseInt(e(i).css("zIndex"),10)||0)});o.length&&(n=parseInt(e(o[0]).css("zIndex"),10)||0,e(o).each(function(t){e(this).css("zIndex",n+t)}),this.css("zIndex",n+o.length))}}),e.ui.plugin.add("draggable","zIndex",{start:function(t,i,s){var n=e(i.helper),a=s.options;n.css("zIndex")&&(a._zIndex=n.css("zIndex")),n.css("zIndex",a.zIndex)},stop:function(t,i,s){var n=s.options;n._zIndex&&e(i.helper).css("zIndex",n._zIndex)}}),e.ui.draggable,e.widget("ui.droppable",{version:"1.11.4",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var t,i=this.options,s=i.accept;this.isover=!1,this.isout=!0,this.accept=e.isFunction(s)?s:function(e){return e.is(s)},this.proportions=function(){return arguments.length?(t=arguments[0],void 0):t?t:t={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}},this._addToManager(i.scope),i.addClasses&&this.element.addClass("ui-droppable")},_addToManager:function(t){e.ui.ddmanager.droppables[t]=e.ui.ddmanager.droppables[t]||[],e.ui.ddmanager.droppables[t].push(this)},_splice:function(e){for(var t=0;e.length>t;t++)e[t]===this&&e.splice(t,1)},_destroy:function(){var t=e.ui.ddmanager.droppables[this.options.scope];this._splice(t),this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(t,i){if("accept"===t)this.accept=e.isFunction(i)?i:function(e){return e.is(i)};else if("scope"===t){var s=e.ui.ddmanager.droppables[this.options.scope];this._splice(s),this._addToManager(i)}this._super(t,i)},_activate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),i&&this._trigger("activate",t,this.ui(i))},_deactivate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),i&&this._trigger("deactivate",t,this.ui(i))},_over:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",t,this.ui(i)))},_out:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",t,this.ui(i)))},_drop:function(t,i){var s=i||e.ui.ddmanager.current,n=!1;return s&&(s.currentItem||s.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var i=e(this).droppable("instance");return i.options.greedy&&!i.options.disabled&&i.options.scope===s.options.scope&&i.accept.call(i.element[0],s.currentItem||s.element)&&e.ui.intersect(s,e.extend(i,{offset:i.element.offset()}),i.options.tolerance,t)?(n=!0,!1):void 0}),n?!1:this.accept.call(this.element[0],s.currentItem||s.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",t,this.ui(s)),this.element):!1):!1},ui:function(e){return{draggable:e.currentItem||e.element,helper:e.helper,position:e.position,offset:e.positionAbs}}}),e.ui.intersect=function(){function e(e,t,i){return e>=t&&t+i>e}return function(t,i,s,n){if(!i.offset)return!1;var a=(t.positionAbs||t.position.absolute).left+t.margins.left,o=(t.positionAbs||t.position.absolute).top+t.margins.top,r=a+t.helperProportions.width,h=o+t.helperProportions.height,l=i.offset.left,u=i.offset.top,d=l+i.proportions().width,c=u+i.proportions().height;switch(s){case"fit":return a>=l&&d>=r&&o>=u&&c>=h;case"intersect":return a+t.helperProportions.width/2>l&&d>r-t.helperProportions.width/2&&o+t.helperProportions.height/2>u&&c>h-t.helperProportions.height/2;case"pointer":return e(n.pageY,u,i.proportions().height)&&e(n.pageX,l,i.proportions().width);case"touch":return(o>=u&&c>=o||h>=u&&c>=h||u>o&&h>c)&&(a>=l&&d>=a||r>=l&&d>=r||l>a&&r>d);default:return!1}}}(),e.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,i){var s,n,a=e.ui.ddmanager.droppables[t.options.scope]||[],o=i?i.type:null,r=(t.currentItem||t.element).find(":data(ui-droppable)").addBack();e:for(s=0;a.length>s;s++)if(!(a[s].options.disabled||t&&!a[s].accept.call(a[s].element[0],t.currentItem||t.element))){for(n=0;r.length>n;n++)if(r[n]===a[s].element[0]){a[s].proportions().height=0;continue e}a[s].visible="none"!==a[s].element.css("display"),a[s].visible&&("mousedown"===o&&a[s]._activate.call(a[s],i),a[s].offset=a[s].element.offset(),a[s].proportions({width:a[s].element[0].offsetWidth,height:a[s].element[0].offsetHeight}))}},drop:function(t,i){var s=!1;return e.each((e.ui.ddmanager.droppables[t.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&e.ui.intersect(t,this,this.options.tolerance,i)&&(s=this._drop.call(this,i)||s),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],t.currentItem||t.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),s},dragStart:function(t,i){t.element.parentsUntil("body").bind("scroll.droppable",function(){t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)})},drag:function(t,i){t.options.refreshPositions&&e.ui.ddmanager.prepareOffsets(t,i),e.each(e.ui.ddmanager.droppables[t.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var s,n,a,o=e.ui.intersect(t,this,this.options.tolerance,i),r=!o&&this.isover?"isout":o&&!this.isover?"isover":null;r&&(this.options.greedy&&(n=this.options.scope,a=this.element.parents(":data(ui-droppable)").filter(function(){return e(this).droppable("instance").options.scope===n}),a.length&&(s=e(a[0]).droppable("instance"),s.greedyChild="isover"===r)),s&&"isover"===r&&(s.isover=!1,s.isout=!0,s._out.call(s,i)),this[r]=!0,this["isout"===r?"isover":"isout"]=!1,this["isover"===r?"_over":"_out"].call(this,i),s&&"isout"===r&&(s.isout=!1,s.isover=!0,s._over.call(s,i)))}})},dragStop:function(t,i){t.element.parentsUntil("body").unbind("scroll.droppable"),t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)}},e.ui.droppable,e.widget("ui.resizable",e.ui.mouse,{version:"1.11.4",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(e){return parseInt(e,10)||0},_isNumber:function(e){return!isNaN(parseInt(e,10))},_hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return t[s]>0?!0:(t[s]=1,n=t[s]>0,t[s]=0,n)},_create:function(){var t,i,s,n,a,o=this,r=this.options;if(this.element.addClass("ui-resizable"),e.extend(this,{_aspectRatio:!!r.aspectRatio,aspectRatio:r.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:r.helper||r.ghost||r.animate?r.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(e("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=r.handles||(e(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=e(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),t=this.handles.split(","),this.handles={},i=0;t.length>i;i++)s=e.trim(t[i]),a="ui-resizable-"+s,n=e("
"),n.css({zIndex:r.zIndex}),"se"===s&&n.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(n);this._renderAxis=function(t){var i,s,n,a;t=t||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=e(this.handles[i]),this._on(this.handles[i],{mousedown:o._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=e(this.handles[i],this.element),a=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),t.css(n,a),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.mouseover(function(){o.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),o.axis=n&&n[1]?n[1]:"se")}),r.autoHide&&(this._handles.hide(),e(this.element).addClass("ui-resizable-autohide").mouseenter(function(){r.disabled||(e(this).removeClass("ui-resizable-autohide"),o._handles.show())}).mouseleave(function(){r.disabled||o.resizing||(e(this).addClass("ui-resizable-autohide"),o._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var t,i=function(t){e(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(t){var i,s,n=!1;for(i in this.handles)s=e(this.handles[i])[0],(s===t.target||e.contains(s,t.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(t){var i,s,n,a=this.options,o=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),a.containment&&(i+=e(a.containment).scrollLeft()||0,s+=e(a.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:o.width(),height:o.height()},this.originalSize=this._helper?{width:o.outerWidth(),height:o.outerHeight()}:{width:o.width(),height:o.height()},this.sizeDiff={width:o.outerWidth()-o.width(),height:o.outerHeight()-o.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof a.aspectRatio?a.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=e(".ui-resizable-"+this.axis).css("cursor"),e("body").css("cursor","auto"===n?this.axis+"-resize":n),o.addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var i,s,n=this.originalMousePosition,a=this.axis,o=t.pageX-n.left||0,r=t.pageY-n.top||0,h=this._change[a];return this._updatePrevProperties(),h?(i=h.apply(this,[t,o,r]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(i=this._updateRatio(i,t)),i=this._respectSize(i,t),this._updateCache(i),this._propagate("resize",t),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),e.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(t){this.resizing=!1;var i,s,n,a,o,r,h,l=this.options,u=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:u.sizeDiff.height,a=s?0:u.sizeDiff.width,o={width:u.helper.width()-a,height:u.helper.height()-n},r=parseInt(u.element.css("left"),10)+(u.position.left-u.originalPosition.left)||null,h=parseInt(u.element.css("top"),10)+(u.position.top-u.originalPosition.top)||null,l.animate||this.element.css(e.extend(o,{top:h,left:r})),u.helper.height(u.size.height),u.helper.width(u.size.width),this._helper&&!l.animate&&this._proportionallyResize()),e("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var e={};return this.position.top!==this.prevPosition.top&&(e.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(e.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(e.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(e.height=this.size.height+"px"),this.helper.css(e),e},_updateVirtualBoundaries:function(e){var t,i,s,n,a,o=this.options;a={minWidth:this._isNumber(o.minWidth)?o.minWidth:0,maxWidth:this._isNumber(o.maxWidth)?o.maxWidth:1/0,minHeight:this._isNumber(o.minHeight)?o.minHeight:0,maxHeight:this._isNumber(o.maxHeight)?o.maxHeight:1/0},(this._aspectRatio||e)&&(t=a.minHeight*this.aspectRatio,s=a.minWidth/this.aspectRatio,i=a.maxHeight*this.aspectRatio,n=a.maxWidth/this.aspectRatio,t>a.minWidth&&(a.minWidth=t),s>a.minHeight&&(a.minHeight=s),a.maxWidth>i&&(a.maxWidth=i),a.maxHeight>n&&(a.maxHeight=n)),this._vBoundaries=a},_updateCache:function(e){this.offset=this.helper.offset(),this._isNumber(e.left)&&(this.position.left=e.left),this._isNumber(e.top)&&(this.position.top=e.top),this._isNumber(e.height)&&(this.size.height=e.height),this._isNumber(e.width)&&(this.size.width=e.width)},_updateRatio:function(e){var t=this.position,i=this.size,s=this.axis;return this._isNumber(e.height)?e.width=e.height*this.aspectRatio:this._isNumber(e.width)&&(e.height=e.width/this.aspectRatio),"sw"===s&&(e.left=t.left+(i.width-e.width),e.top=null),"nw"===s&&(e.top=t.top+(i.height-e.height),e.left=t.left+(i.width-e.width)),e},_respectSize:function(e){var t=this._vBoundaries,i=this.axis,s=this._isNumber(e.width)&&t.maxWidth&&t.maxWidthe.width,o=this._isNumber(e.height)&&t.minHeight&&t.minHeight>e.height,r=this.originalPosition.left+this.originalSize.width,h=this.position.top+this.size.height,l=/sw|nw|w/.test(i),u=/nw|ne|n/.test(i);return a&&(e.width=t.minWidth),o&&(e.height=t.minHeight),s&&(e.width=t.maxWidth),n&&(e.height=t.maxHeight),a&&l&&(e.left=r-t.minWidth),s&&l&&(e.left=r-t.maxWidth),o&&u&&(e.top=h-t.minHeight),n&&u&&(e.top=h-t.maxHeight),e.width||e.height||e.left||!e.top?e.width||e.height||e.top||!e.left||(e.left=null):e.top=null,e},_getPaddingPlusBorderDimensions:function(e){for(var t=0,i=[],s=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],n=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];4>t;t++)i[t]=parseInt(s[t],10)||0,i[t]+=parseInt(n[t],10)||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var e,t=0,i=this.helper||this.element;this._proportionallyResizeElements.length>t;t++)e=this._proportionallyResizeElements[t],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(e)),e.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,i=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||e("
"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(e,t){return{width:this.originalSize.width+t}},w:function(e,t){var i=this.originalSize,s=this.originalPosition;return{left:s.left+t,width:i.width-t}},n:function(e,t,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(e,t,i){return{height:this.originalSize.height+i}},se:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},sw:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,i,s]))},ne:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},nw:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,i,s]))}},_propagate:function(t,i){e.ui.plugin.call(this,t,[i,this.ui()]),"resize"!==t&&this._trigger(t,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),e.ui.plugin.add("resizable","animate",{stop:function(t){var i=e(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,a=n.length&&/textarea/i.test(n[0].nodeName),o=a&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=a?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-o},l=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,u=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(e.extend(h,u&&l?{top:u,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};n&&n.length&&e(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(){var t,i,s,n,a,o,r,h=e(this).resizable("instance"),l=h.options,u=h.element,d=l.containment,c=d instanceof e?d.get(0):/parent/.test(d)?u.parent().get(0):d;c&&(h.containerElement=e(c),/document/.test(d)||d===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}):(t=e(c),i=[],e(["Top","Right","Left","Bottom"]).each(function(e,s){i[e]=h._num(t.css("padding"+s))}),h.containerOffset=t.offset(),h.containerPosition=t.position(),h.containerSize={height:t.innerHeight()-i[3],width:t.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,a=h.containerSize.width,o=h._hasScroll(c,"left")?c.scrollWidth:a,r=h._hasScroll(c)?c.scrollHeight:n,h.parentData={element:c,left:s.left,top:s.top,width:o,height:r}))},resize:function(t){var i,s,n,a,o=e(this).resizable("instance"),r=o.options,h=o.containerOffset,l=o.position,u=o._aspectRatio||t.shiftKey,d={top:0,left:0},c=o.containerElement,p=!0;c[0]!==document&&/static/.test(c.css("position"))&&(d=h),l.left<(o._helper?h.left:0)&&(o.size.width=o.size.width+(o._helper?o.position.left-h.left:o.position.left-d.left),u&&(o.size.height=o.size.width/o.aspectRatio,p=!1),o.position.left=r.helper?h.left:0),l.top<(o._helper?h.top:0)&&(o.size.height=o.size.height+(o._helper?o.position.top-h.top:o.position.top),u&&(o.size.width=o.size.height*o.aspectRatio,p=!1),o.position.top=o._helper?h.top:0),n=o.containerElement.get(0)===o.element.parent().get(0),a=/relative|absolute/.test(o.containerElement.css("position")),n&&a?(o.offset.left=o.parentData.left+o.position.left,o.offset.top=o.parentData.top+o.position.top):(o.offset.left=o.element.offset().left,o.offset.top=o.element.offset().top),i=Math.abs(o.sizeDiff.width+(o._helper?o.offset.left-d.left:o.offset.left-h.left)),s=Math.abs(o.sizeDiff.height+(o._helper?o.offset.top-d.top:o.offset.top-h.top)),i+o.size.width>=o.parentData.width&&(o.size.width=o.parentData.width-i,u&&(o.size.height=o.size.width/o.aspectRatio,p=!1)),s+o.size.height>=o.parentData.height&&(o.size.height=o.parentData.height-s,u&&(o.size.width=o.size.height*o.aspectRatio,p=!1)),p||(o.position.left=o.prevPosition.left,o.position.top=o.prevPosition.top,o.size.width=o.prevSize.width,o.size.height=o.prevSize.height)},stop:function(){var t=e(this).resizable("instance"),i=t.options,s=t.containerOffset,n=t.containerPosition,a=t.containerElement,o=e(t.helper),r=o.offset(),h=o.outerWidth()-t.sizeDiff.width,l=o.outerHeight()-t.sizeDiff.height;t._helper&&!i.animate&&/relative/.test(a.css("position"))&&e(this).css({left:r.left-n.left-s.left,width:h,height:l}),t._helper&&!i.animate&&/static/.test(a.css("position"))&&e(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),e.ui.plugin.add("resizable","alsoResize",{start:function(){var t=e(this).resizable("instance"),i=t.options;e(i.alsoResize).each(function(){var t=e(this);t.data("ui-resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})},resize:function(t,i){var s=e(this).resizable("instance"),n=s.options,a=s.originalSize,o=s.originalPosition,r={height:s.size.height-a.height||0,width:s.size.width-a.width||0,top:s.position.top-o.top||0,left:s.position.left-o.left||0};e(n.alsoResize).each(function(){var t=e(this),s=e(this).data("ui-resizable-alsoresize"),n={},a=t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(a,function(e,t){var i=(s[t]||0)+(r[t]||0);i&&i>=0&&(n[t]=i||null)}),t.css(n)})},stop:function(){e(this).removeData("resizable-alsoresize")}}),e.ui.plugin.add("resizable","ghost",{start:function(){var t=e(this).resizable("instance"),i=t.options,s=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),t.ghost.appendTo(t.helper)},resize:function(){var t=e(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=e(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(){var t,i=e(this).resizable("instance"),s=i.options,n=i.size,a=i.originalSize,o=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,u=h[1]||1,d=Math.round((n.width-a.width)/l)*l,c=Math.round((n.height-a.height)/u)*u,p=a.width+d,f=a.height+c,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,v=s.minWidth&&s.minWidth>p,y=s.minHeight&&s.minHeight>f;s.grid=h,v&&(p+=l),y&&(f+=u),m&&(p-=l),g&&(f-=u),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=o.top-c):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=o.left-d):((0>=f-u||0>=p-l)&&(t=i._getPaddingPlusBorderDimensions(this)),f-u>0?(i.size.height=f,i.position.top=o.top-c):(f=u-t.height,i.size.height=f,i.position.top=o.top+a.height-f),p-l>0?(i.size.width=p,i.position.left=o.left-d):(p=l-t.width,i.size.width=p,i.position.left=o.left+a.width-p))}}),e.ui.resizable,e.widget("ui.selectable",e.ui.mouse,{version:"1.11.4",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var t,i=this; -this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){t=e(i.options.filter,i.element[0]),t.addClass("ui-selectee"),t.each(function(){var t=e(this),i=t.offset();e.data(this,"selectable-item",{element:this,$element:t,left:i.left,top:i.top,right:i.left+t.outerWidth(),bottom:i.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=t.addClass("ui-selectee"),this._mouseInit(),this.helper=e("
")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(t){var i=this,s=this.options;this.opos=[t.pageX,t.pageY],this.options.disabled||(this.selectees=e(s.filter,this.element[0]),this._trigger("start",t),e(s.appendTo).append(this.helper),this.helper.css({left:t.pageX,top:t.pageY,width:0,height:0}),s.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var s=e.data(this,"selectable-item");s.startselected=!0,t.metaKey||t.ctrlKey||(s.$element.removeClass("ui-selected"),s.selected=!1,s.$element.addClass("ui-unselecting"),s.unselecting=!0,i._trigger("unselecting",t,{unselecting:s.element}))}),e(t.target).parents().addBack().each(function(){var s,n=e.data(this,"selectable-item");return n?(s=!t.metaKey&&!t.ctrlKey||!n.$element.hasClass("ui-selected"),n.$element.removeClass(s?"ui-unselecting":"ui-selected").addClass(s?"ui-selecting":"ui-unselecting"),n.unselecting=!s,n.selecting=s,n.selected=s,s?i._trigger("selecting",t,{selecting:n.element}):i._trigger("unselecting",t,{unselecting:n.element}),!1):void 0}))},_mouseDrag:function(t){if(this.dragged=!0,!this.options.disabled){var i,s=this,n=this.options,a=this.opos[0],o=this.opos[1],r=t.pageX,h=t.pageY;return a>r&&(i=r,r=a,a=i),o>h&&(i=h,h=o,o=i),this.helper.css({left:a,top:o,width:r-a,height:h-o}),this.selectees.each(function(){var i=e.data(this,"selectable-item"),l=!1;i&&i.element!==s.element[0]&&("touch"===n.tolerance?l=!(i.left>r||a>i.right||i.top>h||o>i.bottom):"fit"===n.tolerance&&(l=i.left>a&&r>i.right&&i.top>o&&h>i.bottom),l?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,s._trigger("selecting",t,{selecting:i.element}))):(i.selecting&&((t.metaKey||t.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),s._trigger("unselecting",t,{unselecting:i.element}))),i.selected&&(t.metaKey||t.ctrlKey||i.startselected||(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,s._trigger("unselecting",t,{unselecting:i.element})))))}),!1}},_mouseStop:function(t){var i=this;return this.dragged=!1,e(".ui-unselecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-unselecting"),s.unselecting=!1,s.startselected=!1,i._trigger("unselected",t,{unselected:s.element})}),e(".ui-selecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-selecting").addClass("ui-selected"),s.selecting=!1,s.selected=!0,s.startselected=!0,i._trigger("selected",t,{selected:s.element})}),this._trigger("stop",t),this.helper.remove(),!1}}),e.widget("ui.sortable",e.ui.mouse,{version:"1.11.4",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_isOverAxis:function(e,t,i){return e>=t&&t+i>e},_isFloating:function(e){return/left|right/.test(e.css("float"))||/inline|table-cell/.test(e.css("display"))},_create:function(){this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.offset=this.element.offset(),this._mouseInit(),this._setHandleClassName(),this.ready=!0},_setOption:function(e,t){this._super(e,t),"handle"===e&&this._setHandleClassName()},_setHandleClassName:function(){this.element.find(".ui-sortable-handle").removeClass("ui-sortable-handle"),e.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").find(".ui-sortable-handle").removeClass("ui-sortable-handle"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_mouseCapture:function(t,i){var s=null,n=!1,a=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(t),e(t.target).parents().each(function(){return e.data(this,a.widgetName+"-item")===a?(s=e(this),!1):void 0}),e.data(t.target,a.widgetName+"-item")===a&&(s=e(t.target)),s?!this.options.handle||i||(e(this.options.handle,s).find("*").addBack().each(function(){this===t.target&&(n=!0)}),n)?(this.currentItem=s,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(t,i,s){var n,a,o=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,o.cursorAt&&this._adjustOffsetFromHelper(o.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),o.containment&&this._setContainment(),o.cursor&&"auto"!==o.cursor&&(a=this.document.find("body"),this.storedCursor=a.css("cursor"),a.css("cursor",o.cursor),this.storedStylesheet=e("").appendTo(a)),o.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",o.opacity)),o.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",o.zIndex)),this.scrollParent[0]!==this.document[0]&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!s)for(n=this.containers.length-1;n>=0;n--)this.containers[n]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!o.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){var i,s,n,a,o=this.options,r=!1;for(this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==this.document[0]&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY=0;i--)if(s=this.items[i],n=s.item[0],a=this._intersectsWithPointer(s),a&&s.instance===this.currentContainer&&n!==this.currentItem[0]&&this.placeholder[1===a?"next":"prev"]()[0]!==n&&!e.contains(this.placeholder[0],n)&&("semi-dynamic"===this.options.type?!e.contains(this.element[0],n):!0)){if(this.direction=1===a?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,i){if(t){if(e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t),this.options.revert){var s=this,n=this.placeholder.offset(),a=this.options.axis,o={};a&&"x"!==a||(o.left=n.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===this.document[0].body?0:this.offsetParent[0].scrollLeft)),a&&"y"!==a||(o.top=n.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===this.document[0].body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,e(this.helper).animate(o,parseInt(this.options.revert,10)||500,function(){s._clear(t)})}else this._clear(t,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},e(i).each(function(){var i=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[\-=_](.+)/);i&&s.push((t.key||i[1]+"[]")+"="+(t.key&&t.expression?i[1]:i[2]))}),!s.length&&t.key&&s.push(t.key+"="),s.join("&")},toArray:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},i.each(function(){s.push(e(t.item||this).attr(t.attribute||"id")||"")}),s},_intersectsWith:function(e){var t=this.positionAbs.left,i=t+this.helperProportions.width,s=this.positionAbs.top,n=s+this.helperProportions.height,a=e.left,o=a+e.width,r=e.top,h=r+e.height,l=this.offset.click.top,u=this.offset.click.left,d="x"===this.options.axis||s+l>r&&h>s+l,c="y"===this.options.axis||t+u>a&&o>t+u,p=d&&c;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?p:t+this.helperProportions.width/2>a&&o>i-this.helperProportions.width/2&&s+this.helperProportions.height/2>r&&h>n-this.helperProportions.height/2},_intersectsWithPointer:function(e){var t="x"===this.options.axis||this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top,e.height),i="y"===this.options.axis||this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left,e.width),s=t&&i,n=this._getDragVerticalDirection(),a=this._getDragHorizontalDirection();return s?this.floating?a&&"right"===a||"down"===n?2:1:n&&("down"===n?2:1):!1},_intersectsWithSides:function(e){var t=this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top+e.height/2,e.height),i=this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left+e.width/2,e.width),s=this._getDragVerticalDirection(),n=this._getDragHorizontalDirection();return this.floating&&n?"right"===n&&i||"left"===n&&!i:s&&("down"===s&&t||"up"===s&&!t)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return 0!==e&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return 0!==e&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this._setHandleClassName(),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor===String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){function i(){r.push(this)}var s,n,a,o,r=[],h=[],l=this._connectWith();if(l&&t)for(s=l.length-1;s>=0;s--)for(a=e(l[s],this.document[0]),n=a.length-1;n>=0;n--)o=e.data(a[n],this.widgetFullName),o&&o!==this&&!o.options.disabled&&h.push([e.isFunction(o.options.items)?o.options.items.call(o.element):e(o.options.items,o.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),o]);for(h.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),s=h.length-1;s>=0;s--)h[s][0].each(i);return e(r)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var i=0;t.length>i;i++)if(t[i]===e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var i,s,n,a,o,r,h,l,u=this.items,d=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],c=this._connectWith();if(c&&this.ready)for(i=c.length-1;i>=0;i--)for(n=e(c[i],this.document[0]),s=n.length-1;s>=0;s--)a=e.data(n[s],this.widgetFullName),a&&a!==this&&!a.options.disabled&&(d.push([e.isFunction(a.options.items)?a.options.items.call(a.element[0],t,{item:this.currentItem}):e(a.options.items,a.element),a]),this.containers.push(a));for(i=d.length-1;i>=0;i--)for(o=d[i][1],r=d[i][0],s=0,l=r.length;l>s;s++)h=e(r[s]),h.data(this.widgetName+"-item",o),u.push({item:h,instance:o,width:0,height:0,left:0,top:0})},refreshPositions:function(t){this.floating=this.items.length?"x"===this.options.axis||this._isFloating(this.items[0].item):!1,this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var i,s,n,a;for(i=this.items.length-1;i>=0;i--)s=this.items[i],s.instance!==this.currentContainer&&this.currentContainer&&s.item[0]!==this.currentItem[0]||(n=this.options.toleranceElement?e(this.options.toleranceElement,s.item):s.item,t||(s.width=n.outerWidth(),s.height=n.outerHeight()),a=n.offset(),s.left=a.left,s.top=a.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)a=this.containers[i].element.offset(),this.containers[i].containerCache.left=a.left,this.containers[i].containerCache.top=a.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(t){t=t||this;var i,s=t.options;s.placeholder&&s.placeholder.constructor!==String||(i=s.placeholder,s.placeholder={element:function(){var s=t.currentItem[0].nodeName.toLowerCase(),n=e("<"+s+">",t.document[0]).addClass(i||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tbody"===s?t._createTrPlaceholder(t.currentItem.find("tr").eq(0),e("",t.document[0]).appendTo(n)):"tr"===s?t._createTrPlaceholder(t.currentItem,n):"img"===s&&n.attr("src",t.currentItem.attr("src")),i||n.css("visibility","hidden"),n},update:function(e,n){(!i||s.forcePlaceholderSize)&&(n.height()||n.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),n.width()||n.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10)))}}),t.placeholder=e(s.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),s.placeholder.update(t,t.placeholder)},_createTrPlaceholder:function(t,i){var s=this;t.children().each(function(){e(" ",s.document[0]).attr("colspan",e(this).attr("colspan")||1).appendTo(i)})},_contactContainers:function(t){var i,s,n,a,o,r,h,l,u,d,c=null,p=null;for(i=this.containers.length-1;i>=0;i--)if(!e.contains(this.currentItem[0],this.containers[i].element[0]))if(this._intersectsWith(this.containers[i].containerCache)){if(c&&e.contains(this.containers[i].element[0],c.element[0]))continue;c=this.containers[i],p=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0);if(c)if(1===this.containers.length)this.containers[p].containerCache.over||(this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1);else{for(n=1e4,a=null,u=c.floating||this._isFloating(this.currentItem),o=u?"left":"top",r=u?"width":"height",d=u?"clientX":"clientY",s=this.items.length-1;s>=0;s--)e.contains(this.containers[p].element[0],this.items[s].item[0])&&this.items[s].item[0]!==this.currentItem[0]&&(h=this.items[s].item.offset()[o],l=!1,t[d]-h>this.items[s][r]/2&&(l=!0),n>Math.abs(t[d]-h)&&(n=Math.abs(t[d]-h),a=this.items[s],this.direction=l?"up":"down"));if(!a&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[p])return this.currentContainer.containerCache.over||(this.containers[p]._trigger("over",t,this._uiHash()),this.currentContainer.containerCache.over=1),void 0;a?this._rearrange(t,a,null,!0):this._rearrange(t,null,this.containers[p].element,!0),this._trigger("change",t,this._uiHash()),this.containers[p]._trigger("change",t,this._uiHash(this)),this.currentContainer=this.containers[p],this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1}},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t,this.currentItem])):"clone"===i.helper?this.currentItem.clone():this.currentItem;return s.parents("body").length||e("parent"!==i.appendTo?i.appendTo:this.currentItem[0].parentNode)[0].appendChild(s[0]),s[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!s[0].style.width||i.forceHelperSize)&&s.width(this.currentItem.width()),(!s[0].style.height||i.forceHelperSize)&&s.height(this.currentItem.height()),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==this.document[0]&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===this.document[0].body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&e.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,n=this.options;"parent"===n.containment&&(n.containment=this.helper[0].parentNode),("document"===n.containment||"window"===n.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,"document"===n.containment?this.document.width():this.window.width()-this.helperProportions.width-this.margins.left,("document"===n.containment?this.document.width():this.window.height()||this.document[0].body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]),/^(document|window|parent)$/.test(n.containment)||(t=e(n.containment)[0],i=e(n.containment).offset(),s="hidden"!==e(t).css("overflow"),this.containment=[i.left+(parseInt(e(t).css("borderLeftWidth"),10)||0)+(parseInt(e(t).css("paddingLeft"),10)||0)-this.margins.left,i.top+(parseInt(e(t).css("borderTopWidth"),10)||0)+(parseInt(e(t).css("paddingTop"),10)||0)-this.margins.top,i.left+(s?Math.max(t.scrollWidth,t.offsetWidth):t.offsetWidth)-(parseInt(e(t).css("borderLeftWidth"),10)||0)-(parseInt(e(t).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,i.top+(s?Math.max(t.scrollHeight,t.offsetHeight):t.offsetHeight)-(parseInt(e(t).css("borderTopWidth"),10)||0)-(parseInt(e(t).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(t,i){i||(i=this.position);var s="absolute"===t?1:-1,n="absolute"!==this.cssPosition||this.scrollParent[0]!==this.document[0]&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,a=/(html|body)/i.test(n[0].tagName);return{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():a?0:n.scrollTop())*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():a?0:n.scrollLeft())*s}},_generatePosition:function(t){var i,s,n=this.options,a=t.pageX,o=t.pageY,r="absolute"!==this.cssPosition||this.scrollParent[0]!==this.document[0]&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=/(html|body)/i.test(r[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==this.document[0]&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(t.pageX-this.offset.click.leftthis.containment[2]&&(a=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top)),n.grid&&(i=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1],o=this.containment?i-this.offset.click.top>=this.containment[1]&&i-this.offset.click.top<=this.containment[3]?i:i-this.offset.click.top>=this.containment[1]?i-n.grid[1]:i+n.grid[1]:i,s=this.originalPageX+Math.round((a-this.originalPageX)/n.grid[0])*n.grid[0],a=this.containment?s-this.offset.click.left>=this.containment[0]&&s-this.offset.click.left<=this.containment[2]?s:s-this.offset.click.left>=this.containment[0]?s-n.grid[0]:s+n.grid[0]:s)),{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():h?0:r.scrollTop()),left:a-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():h?0:r.scrollLeft())}},_rearrange:function(e,t,i,s){i?i[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var n=this.counter;this._delay(function(){n===this.counter&&this.refreshPositions(!s)})},_clear:function(e,t){function i(e,t,i){return function(s){i._trigger(e,s,t._uiHash(t))}}this.reverting=!1;var s,n=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(s in this._storedCSS)("auto"===this._storedCSS[s]||"static"===this._storedCSS[s])&&(this._storedCSS[s]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!t&&n.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||t||n.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(t||(n.push(function(e){this._trigger("remove",e,this._uiHash())}),n.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),n.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer)))),s=this.containers.length-1;s>=0;s--)t||n.push(i("deactivate",this,this.containers[s])),this.containers[s].containerCache.over&&(n.push(i("out",this,this.containers[s])),this.containers[s].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,t||this._trigger("beforeStop",e,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.cancelHelperRemoval||(this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null),!t){for(s=0;n.length>s;s++)n[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!this.cancelHelperRemoval},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var i=t||this;return{helper:i.helper,placeholder:i.placeholder||e([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:t?t.element:null}}}),e.widget("ui.accordion",{version:"1.11.4",options:{active:0,animate:{},collapsible:!1,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},hideProps:{borderTopWidth:"hide",borderBottomWidth:"hide",paddingTop:"hide",paddingBottom:"hide",height:"hide"},showProps:{borderTopWidth:"show",borderBottomWidth:"show",paddingTop:"show",paddingBottom:"show",height:"show"},_create:function(){var t=this.options;this.prevShow=this.prevHide=e(),this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist"),t.collapsible||t.active!==!1&&null!=t.active||(t.active=0),this._processPanels(),0>t.active&&(t.active+=this.headers.length),this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():e()}},_createIcons:function(){var t=this.options.icons;t&&(e("").addClass("ui-accordion-header-icon ui-icon "+t.header).prependTo(this.headers),this.active.children(".ui-accordion-header-icon").removeClass(t.header).addClass(t.activeHeader),this.headers.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var e;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").removeUniqueId(),this._destroyIcons(),e=this.headers.next().removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeUniqueId(),"content"!==this.options.heightStyle&&e.css("height","")},_setOption:function(e,t){return"active"===e?(this._activate(t),void 0):("event"===e&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(t)),this._super(e,t),"collapsible"!==e||t||this.options.active!==!1||this._activate(0),"icons"===e&&(this._destroyIcons(),t&&this._createIcons()),"disabled"===e&&(this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!t)),void 0)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var i=e.ui.keyCode,s=this.headers.length,n=this.headers.index(t.target),a=!1;switch(t.keyCode){case i.RIGHT:case i.DOWN:a=this.headers[(n+1)%s];break;case i.LEFT:case i.UP:a=this.headers[(n-1+s)%s];break;case i.SPACE:case i.ENTER:this._eventHandler(t);break;case i.HOME:a=this.headers[0];break;case i.END:a=this.headers[s-1]}a&&(e(t.target).attr("tabIndex",-1),e(a).attr("tabIndex",0),a.focus(),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===e.ui.keyCode.UP&&t.ctrlKey&&e(t.currentTarget).prev().focus()},refresh:function(){var t=this.options;this._processPanels(),t.active===!1&&t.collapsible===!0||!this.headers.length?(t.active=!1,this.active=e()):t.active===!1?this._activate(0):this.active.length&&!e.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=e()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active),this._destroyIcons(),this._refresh()},_processPanels:function(){var e=this.headers,t=this.panels;this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-state-default ui-corner-all"),this.panels=this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide(),t&&(this._off(e.not(this.headers)),this._off(t.not(this.panels))) -},_refresh:function(){var t,i=this.options,s=i.heightStyle,n=this.element.parent();this.active=this._findActive(i.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all"),this.active.next().addClass("ui-accordion-content-active").show(),this.headers.attr("role","tab").each(function(){var t=e(this),i=t.uniqueId().attr("id"),s=t.next(),n=s.uniqueId().attr("id");t.attr("aria-controls",n),s.attr("aria-labelledby",i)}).next().attr("role","tabpanel"),this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide(),this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0),this._createIcons(),this._setupEvents(i.event),"fill"===s?(t=n.height(),this.element.siblings(":visible").each(function(){var i=e(this),s=i.css("position");"absolute"!==s&&"fixed"!==s&&(t-=i.outerHeight(!0))}),this.headers.each(function(){t-=e(this).outerHeight(!0)}),this.headers.next().each(function(){e(this).height(Math.max(0,t-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===s&&(t=0,this.headers.next().each(function(){t=Math.max(t,e(this).css("height","").height())}).height(t))},_activate:function(t){var i=this._findActive(t)[0];i!==this.active[0]&&(i=i||this.active[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):e()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.headers.add(this.headers.next())),this._on(this.headers,i),this._on(this.headers.next(),{keydown:"_panelKeyDown"}),this._hoverable(this.headers),this._focusable(this.headers)},_eventHandler:function(t){var i=this.options,s=this.active,n=e(t.currentTarget),a=n[0]===s[0],o=a&&i.collapsible,r=o?e():n.next(),h=s.next(),l={oldHeader:s,oldPanel:h,newHeader:o?e():n,newPanel:r};t.preventDefault(),a&&!i.collapsible||this._trigger("beforeActivate",t,l)===!1||(i.active=o?!1:this.headers.index(n),this.active=a?e():n,this._toggle(l),s.removeClass("ui-accordion-header-active ui-state-active"),i.icons&&s.children(".ui-accordion-header-icon").removeClass(i.icons.activeHeader).addClass(i.icons.header),a||(n.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top"),i.icons&&n.children(".ui-accordion-header-icon").removeClass(i.icons.header).addClass(i.icons.activeHeader),n.next().addClass("ui-accordion-content-active")))},_toggle:function(t){var i=t.newPanel,s=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0),this.prevShow=i,this.prevHide=s,this.options.animate?this._animate(i,s,t):(s.hide(),i.show(),this._toggleComplete(t)),s.attr({"aria-hidden":"true"}),s.prev().attr({"aria-selected":"false","aria-expanded":"false"}),i.length&&s.length?s.prev().attr({tabIndex:-1,"aria-expanded":"false"}):i.length&&this.headers.filter(function(){return 0===parseInt(e(this).attr("tabIndex"),10)}).attr("tabIndex",-1),i.attr("aria-hidden","false").prev().attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0})},_animate:function(e,t,i){var s,n,a,o=this,r=0,h=e.css("box-sizing"),l=e.length&&(!t.length||e.index()",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},items:"> *",menus:"ul",position:{my:"left-1 top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item":function(e){e.preventDefault()},"click .ui-menu-item":function(t){var i=e(t.target);!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&e(this.document[0].activeElement).closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){if(!this.previousFilter){var i=e(t.currentTarget);i.siblings(".ui-state-active").removeClass("ui-state-active"),this.focus(t,i)}},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(e,t){var i=this.active||this.element.find(this.options.items).eq(0);t||this.focus(e,i)},blur:function(t){this._delay(function(){e.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(e){this._closeOnDocumentClick(e)&&this.collapseAll(e),this.mouseHandled=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-menu-icons ui-front").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").removeUniqueId().removeClass("ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=e(this);t.data("ui-menu-submenu-carat")&&t.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){var i,s,n,a,o=!0;switch(t.keyCode){case e.ui.keyCode.PAGE_UP:this.previousPage(t);break;case e.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case e.ui.keyCode.HOME:this._move("first","first",t);break;case e.ui.keyCode.END:this._move("last","last",t);break;case e.ui.keyCode.UP:this.previous(t);break;case e.ui.keyCode.DOWN:this.next(t);break;case e.ui.keyCode.LEFT:this.collapse(t);break;case e.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case e.ui.keyCode.ENTER:case e.ui.keyCode.SPACE:this._activate(t);break;case e.ui.keyCode.ESCAPE:this.collapse(t);break;default:o=!1,s=this.previousFilter||"",n=String.fromCharCode(t.keyCode),a=!1,clearTimeout(this.filterTimer),n===s?a=!0:n=s+n,i=this._filterMenuItems(n),i=a&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i,i.length||(n=String.fromCharCode(t.keyCode),i=this._filterMenuItems(n)),i.length?(this.focus(t,i),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}o&&t.preventDefault()},_activate:function(e){this.active.is(".ui-state-disabled")||(this.active.is("[aria-haspopup='true']")?this.expand(e):this.select(e))},refresh:function(){var t,i,s=this,n=this.options.icons.submenu,a=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length),a.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-front").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=e(this),i=t.parent(),s=e("").addClass("ui-menu-icon ui-icon "+n).data("ui-menu-submenu-carat",!0);i.attr("aria-haspopup","true").prepend(s),t.attr("aria-labelledby",i.attr("id"))}),t=a.add(this.element),i=t.find(this.options.items),i.not(".ui-menu-item").each(function(){var t=e(this);s._isDivider(t)&&t.addClass("ui-widget-content ui-menu-divider")}),i.not(".ui-menu-item, .ui-menu-divider").addClass("ui-menu-item").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!e.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(e,t){"icons"===e&&this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(t.submenu),"disabled"===e&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this._super(e,t)},focus:function(e,t){var i,s;this.blur(e,e&&"focus"===e.type),this._scrollIntoView(t),this.active=t.first(),s=this.active.addClass("ui-state-focus").removeClass("ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),this.active.parent().closest(".ui-menu-item").addClass("ui-state-active"),e&&"keydown"===e.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=t.children(".ui-menu"),i.length&&e&&/^mouse/.test(e.type)&&this._startOpening(i),this.activeMenu=t.parent(),this._trigger("focus",e,{item:t})},_scrollIntoView:function(t){var i,s,n,a,o,r;this._hasScroll()&&(i=parseFloat(e.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(e.css(this.activeMenu[0],"paddingTop"))||0,n=t.offset().top-this.activeMenu.offset().top-i-s,a=this.activeMenu.scrollTop(),o=this.activeMenu.height(),r=t.outerHeight(),0>n?this.activeMenu.scrollTop(a+n):n+r>o&&this.activeMenu.scrollTop(a+n-o+r))},blur:function(e,t){t||clearTimeout(this.timer),this.active&&(this.active.removeClass("ui-state-focus"),this.active=null,this._trigger("blur",e,{item:this.active}))},_startOpening:function(e){clearTimeout(this.timer),"true"===e.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(e)},this.delay))},_open:function(t){var i=e.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(t,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:e(t&&t.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(t),this.activeMenu=s},this.delay)},_close:function(e){e||(e=this.active?this.active.parent():this.element),e.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find(".ui-state-active").not(".ui-state-focus").removeClass("ui-state-active")},_closeOnDocumentClick:function(t){return!e(t.target).closest(".ui-menu").length},_isDivider:function(e){return!/[^\-\u2014\u2013\s]/.test(e.text())},collapse:function(e){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(e,t))},expand:function(e){var t=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(e,t)}))},next:function(e){this._move("next","first",e)},previous:function(e){this._move("prev","last",e)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(e,t,i){var s;this.active&&(s="first"===e||"last"===e?this.active["first"===e?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[e+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[t]()),this.focus(i,s)},nextPage:function(t){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=e(this),0>i.offset().top-s-n}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(t),void 0)},previousPage:function(t){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=e(this),i.offset().top-s+n>0}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items).first())),void 0):(this.next(t),void 0)},_hasScroll:function(){return this.element.outerHeight()",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var t,i,s,n=this.element[0].nodeName.toLowerCase(),a="textarea"===n,o="input"===n;this.isMultiLine=a?!0:o?!1:this.element.prop("isContentEditable"),this.valueMethod=this.element[a||o?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return t=!0,s=!0,i=!0,void 0;t=!1,s=!1,i=!1;var a=e.ui.keyCode;switch(n.keyCode){case a.PAGE_UP:t=!0,this._move("previousPage",n);break;case a.PAGE_DOWN:t=!0,this._move("nextPage",n);break;case a.UP:t=!0,this._keyEvent("previous",n);break;case a.DOWN:t=!0,this._keyEvent("next",n);break;case a.ENTER:this.menu.active&&(t=!0,n.preventDefault(),this.menu.select(n));break;case a.TAB:this.menu.active&&this.menu.select(n);break;case a.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(t)return t=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),void 0;if(!i){var n=e.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(e){return s?(s=!1,e.preventDefault(),void 0):(this._searchTimeout(e),void 0)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(e),this._change(e),void 0)}}),this._initSource(),this.menu=e("