# Module GlArray

    module GlArray: sig .. end

Vertex array manipulation functions

    type kind = [ `color | `edge_flag | `index | `normal | `texture_coord | `vertex ]

The six different kinds for array

    val edge_flag : [ `bitmap ] Raw.t -> unit

Tell openGL the address of the edgeFlag array. Raw array must be static.

    val tex_coord : [< `four | `one | `three | `two ] ->
           [< `double | `float | `int | `short ] Raw.t -> unit

Tell openGL the address of the texCoor array Raw array must be static.

    val color : [< `four | `three ] ->
           [< `byte | `double | `float | `int | `short | `ubyte | `uint | `ushort ]
           Raw.t -> unit

Tell openGL the address of the color array Raw array must be static.

    val index : [< `double | `float | `int | `short | `ubyte ] Raw.t -> unit

Tell openGL the address of the index array Raw array must be static.

    val normal : [< `byte | `double | `float | `int | `short ] Raw.t -> unit

Tell openGL the address of the normal array Raw array must be static.

    val vertex : [< `four | `three | `two ] ->
           [< `double | `float | `int | `short ] Raw.t -> unit

Tell openGL the address of the vertex array Raw array must be static.

    val enable : kind -> unit

Tell openGL the address of to use the specified array Raw array must be static.

    val disable : kind -> unit

Tell openGL the address of not to use the specified array Raw array must be static.

    val element : int -> unit

    val draw_arrays : GlDraw.shape -> first:int -> count:int -> unit

    val draw_elements : GlDraw.shape -> count:int -> [< `ubyte | `uint | `ushort ] Raw.t -> unit