LkEngine 0.1.2
 
Loading...
Searching...
No Matches
LkEngine::LWindow Class Reference

#include <Window.h>

Inheritance diagram for LkEngine::LWindow:
LkEngine::LObject LkEngine::LObjectBase

Public Member Functions

 LWindow (const FWindowSpecification &WindowSpecification)
 
virtual void Initialize () override
 Initialize object.
 
virtual void Destroy () override
 Destroy object, releasing all resources.
 
void SwapBuffers ()
 
void ProcessEvents ()
 
FORCEINLINE GLFWwindow * GetGlfwWindow () const
 Get reference to the GLFW window.
 
void Maximize ()
 
bool IsMaximized () const
 
void Minimize ()
 
bool IsMinimized () const
 
bool IsFullscreen () const
 
void SetFullscreen (const bool Fullscreen)
 
void SetTitle (const std::string &NewTitle)
 
FORCEINLINE std::string GetTitle () const
 
FORCEINLINE LVector2 GetSize () const
 
FORCEINLINE uint16_t GetWidth () const
 
FORCEINLINE uint16_t GetHeight () const
 
FORCEINLINE uint16_t GetViewportWidth () const
 
FORCEINLINE uint16_t GetViewportHeight () const
 
FORCEINLINE LVector2 GetPosition () const
 
FORCEINLINE LVector2 GetViewportSize () const
 
FORCEINLINE bool IsVSyncEnabled () const
 
FORCEINLINE TObjectPtr< LRenderContextGetRenderContext ()
 
void SetDepthEnabled (const bool InEnabled)
 
void SetBlendingEnabled (const bool InEnabled)
 
FORCEINLINE void SetSize (const LVector2 &InSize)
 
FORCEINLINE void SetViewportWidth (const uint16_t NewWidth)
 
FORCEINLINE void SetViewportHeight (const uint16_t NewHeight)
 
void SetVSync (const bool InEnabled)
 
FORCEINLINE LSwapChainGetSwapChain ()
 
TObjectPtr< LRenderPassGetRenderPass ()
 
FORCEINLINE void SetWidth (const uint16_t NewWidth)
 
FORCEINLINE void SetHeight (const uint16_t NewHeight)
 
FORCEINLINE float GetScalerX () const
 
FORCEINLINE float GetScalerY () const
 
FORCEINLINE LVector2 GetScalers () const
 
FORCEINLINE void SetScalerX (const float InX)
 
FORCEINLINE void SetScalerY (const float InY)
 
FORCEINLINE void SetScalers (const float InX, const float InY)
 
FORCEINLINE FWindowDataGetData ()
 
FORCEINLINE const FWindowDataGetData () const
 
std::string GetShaderVersion () const
 
FORCEINLINE const FWindowSpecificationGetSpecification () const
 
- Public Member Functions inherited from LkEngine::LObject
 LObject (const LObject &Other)
 
virtual FORCEINLINE bool IsInitialized () const
 Check if object is initialized.
 
FORCEINLINE FObjectHandle GetObjectHandle () const
 Get the object handle.
 
virtual FORCEINLINE bool IsObjectValid () const
 Check if object is valid for use.
 
virtual const LClassObjectRegistration ()=0
 Register object class.
 
virtual FORCEINLINE const LClassGetClass () const
 Get the class for this LObject.
 
virtual std::string ClassName () const =0
 Get name of the LObject class.
 
LObjectoperator= (const LObject &Other)
 
void MarkAsGarbage ()
 Mark object as garbage.
 
template<typename T >
T & As ()
 Cast object to type T.
 
template<typename T >
const T & As () const
 Cast object to type T.
 
template<typename T >
bool IsA () const
 Check if the object is or is a derivation of type T.
 
virtual FORCEINLINE bool IsAsset () const
 Check if object is an asset.
 
FORCEINLINE uint32_t GetReferenceCount () const
 Return current reference count from all object pointers.
 
- Public Member Functions inherited from LkEngine::LObjectBase
template<typename OtherClassType >
FORCEINLINE bool IsA (OtherClassType OtherObject) const
 Check if the object is the same type as the passed object's.
 

Static Public Member Functions

static FORCEINLINE LWindowGet ()
 
- Static Public Member Functions inherited from LkEngine::LObject
static FORCEINLINE const LClassStaticClass ()
 Get static class object.
 
static FORCEINLINE std::string StaticClassName ()
 Static class name.
 
template<typename T >
static void ValidateLObjectImplementation ()
 Validate the implementation of a LObject.
 
- Static Public Member Functions inherited from LkEngine::LObjectBase
template<typename ClassType >
static FORCEINLINE bool IsChildOf (const ClassType *InObjectClass, const ClassType *InOtherClass)
 Check if the object is a child of another class.
 

Public Attributes

FOnWindowSizeUpdated OnWindowSizeUpdated {}
 
FOnViewportSizeUpdated OnViewportSizeUpdated {}
 

Static Public Attributes

static constexpr uint16_t DEFAULT_WIDTH = 1600
 
static constexpr uint16_t DEFAULT_HEIGHT = 1080
 

Friends

class LEditorLayer
 

Additional Inherited Members

- Protected Member Functions inherited from LkEngine::LObjectBase
void SetClass (LClass *InClass)
 Set the class.
 
FORCEINLINE const LClassGetClass () const
 Get the private class member.
 
FORCEINLINE bool IsClassValid () const
 Check if LObjectBase has a valid LClass object.
 
- Protected Attributes inherited from LkEngine::LObject
FObjectHandle ObjectHandle = 0
 
bool bObjectInitialized = false
 
EObjectFlag ObjectFlags = EObjectFlag::None
 
std::atomic< uint32_t > Ptr_ReferenceCount = 0
 

Detailed Description

Manages the GLFW context.

Member Function Documentation

◆ Destroy()

void LkEngine::LWindow::Destroy ( )
overridevirtual

Destroy object, releasing all resources.

Reimplemented from LkEngine::LObject.

◆ GetGlfwWindow()

FORCEINLINE GLFWwindow * LkEngine::LWindow::GetGlfwWindow ( ) const
inline

Get reference to the GLFW window.

Note
Not nullchecked.

◆ GetScalerX()

FORCEINLINE float LkEngine::LWindow::GetScalerX ( ) const
inline

UPDATE ALL THIS

◆ Initialize()

void LkEngine::LWindow::Initialize ( )
overridevirtual

Initialize object.

Reimplemented from LkEngine::LObject.


The documentation for this class was generated from the following files: