| Catlas::application | Single application that gets created by the engine internally |
| Catlas::application_settings | Application properties settings for the window |
| Catlas::ui::block | |
| Catlas::box_collider | |
| ►CJPH::BroadPhaseLayerInterface | |
| Catlas::vk::camera_ubo | Going to remove this |
| Catlas::capsule_collider | |
| Catlas::event::collision_enter | |
| Catlas::event::collision_exit | |
| Catlas::event::collision_persisted | |
| Catlas::console_log_manager | Logger for logging messages to stdout on the console |
| Catlas::physics::contact_event | |
| ►CJPH::ContactListener | |
| CYAML::convert< atlas::body_layer > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::body_layer specifically |
| CYAML::convert< atlas::body_type > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::body_type specifically |
| CYAML::convert< atlas::box_collider > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::box_collider specifically |
| CYAML::convert< atlas::capsule_collider > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::capsule_collider specifically |
| CYAML::convert< atlas::mesh_source > | |
| CYAML::convert< atlas::physics_body > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::physics_body specifically |
| CYAML::convert< atlas::point_light > | |
| CYAML::convert< atlas::sphere_collider > | Custom specialized classes from yaml-cpp to specialize to take in a atlas::sphere_collider specifically |
| CYAML::convert< glm::vec2 > | Custom specialized classes from yaml-cpp to specialize to take in a glm::vec2 specifically |
| CYAML::convert< glm::vec3 > | Custom specialized classes from yaml-cpp to specialize to take in a glm::vec3 specifically |
| CYAML::convert< glm::vec4 > | Custom specialized classes from yaml-cpp to specialize to take in a glm::vec4 specifically |
| Catlas::directional_light | |
| Catlas::ui::dockspace | Dockspace window using imgui |
| Catlas::tag::editor | To indicate which entities are editor-only |
| Catlas::memory::enable_strong_from_this< T > | CRTP mixin to enable objects to create strong_ptr instances to themselves |
| ►Cflecs::entity | |
| Catlas::event::event_bus | Event bus that holds the responsibility to reroute events to the subscribers of those particular event |
| ►Cstd::exception | |
| Catlas::exception_block | |
| ►Cstd::false_type | |
| Catlas::vk::geometry_uniform | Material is going to define properties about how a scene object itself gets rendered |
| Catlas::vk::global_ubo | Just for testing purposes for sending this struct over to the shader |
| ►Catlas::graphics_context | Graphics API-agnostic that is centralized to the graphics API themselves |
| Cstd::hash<::vk::vertex_input > | |
| Catlas::vk::hud_data | |
| Catlas::vk::imgui_context | |
| Catlas::interpolation | |
| Catlas::physics::jolt_config | Used to keep global data for player access and use. Tells how physics bodies should act within a given scene by default |
| Catlas::physics::jolt_settings | Jolt-specific context configurations These are going to be internally integrated to jolt_context |
| Catlas::event::joystick_button | |
| Catlas::event::joystick_info | |
| Catlas::light_scene_ubo | |
| Catlas::event::listener< UEvent > | Generic event listener of event type UEvent |
| Catlas::material_metadata | |
| Catlas::vk::material_uniform | Represents a vulkan specific mateiral to pass in two textures and offset for handling shininess |
| Catlas::math_generic< T > | Generics to specialize to their mathematical definition of matrices types |
| Catlas::matrix2< T > | |
| Catlas::matrix3< T > | |
| Catlas::matrix4< T > | |
| Catlas::physics::matrix4< T > | |
| Catlas::physics::matrix4< JPH::Mat44 > | |
| Catlas::ui::menu_bar_exception | |
| Catlas::ui::menu_item | UI wrapper around setting up a menu item group |
| Catlas::mesh | |
| Catlas::vk::mesh | Mesh class specifically defined with vulkan implementations for specific primitives TODO: Whenever we load in a texture that will be laucnhed asyncronously |
| Catlas::mesh_source | Loads a mesh source |
| ►CJPH::ObjectLayerPairFilter | |
| ►CJPH::ObjectVsBroadPhaseLayerFilter | |
| Catlas::memory::optional_ptr< T > | Optional, nullable, smart pointer that works with hal::strong_ptr |
| Catlas::perspective_camera | Define a game object to have a perspective camera that can correspond to it |
| Catlas::physics_body | Physics body data-driven representative |
| ►Catlas::physics::physics_context | The context is the way to interact with specific backend context implementation such as JoltPhysics as our specific implementation-backend |
| Catlas::physics::physics_engine | The manager class for all physics engines. Manages the physics contexts and the collision engines |
| Catlas::point_light | |
| Catlas::point_light_ubo | |
| Catlas::projection_view | TODO: Consider either relocating where this is and how it gets handled |
| Catlas::physics::quaternion< T > | |
| Catlas::memory::detail::rc< T > | A wrapper that contains both the ref_info and the actual object |
| Catlas::memory::detail::ref_info | Control block for reference counting - type erased |
| ►Catlas::render_context | Interface that defines a graphics APi-agnostic renderer |
| Catlas::renderer | |
| Catlas::scene | Constructs a scene that defines an area where game objects are part of contained within an atlas::world |
| Catlas::event::scene_transition | Event to trigger when to transition specific scenes |
| Catlas::tag::serialize | To tag entities to serialize through the serializer |
| Catlas::serializer | Serializer is responsible for saving/loading scenes |
| Catlas::vk::shader_resource_group | Resource group for loading shader sources that give you back VkShaderModule handles |
| Catlas::sphere_collider | |
| Catlas::memory::strong_ptr< T > | A non-nullable strong reference counted pointer |
| Catlas::memory::strong_ptr_only_token | A construction token that can only be created by make_strong_ptr |
| Catlas::vk::surface_properties | |
| Catlas::system_registry | System registry acts as a utility for managing creation of game worlds initially |
| Catlas::transform | |
| ►Cstd::true_type | |
| Catlas::vector2< T > | Vector2<T> is to define as a centralized mathematical representation of types such as glm::vec2, but can be defined based to the needs of specific mathematical types |
| Catlas::vector2< glm::highp_vec2 > | |
| Catlas::physics::vector3< T > | |
| Catlas::vector3< T > | Vector3<T> is to define a centralized wrapper as a mathematical representaiton for communicating vector3 types from frameworks to glm::vec3 |
| Catlas::vector3< glm::highp_vec3 > | |
| Catlas::physics::vector3< JPH::Double3 > | |
| Catlas::physics::vector3< JPH::DVec3 > | |
| Catlas::physics::vector3< JPH::Float3 > | |
| Catlas::physics::vector3< JPH::Vec3 > | |
| Catlas::vector3< JPH::Vec3 > | |
| Catlas::physics::vector4< T > | |
| Catlas::vector4< T > | Vector4<T> is to define a centralized wrapper as a mathematical representaiton for communicating vector3 types from frameworks to glm::vec3 |
| Catlas::vector4< glm::highp_vec4 > | |
| Catlas::physics::vector4< JPH::Float4 > | |
| Catlas::physics::vector4< JPH::Vec4 > | |
| Catlas::vk::vertex_input | |
| Catlas::vk::vk_driver | Logical device implementation wrapper around the VkDevice |
| Catlas::vk::vk_physical_driver | Vulkan-specific implementation wrapper around VkPhysicalDevice |
| Catlas::vk::vk_swapchain | |
| Catlas::memory::weak_ptr< T > | A weak reference to a strong_ptr |
| ►Catlas::window | Represent an entire window that lives throughout the entire duration of the application |
| Catlas::window_settings | Settings for specification for atlas::window |
| Catlas::world | World represents a larger scope of areas that manages the scene contexts |