XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGALShader Class Referenceabstract

Interface that defines methods to manipulate a shader object. More...

#include <Shader.h>

Inheritance diagram for xiiGALShader:
[legend]

Public Member Functions

XII_ALWAYS_INLINE const xiiGALShaderCreationDescription & GetDescription () const
 This returns the creation description for this object.
XII_ALWAYS_INLINE xiiArrayPtr< const xiiGALVertexInputLayout > GetVertexInputLayout () const
 This returns the vertex input layout of the vertex shader.
xiiSharedPtr< xiiGALInputLayout > CreateInputLayout (const xiiGALInputLayoutCreationDescription &description)
Public Member Functions inherited from xiiGALDeviceObject
XII_ALWAYS_INLINE xiiSharedPtr< xiiGALDevice > GetDevice () const
Public Member Functions inherited from xiiGALObject
XII_ALWAYS_INLINE xiiStringView GetDebugName () const
 Returns the debug name of this resource.
void SetDebugName (xiiStringView sDebugName) const
 Sets the debug name for this resource.
Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTI * GetDynamicRTTI () const
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
Public Member Functions inherited from xiiRefCounted
virtual ~xiiRefCounted ()=default
 Adds a virtual destructor.
Public Member Functions inherited from xiiRefCountingImpl
 xiiRefCountingImpl ()=default
 Constructor.
 xiiRefCountingImpl (const xiiRefCountingImpl &rhs)
void operator= (const xiiRefCountingImpl &rhs)
xiiUInt32 AddRef () const
 Increments the reference counter. Returns the new reference count.
bool TryAddRef () const
xiiUInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.ywat.
bool IsReferenced () const
 Returns true if the reference count is greater than 0, false otherwise.
xiiUInt32 GetRefCount () const
 Returns the current reference count.

Protected Member Functions

 xiiGALShader (xiiSharedPtr< xiiGALDevice > pDevice, const xiiGALShaderCreationDescription &creationDescription)
virtual xiiResult InitPlatform ()=0
virtual xiiInternal::NewInstance< xiiGALInputLayout > CreateInputLayoutPlatform (const xiiGALInputLayoutCreationDescription &description)=0
Protected Member Functions inherited from xiiGALDeviceObject
 xiiGALDeviceObject (xiiSharedPtr< xiiGALDevice > pDevice)
 Copyright (c) Theophilus Eriata. All Rights Reserved.
Protected Member Functions inherited from xiiGALObject
 xiiGALObject ()
 Copyright (c) Theophilus Eriata. All Rights Reserved.
virtual XII_ALWAYS_INLINE void SetDebugNamePlatform (xiiStringView sName) const

Protected Attributes

xiiGALShaderCreationDescription m_Description
Protected Attributes inherited from xiiGALDeviceObject
xiiSharedPtr< xiiGALDevice > m_pDevice

Friends

class xiiGALDevice
class xiiMemoryUtils

Additional Inherited Members

Static Public Member Functions inherited from xiiNoBase
static const xiiRTTI * GetStaticRTTI ()

Detailed Description

Interface that defines methods to manipulate a shader object.

Member Function Documentation

◆ CreateInputLayout()

xiiSharedPtr< xiiGALInputLayout > xiiGALShader::CreateInputLayout ( const xiiGALInputLayoutCreationDescription & description)
nodiscard

This creates a new input layout object.

Parameters
description- The input layout description. See xiiGALInputLayoutCreationDescription.
Returns
The reference-counted pointer to the created input layout object.

The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsFoundation/Shader/Shader.h
  • /home/runner/work/XII/XII/Source/Engine/GraphicsFoundation/Shader/Implementation/Shader.cpp