Skip to content

Class ShaderStruct

ClassList > ShaderStruct

  • #include <ShaderLib.h>

Public Attributes

Type Name
std::vector< S_AB > AB_list
std::string Main
std::vector< S_SB > SB_list
std::vector< S_func > buildin_func_list
std::vector< S_const > const_list
std::vector< S_func > func_list
std::vector< int > func_list_state
std::vector< S_glob > glob_list
std::vector< S_IN > input_list
bool is_struct_changed = true
std::vector< S_OUT > output_list
std::vector< S_REND > pass_list
std::vector< S_Struct_DEF > struct_def_list
std::vector< S_UBuffer > ubuffer_list
std::vector< S_U > uniform_list
std::vector< S_Struct > uniform_struct_list
std::vector< S_var > vari_list
int version = 330

Public Static Attributes

Type Name
std::vector< std::string > type_table = { "float", "int", "bool", "none", "vec2", "vec3", "vec4", "mat3", "mat4", "sampler2D", "samplerCube"}

Public Functions

Type Name
void DefFunc (ParaType _type, std::string _name, const std::string & content, const Args & args)
void DefStruct (const std::string & _name, const Args & args)
std::string GenerateShader ()
bool IsIOLinked (std::string_view _name, bool _type=0)
void Reset ()
void SetAB (int _loc, ParaType type, const std::string & _name)
void SetBuildinC (const S_const & buildin)
void SetBuildinF (const S_func & buildin)
void SetConst (ParaType _type, const std::string & _name, const std::string & content)
void SetGlob (ParaType _type, float defult, const std::string & _name)
void SetInp (ParaType _type, int count, const std::string & _name)
void SetOut (ParaType _type, int count, const std::string & _name)
void SetPass (int _loc, ParaType type, const std::string & _name)
void SetSB (int _loc, const std::string & _name, const Args & args)
void SetUB (std::string _type, std::string _var, const Args & args)
void SetUni (ParaType _type, int count, const std::string & _name)
void SetVar (const std::string & _type, const std::string & _name, int count)

Public Static Functions

Type Name
void ADD_TYPE (const std::string & name)
bool IsAvailType (const std::string & type)
std::string ParseArgs (const Args & args)
Args ParseArgs (const std::string & args)
std::string ParseCount (int count)
std::string ParseType (ParaType type)
ParaType ParseType (const std::string & type)
void _debug ()

Public Attributes Documentation

variable AB_list

std::vector<S_AB> ShaderStruct::AB_list;

variable Main

std::string ShaderStruct::Main;

variable SB_list

std::vector<S_SB> ShaderStruct::SB_list;

variable buildin_func_list

std::vector<S_func> ShaderStruct::buildin_func_list;

variable const_list

std::vector<S_const> ShaderStruct::const_list;

variable func_list

std::vector<S_func> ShaderStruct::func_list;

variable func_list_state

std::vector<int> ShaderStruct::func_list_state;

variable glob_list

std::vector<S_glob> ShaderStruct::glob_list;

variable input_list

std::vector<S_IN> ShaderStruct::input_list;

variable is_struct_changed

bool ShaderStruct::is_struct_changed;

variable output_list

std::vector<S_OUT> ShaderStruct::output_list;

variable pass_list

std::vector<S_REND> ShaderStruct::pass_list;

variable struct_def_list

std::vector<S_Struct_DEF> ShaderStruct::struct_def_list;

variable ubuffer_list

std::vector<S_UBuffer> ShaderStruct::ubuffer_list;

variable uniform_list

std::vector<S_U> ShaderStruct::uniform_list;

variable uniform_struct_list

std::vector<S_Struct> ShaderStruct::uniform_struct_list;

variable vari_list

std::vector<S_var> ShaderStruct::vari_list;

variable version

int ShaderStruct::version;

Public Static Attributes Documentation

variable type_table

std::vector< std::string > ShaderStruct::type_table;

Public Functions Documentation

function DefFunc

inline void ShaderStruct::DefFunc (
    ParaType _type,
    std::string _name,
    const std::string & content,
    const Args & args
) 

function DefStruct

inline void ShaderStruct::DefStruct (
    const std::string & _name,
    const Args & args
) 

function GenerateShader

std::string ShaderStruct::GenerateShader () 

function IsIOLinked

bool ShaderStruct::IsIOLinked (
    std::string_view _name,
    bool _type=0
) 

function Reset

void ShaderStruct::Reset () 

function SetAB

inline void ShaderStruct::SetAB (
    int _loc,
    ParaType type,
    const std::string & _name
) 

function SetBuildinC

inline void ShaderStruct::SetBuildinC (
    const S_const & buildin
) 

function SetBuildinF

inline void ShaderStruct::SetBuildinF (
    const S_func & buildin
) 

function SetConst

inline void ShaderStruct::SetConst (
    ParaType _type,
    const std::string & _name,
    const std::string & content
) 

function SetGlob

inline void ShaderStruct::SetGlob (
    ParaType _type,
    float defult,
    const std::string & _name
) 

function SetInp

inline void ShaderStruct::SetInp (
    ParaType _type,
    int count,
    const std::string & _name
) 

function SetOut

inline void ShaderStruct::SetOut (
    ParaType _type,
    int count,
    const std::string & _name
) 

function SetPass

inline void ShaderStruct::SetPass (
    int _loc,
    ParaType type,
    const std::string & _name
) 

function SetSB

inline void ShaderStruct::SetSB (
    int _loc,
    const std::string & _name,
    const Args & args
) 

function SetUB

inline void ShaderStruct::SetUB (
    std::string _type,
    std::string _var,
    const Args & args
) 

function SetUni

inline void ShaderStruct::SetUni (
    ParaType _type,
    int count,
    const std::string & _name
) 

function SetVar

inline void ShaderStruct::SetVar (
    const std::string & _type,
    const std::string & _name,
    int count
) 

Public Static Functions Documentation

function ADD_TYPE

static void ShaderStruct::ADD_TYPE (
    const std::string & name
) 

function IsAvailType

static bool ShaderStruct::IsAvailType (
    const std::string & type
) 

function ParseArgs [1/2]

static std::string ShaderStruct::ParseArgs (
    const Args & args
) 

function ParseArgs [2/2]

static Args ShaderStruct::ParseArgs (
    const std::string & args
) 

function ParseCount

static std::string ShaderStruct::ParseCount (
    int count
) 

function ParseType [1/2]

static std::string ShaderStruct::ParseType (
    ParaType type
) 

function ParseType [2/2]

static ParaType ShaderStruct::ParseType (
    const std::string & type
) 

function _debug

static void ShaderStruct::_debug () 


The documentation for this class was generated from the following file src/render/ShaderLib.h