formZ SDK | 5.0 API Reference | Project | Modeling | Rendering | Shaders
Description
This function retrieves the pointer of a shader parameter.
The id argument determines which parameter of the shader
is accessed. The id is the same as returned by any of the
fz_shdr_set_xxx_parm API functions, called in the set_parameters
callback function. NULL is returned, if the id is not defined. Note, that the
returned point is a generic pointer. Depending on what the shader parameter
is declared as it may point to a double, rgb color, fzrt_int etc. It is
the responsibility of the calling code to use the pointer appropriately.
This function is designed to be called in the fz_shdr_cbak_xxxx_iface_tmpl callback
function of a plugin shader to link the shader parameter to a fuim item.
For example, below the parameter pointer of the shader parameter with id "3"
is retrieved and used to set the float range of a fuim text item. It is
assumed that the shader parameter was declared as a floating point parameter
in the set_parameters callback function.
Plugin Prototype
fzrt_error_td fz_shdr_get_parm_ptr(
shdr, | |
fzrt_int | id, |
fzrt_ptr * | parm_ptr ) |
Parameters
shdr [Input]
The shader for which to get the parameter pointer
id [Input]
The id for this parameter. This is the id returned by any of the fz_shdr_set_xxx_parm functions, or the id passed into any of the fz_shdr_set_xxx_parm functions.
parm_ptr [Result]
parameter pointer
Returns
none
Availability
5.5.0.0
Plugin Example
fz_shdr_get_parm_ptr(shdr,3,&parm_ptr);
g1 = fz_fuim_new_text_edit(fuim_tmpl, parent, FZ_FUIM_NONE, FZ_FUIM_FLAG_NONE, NULL,NULL);
fz_fuim_item_range_float(fuim_tmpl, g1, (float*)parm_ptr, 0.0, 1.0, FZ_FUIM_FORMAT_FLOAT_PERCENT,FZ_FUIM_RANGE_NONE);
Function Set
Defined in