### Class

# Cogl Program

#### Description

    final class Cogl.Program : GObject.Object
    {
      /* No available fields */
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### cogl_program_new

Create a new cogl program object that can be used to replace parts of the GL rendering pipeline with custom code.

deprecated: 1.16

#### Instance methods

###### cogl_program_attach_shader

Attaches a shader to a program object. A program can have multiple vertex or fragment shaders but only one of them may provide a `main()` function. It is allowed to use a program with only a vertex shader or only a fragment shader.

deprecated: 1.16

###### cogl_program_get_uniform_location

Retrieve the location (offset) of a uniform variable in a shader program, a uniform is a variable that is constant for all vertices/fragments for a shader object and is possible to modify as an external parameter.

deprecated: 1.16

###### cogl_program_link

Links a program making it ready for use. Note that calling this function is optional. If it is not called the program will automatically be linked the first time it is used.

deprecated: 1.16

###### cogl_program_set_uniform_1f

Changes the value of a floating point uniform for the given linked `program`.

deprecated: 1.16

###### cogl_program_set_uniform_1i

Changes the value of an integer uniform for the given linked `program`.

deprecated: 1.16

###### cogl_program_set_uniform_float

Changes the value of a float vector uniform, or uniform array for the given linked `program`.

deprecated: 1.16

###### cogl_program_set_uniform_int

Changes the value of a int vector uniform, or uniform array for the given linked `program`.

deprecated: 1.16

###### cogl_program_set_uniform_matrix

Changes the value of a matrix uniform, or uniform array in the given linked `program`.

deprecated: 1.16

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct CoglProgramClass {
      GObjectClass parent_class;

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.