OpenGL Program Object. More...
#include <program_object.h>
Public Member Functions | |
Attributes | |
bool | is_null () const |
Returns true if this object is invalid. | |
void | throw_if_null () const |
Throw an exception if this object is invalid. | |
CL_ProgramObjectProvider * | get_provider () const |
Retrieves the provider. | |
unsigned int | get_handle () const |
Returns the OpenGL program object handle. | |
std::vector< CL_ShaderObject > | get_shaders () const |
Returns the shaders attached to the program object. | |
CL_String | get_info_log () const |
Returns the current info log for the program object. | |
int | get_attribute_count () const |
Returns the count of active attributes. | |
std::vector< CL_ProgramAttribute > | get_attributes () const |
Returns the active attributes. | |
int | get_attribute_location (const CL_StringRef &name) const |
Returns the location of a named active attribute. | |
int | get_uniform_count () const |
Returns the count of active uniform variables. | |
std::vector< CL_ProgramUniform > | get_uniforms () const |
Returns the active uniforms. | |
int | get_uniform_location (const CL_StringRef &name) const |
Returns the location of a named uniform variable. | |
Operations | |
bool | operator== (const CL_ProgramObject &other) const |
Equality operator. | |
void | attach (const CL_ShaderObject &obj) |
Add shader to program object. | |
void | detach (const CL_ShaderObject &obj) |
Remove shader from program object. | |
void | bind_attribute_location (int index, const CL_StringRef &name) |
Bind attribute to specific location. | |
void | bind_frag_data_location (int color_number, const CL_StringRef &name) |
Bind shader out variable a specific color buffer location. | |
bool | link () |
Link program. | |
bool | validate () |
Validate program. | |
void | set_uniform1i (const CL_StringRef &name, int value_a) |
Set uniform variable(s). | |
void | set_uniform2i (const CL_StringRef &name, int value_a, int value_b) |
Set uniform2i. | |
void | set_uniform3i (const CL_StringRef &name, int value_a, int value_b, int value_c) |
Set uniform2i. | |
void | set_uniform4i (const CL_StringRef &name, int value_a, int value_b, int value_c, int value_d) |
Set uniform4i. | |
void | set_uniformiv (const CL_StringRef &name, int size, int count, int *data) |
Set uniformiv. | |
void | set_uniform2i (const CL_StringRef &name, CL_Vec2i vec) |
Set uniform2i. | |
void | set_uniform3i (const CL_StringRef &name, CL_Vec3i vec) |
Set uniform3i. | |
void | set_uniform4i (const CL_StringRef &name, CL_Vec4i vec) |
Set uniform4i. | |
void | set_uniform2s (const CL_StringRef &name, CL_Vec2s vec) |
Set uniform2s. | |
void | set_uniform3s (const CL_StringRef &name, CL_Vec3s vec) |
Set uniform3s. | |
void | set_uniform4s (const CL_StringRef &name, CL_Vec4s vec) |
Set uniform4s. | |
void | set_uniform2b (const CL_StringRef &name, CL_Vec2b vec) |
Set uniform2b. | |
void | set_uniform3b (const CL_StringRef &name, CL_Vec3b vec) |
Set uniform3b. | |
void | set_uniform4b (const CL_StringRef &name, CL_Vec4b vec) |
Set uniform4b. | |
void | set_uniformiv (const CL_StringRef &name, int count, CL_Vec2i *data) |
Set uniformiv. | |
void | set_uniformiv (const CL_StringRef &name, int count, CL_Vec3i *data) |
Set uniformiv. | |
void | set_uniformiv (const CL_StringRef &name, int count, CL_Vec4i *data) |
Set uniformiv. | |
void | set_uniform1f (const CL_StringRef &name, float value_a) |
Set uniform1f. | |
void | set_uniform2f (const CL_StringRef &name, float value_a, float value_b) |
Set uniform2f. | |
void | set_uniform3f (const CL_StringRef &name, float value_a, float value_b, float value_c) |
Set uniform2f. | |
void | set_uniform4f (const CL_StringRef &name, float value_a, float value_b, float value_c, float value_d) |
Set uniform4f. | |
void | set_uniformfv (const CL_StringRef &name, int size, int count, float *data) |
Set uniformfv. | |
void | set_uniform2f (const CL_StringRef &name, CL_Vec2f vec) |
Set uniform2f. | |
void | set_uniform3f (const CL_StringRef &name, CL_Vec3f vec) |
Set uniform3f. | |
void | set_uniform4f (const CL_StringRef &name, CL_Vec4f vec) |
Set uniform4f. | |
void | set_uniformfv (const CL_StringRef &name, int count, CL_Vec2f *data) |
Set uniformfv. | |
void | set_uniformfv (const CL_StringRef &name, int count, CL_Vec3f *data) |
Set uniformfv. | |
void | set_uniformfv (const CL_StringRef &name, int count, CL_Vec4f *data) |
Set uniformfv. | |
void | set_uniform_matrix (const CL_StringRef &name, int size, int count, bool transpose, float *data) |
Set uniform matrices. | |
void | set_uniform_matrix (const CL_StringRef &name, CL_Mat2f matrix) |
Set uniform matrix. | |
void | set_uniform_matrix (const CL_StringRef &name, CL_Mat3f matrix) |
Set uniform matrix. | |
void | set_uniform_matrix (const CL_StringRef &name, CL_Mat4f matrix) |
Set uniform matrix. | |
void | set_uniform_matrix (const CL_StringRef &name, int count, CL_Mat2f *matrix) |
Set uniform matrix. | |
void | set_uniform_matrix (const CL_StringRef &name, int count, CL_Mat3f *matrix) |
Set uniform matrix. | |
void | set_uniform_matrix (const CL_StringRef &name, int count, CL_Mat4f *matrix) |
Set uniform matrix. | |
Construction | |
| |
CL_ProgramObject () | |
Construct a null instance. | |
CL_ProgramObject (CL_GraphicContext &gc) | |
Constructs a ProgramObject. | |
CL_ProgramObject (CL_GraphicContextProvider *gc_provider) | |
Constructs a ProgramObject. | |
CL_ProgramObject (CL_ProgramObjectProvider *provider) | |
Constructs a ProgramObject. | |
virtual | ~CL_ProgramObject () |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &resource_id, CL_ResourceManager *resman) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &vertex_fullname, const CL_StringRef &fragment_fullname) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &vertex_fullname, const CL_StringRef &geometry_fullname, const CL_StringRef &fragment_fullname) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &vertex_filename, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &vertex_filename, const CL_StringRef &geometry_filename, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, CL_IODevice &vertex_file, CL_IODevice &fragment_file) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, CL_IODevice &vertex_file, CL_IODevice &geometry_file, CL_IODevice &fragment_file) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &fragment_fullname) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load. | |
static CL_ProgramObject | load (CL_GraphicContext &gc, CL_IODevice &fragment_file) |
Load. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &vertex_fullname, const CL_StringRef &fragment_fullname) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &vertex_fullname, const CL_StringRef &geometry_fullname, const CL_StringRef &fragment_fullname) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &vertex_filename, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &vertex_filename, const CL_StringRef &geometry_filename, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, CL_IODevice &vertex_file, CL_IODevice &fragment_file) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, CL_IODevice &vertex_file, CL_IODevice &geometry_file, CL_IODevice &fragment_file) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &fragment_fullname) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, const CL_StringRef &fragment_filename, const CL_VirtualDirectory &directory) |
Load and link. | |
static CL_ProgramObject | load_and_link (CL_GraphicContext &gc, CL_IODevice &fragment_file) |
Load and link. |
OpenGL Program Object.
The shader objects that are to be used by programmable stages of OpenGL are collected together to form a program object. CL_ProgramObject is ClanLib's C++ interface to OpenGL program objects.
To construct a program object programatically, the procedure is as follows:
CL_ShaderObject vertex_shader(cl_shadertype_vertex, vertex_glsl_sourcecode); CL_ShaderObject fragment_shader(cl_shadertype_fragment, fragment_glsl_sourcecode); CL_ProgramObject program; program.attach(vertex_shader); program.attach(fragment_shader); program.link();
For more information about program objects, see the OpenGL 2.0 specification at www.opengl.org. Documentation about the OpenGL Shader Language (GLSL) is also available from www.opengl.org.
CL_ProgramObject::CL_ProgramObject | ( | ) |
Construct a null instance.
CL_ProgramObject::CL_ProgramObject | ( | CL_GraphicContext & | gc | ) |
Constructs a ProgramObject.
gc | = Graphic Context |
CL_ProgramObject::CL_ProgramObject | ( | CL_GraphicContextProvider * | gc_provider | ) |
Constructs a ProgramObject.
gc_provider | = Graphic Context Provider |
CL_ProgramObject::CL_ProgramObject | ( | CL_ProgramObjectProvider * | provider | ) |
Constructs a ProgramObject.
provider | = Font Provider |
virtual CL_ProgramObject::~CL_ProgramObject | ( | ) | [virtual] |
void CL_ProgramObject::attach | ( | const CL_ShaderObject & | obj | ) |
Add shader to program object.
void CL_ProgramObject::bind_attribute_location | ( | int | index, | |
const CL_StringRef & | name | |||
) |
Bind attribute to specific location.
This function must be called before linking.
void CL_ProgramObject::bind_frag_data_location | ( | int | color_number, | |
const CL_StringRef & | name | |||
) |
Bind shader out variable a specific color buffer location.
This function must be called before linking.
void CL_ProgramObject::detach | ( | const CL_ShaderObject & | obj | ) |
Remove shader from program object.
int CL_ProgramObject::get_attribute_count | ( | ) | const |
Returns the count of active attributes.
int CL_ProgramObject::get_attribute_location | ( | const CL_StringRef & | name | ) | const |
Returns the location of a named active attribute.
std::vector<CL_ProgramAttribute> CL_ProgramObject::get_attributes | ( | ) | const |
Returns the active attributes.
unsigned int CL_ProgramObject::get_handle | ( | ) | const |
Returns the OpenGL program object handle.
CL_String CL_ProgramObject::get_info_log | ( | ) | const |
Returns the current info log for the program object.
CL_ProgramObjectProvider* CL_ProgramObject::get_provider | ( | ) | const |
Retrieves the provider.
Reimplemented in CL_ProgramObject_SWRender.
std::vector<CL_ShaderObject> CL_ProgramObject::get_shaders | ( | ) | const |
Returns the shaders attached to the program object.
int CL_ProgramObject::get_uniform_count | ( | ) | const |
Returns the count of active uniform variables.
int CL_ProgramObject::get_uniform_location | ( | const CL_StringRef & | name | ) | const |
Returns the location of a named uniform variable.
std::vector<CL_ProgramUniform> CL_ProgramObject::get_uniforms | ( | ) | const |
Returns the active uniforms.
bool CL_ProgramObject::is_null | ( | ) | const [inline] |
Returns true if this object is invalid.
bool CL_ProgramObject::link | ( | ) |
Link program.
If the linking fails, get_info_log() will return the link log.
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load.
gc | = Graphic Context | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_filename, | |||
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_filename | = String Ref | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load.
gc | = Graphic Context | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_filename, | |||
const CL_StringRef & | geometry_filename, | |||
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_filename | = String Ref | |
geometry_filename | = String Ref | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | fragment_file | |||
) | [static] |
Load.
gc | = Graphic Context | |
fragment_file | = IODevice |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | resource_id, | |||
CL_ResourceManager * | resman | |||
) | [static] |
Load.
gc | = Graphic Context | |
resource_id | = String Ref | |
resman | = Resource Manager |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_fullname, | |||
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_fullname | = String Ref | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_fullname, | |||
const CL_StringRef & | geometry_fullname, | |||
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_fullname | = String Ref | |
geometry_fullname | = String Ref | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | vertex_file, | |||
CL_IODevice & | fragment_file | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_file | = IODevice | |
fragment_file | = IODevice |
static CL_ProgramObject CL_ProgramObject::load | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | vertex_file, | |||
CL_IODevice & | geometry_file, | |||
CL_IODevice & | fragment_file | |||
) | [static] |
Load.
gc | = Graphic Context | |
vertex_file | = IODevice | |
geometry_file | = IODevice | |
fragment_file | = IODevice |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | vertex_file, | |||
CL_IODevice & | geometry_file, | |||
CL_IODevice & | fragment_file | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_file | = IODevice | |
geometry_file | = IODevice | |
fragment_file | = IODevice |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | fragment_file | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
fragment_file | = IODevice |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_fullname, | |||
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_fullname | = String Ref | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_fullname, | |||
const CL_StringRef & | geometry_fullname, | |||
const CL_StringRef & | fragment_fullname | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_fullname | = String Ref | |
geometry_fullname | = String Ref | |
fragment_fullname | = String Ref |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_filename, | |||
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_filename | = String Ref | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
const CL_StringRef & | vertex_filename, | |||
const CL_StringRef & | geometry_filename, | |||
const CL_StringRef & | fragment_filename, | |||
const CL_VirtualDirectory & | directory | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_filename | = String Ref | |
geometry_filename | = String Ref | |
fragment_filename | = String Ref | |
directory | = Virtual Directory |
static CL_ProgramObject CL_ProgramObject::load_and_link | ( | CL_GraphicContext & | gc, | |
CL_IODevice & | vertex_file, | |||
CL_IODevice & | fragment_file | |||
) | [static] |
Load and link.
gc | = Graphic Context | |
vertex_file | = IODevice | |
fragment_file | = IODevice |
bool CL_ProgramObject::operator== | ( | const CL_ProgramObject & | other | ) | const |
Equality operator.
void CL_ProgramObject::set_uniform1f | ( | const CL_StringRef & | name, | |
float | value_a | |||
) |
Set uniform1f.
name | = String Ref | |
value_a | = value |
void CL_ProgramObject::set_uniform1i | ( | const CL_StringRef & | name, | |
int | value_a | |||
) |
Set uniform variable(s).
name | = String Ref | |
value_a | = value |
void CL_ProgramObject::set_uniform2b | ( | const CL_StringRef & | name, | |
CL_Vec2b | vec | |||
) | [inline] |
Set uniform2b.
name | = String Ref | |
vec | = Vec2b |
References CL_Vec2< Type >::x, and CL_Vec2< Type >::y.
void CL_ProgramObject::set_uniform2f | ( | const CL_StringRef & | name, | |
float | value_a, | |||
float | value_b | |||
) |
Set uniform2f.
name | = String Ref | |
value_a | = value | |
value_b | = value |
void CL_ProgramObject::set_uniform2f | ( | const CL_StringRef & | name, | |
CL_Vec2f | vec | |||
) | [inline] |
Set uniform2f.
name | = String Ref | |
vec | = Vec2f |
References set_uniform2f(), CL_Vec2< Type >::x, and CL_Vec2< Type >::y.
Referenced by set_uniform2f().
void CL_ProgramObject::set_uniform2i | ( | const CL_StringRef & | name, | |
int | value_a, | |||
int | value_b | |||
) |
Set uniform2i.
name | = String Ref | |
value_a | = value | |
value_b | = value |
void CL_ProgramObject::set_uniform2i | ( | const CL_StringRef & | name, | |
CL_Vec2i | vec | |||
) | [inline] |
Set uniform2i.
name | = String Ref | |
vec | = Vec2i |
References set_uniform2i(), CL_Vec2< Type >::x, and CL_Vec2< Type >::y.
Referenced by set_uniform2i().
void CL_ProgramObject::set_uniform2s | ( | const CL_StringRef & | name, | |
CL_Vec2s | vec | |||
) | [inline] |
Set uniform2s.
name | = String Ref | |
vec | = Vec2s |
References CL_Vec2< Type >::x, and CL_Vec2< Type >::y.
void CL_ProgramObject::set_uniform3b | ( | const CL_StringRef & | name, | |
CL_Vec3b | vec | |||
) | [inline] |
Set uniform3b.
name | = String Ref | |
vec | = Vec3b |
References CL_Vec3< Type >::x, CL_Vec3< Type >::y, and CL_Vec3< Type >::z.
void CL_ProgramObject::set_uniform3f | ( | const CL_StringRef & | name, | |
float | value_a, | |||
float | value_b, | |||
float | value_c | |||
) |
Set uniform2f.
name | = String Ref | |
value_a | = value | |
value_b | = value | |
value_c | = value |
void CL_ProgramObject::set_uniform3f | ( | const CL_StringRef & | name, | |
CL_Vec3f | vec | |||
) | [inline] |
Set uniform3f.
name | = String Ref | |
vec | = Vec3f |
References set_uniform3f(), CL_Vec3< Type >::x, CL_Vec3< Type >::y, and CL_Vec3< Type >::z.
Referenced by set_uniform3f().
void CL_ProgramObject::set_uniform3i | ( | const CL_StringRef & | name, | |
int | value_a, | |||
int | value_b, | |||
int | value_c | |||
) |
Set uniform2i.
name | = String Ref | |
value_a | = value | |
value_b | = value | |
value_c | = value |
void CL_ProgramObject::set_uniform3i | ( | const CL_StringRef & | name, | |
CL_Vec3i | vec | |||
) | [inline] |
Set uniform3i.
name | = String Ref | |
vec | = Vec3i |
References set_uniform3i(), CL_Vec3< Type >::x, CL_Vec3< Type >::y, and CL_Vec3< Type >::z.
Referenced by set_uniform3i().
void CL_ProgramObject::set_uniform3s | ( | const CL_StringRef & | name, | |
CL_Vec3s | vec | |||
) | [inline] |
Set uniform3s.
name | = String Ref | |
vec | = Vec3s |
References CL_Vec3< Type >::x, CL_Vec3< Type >::y, and CL_Vec3< Type >::z.
void CL_ProgramObject::set_uniform4b | ( | const CL_StringRef & | name, | |
CL_Vec4b | vec | |||
) | [inline] |
Set uniform4b.
name | = String Ref | |
vec | = Vec4b |
References CL_Vec4< Type >::w, CL_Vec4< Type >::x, CL_Vec4< Type >::y, and CL_Vec4< Type >::z.
void CL_ProgramObject::set_uniform4f | ( | const CL_StringRef & | name, | |
float | value_a, | |||
float | value_b, | |||
float | value_c, | |||
float | value_d | |||
) |
Set uniform4f.
name | = String Ref | |
value_a | = value | |
value_b | = value | |
value_c | = value | |
value_d | = value |
void CL_ProgramObject::set_uniform4f | ( | const CL_StringRef & | name, | |
CL_Vec4f | vec | |||
) | [inline] |
Set uniform4f.
name | = String Ref | |
vec | = Vec4f |
References set_uniform4f(), CL_Vec4< Type >::w, CL_Vec4< Type >::x, CL_Vec4< Type >::y, and CL_Vec4< Type >::z.
Referenced by set_uniform4f().
void CL_ProgramObject::set_uniform4i | ( | const CL_StringRef & | name, | |
CL_Vec4i | vec | |||
) | [inline] |
Set uniform4i.
name | = String Ref | |
vec | = Vec4i |
References set_uniform4i(), CL_Vec4< Type >::w, CL_Vec4< Type >::x, CL_Vec4< Type >::y, and CL_Vec4< Type >::z.
Referenced by set_uniform4i().
void CL_ProgramObject::set_uniform4i | ( | const CL_StringRef & | name, | |
int | value_a, | |||
int | value_b, | |||
int | value_c, | |||
int | value_d | |||
) |
Set uniform4i.
name | = String Ref | |
value_a | = value | |
value_b | = value | |
value_c | = value | |
value_d | = value |
void CL_ProgramObject::set_uniform4s | ( | const CL_StringRef & | name, | |
CL_Vec4s | vec | |||
) | [inline] |
Set uniform4s.
name | = String Ref | |
vec | = Vec4s |
References CL_Vec4< Type >::w, CL_Vec4< Type >::x, CL_Vec4< Type >::y, and CL_Vec4< Type >::z.
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Mat3f * | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
count | = value | |
matrix | = Mat3f |
References CL_Mat3< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
int | size, | |||
int | count, | |||
bool | transpose, | |||
float * | data | |||
) |
Set uniform matrices.
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Mat4f * | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
count | = value | |
matrix | = Mat4f |
References CL_Mat4< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
CL_Mat3f | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
matrix | = Mat3f |
References CL_Mat3< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
CL_Mat2f | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
matrix | = Mat2f |
References CL_Mat2< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Mat2f * | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
count | = value | |
matrix | = Mat2f |
References CL_Mat2< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniform_matrix | ( | const CL_StringRef & | name, | |
CL_Mat4f | matrix | |||
) | [inline] |
Set uniform matrix.
name | = String Ref | |
matrix | = Mat4f |
References CL_Mat4< Type >::matrix, and set_uniform_matrix().
Referenced by set_uniform_matrix().
void CL_ProgramObject::set_uniformfv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec4f * | data | |||
) | [inline] |
Set uniformfv.
name | = String Ref | |
count | = value | |
data | = Vec4f |
References set_uniformfv().
Referenced by set_uniformfv().
void CL_ProgramObject::set_uniformfv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec3f * | data | |||
) | [inline] |
Set uniformfv.
name | = String Ref | |
count | = value | |
data | = Vec3f |
References set_uniformfv().
Referenced by set_uniformfv().
void CL_ProgramObject::set_uniformfv | ( | const CL_StringRef & | name, | |
int | size, | |||
int | count, | |||
float * | data | |||
) |
Set uniformfv.
name | = String Ref | |
size | = value | |
count | = value | |
data | = value |
void CL_ProgramObject::set_uniformfv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec2f * | data | |||
) | [inline] |
Set uniformfv.
name | = String Ref | |
count | = value | |
data | = Vec2f |
References set_uniformfv().
Referenced by set_uniformfv().
void CL_ProgramObject::set_uniformiv | ( | const CL_StringRef & | name, | |
int | size, | |||
int | count, | |||
int * | data | |||
) |
Set uniformiv.
name | = String Ref | |
size | = value | |
count | = value | |
data | = value |
void CL_ProgramObject::set_uniformiv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec2i * | data | |||
) | [inline] |
Set uniformiv.
name | = String Ref | |
count | = value | |
data | = Vec2i |
References set_uniformiv().
Referenced by set_uniformiv().
void CL_ProgramObject::set_uniformiv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec3i * | data | |||
) | [inline] |
Set uniformiv.
name | = String Ref | |
count | = value | |
data | = Vec3i |
References set_uniformiv().
Referenced by set_uniformiv().
void CL_ProgramObject::set_uniformiv | ( | const CL_StringRef & | name, | |
int | count, | |||
CL_Vec4i * | data | |||
) | [inline] |
Set uniformiv.
name | = String Ref | |
count | = value | |
data | = Vec4i |
References set_uniformiv().
Referenced by set_uniformiv().
void CL_ProgramObject::throw_if_null | ( | ) | const |
Throw an exception if this object is invalid.
bool CL_ProgramObject::validate | ( | ) |
Validate program.
If the validation fails, get_info_log() will return the validation log.