Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::IShaderMtl Struct Referenceabstract

Exposes Metal-specific functionality of a shader object. More...

#include <ShaderMtl.h>

Inheritance diagram for Diligent::IShaderMtl:
Diligent.IShader Diligent::IDeviceObject Diligent.IObject

Public Member Functions

virtual id< MTLFunction > DILIGENT_CALL_TYPE GetMtlShaderFunction () const =0
 
- Public Member Functions inherited from Diligent.IShader
virtual const ShaderDesc &DILIGENT_CALL_TYPE GetDesc () const override=0
 Returns the shader description.
 
virtual Uint32 DILIGENT_CALL_TYPE GetResourceCount () const =0
 Returns the total number of shader resources.
 
virtual void DILIGENT_CALL_TYPE GetResourceDesc (Uint32 Index, ShaderResourceDesc &ResourceDesc) const =0
 Returns the pointer to the array of shader resources.
 
virtual const ShaderCodeBufferDesc *DILIGENT_CALL_TYPE GetConstantBufferDesc (Uint32 Index) const =0
 For a constant buffer resource, returns the buffer description. See Diligent::ShaderCodeBufferDesc.
 
virtual void DILIGENT_CALL_TYPE GetBytecode (const void **ppBytecode, Uint64 &Size) const =0
 Returns the shader bytecode.
 
virtual SHADER_STATUS DILIGENT_CALL_TYPE GetStatus (bool WaitForCompletion=false)=0
 Returns the shader status, see Diligent::SHADER_STATUS.
 
- Public Member Functions inherited from Diligent::IDeviceObject
virtual Int32 DILIGENT_CALL_TYPE GetUniqueID () const =0
 Returns unique identifier assigned to an object.
 
virtual void DILIGENT_CALL_TYPE SetUserData (IObject *pUserData)=0
 Stores a pointer to the user-provided data object.
 
virtual IObject *DILIGENT_CALL_TYPE GetUserData () const =0
 Returns a pointer to the user data object previously set with SetUserData() method.
 
- Public Member Functions inherited from Diligent.IObject
virtual void DILIGENT_CALL_TYPE QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0
 Queries the specific interface.
 
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE AddRef ()=0
 Increments the number of strong references by 1.
 
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE Release ()=0
 
virtual IReferenceCounters *DILIGENT_CALL_TYPE GetReferenceCounters () const =0
 

Detailed Description

Exposes Metal-specific functionality of a shader object.

Member Function Documentation

◆ GetMtlShaderFunction()

virtual id< MTLFunction > DILIGENT_CALL_TYPE Diligent::IShaderMtl::GetMtlShaderFunction ( ) const
pure virtual

Returns a point to the Metal shader function (MTLFunction) compiled without resource remapping.

Remarks
Pipeline state objects that use explicit resource signatures remap resources in each shader function to make them match the signatures. This method returns a pointer the shader function compiled before any remapping has been applied.