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

#include <rendering_manager.hpp>

Classes

class  Impl
 

Public Member Functions

 Manager (NotNull< HWND > window, DisplayConfiguration configuration)
 
 Manager (const Manager &manager)=delete
 
 Manager (Manager &&manager) noexcept
 
 ~Manager ()
 
Manageroperator= (const Manager &manager)=delete
 
Manageroperator= (Manager &&manager)=delete
 
const DisplayConfigurationGetDisplayConfiguration () const noexcept
 
SwapChainGetSwapChain () noexcept
 
const SwapChainGetSwapChain () const noexcept
 
ResourceManagerGetResourceManager () const noexcept
 
WorldGetWorld () const noexcept
 
void BindPersistentState ()
 
void Update ()
 
void Render (const GameTime &time)
 

Private Attributes

UniquePtr< Implm_impl
 

Detailed Description

A class of rendering managers.

Constructor & Destructor Documentation

◆ Manager() [1/3]

mage::rendering::Manager::Manager ( NotNull< HWND >  window,
DisplayConfiguration  configuration 
)
explicit

Constructs a rendering manager.

Parameters
[in]windowThe main window handle.
[in,out]configurationThe display configuration.

◆ Manager() [2/3]

mage::rendering::Manager::Manager ( const Manager manager)
delete

Constructs a rendering manager from the given rendering manager.

Parameters
[in]managerA reference to a rendering manager to copy.

◆ Manager() [3/3]

mage::rendering::Manager::Manager ( Manager &&  manager)
defaultnoexcept

Constructs a rendering manager by moving the given rendering manager.

Parameters
[in]managerA reference to a rendering manager to move.

◆ ~Manager()

mage::rendering::Manager::~Manager ( )
default

Destructs this rendering manager.

Member Function Documentation

◆ BindPersistentState()

void mage::rendering::Manager::BindPersistentState ( )

Binds the persistent state of this rendering manager.

Exceptions
ExceptionFailed to bind the persistent state of this rendering manager.
ExceptionFailed to bind the persistent state of this rendering manager.

◆ GetDisplayConfiguration()

const DisplayConfiguration & mage::rendering::Manager::GetDisplayConfiguration ( ) const
noexcept

Returns the display configuration of this rendering manager.

Returns
A reference to the display configuration of this rendering manager.

◆ GetResourceManager()

ResourceManager & mage::rendering::Manager::GetResourceManager ( ) const
noexcept

Returns the resource manager of this rendering manager.

Returns
A reference to the state manager of this rendering manager.

◆ GetSwapChain() [1/2]

SwapChain & mage::rendering::Manager::GetSwapChain ( )
noexcept

Returns the swap chain of this rendering manager.

Returns
A reference to the swap chain of this rendering manager.

◆ GetSwapChain() [2/2]

const SwapChain & mage::rendering::Manager::GetSwapChain ( ) const
noexcept

Returns the swap chain of this rendering manager.

Returns
A reference to the swap chain of this rendering manager.

◆ GetWorld()

World & mage::rendering::Manager::GetWorld ( ) const
noexcept

Returns the world of this rendering manager.

Returns
A reference to the world of this rendering manager.

◆ operator=() [1/2]

Manager& mage::rendering::Manager::operator= ( const Manager manager)
delete

Copies the given rendering manager to this rendering manager.

Parameters
[in]managerA reference to a rendering manager to copy.
Returns
A reference to the copy of the given rendering manager (i.e. this rendering manager).

◆ operator=() [2/2]

Manager& mage::rendering::Manager::operator= ( Manager &&  manager)
delete

Moves the given rendering manager to this rendering manager.

Parameters
[in]managerA reference to a rendering manager to move.
Returns
A reference to the moved rendering manager (i.e. this rendering manager).

◆ Render()

void mage::rendering::Manager::Render ( const GameTime time)

Renders.

Parameters
[in]timeA reference to the game time.
Exceptions
ExceptionFailed to render the world of this rendering manager.

◆ Update()

void mage::rendering::Manager::Update ( )

Updates this rendering manager.

Member Data Documentation

◆ m_impl

UniquePtr< Impl > mage::rendering::Manager::m_impl
private

A pointer to the implementation of this rendering manager.