# The Machinery API
## foundation
* [allocator.h](foundation/allocator.h.html)
* [api_registry.h](foundation/api_registry.h.html)
* [api_type_hashes.h](foundation/api_type_hashes.h.html)
* [api_types.h](foundation/api_types.h.html)
* [application.h](foundation/application.h.html)
* [asset_database.h](foundation/asset_database.h.html)
* [asset_io.h](foundation/asset_io.h.html)
* [atomics.inl](foundation/atomics.inl.html)
* [base64.h](foundation/base64.h.html)
* [bounding_volume.h](foundation/bounding_volume.h.html)
* [buddy_allocator.h](foundation/buddy_allocator.h.html)
* [buffer.h](foundation/buffer.h.html)
* [buffer_format.h](foundation/buffer_format.h.html)
* [camera.h](foundation/camera.h.html)
* [carray.inl](foundation/carray.inl.html)
* [carray_print.inl](foundation/carray_print.inl.html)
* [collaboration.h](foundation/collaboration.h.html)
* [collaboration_p2p.h](foundation/collaboration_p2p.h.html)
* [color_spaces.inl](foundation/color_spaces.inl.html)
* [config.h](foundation/config.h.html)
* [core.h](foundation/core.h.html)
* [core_importer.h](foundation/core_importer.h.html)
* [crash_recovery.h](foundation/crash_recovery.h.html)
* [delaunay.inl](foundation/delaunay.inl.html)
* [error.h](foundation/error.h.html)
* [feature_flags.h](foundation/feature_flags.h.html)
* [geometry.inl](foundation/geometry.inl.html)
* [git_ignore.h](foundation/git_ignore.h.html)
* [hash.inl](foundation/hash.inl.html)
* [image_loader.h](foundation/image_loader.h.html)
* [input.h](foundation/input.h.html)
* [integration_test.h](foundation/integration_test.h.html)
* [introspection.h](foundation/introspection.h.html)
* [job_system.h](foundation/job_system.h.html)
* [json.h](foundation/json.h.html)
* [localizer.h](foundation/localizer.h.html)
* [log.h](foundation/log.h.html)
* [lz4.h](foundation/lz4.h.html)
* [macros.h](foundation/macros.h.html)
* [math.h](foundation/math.h.html)
* [math.inl](foundation/math.inl.html)
* [memory_tracker.h](foundation/memory_tracker.h.html)
* [murmurhash64a.inl](foundation/murmurhash64a.inl.html)
* [os.h](foundation/os.h.html)
* [path.h](foundation/path.h.html)
* [plugin.h](foundation/plugin.h.html)
* [plugin_assets.h](foundation/plugin_assets.h.html)
* [plugin_callbacks.h](foundation/plugin_callbacks.h.html)
* [profiler.h](foundation/profiler.h.html)
* [progress_report.h](foundation/progress_report.h.html)
* [random.h](foundation/random.h.html)
* [rect.inl](foundation/rect.inl.html)
* [runtime_data_repository.h](foundation/runtime_data_repository.h.html)
* [slab.inl](foundation/slab.inl.html)
* [sort.inl](foundation/sort.inl.html)
* [string.inl](foundation/string.inl.html)
* [string_repository.h](foundation/string_repository.h.html)
* [task_system.h](foundation/task_system.h.html)
* [temp_allocator.h](foundation/temp_allocator.h.html)
* [the_truth.h](foundation/the_truth.h.html)
* [the_truth_assets.h](foundation/the_truth_assets.h.html)
* [the_truth_migration.h](foundation/the_truth_migration.h.html)
* [the_truth_types.h](foundation/the_truth_types.h.html)
* [undo.h](foundation/undo.h.html)
* [unicode.h](foundation/unicode.h.html)
* [unicode_symbols.h](foundation/unicode_symbols.h.html)
* [unit_test.h](foundation/unit_test.h.html)
* [visibility_flags.h](foundation/visibility_flags.h.html)
* [web_socket.h](foundation/web_socket.h.html)
* [web_talker.h](foundation/web_talker.h.html)
* [web_talker.inl](foundation/web_talker.inl.html)
## plugins/analytics
* [analytics.h](plugins/analytics/analytics.h.html)
## plugins/animation
* [animation_blender.h](plugins/animation/animation_blender.h.html)
* [animation_clip.h](plugins/animation/animation_clip.h.html)
* [animation_player.h](plugins/animation/animation_player.h.html)
* [animation_simple_player_component.h](plugins/animation/animation_simple_player_component.h.html)
* [animation_state_machine.h](plugins/animation/animation_state_machine.h.html)
* [animation_state_machine_component.h](plugins/animation/animation_state_machine_component.h.html)
* [bone_translation.h](plugins/animation/bone_translation.h.html)
* [expression_language.h](plugins/animation/expression_language.h.html)
* [state_graph.h](plugins/animation/state_graph.h.html)
## plugins/assimp
* [assimp.h](plugins/assimp/assimp.h.html)
## plugins/audio
* [mixer.h](plugins/audio/mixer.h.html)
* [sound_backend.h](plugins/audio/sound_backend.h.html)
* [sound_source_component.h](plugins/audio/sound_source_component.h.html)
* [speakers.h](plugins/audio/speakers.h.html)
* [tone_generator.h](plugins/audio/tone_generator.h.html)
* [wav.h](plugins/audio/wav.h.html)
## plugins/cache_manager
* [cache_manager.h](plugins/cache_manager/cache_manager.h.html)
## plugins/collaboration_discord
* [collaboration_discord.h](plugins/collaboration_discord/collaboration_discord.h.html)
## plugins/creation_graph
* [creation_graph.h](plugins/creation_graph/creation_graph.h.html)
* [creation_graph_api_types.h](plugins/creation_graph/creation_graph_api_types.h.html)
* [creation_graph_blackboard.inl](plugins/creation_graph/creation_graph_blackboard.inl.html)
* [creation_graph_interpreter.h](plugins/creation_graph/creation_graph_interpreter.h.html)
* [creation_graph_node_type.h](plugins/creation_graph/creation_graph_node_type.h.html)
* [creation_graph_output.inl](plugins/creation_graph/creation_graph_output.inl.html)
* [geometry_nodes.h](plugins/creation_graph/geometry_nodes.h.html)
* [image_nodes.h](plugins/creation_graph/image_nodes.h.html)
* [render_nodes.h](plugins/creation_graph/render_nodes.h.html)
## plugins/crunch
* [crunch.h](plugins/crunch/crunch.h.html)
## plugins/dcc_asset
* [dcc_asset.h](plugins/dcc_asset/dcc_asset.h.html)
* [dcc_asset_component.h](plugins/dcc_asset/dcc_asset_component.h.html)
* [dcc_asset_creation_graph.h](plugins/dcc_asset/dcc_asset_creation_graph.h.html)
* [dcc_asset_renderer.h](plugins/dcc_asset/dcc_asset_renderer.h.html)
* [dcc_asset_truth.h](plugins/dcc_asset/dcc_asset_truth.h.html)
* [entity_rigger.h](plugins/dcc_asset/entity_rigger.h.html)
* [import_settings.h](plugins/dcc_asset/import_settings.h.html)
## plugins/dds_image_loader
* [dds_image_loader.h](plugins/dds_image_loader/dds_image_loader.h.html)
## plugins/default_render_pipe
* [bloom_component.h](plugins/default_render_pipe/bloom_component.h.html)
* [default_render_pipe.h](plugins/default_render_pipe/default_render_pipe.h.html)
* [exposure_component.h](plugins/default_render_pipe/exposure_component.h.html)
* [light_component.h](plugins/default_render_pipe/light_component.h.html)
* [light_math.inl](plugins/default_render_pipe/light_math.inl.html)
* [volume_component.h](plugins/default_render_pipe/volume_component.h.html)
## plugins/dxc_shader_compiler
* [dxc_compiler.h](plugins/dxc_shader_compiler/dxc_compiler.h.html)
## plugins/editor_views
* [asset_browser.h](plugins/editor_views/asset_browser.h.html)
* [asset_label.h](plugins/editor_views/asset_label.h.html)
* [graph.h](plugins/editor_views/graph.h.html)
* [profiler_view.h](plugins/editor_views/profiler_view.h.html)
* [properties.h](plugins/editor_views/properties.h.html)
* [tree_view.h](plugins/editor_views/tree_view.h.html)
* [ui_popup_item_picker.h](plugins/editor_views/ui_popup_item_picker.h.html)
## plugins/entity
* [camera_component.h](plugins/entity/camera_component.h.html)
* [entity.h](plugins/entity/entity.h.html)
* [entity_api_types.h](plugins/entity/entity_api_types.h.html)
* [owner_component.h](plugins/entity/owner_component.h.html)
* [scene_tree_component.h](plugins/entity/scene_tree_component.h.html)
* [tag_component.h](plugins/entity/tag_component.h.html)
* [transform_component.h](plugins/entity/transform_component.h.html)
## plugins/gltf
* [gltf.h](plugins/gltf/gltf.h.html)
* [gltf_loader.h](plugins/gltf/gltf_loader.h.html)
## plugins/graph_common
* [shared_nodes.h](plugins/graph_common/shared_nodes.h.html)
## plugins/graph_importer
* [graph_importer.h](plugins/graph_importer/graph_importer.h.html)
## plugins/graph_interpreter
* [graph_component.h](plugins/graph_interpreter/graph_component.h.html)
* [graph_component_node_type.h](plugins/graph_interpreter/graph_component_node_type.h.html)
* [graph_interpreter.h](plugins/graph_interpreter/graph_interpreter.h.html)
* [graph_interpreter_debugger.h](plugins/graph_interpreter/graph_interpreter_debugger.h.html)
* [graph_interpreter_loader.h](plugins/graph_interpreter/graph_interpreter_loader.h.html)
* [graph_node_helpers.inl](plugins/graph_interpreter/graph_node_helpers.inl.html)
* [graph_node_macros.h](plugins/graph_interpreter/graph_node_macros.h.html)
## plugins/https
* [https.h](plugins/https/https.h.html)
## plugins/openvr
* [openvr_plugin.h](plugins/openvr/openvr_plugin.h.html)
## plugins/os_window
* [os_window.h](plugins/os_window/os_window.h.html)
* [os_window.linux.inl](plugins/os_window/os_window.linux.inl.html)
## plugins/physics
* [physics_body_component.h](plugins/physics/physics_body_component.h.html)
* [physics_collision.h](plugins/physics/physics_collision.h.html)
* [physics_joint_component.h](plugins/physics/physics_joint_component.h.html)
* [physics_material.h](plugins/physics/physics_material.h.html)
* [physics_mover_component.h](plugins/physics/physics_mover_component.h.html)
* [physics_scene_settings.h](plugins/physics/physics_scene_settings.h.html)
* [physics_shape_component.h](plugins/physics/physics_shape_component.h.html)
* [velocity_component.h](plugins/physics/velocity_component.h.html)
## plugins/physx
* [physx_scene.h](plugins/physx/physx_scene.h.html)
## plugins/render_graph
* [render_graph.h](plugins/render_graph/render_graph.h.html)
## plugins/render_graph_toolbox
* [render_pipeline.h](plugins/render_graph_toolbox/render_pipeline.h.html)
* [shadow_mapping.h](plugins/render_graph_toolbox/shadow_mapping.h.html)
* [toolbox_common.h](plugins/render_graph_toolbox/toolbox_common.h.html)
## plugins/render_utilities
* [component_shader_system.h](plugins/render_utilities/component_shader_system.h.html)
* [cubemap_capture_component.h](plugins/render_utilities/cubemap_capture_component.h.html)
* [gpu_picking.h](plugins/render_utilities/gpu_picking.h.html)
* [grid.h](plugins/render_utilities/grid.h.html)
* [image_inspector.h](plugins/render_utilities/image_inspector.h.html)
* [primitive_drawer.h](plugins/render_utilities/primitive_drawer.h.html)
* [render_component.h](plugins/render_utilities/render_component.h.html)
* [skinning_component.h](plugins/render_utilities/skinning_component.h.html)
## plugins/renderer
* [commands.h](plugins/renderer/commands.h.html)
* [device_memory_tab.h](plugins/renderer/device_memory_tab.h.html)
* [nil_render_backend.h](plugins/renderer/nil_render_backend.h.html)
* [render_backend.h](plugins/renderer/render_backend.h.html)
* [render_command_buffer.h](plugins/renderer/render_command_buffer.h.html)
* [render_statistics.h](plugins/renderer/render_statistics.h.html)
* [renderer.h](plugins/renderer/renderer.h.html)
* [renderer_api_types.h](plugins/renderer/renderer_api_types.h.html)
* [resources.h](plugins/renderer/resources.h.html)
* [shader_compiler.h](plugins/renderer/shader_compiler.h.html)
* [shader_compiler_state_blocks_common.h](plugins/renderer/shader_compiler_state_blocks_common.h.html)
## plugins/save_system
* [save_system.h](plugins/save_system/save_system.h.html)
## plugins/sculpt_component
* [sculpt_component.h](plugins/sculpt_component/sculpt_component.h.html)
## plugins/shader_system
* [shader_system.h](plugins/shader_system/shader_system.h.html)
* [shader_system_api_types.h](plugins/shader_system/shader_system_api_types.h.html)
* [shader_system_creation_graph.h](plugins/shader_system/shader_system_creation_graph.h.html)
* [shader_system_creation_graph.inl](plugins/shader_system/shader_system_creation_graph.inl.html)
* [shader_system_truth.h](plugins/shader_system/shader_system_truth.h.html)
## plugins/simulate
* [simulate_entry.h](plugins/simulate/simulate_entry.h.html)
## plugins/simulate_common
* [runner_settings.h](plugins/simulate_common/runner_settings.h.html)
* [simulate_context.h](plugins/simulate_common/simulate_context.h.html)
## plugins/statistics
* [statistics_graph.h](plugins/statistics/statistics_graph.h.html)
* [statistics_source.h](plugins/statistics/statistics_source.h.html)
## plugins/stb_image_loader
* [stb_image_loader.h](plugins/stb_image_loader/stb_image_loader.h.html)
## plugins/the_machinery_shared
* [asset_aspects.h](plugins/the_machinery_shared/asset_aspects.h.html)
* [camera_controller_component.h](plugins/the_machinery_shared/camera_controller_component.h.html)
* [frustum_culling.h](plugins/the_machinery_shared/frustum_culling.h.html)
* [render_context.h](plugins/the_machinery_shared/render_context.h.html)
* [scene_common.h](plugins/the_machinery_shared/scene_common.h.html)
* [the_machinery_shared_loader.h](plugins/the_machinery_shared/the_machinery_shared_loader.h.html)
* [the_truth_replacer.h](plugins/the_machinery_shared/the_truth_replacer.h.html)
* [the_truth_stripper.h](plugins/the_machinery_shared/the_truth_stripper.h.html)
* [viewer.h](plugins/the_machinery_shared/viewer.h.html)
## plugins/the_machinery_shared/component_interfaces
* [editor_ui_interface.h](plugins/the_machinery_shared/component_interfaces/editor_ui_interface.h.html)
* [render_interface.h](plugins/the_machinery_shared/component_interfaces/render_interface.h.html)
* [shader_interface.h](plugins/the_machinery_shared/component_interfaces/shader_interface.h.html)
## plugins/ui
* [clipboard.h](plugins/ui/clipboard.h.html)
* [docking.h](plugins/ui/docking.h.html)
* [drag.h](plugins/ui/drag.h.html)
* [draw2d.h](plugins/ui/draw2d.h.html)
* [font_library.h](plugins/ui/font_library.h.html)
* [gizmo.h](plugins/ui/gizmo.h.html)
* [ionicons.h](plugins/ui/ionicons.h.html)
* [modal.h](plugins/ui/modal.h.html)
* [shape.h](plugins/ui/shape.h.html)
* [toolbar.h](plugins/ui/toolbar.h.html)
* [ttf_baker.h](plugins/ui/ttf_baker.h.html)
* [ui.h](plugins/ui/ui.h.html)
* [ui_custom.h](plugins/ui/ui_custom.h.html)
* [ui_icon.h](plugins/ui/ui_icon.h.html)
* [ui_renderer.h](plugins/ui/ui_renderer.h.html)
* [ui_tree.h](plugins/ui/ui_tree.h.html)
## plugins/upnp
* [upnp.h](plugins/upnp/upnp.h.html)
## plugins/vox
* [vox_asset.h](plugins/vox/vox_asset.h.html)
* [vox_component.h](plugins/vox/vox_component.h.html)
## plugins/vulkan_render_backend
* [vulkan_render_backend.h](plugins/vulkan_render_backend/vulkan_render_backend.h.html)
## utils/docgen
* [docgen.h](utils/docgen/docgen.h.html)
## utils/trim_includes
* [trim_includes.h](utils/trim_includes/trim_includes.h.html)
## Others
* [Truth Type Overview](truth_types.html)