MAGE  v0.171.0
Matthias Advanced Game Engine
mage::WindowDescriptor Class Reference

#include <window.hpp>

Public Member Functions

 WindowDescriptor (NotNull< HINSTANCE > instance, std::wstring window_class_name, U32 window_class_style=CS_CLASSDC)
 
 WindowDescriptor (const WindowDescriptor &desc)=delete
 
 WindowDescriptor (WindowDescriptor &&desc) noexcept
 
 ~WindowDescriptor ()
 
WindowDescriptoroperator= (const WindowDescriptor &desc)=delete
 
WindowDescriptoroperator= (WindowDescriptor &&desc)=delete
 
NotNull< HINSTANCE > GetInstance () const noexcept
 
const std::wstring_view GetWindowClassName () const noexcept
 

Private Attributes

NotNull< HINSTANCE > m_instance
 
std::wstring m_window_class_name
 

Detailed Description

A class of window descriptors.

Constructor & Destructor Documentation

◆ WindowDescriptor() [1/3]

mage::WindowDescriptor::WindowDescriptor ( NotNull< HINSTANCE >  instance,
std::wstring  window_class_name,
U32  window_class_style = CS_CLASSDC 
)
explicit

Constructs a window descriptor.

Parameters
[in]instanceThe application instance handle.
[in]window_class_nameThe window class name.
[in]window_class_styleThe window class style.
Exceptions
ExceptionFailed to register the window class.

◆ WindowDescriptor() [2/3]

mage::WindowDescriptor::WindowDescriptor ( const WindowDescriptor desc)
delete

Constructs a window descriptor from the given window descriptor.

Parameters
[in]descA reference to the window descriptor to copy.

◆ WindowDescriptor() [3/3]

mage::WindowDescriptor::WindowDescriptor ( WindowDescriptor &&  desc)
defaultnoexcept

Constructs a window descriptor by moving the given window descriptor.

Parameters
[in]descA reference to the window descriptor to move.

◆ ~WindowDescriptor()

mage::WindowDescriptor::~WindowDescriptor ( )

Destructs this window descriptor.

Member Function Documentation

◆ GetInstance()

NotNull< HINSTANCE > mage::WindowDescriptor::GetInstance ( ) const
noexcept

Returns the application instance handle of this window descriptor.

Returns
The application instance handle of this window descriptor.

◆ GetWindowClassName()

const std::wstring_view mage::WindowDescriptor::GetWindowClassName ( ) const
noexcept

Returns the window class name of this window descriptor.

Returns
The window class name of this window descriptor.

◆ operator=() [1/2]

WindowDescriptor& mage::WindowDescriptor::operator= ( const WindowDescriptor desc)
delete

Copies the given window descriptor to this window descriptor.

Parameters
[in]descA reference to the window descriptor to copy.
Returns
A reference to the copy of the given window descriptor (i.e. this window descriptor).

◆ operator=() [2/2]

WindowDescriptor& mage::WindowDescriptor::operator= ( WindowDescriptor &&  desc)
delete

Moves the given window descriptor to this window descriptor.

Parameters
[in]descA reference to the window descriptor to move.
Returns
A reference to the moved window descriptor (i.e. this window descriptor).

Member Data Documentation

◆ m_instance

NotNull< HINSTANCE > mage::WindowDescriptor::m_instance
private

The application instance handle of this window descriptor.

◆ m_window_class_name

std::wstring mage::WindowDescriptor::m_window_class_name
private

The window class name of this window descriptor.