CoriEngine
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123456]
 NCoriGlobal engine namespace
 NAudioEverything connected to audio is in this namespace
 CMixerMixer is responsible for mixing all the sounds, it is a global object and there can only be one Mixer
 CPlayParamsParameters to be used when playing sound, you can mix your audio playback however you want with these
 CSoundSound asset to be played on a Track
 CTrackYou use Track to play and mix Sound objects
 NCoreCore systems of the engine are here
 NInternal
 NThreading
 CApplicationMain Application object, there can only be one Application object. Basically a root of the program
 CCoriErrorCustom error class mainly used in std::expected
 CEventAn abstract class that is ment to be used as a template for defining events
 CEventDispatcherUsed in OnEvent methods to dispatch and handle Events
 CFactory
 CGameTimerA GameTimer is responsible for managing everything that is connected with time, ticks, elapsed time since start, deltaTime. There can only be one GameTimer
 CInputA simple static class that allows to query for physical keyboard or mose inputs
 CKeyEvent
 CKeyPressedEvent
 CKeyReleasedEvent
 CLayerAn abstract class that is ment to be used as a template for defining layers
 CLayerStackInternal class that stores and manages all the Layer objects
 CManualTimerYou can use this to manually time something
 CMouseButtonEvent
 CMouseButtonPressedEvent
 CMouseButtonReleasedEvent
 CMouseMovedEvent
 CMouseScrolledEvent
 CPackedArrayThis is my packed/dense array custom implementation
 CPossibleErrorsThis class utilizes std::variant to hold one of the possible exception types
 CRegisterInFactory
 CScreenMode
 CUUIDA 128bit UUID, can be serialized to the string and deserialized from it
 CWindowThis class manages everything that is connected with physical Window management, i might add multiwindow support later, but for now, only one Window per application
 CWindowCloseEvent
 CWindowResizeEvent
 NFileSystemEverything connected to interacting with files and filesystem is in this namespace
 NInternal
 CBinaryFileManagerSaves and loads aggregate structs to/from drive
 CFileManagerSimple static class used to read files as string. Will likely expand its functionality later
 CJsonSerializerClass is responsible for simple loading/saving config and save files as json files
 CPathManagerPath manager is responsible for loading the fsgame.json file from the drive, parsing it, and providing paths based on aliases
 NGraphicsAlmost everything connected to graphics is in this namespace
 NInternal
 CAnimationOwning handle to the animation inside the AnimationPack, when paired with Animation::PlayParams can be passed to QuadAnimator
 CAnimationPackRepresents a pack of sprite animations that were loaded from the drive from the pair of an image file and json config
 CCameraControllerA class that is used to manipulate Camera of the Scene. Each Scene has one of those
 CCoriGraphicsAPI
 CFontFont asset to be used when rendering text. Pretty expensive to create if not cached, always preload it
 CImageUsed to load an image. It can flip and image and add padding to it. Mainly used for texture loading
 CIndexBuffer
 CRenderer2DThe main engine renderer
 CRenderingContext
 CShaderProgram
 CSpriteAtlasHolds the sprite atlas and UVs for sprites in it. All spite atlases are padded, so no sprite atlas bleeding will occur
 CTextureAbstract class for textures
 CTexture2DA regular 2D texture with 1 layer
 CUVs
 CVBElement
 CVBLayout
 CVertexArray
 CVertexBuffer
 NMathAnything custom connected to math is in this namespace
 CFunctionMathematical function/expression. @detials Uses ExprTK internally, refer here https://github.com/ArashPartow/exprtk to see what it can parse.
By default, have some contents defined:
PI, alias: "pi"
Epsilon, alias: "epsilon"
Infinity, alias: "inf"
Euler's number, alias: "e"
 NPhysicsAnything connected to physics is in this namespace. Please refer to Box2D docs 'https://box2d.org/' for any details regarding physics
 CBodyUserData
 CCapsule
 CCastResult
 CCircle
 CConvexHull
 CPolygon
 CSegment
 CShapeUserData
 NProfilingProfiling tools are in this namespace
 CInstanceMetricsThis utility lets you count class instances in various ways. @detials You can see how much instances was created in total, how many are currently alive, how many instances of derived classes were created, and how much are currently alive. For a type to be instance counted it should derive from Trackable
 CTrackableFor InstanceMetrics to work with a type it should derive from this
 NUtilityA namespace for utilities of different kinds
 CAABBAxis-Aligned bounding box
 CHashedTag64HashedTag that uses a 64bit string hash (FNV-1a)
 CRandomUint32Random uint32_t generator
 NWorldAnything connected to WorldSystem (ECS) is in this namespace
 NComponentsComponents that are used with the WorldSystem (ECS)
 NEntityTags
 NInternal
 NSystems
 CDisposableEntityPoolCreates a pool with disposable entities
 CDynamicEntityViewA wrapper for an EnTT runtime view that provides an iterator to access Entity instances directly
 CEntityEntities are the essential part of WorldSystem
 CEntityStateAn abstract class designed to be used with StateMachine component
 CExcludeHelper to exclude certain components from a static view
 CSceneA scene in a game world
 CSceneHandleA handle for the scene, checks for scene validity before any call to the scene, if scene is invalid asserts. Will not keep the scene alive
 CSceneManagerResponsible for creating and managing scenes, has full lifetime control of the existing scenes
 CStaticEntityViewA wrapper for an EnTT compile-time view that provides an iterator to access Entity instances directly
 CSystemSystem part of ECS
 CTriggerBehaviourAn abstract class meant to be used with Trigger component. Derive from it to create a trigger behaviour/script
 CAssetManagerUsed when you want to manually control the asset lifetime, loading, preloading, unloading
 CLoggerLogger is the first thing that is initialized during startup. Does console and file logging
 CTagsAvailable logger tags in somewhat hierarchical state. These are used in CORI_DEBUGLEVEL_CORE_TAGGED logging calls
 Nstd
 Chash< Cori::Core::UUID >