RetroArch
Public Member Functions | Public Attributes | List of all members
spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ > Struct Template Reference

#include <internal_interface.hpp>

Inheritance diagram for spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >:
[legend]
Collaboration diagram for spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >:
[legend]

Public Member Functions

void main ()
 
 ComputeShader ()
 
- Public Member Functions inherited from spirv_cross::BaseShader< ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ > >
void invoke ()
 
- Public Member Functions inherited from spirv_cross_shader
template<typename U >
void register_builtin (spirv_cross_builtin builtin, const U &value)
 
void set_builtin (spirv_cross_builtin builtin, void *data, size_t size)
 
template<typename U >
void register_resource (const internal::Resource< U > &value, unsigned set, unsigned binding)
 
template<typename U >
void register_stage_input (const internal::StageInput< U > &value, unsigned location)
 
template<typename U >
void register_stage_output (const internal::StageOutput< U > &value, unsigned location)
 
template<typename U >
void register_uniform_constant (const internal::UniformConstant< U > &value, unsigned location)
 
template<typename U >
void register_push_constant (const internal::PushConstant< U > &value)
 
void set_stage_input (unsigned location, void *data, size_t size)
 
void set_stage_output (unsigned location, void *data, size_t size)
 
void set_uniform_constant (unsigned location, void *data, size_t size)
 
void set_push_constant (void *data, size_t size)
 
void set_resource (unsigned set, unsigned binding, void **data, size_t size)
 

Public Attributes

T impl [WorkGroupZ][WorkGroupY][WorkGroupX]
 
ThreadGroup< T, WorkGroupX *WorkGroupY *WorkGroupZ > group
 
Res resources
 
- Public Attributes inherited from spirv_cross_shader
PPSizeResource resources [SPIRV_CROSS_NUM_DESCRIPTOR_SETS][SPIRV_CROSS_NUM_DESCRIPTOR_BINDINGS]
 
PPSize stage_inputs [SPIRV_CROSS_NUM_STAGE_INPUTS]
 
PPSize stage_outputs [SPIRV_CROSS_NUM_STAGE_OUTPUTS]
 
PPSize uniform_constants [SPIRV_CROSS_NUM_UNIFORM_CONSTANTS]
 
PPSize push_constant
 
PPSize builtins [SPIRV_CROSS_NUM_BUILTINS]
 

Constructor & Destructor Documentation

◆ ComputeShader()

template<typename T , typename Res , unsigned WorkGroupX, unsigned WorkGroupY, unsigned WorkGroupZ>
spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >::ComputeShader ( )
inline

Member Function Documentation

◆ main()

template<typename T , typename Res , unsigned WorkGroupX, unsigned WorkGroupY, unsigned WorkGroupZ>
void spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >::main ( )
inline

Member Data Documentation

◆ group

template<typename T , typename Res , unsigned WorkGroupX, unsigned WorkGroupY, unsigned WorkGroupZ>
ThreadGroup<T, WorkGroupX * WorkGroupY * WorkGroupZ> spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >::group

◆ impl

template<typename T , typename Res , unsigned WorkGroupX, unsigned WorkGroupY, unsigned WorkGroupZ>
T spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >::impl[WorkGroupZ][WorkGroupY][WorkGroupX]

◆ resources

template<typename T , typename Res , unsigned WorkGroupX, unsigned WorkGroupY, unsigned WorkGroupZ>
Res spirv_cross::ComputeShader< T, Res, WorkGroupX, WorkGroupY, WorkGroupZ >::resources

The documentation for this struct was generated from the following file: