matf-rg-engine  1.0.0
Base for project for the Computer Graphics course at Faculty of Mathematics, University of Belgrade
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123]
 Cengine::core::AppDefines the base App class that serves as the application core structure and the entry point
 Cengine::test::app::TestApp
 Cengine::util::ArgParserParses command line arguments
 Cengine::resources::AssimpSceneProcessorProcesses the meshes in an Assimp scene
 Cengine::graphics::CameraCamera processes input and calculates the corresponding Euler Angles, Vectors and Matrices for use in OpenGL
 Cengine::util::ConfigurationLoads and stores the configuration file
 Cengine::core::ControllerControllers are a hook into the App main loop execution. By overriding virtual functions of this class the user can execute custom code during each of the main loop phases
 Cengine::core::EngineControllersBeginThis controller does nothing and together with EngineControllersEnd it servers as a sentinel controller for marking the engine controllers
 Cengine::core::EngineControllersEndThis controller does nothing and together with EngineControllersEnd it servers as a sentinel controller for marking the engine controllers
 Cengine::graphics::GraphicsControllerImplements basic drawing methods that the core::App implementation uses
 Cengine::platform::PlatformControllerRegisters Platform events such as mouse movement, key press, window events..
 Cengine::resources::ResourcesControllerManages app resources: Model, Texture, Shader, and Skybox
 Cengine::test::app::GUIController
 Cengine::test::app::MainController
 Cstd::exception
 Cengine::util::ErrorBase class for all errors
 Cengine::util::EngineErrorRepresents an error that occurred in the engine
 Cengine::util::UserErrorRepresents an error that occurred in the user's code
 Cengine::platform::FrameTimeStores elapsed time for frames in seconds
 Cengine::platform::KeyRepresents the state of the key in a given frame
 Cengine::resources::MeshRepresents a mesh in the model in the OpenGL context
 Cengine::resources::ModelRepresents a model object within the OpenGL context as an array of Mesh objects
 Cengine::platform::MousePositionRepresents mouse position in a given frame relative to the top left corner of the screen
 Cengine::graphics::OpenGLThis class serves as the OpenGL interface for your app, since the engine doesn't directly link OpenGL to the app executable
 Cengine::graphics::OrthographicMatrixParamsParameters used to define an orthographic projection matrix
 Cengine::graphics::PerspectiveMatrixParamsParameters used to define a perspective projection matrix
 Cengine::platform::PlatformEventObserverPlatform events callback object. Extend this class and override the methods you want to be called by the engine::platform::PlatformController, then register an instance with engine::platform::PlatformController::register_platform_event_observer
 Cengine::graphics::GraphicsPlatformEventObserverObservers change in window size in order to update the projection matrix
 Cengine::test::app::MainPlatformEventObserver
 Cengine::resources::ShaderRepresents a linked shader program object within the OpenGL context
 Cengine::resources::ShaderCompilerCompiles GLSL shaders from a single source file. Vertex, Fragment and Geometry shaders are separated by the // #shader vertex|fragment|geometry directive. All the code following the directive belongs to the source of the shader specified in the #shader directive. Here is an example:
 Cengine::resources::ShaderParsingResultContains the parsed vertex, fragment, and geometry shaders, since the ShaderCompiler expects a single .glsl source file
 Cengine::resources::SkyboxRepresents a skybox object within the OpenGL context
 Cengine::resources::TextureRepresents a texture object within the OpenGL context
 Cengine::resources::VertexRepresents a vertex in the mesh
 Cengine::platform::WindowHolds window properties