LiteFX 0.4.1.2025
Computer Graphics Engine
Loading...
Searching...
No Matches
LiteFX::Rendering::IIndexBufferLayout Class Referenceabstract

Describes a index buffer layout. More...

#include <rendering_api.hpp>

Inherits LiteFX::Rendering::IBufferLayout, and LiteFX::SharedObject.

Inherited by LiteFX::Rendering::Backends::DirectX12IndexBufferLayout, and LiteFX::Rendering::Backends::VulkanIndexBufferLayout.

Public Member Functions

 ~IIndexBufferLayout () noexcept override=default
 
virtual IndexType indexType () const noexcept=0
 Returns the index type of the index buffer.
 
- Public Member Functions inherited from LiteFX::Rendering::IBufferLayout
virtual ~IBufferLayout () noexcept=default
 
virtual size_t elementSize () const noexcept=0
 Returns the size of a single element within the buffer.
 
virtual UInt32 binding () const noexcept=0
 Returns the binding point, the buffer will be bound to.
 
virtual BufferType type () const noexcept=0
 Returns the buffer type of the buffer.
 
- Public Member Functions inherited from LiteFX::SharedObject
virtual ~SharedObject () noexcept=default
 Destroys the shared object.
 
template<typename TSelf >
auto shared_from_this (this TSelf &&self) noexcept
 Returns a shared pointer to the current object instance.
 
template<typename TSelf >
auto weak_from_this (this TSelf &&self) noexcept -> WeakPtr< std::remove_reference_t< TSelf > >
 Returns a weak pointer to the current object instance.
 

Protected Member Functions

 IIndexBufferLayout () noexcept=default
 
 IIndexBufferLayout (IIndexBufferLayout &&) noexcept=default
 
 IIndexBufferLayout (const IIndexBufferLayout &)=default
 
IIndexBufferLayoutoperator= (IIndexBufferLayout &&) noexcept=default
 
IIndexBufferLayoutoperator= (const IIndexBufferLayout &)=default
 
- Protected Member Functions inherited from LiteFX::Rendering::IBufferLayout
 IBufferLayout () noexcept=default
 
 IBufferLayout (IBufferLayout &&) noexcept=default
 
 IBufferLayout (const IBufferLayout &)=default
 
IBufferLayoutoperator= (IBufferLayout &&) noexcept=default
 
IBufferLayoutoperator= (const IBufferLayout &)=default
 
- Protected Member Functions inherited from LiteFX::SharedObject
 SharedObject () noexcept=default
 Initializes a new shared object.
 
 SharedObject (SharedObject &&) noexcept=default
 
 SharedObject (const SharedObject &)=default
 
SharedObjectoperator= (SharedObject &&) noexcept=default
 
SharedObjectoperator= (const SharedObject &)=default
 

Additional Inherited Members

- Static Protected Member Functions inherited from LiteFX::SharedObject
template<typename T , typename... TArgs>
static auto create (TArgs &&... args) -> SharedPtr< T >
 Generic factory method used to create instances of the shared object.
 

Detailed Description

Describes a index buffer layout.

See also
IIndexBuffer

Constructor & Destructor Documentation

◆ IIndexBufferLayout() [1/3]

LiteFX::Rendering::IIndexBufferLayout::IIndexBufferLayout ( )
protecteddefaultnoexcept

◆ IIndexBufferLayout() [2/3]

LiteFX::Rendering::IIndexBufferLayout::IIndexBufferLayout ( IIndexBufferLayout && )
protecteddefaultnoexcept

◆ IIndexBufferLayout() [3/3]

LiteFX::Rendering::IIndexBufferLayout::IIndexBufferLayout ( const IIndexBufferLayout & )
protecteddefault

◆ ~IIndexBufferLayout()

LiteFX::Rendering::IIndexBufferLayout::~IIndexBufferLayout ( )
overridedefaultnoexcept

Member Function Documentation

◆ indexType()

virtual IndexType LiteFX::Rendering::IIndexBufferLayout::indexType ( ) const
pure virtualnoexcept

Returns the index type of the index buffer.

Returns
The index type of the index buffer.

Implemented in LiteFX::Rendering::Backends::DirectX12IndexBufferLayout, and LiteFX::Rendering::Backends::VulkanIndexBufferLayout.

◆ operator=() [1/2]

IIndexBufferLayout & LiteFX::Rendering::IIndexBufferLayout::operator= ( const IIndexBufferLayout & )
protecteddefault

◆ operator=() [2/2]

IIndexBufferLayout & LiteFX::Rendering::IIndexBufferLayout::operator= ( IIndexBufferLayout && )
protecteddefaultnoexcept