//
// The Open Toolkit Library License
//
// Copyright (c) 2006 - 2013 Stefanos Apostolopoulos for the Open Toolkit Library
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights to 
// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
// the Software, and to permit persons to whom the Software is furnished to do
// so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
// OTHER DEALINGS IN THE SOFTWARE.
//

namespace OpenTK.Graphics.OpenGL4
{
    using System;
    using System.Text;
    using System.Runtime.InteropServices;
    #pragma warning disable 3019
    #pragma warning disable 1591
    #pragma warning disable 1572
    #pragma warning disable 1573
    #pragma warning disable 626

    partial class GL
    {
        static GL()
        {
            EntryPointNames = new byte[]
            {
                103, 108, 65, 99, 116, 105, 118, 101, 83, 104, 97, 100, 101, 114, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 65, 99, 116, 105, 118, 101, 84, 101, 120, 116, 117, 114, 101, 0,
                103, 108, 65, 116, 116, 97, 99, 104, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 66, 101, 103, 105, 110, 67, 111, 110, 100, 105, 116, 105, 111, 110, 97, 108, 82, 101, 110, 100, 101, 114, 0,
                103, 108, 66, 101, 103, 105, 110, 81, 117, 101, 114, 121, 0,
                103, 108, 66, 101, 103, 105, 110, 81, 117, 101, 114, 121, 73, 110, 100, 101, 120, 101, 100, 0,
                103, 108, 66, 101, 103, 105, 110, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 66, 105, 110, 100, 65, 116, 116, 114, 105, 98, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 66, 105, 110, 100, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 66, 105, 110, 100, 66, 117, 102, 102, 101, 114, 66, 97, 115, 101, 0,
                103, 108, 66, 105, 110, 100, 66, 117, 102, 102, 101, 114, 82, 97, 110, 103, 101, 0,
                103, 108, 66, 105, 110, 100, 66, 117, 102, 102, 101, 114, 115, 66, 97, 115, 101, 0,
                103, 108, 66, 105, 110, 100, 66, 117, 102, 102, 101, 114, 115, 82, 97, 110, 103, 101, 0,
                103, 108, 66, 105, 110, 100, 70, 114, 97, 103, 68, 97, 116, 97, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 66, 105, 110, 100, 70, 114, 97, 103, 68, 97, 116, 97, 76, 111, 99, 97, 116, 105, 111, 110, 73, 110, 100, 101, 120, 101, 100, 0,
                103, 108, 66, 105, 110, 100, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 66, 105, 110, 100, 73, 109, 97, 103, 101, 84, 101, 120, 116, 117, 114, 101, 0,
                103, 108, 66, 105, 110, 100, 73, 109, 97, 103, 101, 84, 101, 120, 116, 117, 114, 101, 115, 0,
                103, 108, 66, 105, 110, 100, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 0,
                103, 108, 66, 105, 110, 100, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 66, 105, 110, 100, 83, 97, 109, 112, 108, 101, 114, 0,
                103, 108, 66, 105, 110, 100, 83, 97, 109, 112, 108, 101, 114, 115, 0,
                103, 108, 66, 105, 110, 100, 84, 101, 120, 116, 117, 114, 101, 0,
                103, 108, 66, 105, 110, 100, 84, 101, 120, 116, 117, 114, 101, 115, 0,
                103, 108, 66, 105, 110, 100, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 66, 105, 110, 100, 86, 101, 114, 116, 101, 120, 65, 114, 114, 97, 121, 0,
                103, 108, 66, 105, 110, 100, 86, 101, 114, 116, 101, 120, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 66, 105, 110, 100, 86, 101, 114, 116, 101, 120, 66, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 66, 108, 101, 110, 100, 67, 111, 108, 111, 114, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 105, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 105, 65, 82, 66, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 83, 101, 112, 97, 114, 97, 116, 101, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 83, 101, 112, 97, 114, 97, 116, 101, 105, 0,
                103, 108, 66, 108, 101, 110, 100, 69, 113, 117, 97, 116, 105, 111, 110, 83, 101, 112, 97, 114, 97, 116, 101, 105, 65, 82, 66, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 105, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 105, 65, 82, 66, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 83, 101, 112, 97, 114, 97, 116, 101, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 83, 101, 112, 97, 114, 97, 116, 101, 105, 0,
                103, 108, 66, 108, 101, 110, 100, 70, 117, 110, 99, 83, 101, 112, 97, 114, 97, 116, 101, 105, 65, 82, 66, 0,
                103, 108, 66, 108, 105, 116, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 66, 117, 102, 102, 101, 114, 68, 97, 116, 97, 0,
                103, 108, 66, 117, 102, 102, 101, 114, 83, 116, 111, 114, 97, 103, 101, 0,
                103, 108, 66, 117, 102, 102, 101, 114, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 67, 104, 101, 99, 107, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 83, 116, 97, 116, 117, 115, 0,
                103, 108, 67, 108, 97, 109, 112, 67, 111, 108, 111, 114, 0,
                103, 108, 67, 108, 101, 97, 114, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 68, 97, 116, 97, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 102, 105, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 102, 118, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 105, 118, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 67, 108, 101, 97, 114, 66, 117, 102, 102, 101, 114, 117, 105, 118, 0,
                103, 108, 67, 108, 101, 97, 114, 67, 111, 108, 111, 114, 0,
                103, 108, 67, 108, 101, 97, 114, 68, 101, 112, 116, 104, 0,
                103, 108, 67, 108, 101, 97, 114, 68, 101, 112, 116, 104, 102, 0,
                103, 108, 67, 108, 101, 97, 114, 83, 116, 101, 110, 99, 105, 108, 0,
                103, 108, 67, 108, 101, 97, 114, 84, 101, 120, 73, 109, 97, 103, 101, 0,
                103, 108, 67, 108, 101, 97, 114, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 0,
                103, 108, 67, 108, 105, 101, 110, 116, 87, 97, 105, 116, 83, 121, 110, 99, 0,
                103, 108, 67, 111, 108, 111, 114, 77, 97, 115, 107, 0,
                103, 108, 67, 111, 108, 111, 114, 77, 97, 115, 107, 105, 0,
                103, 108, 67, 111, 108, 111, 114, 80, 51, 117, 105, 0,
                103, 108, 67, 111, 108, 111, 114, 80, 51, 117, 105, 118, 0,
                103, 108, 67, 111, 108, 111, 114, 80, 52, 117, 105, 0,
                103, 108, 67, 111, 108, 111, 114, 80, 52, 117, 105, 118, 0,
                103, 108, 67, 111, 108, 111, 114, 83, 117, 98, 84, 97, 98, 108, 101, 0,
                103, 108, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 0,
                103, 108, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 67, 111, 109, 112, 105, 108, 101, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 67, 111, 109, 112, 105, 108, 101, 83, 104, 97, 100, 101, 114, 73, 110, 99, 108, 117, 100, 101, 65, 82, 66, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 73, 109, 97, 103, 101, 51, 68, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 51, 68, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 49, 68, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 50, 68, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 67, 111, 112, 121, 66, 117, 102, 102, 101, 114, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 67, 111, 112, 121, 67, 111, 108, 111, 114, 83, 117, 98, 84, 97, 98, 108, 101, 0,
                103, 108, 67, 111, 112, 121, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 0,
                103, 108, 67, 111, 112, 121, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 49, 68, 0,
                103, 108, 67, 111, 112, 121, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 50, 68, 0,
                103, 108, 67, 111, 112, 121, 73, 109, 97, 103, 101, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 67, 111, 112, 121, 84, 101, 120, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 67, 111, 112, 121, 84, 101, 120, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 67, 111, 112, 121, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 67, 111, 112, 121, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 67, 111, 112, 121, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 51, 68, 0,
                103, 108, 67, 114, 101, 97, 116, 101, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 67, 114, 101, 97, 116, 101, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 67, 114, 101, 97, 116, 101, 83, 104, 97, 100, 101, 114, 80, 114, 111, 103, 114, 97, 109, 118, 0,
                103, 108, 67, 114, 101, 97, 116, 101, 83, 121, 110, 99, 70, 114, 111, 109, 67, 76, 101, 118, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 67, 117, 108, 108, 70, 97, 99, 101, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 97, 108, 108, 98, 97, 99, 107, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 97, 108, 108, 98, 97, 99, 107, 65, 82, 66, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 97, 108, 108, 98, 97, 99, 107, 75, 72, 82, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 111, 110, 116, 114, 111, 108, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 111, 110, 116, 114, 111, 108, 65, 82, 66, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 67, 111, 110, 116, 114, 111, 108, 75, 72, 82, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 73, 110, 115, 101, 114, 116, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 73, 110, 115, 101, 114, 116, 65, 82, 66, 0,
                103, 108, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 73, 110, 115, 101, 114, 116, 75, 72, 82, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 66, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 78, 97, 109, 101, 100, 83, 116, 114, 105, 110, 103, 65, 82, 66, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 81, 117, 101, 114, 105, 101, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 83, 97, 109, 112, 108, 101, 114, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 83, 121, 110, 99, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 84, 101, 120, 116, 117, 114, 101, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 115, 0,
                103, 108, 68, 101, 108, 101, 116, 101, 86, 101, 114, 116, 101, 120, 65, 114, 114, 97, 121, 115, 0,
                103, 108, 68, 101, 112, 116, 104, 70, 117, 110, 99, 0,
                103, 108, 68, 101, 112, 116, 104, 77, 97, 115, 107, 0,
                103, 108, 68, 101, 112, 116, 104, 82, 97, 110, 103, 101, 0,
                103, 108, 68, 101, 112, 116, 104, 82, 97, 110, 103, 101, 65, 114, 114, 97, 121, 118, 0,
                103, 108, 68, 101, 112, 116, 104, 82, 97, 110, 103, 101, 102, 0,
                103, 108, 68, 101, 112, 116, 104, 82, 97, 110, 103, 101, 73, 110, 100, 101, 120, 101, 100, 0,
                103, 108, 68, 101, 116, 97, 99, 104, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 68, 105, 115, 97, 98, 108, 101, 0,
                103, 108, 68, 105, 115, 97, 98, 108, 101, 105, 0,
                103, 108, 68, 105, 115, 97, 98, 108, 101, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 65, 114, 114, 97, 121, 0,
                103, 108, 68, 105, 115, 112, 97, 116, 99, 104, 67, 111, 109, 112, 117, 116, 101, 0,
                103, 108, 68, 105, 115, 112, 97, 116, 99, 104, 67, 111, 109, 112, 117, 116, 101, 71, 114, 111, 117, 112, 83, 105, 122, 101, 65, 82, 66, 0,
                103, 108, 68, 105, 115, 112, 97, 116, 99, 104, 67, 111, 109, 112, 117, 116, 101, 73, 110, 100, 105, 114, 101, 99, 116, 0,
                103, 108, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 0,
                103, 108, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 73, 110, 100, 105, 114, 101, 99, 116, 0,
                103, 108, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 0,
                103, 108, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 66, 97, 115, 101, 73, 110, 115, 116, 97, 110, 99, 101, 0,
                103, 108, 68, 114, 97, 119, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 68, 114, 97, 119, 66, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 66, 97, 115, 101, 86, 101, 114, 116, 101, 120, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 100, 105, 114, 101, 99, 116, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 66, 97, 115, 101, 73, 110, 115, 116, 97, 110, 99, 101, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 66, 97, 115, 101, 86, 101, 114, 116, 101, 120, 0,
                103, 108, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 115, 116, 97, 110, 99, 101, 100, 66, 97, 115, 101, 86, 101, 114, 116, 101, 120, 66, 97, 115, 101, 73, 110, 115, 116, 97, 110, 99, 101, 0,
                103, 108, 68, 114, 97, 119, 82, 97, 110, 103, 101, 69, 108, 101, 109, 101, 110, 116, 115, 0,
                103, 108, 68, 114, 97, 119, 82, 97, 110, 103, 101, 69, 108, 101, 109, 101, 110, 116, 115, 66, 97, 115, 101, 86, 101, 114, 116, 101, 120, 0,
                103, 108, 68, 114, 97, 119, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 68, 114, 97, 119, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 73, 110, 115, 116, 97, 110, 99, 101, 100, 0,
                103, 108, 68, 114, 97, 119, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 83, 116, 114, 101, 97, 109, 0,
                103, 108, 68, 114, 97, 119, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 83, 116, 114, 101, 97, 109, 73, 110, 115, 116, 97, 110, 99, 101, 100, 0,
                103, 108, 69, 110, 97, 98, 108, 101, 0,
                103, 108, 69, 110, 97, 98, 108, 101, 105, 0,
                103, 108, 69, 110, 97, 98, 108, 101, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 65, 114, 114, 97, 121, 0,
                103, 108, 69, 110, 100, 67, 111, 110, 100, 105, 116, 105, 111, 110, 97, 108, 82, 101, 110, 100, 101, 114, 0,
                103, 108, 69, 110, 100, 81, 117, 101, 114, 121, 0,
                103, 108, 69, 110, 100, 81, 117, 101, 114, 121, 73, 110, 100, 101, 120, 101, 100, 0,
                103, 108, 69, 110, 100, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 70, 101, 110, 99, 101, 83, 121, 110, 99, 0,
                103, 108, 70, 105, 110, 105, 115, 104, 0,
                103, 108, 70, 108, 117, 115, 104, 0,
                103, 108, 70, 108, 117, 115, 104, 77, 97, 112, 112, 101, 100, 66, 117, 102, 102, 101, 114, 82, 97, 110, 103, 101, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 84, 101, 120, 116, 117, 114, 101, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 84, 101, 120, 116, 117, 114, 101, 49, 68, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 84, 101, 120, 116, 117, 114, 101, 50, 68, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 84, 101, 120, 116, 117, 114, 101, 51, 68, 0,
                103, 108, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 84, 101, 120, 116, 117, 114, 101, 76, 97, 121, 101, 114, 0,
                103, 108, 70, 114, 111, 110, 116, 70, 97, 99, 101, 0,
                103, 108, 71, 101, 110, 66, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 71, 101, 110, 101, 114, 97, 116, 101, 77, 105, 112, 109, 97, 112, 0,
                103, 108, 71, 101, 110, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 71, 101, 110, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 115, 0,
                103, 108, 71, 101, 110, 81, 117, 101, 114, 105, 101, 115, 0,
                103, 108, 71, 101, 110, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 115, 0,
                103, 108, 71, 101, 110, 83, 97, 109, 112, 108, 101, 114, 115, 0,
                103, 108, 71, 101, 110, 84, 101, 120, 116, 117, 114, 101, 115, 0,
                103, 108, 71, 101, 110, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 115, 0,
                103, 108, 71, 101, 110, 86, 101, 114, 116, 101, 120, 65, 114, 114, 97, 121, 115, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 65, 116, 111, 109, 105, 99, 67, 111, 117, 110, 116, 101, 114, 66, 117, 102, 102, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 65, 116, 116, 114, 105, 98, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 78, 97, 109, 101, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 85, 110, 105, 102, 111, 114, 109, 105, 118, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 85, 110, 105, 102, 111, 114, 109, 78, 97, 109, 101, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 85, 110, 105, 102, 111, 114, 109, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 85, 110, 105, 102, 111, 114, 109, 66, 108, 111, 99, 107, 105, 118, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 85, 110, 105, 102, 111, 114, 109, 66, 108, 111, 99, 107, 78, 97, 109, 101, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 85, 110, 105, 102, 111, 114, 109, 78, 97, 109, 101, 0,
                103, 108, 71, 101, 116, 65, 99, 116, 105, 118, 101, 85, 110, 105, 102, 111, 114, 109, 115, 105, 118, 0,
                103, 108, 71, 101, 116, 65, 116, 116, 97, 99, 104, 101, 100, 83, 104, 97, 100, 101, 114, 115, 0,
                103, 108, 71, 101, 116, 65, 116, 116, 114, 105, 98, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 71, 101, 116, 66, 111, 111, 108, 101, 97, 110, 105, 95, 118, 0,
                103, 108, 71, 101, 116, 66, 111, 111, 108, 101, 97, 110, 118, 0,
                103, 108, 71, 101, 116, 66, 117, 102, 102, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 54, 52, 118, 0,
                103, 108, 71, 101, 116, 66, 117, 102, 102, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 66, 117, 102, 102, 101, 114, 80, 111, 105, 110, 116, 101, 114, 118, 0,
                103, 108, 71, 101, 116, 66, 117, 102, 102, 101, 114, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 71, 101, 116, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 0,
                103, 108, 71, 101, 116, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 73, 109, 97, 103, 101, 0,
                103, 108, 71, 101, 116, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 0,
                103, 108, 71, 101, 116, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 76, 111, 103, 0,
                103, 108, 71, 101, 116, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 76, 111, 103, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 68, 101, 98, 117, 103, 77, 101, 115, 115, 97, 103, 101, 76, 111, 103, 75, 72, 82, 0,
                103, 108, 71, 101, 116, 68, 111, 117, 98, 108, 101, 105, 95, 118, 0,
                103, 108, 71, 101, 116, 68, 111, 117, 98, 108, 101, 118, 0,
                103, 108, 71, 101, 116, 69, 114, 114, 111, 114, 0,
                103, 108, 71, 101, 116, 70, 108, 111, 97, 116, 105, 95, 118, 0,
                103, 108, 71, 101, 116, 70, 108, 111, 97, 116, 118, 0,
                103, 108, 71, 101, 116, 70, 114, 97, 103, 68, 97, 116, 97, 73, 110, 100, 101, 120, 0,
                103, 108, 71, 101, 116, 70, 114, 97, 103, 68, 97, 116, 97, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 71, 101, 116, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 65, 116, 116, 97, 99, 104, 109, 101, 110, 116, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 71, 114, 97, 112, 104, 105, 99, 115, 82, 101, 115, 101, 116, 83, 116, 97, 116, 117, 115, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 72, 105, 115, 116, 111, 103, 114, 97, 109, 0,
                103, 108, 71, 101, 116, 72, 105, 115, 116, 111, 103, 114, 97, 109, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 72, 105, 115, 116, 111, 103, 114, 97, 109, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 73, 109, 97, 103, 101, 72, 97, 110, 100, 108, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 103, 101, 114, 54, 52, 105, 95, 118, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 103, 101, 114, 54, 52, 118, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 103, 101, 114, 105, 95, 118, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 103, 101, 114, 118, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 114, 110, 97, 108, 102, 111, 114, 109, 97, 116, 105, 54, 52, 118, 0,
                103, 108, 71, 101, 116, 73, 110, 116, 101, 114, 110, 97, 108, 102, 111, 114, 109, 97, 116, 105, 118, 0,
                103, 108, 71, 101, 116, 77, 105, 110, 109, 97, 120, 0,
                103, 108, 71, 101, 116, 77, 105, 110, 109, 97, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 77, 105, 110, 109, 97, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 102, 118, 0,
                103, 108, 71, 101, 116, 78, 97, 109, 101, 100, 83, 116, 114, 105, 110, 103, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 78, 97, 109, 101, 100, 83, 116, 114, 105, 110, 103, 105, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 67, 111, 108, 111, 114, 84, 97, 98, 108, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 84, 101, 120, 73, 109, 97, 103, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 67, 111, 110, 118, 111, 108, 117, 116, 105, 111, 110, 70, 105, 108, 116, 101, 114, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 72, 105, 115, 116, 111, 103, 114, 97, 109, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 77, 97, 112, 100, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 77, 97, 112, 102, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 77, 97, 112, 105, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 77, 105, 110, 109, 97, 120, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 80, 105, 120, 101, 108, 77, 97, 112, 102, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 80, 105, 120, 101, 108, 77, 97, 112, 117, 105, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 80, 105, 120, 101, 108, 77, 97, 112, 117, 115, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 80, 111, 108, 121, 103, 111, 110, 83, 116, 105, 112, 112, 108, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 83, 101, 112, 97, 114, 97, 98, 108, 101, 70, 105, 108, 116, 101, 114, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 84, 101, 120, 73, 109, 97, 103, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 85, 110, 105, 102, 111, 114, 109, 100, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 85, 110, 105, 102, 111, 114, 109, 102, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 85, 110, 105, 102, 111, 114, 109, 105, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 110, 85, 110, 105, 102, 111, 114, 109, 117, 105, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 79, 98, 106, 101, 99, 116, 76, 97, 98, 101, 108, 0,
                103, 108, 71, 101, 116, 79, 98, 106, 101, 99, 116, 76, 97, 98, 101, 108, 75, 72, 82, 0,
                103, 108, 71, 101, 116, 79, 98, 106, 101, 99, 116, 80, 116, 114, 76, 97, 98, 101, 108, 0,
                103, 108, 71, 101, 116, 79, 98, 106, 101, 99, 116, 80, 116, 114, 76, 97, 98, 101, 108, 75, 72, 82, 0,
                103, 108, 71, 101, 116, 80, 111, 105, 110, 116, 101, 114, 118, 0,
                103, 108, 71, 101, 116, 80, 111, 105, 110, 116, 101, 114, 118, 75, 72, 82, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 66, 105, 110, 97, 114, 121, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 73, 110, 102, 111, 76, 111, 103, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 73, 110, 116, 101, 114, 102, 97, 99, 101, 105, 118, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 105, 118, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 73, 110, 102, 111, 76, 111, 103, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 105, 118, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 82, 101, 115, 111, 117, 114, 99, 101, 73, 110, 100, 101, 120, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 82, 101, 115, 111, 117, 114, 99, 101, 105, 118, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 82, 101, 115, 111, 117, 114, 99, 101, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 82, 101, 115, 111, 117, 114, 99, 101, 76, 111, 99, 97, 116, 105, 111, 110, 73, 110, 100, 101, 120, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 82, 101, 115, 111, 117, 114, 99, 101, 78, 97, 109, 101, 0,
                103, 108, 71, 101, 116, 80, 114, 111, 103, 114, 97, 109, 83, 116, 97, 103, 101, 105, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 73, 110, 100, 101, 120, 101, 100, 105, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 105, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 79, 98, 106, 101, 99, 116, 105, 54, 52, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 79, 98, 106, 101, 99, 116, 105, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 79, 98, 106, 101, 99, 116, 117, 105, 54, 52, 118, 0,
                103, 108, 71, 101, 116, 81, 117, 101, 114, 121, 79, 98, 106, 101, 99, 116, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 105, 118, 0,
                103, 108, 71, 101, 116, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 83, 101, 112, 97, 114, 97, 98, 108, 101, 70, 105, 108, 116, 101, 114, 0,
                103, 108, 71, 101, 116, 83, 104, 97, 100, 101, 114, 73, 110, 102, 111, 76, 111, 103, 0,
                103, 108, 71, 101, 116, 83, 104, 97, 100, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 83, 104, 97, 100, 101, 114, 80, 114, 101, 99, 105, 115, 105, 111, 110, 70, 111, 114, 109, 97, 116, 0,
                103, 108, 71, 101, 116, 83, 104, 97, 100, 101, 114, 83, 111, 117, 114, 99, 101, 0,
                103, 108, 71, 101, 116, 83, 116, 114, 105, 110, 103, 0,
                103, 108, 71, 101, 116, 83, 116, 114, 105, 110, 103, 105, 0,
                103, 108, 71, 101, 116, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 73, 110, 100, 101, 120, 0,
                103, 108, 71, 101, 116, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 85, 110, 105, 102, 111, 114, 109, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 71, 101, 116, 83, 121, 110, 99, 105, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 73, 109, 97, 103, 101, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 76, 101, 118, 101, 108, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 76, 101, 118, 101, 108, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 105, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 116, 117, 114, 101, 72, 97, 110, 100, 108, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 84, 101, 120, 116, 117, 114, 101, 83, 97, 109, 112, 108, 101, 114, 72, 97, 110, 100, 108, 101, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 86, 97, 114, 121, 105, 110, 103, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 66, 108, 111, 99, 107, 73, 110, 100, 101, 120, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 100, 118, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 102, 118, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 73, 110, 100, 105, 99, 101, 115, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 105, 118, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 76, 111, 99, 97, 116, 105, 111, 110, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 85, 110, 105, 102, 111, 114, 109, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 100, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 102, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 105, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 117, 105, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 105, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 100, 118, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 117, 105, 54, 52, 118, 65, 82, 66, 0,
                103, 108, 71, 101, 116, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 111, 105, 110, 116, 101, 114, 118, 0,
                103, 108, 72, 105, 110, 116, 0,
                103, 108, 72, 105, 115, 116, 111, 103, 114, 97, 109, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 66, 117, 102, 102, 101, 114, 68, 97, 116, 97, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 66, 117, 102, 102, 101, 114, 83, 117, 98, 68, 97, 116, 97, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 83, 117, 98, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 84, 101, 120, 73, 109, 97, 103, 101, 0,
                103, 108, 73, 110, 118, 97, 108, 105, 100, 97, 116, 101, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 0,
                103, 108, 73, 115, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 73, 115, 69, 110, 97, 98, 108, 101, 100, 0,
                103, 108, 73, 115, 69, 110, 97, 98, 108, 101, 100, 105, 0,
                103, 108, 73, 115, 70, 114, 97, 109, 101, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 73, 115, 73, 109, 97, 103, 101, 72, 97, 110, 100, 108, 101, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 73, 115, 78, 97, 109, 101, 100, 83, 116, 114, 105, 110, 103, 65, 82, 66, 0,
                103, 108, 73, 115, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 73, 115, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 0,
                103, 108, 73, 115, 81, 117, 101, 114, 121, 0,
                103, 108, 73, 115, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 0,
                103, 108, 73, 115, 83, 97, 109, 112, 108, 101, 114, 0,
                103, 108, 73, 115, 83, 104, 97, 100, 101, 114, 0,
                103, 108, 73, 115, 83, 121, 110, 99, 0,
                103, 108, 73, 115, 84, 101, 120, 116, 117, 114, 101, 0,
                103, 108, 73, 115, 84, 101, 120, 116, 117, 114, 101, 72, 97, 110, 100, 108, 101, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 73, 115, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 73, 115, 86, 101, 114, 116, 101, 120, 65, 114, 114, 97, 121, 0,
                103, 108, 76, 105, 110, 101, 87, 105, 100, 116, 104, 0,
                103, 108, 76, 105, 110, 107, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 76, 111, 103, 105, 99, 79, 112, 0,
                103, 108, 77, 97, 107, 101, 73, 109, 97, 103, 101, 72, 97, 110, 100, 108, 101, 78, 111, 110, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 97, 107, 101, 73, 109, 97, 103, 101, 72, 97, 110, 100, 108, 101, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 97, 107, 101, 84, 101, 120, 116, 117, 114, 101, 72, 97, 110, 100, 108, 101, 78, 111, 110, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 97, 107, 101, 84, 101, 120, 116, 117, 114, 101, 72, 97, 110, 100, 108, 101, 82, 101, 115, 105, 100, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 97, 112, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 77, 97, 112, 66, 117, 102, 102, 101, 114, 82, 97, 110, 103, 101, 0,
                103, 108, 77, 101, 109, 111, 114, 121, 66, 97, 114, 114, 105, 101, 114, 0,
                103, 108, 77, 105, 110, 109, 97, 120, 0,
                103, 108, 77, 105, 110, 83, 97, 109, 112, 108, 101, 83, 104, 97, 100, 105, 110, 103, 0,
                103, 108, 77, 105, 110, 83, 97, 109, 112, 108, 101, 83, 104, 97, 100, 105, 110, 103, 65, 82, 66, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 73, 110, 100, 105, 114, 101, 99, 116, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 65, 114, 114, 97, 121, 115, 73, 110, 100, 105, 114, 101, 99, 116, 67, 111, 117, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 66, 97, 115, 101, 86, 101, 114, 116, 101, 120, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 100, 105, 114, 101, 99, 116, 0,
                103, 108, 77, 117, 108, 116, 105, 68, 114, 97, 119, 69, 108, 101, 109, 101, 110, 116, 115, 73, 110, 100, 105, 114, 101, 99, 116, 67, 111, 117, 110, 116, 65, 82, 66, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 49, 117, 105, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 49, 117, 105, 118, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 50, 117, 105, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 50, 117, 105, 118, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 51, 117, 105, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 51, 117, 105, 118, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 52, 117, 105, 0,
                103, 108, 77, 117, 108, 116, 105, 84, 101, 120, 67, 111, 111, 114, 100, 80, 52, 117, 105, 118, 0,
                103, 108, 78, 97, 109, 101, 100, 83, 116, 114, 105, 110, 103, 65, 82, 66, 0,
                103, 108, 78, 111, 114, 109, 97, 108, 80, 51, 117, 105, 0,
                103, 108, 78, 111, 114, 109, 97, 108, 80, 51, 117, 105, 118, 0,
                103, 108, 79, 98, 106, 101, 99, 116, 76, 97, 98, 101, 108, 0,
                103, 108, 79, 98, 106, 101, 99, 116, 76, 97, 98, 101, 108, 75, 72, 82, 0,
                103, 108, 79, 98, 106, 101, 99, 116, 80, 116, 114, 76, 97, 98, 101, 108, 0,
                103, 108, 79, 98, 106, 101, 99, 116, 80, 116, 114, 76, 97, 98, 101, 108, 75, 72, 82, 0,
                103, 108, 80, 97, 116, 99, 104, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 80, 97, 116, 99, 104, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 80, 97, 117, 115, 101, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 80, 105, 120, 101, 108, 83, 116, 111, 114, 101, 102, 0,
                103, 108, 80, 105, 120, 101, 108, 83, 116, 111, 114, 101, 105, 0,
                103, 108, 80, 111, 105, 110, 116, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 0,
                103, 108, 80, 111, 105, 110, 116, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 80, 111, 105, 110, 116, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 80, 111, 105, 110, 116, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 80, 111, 105, 110, 116, 83, 105, 122, 101, 0,
                103, 108, 80, 111, 108, 121, 103, 111, 110, 77, 111, 100, 101, 0,
                103, 108, 80, 111, 108, 121, 103, 111, 110, 79, 102, 102, 115, 101, 116, 0,
                103, 108, 80, 111, 112, 68, 101, 98, 117, 103, 71, 114, 111, 117, 112, 0,
                103, 108, 80, 111, 112, 68, 101, 98, 117, 103, 71, 114, 111, 117, 112, 75, 72, 82, 0,
                103, 108, 80, 114, 105, 109, 105, 116, 105, 118, 101, 82, 101, 115, 116, 97, 114, 116, 73, 110, 100, 101, 120, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 66, 105, 110, 97, 114, 121, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 100, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 102, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 117, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 49, 117, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 100, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 102, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 117, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 50, 117, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 100, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 102, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 117, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 51, 117, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 100, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 102, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 117, 105, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 52, 117, 105, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 72, 97, 110, 100, 108, 101, 117, 105, 54, 52, 65, 82, 66, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 72, 97, 110, 100, 108, 101, 117, 105, 54, 52, 118, 65, 82, 66, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 51, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 51, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 52, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 52, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 50, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 50, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 52, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 52, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 50, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 50, 102, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 51, 100, 118, 0,
                103, 108, 80, 114, 111, 103, 114, 97, 109, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 51, 102, 118, 0,
                103, 108, 80, 114, 111, 118, 111, 107, 105, 110, 103, 86, 101, 114, 116, 101, 120, 0,
                103, 108, 80, 117, 115, 104, 68, 101, 98, 117, 103, 71, 114, 111, 117, 112, 0,
                103, 108, 80, 117, 115, 104, 68, 101, 98, 117, 103, 71, 114, 111, 117, 112, 75, 72, 82, 0,
                103, 108, 81, 117, 101, 114, 121, 67, 111, 117, 110, 116, 101, 114, 0,
                103, 108, 82, 101, 97, 100, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 82, 101, 97, 100, 110, 80, 105, 120, 101, 108, 115, 65, 82, 66, 0,
                103, 108, 82, 101, 97, 100, 80, 105, 120, 101, 108, 115, 0,
                103, 108, 82, 101, 108, 101, 97, 115, 101, 83, 104, 97, 100, 101, 114, 67, 111, 109, 112, 105, 108, 101, 114, 0,
                103, 108, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 83, 116, 111, 114, 97, 103, 101, 0,
                103, 108, 82, 101, 110, 100, 101, 114, 98, 117, 102, 102, 101, 114, 83, 116, 111, 114, 97, 103, 101, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 0,
                103, 108, 82, 101, 115, 101, 116, 72, 105, 115, 116, 111, 103, 114, 97, 109, 0,
                103, 108, 82, 101, 115, 101, 116, 77, 105, 110, 109, 97, 120, 0,
                103, 108, 82, 101, 115, 117, 109, 101, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 67, 111, 118, 101, 114, 97, 103, 101, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 77, 97, 115, 107, 105, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 105, 118, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 117, 105, 118, 0,
                103, 108, 83, 97, 109, 112, 108, 101, 114, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 83, 99, 105, 115, 115, 111, 114, 0,
                103, 108, 83, 99, 105, 115, 115, 111, 114, 65, 114, 114, 97, 121, 118, 0,
                103, 108, 83, 99, 105, 115, 115, 111, 114, 73, 110, 100, 101, 120, 101, 100, 0,
                103, 108, 83, 99, 105, 115, 115, 111, 114, 73, 110, 100, 101, 120, 101, 100, 118, 0,
                103, 108, 83, 101, 99, 111, 110, 100, 97, 114, 121, 67, 111, 108, 111, 114, 80, 51, 117, 105, 0,
                103, 108, 83, 101, 99, 111, 110, 100, 97, 114, 121, 67, 111, 108, 111, 114, 80, 51, 117, 105, 118, 0,
                103, 108, 83, 101, 112, 97, 114, 97, 98, 108, 101, 70, 105, 108, 116, 101, 114, 50, 68, 0,
                103, 108, 83, 104, 97, 100, 101, 114, 66, 105, 110, 97, 114, 121, 0,
                103, 108, 83, 104, 97, 100, 101, 114, 83, 111, 117, 114, 99, 101, 0,
                103, 108, 83, 104, 97, 100, 101, 114, 83, 116, 111, 114, 97, 103, 101, 66, 108, 111, 99, 107, 66, 105, 110, 100, 105, 110, 103, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 70, 117, 110, 99, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 70, 117, 110, 99, 83, 101, 112, 97, 114, 97, 116, 101, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 77, 97, 115, 107, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 77, 97, 115, 107, 83, 101, 112, 97, 114, 97, 116, 101, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 79, 112, 0,
                103, 108, 83, 116, 101, 110, 99, 105, 108, 79, 112, 83, 101, 112, 97, 114, 97, 116, 101, 0,
                103, 108, 84, 101, 120, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 84, 101, 120, 66, 117, 102, 102, 101, 114, 82, 97, 110, 103, 101, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 49, 117, 105, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 49, 117, 105, 118, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 50, 117, 105, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 50, 117, 105, 118, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 51, 117, 105, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 51, 117, 105, 118, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 52, 117, 105, 0,
                103, 108, 84, 101, 120, 67, 111, 111, 114, 100, 80, 52, 117, 105, 118, 0,
                103, 108, 84, 101, 120, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 84, 101, 120, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 84, 101, 120, 73, 109, 97, 103, 101, 50, 68, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 0,
                103, 108, 84, 101, 120, 73, 109, 97, 103, 101, 51, 68, 0,
                103, 108, 84, 101, 120, 73, 109, 97, 103, 101, 51, 68, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 0,
                103, 108, 84, 101, 120, 80, 97, 103, 101, 67, 111, 109, 109, 105, 116, 109, 101, 110, 116, 65, 82, 66, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 102, 118, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 105, 118, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 73, 117, 105, 118, 0,
                103, 108, 84, 101, 120, 80, 97, 114, 97, 109, 101, 116, 101, 114, 105, 118, 0,
                103, 108, 84, 101, 120, 83, 116, 111, 114, 97, 103, 101, 49, 68, 0,
                103, 108, 84, 101, 120, 83, 116, 111, 114, 97, 103, 101, 50, 68, 0,
                103, 108, 84, 101, 120, 83, 116, 111, 114, 97, 103, 101, 50, 68, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 0,
                103, 108, 84, 101, 120, 83, 116, 111, 114, 97, 103, 101, 51, 68, 0,
                103, 108, 84, 101, 120, 83, 116, 111, 114, 97, 103, 101, 51, 68, 77, 117, 108, 116, 105, 115, 97, 109, 112, 108, 101, 0,
                103, 108, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 49, 68, 0,
                103, 108, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 50, 68, 0,
                103, 108, 84, 101, 120, 83, 117, 98, 73, 109, 97, 103, 101, 51, 68, 0,
                103, 108, 84, 101, 120, 116, 117, 114, 101, 86, 105, 101, 119, 0,
                103, 108, 84, 114, 97, 110, 115, 102, 111, 114, 109, 70, 101, 101, 100, 98, 97, 99, 107, 86, 97, 114, 121, 105, 110, 103, 115, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 100, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 102, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 117, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 49, 117, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 100, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 102, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 117, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 50, 117, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 100, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 102, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 117, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 51, 117, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 100, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 102, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 117, 105, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 52, 117, 105, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 66, 108, 111, 99, 107, 66, 105, 110, 100, 105, 110, 103, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 72, 97, 110, 100, 108, 101, 117, 105, 54, 52, 65, 82, 66, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 72, 97, 110, 100, 108, 101, 117, 105, 54, 52, 118, 65, 82, 66, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 51, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 51, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 52, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 50, 120, 52, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 50, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 50, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 52, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 51, 120, 52, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 50, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 50, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 51, 100, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 77, 97, 116, 114, 105, 120, 52, 120, 51, 102, 118, 0,
                103, 108, 85, 110, 105, 102, 111, 114, 109, 83, 117, 98, 114, 111, 117, 116, 105, 110, 101, 115, 117, 105, 118, 0,
                103, 108, 85, 110, 109, 97, 112, 66, 117, 102, 102, 101, 114, 0,
                103, 108, 85, 115, 101, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 85, 115, 101, 80, 114, 111, 103, 114, 97, 109, 83, 116, 97, 103, 101, 115, 0,
                103, 108, 86, 97, 108, 105, 100, 97, 116, 101, 80, 114, 111, 103, 114, 97, 109, 0,
                103, 108, 86, 97, 108, 105, 100, 97, 116, 101, 80, 114, 111, 103, 114, 97, 109, 80, 105, 112, 101, 108, 105, 110, 101, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 102, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 102, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 115, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 49, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 102, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 102, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 115, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 50, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 102, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 102, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 115, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 51, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 102, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 102, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 117, 98, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 117, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 78, 117, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 115, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 117, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 52, 117, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 66, 105, 110, 100, 105, 110, 103, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 68, 105, 118, 105, 115, 111, 114, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 70, 111, 114, 109, 97, 116, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 49, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 49, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 49, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 49, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 50, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 50, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 50, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 50, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 51, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 51, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 51, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 51, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 117, 98, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 52, 117, 115, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 70, 111, 114, 109, 97, 116, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 73, 80, 111, 105, 110, 116, 101, 114, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 49, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 49, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 49, 117, 105, 54, 52, 65, 82, 66, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 49, 117, 105, 54, 52, 118, 65, 82, 66, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 50, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 50, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 51, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 51, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 52, 100, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 52, 100, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 70, 111, 114, 109, 97, 116, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 76, 80, 111, 105, 110, 116, 101, 114, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 49, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 49, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 50, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 50, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 51, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 51, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 52, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 52, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 65, 116, 116, 114, 105, 98, 80, 111, 105, 110, 116, 101, 114, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 66, 105, 110, 100, 105, 110, 103, 68, 105, 118, 105, 115, 111, 114, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 50, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 50, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 51, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 51, 117, 105, 118, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 52, 117, 105, 0,
                103, 108, 86, 101, 114, 116, 101, 120, 80, 52, 117, 105, 118, 0,
                103, 108, 86, 105, 101, 119, 112, 111, 114, 116, 0,
                103, 108, 86, 105, 101, 119, 112, 111, 114, 116, 65, 114, 114, 97, 121, 118, 0,
                103, 108, 86, 105, 101, 119, 112, 111, 114, 116, 73, 110, 100, 101, 120, 101, 100, 102, 0,
                103, 108, 86, 105, 101, 119, 112, 111, 114, 116, 73, 110, 100, 101, 120, 101, 100, 102, 118, 0,
                103, 108, 87, 97, 105, 116, 83, 121, 110, 99, 0,
            };
            EntryPointNameOffsets = new int[]
            {
                0,
                22,
                38,
                53,
                78,
                91,
                111,
                136,
                157,
                170,
                187,
                205,
                223,
                242,
                265,
                295,
                313,
                332,
                352,
                374,
                393,
                407,
                422,
                436,
                451,
                475,
                493,
                512,
                532,
                545,
                561,
                578,
                598,
                622,
                647,
                675,
                687,
                700,
                716,
                736,
                757,
                781,
                799,
                812,
                828,
                844,
                869,
                882,
                890,
                908,
                924,
                940,
                956,
                977,
                994,
                1007,
                1020,
                1034,
                1049,
                1065,
                1084,
                1101,
                1113,
                1126,
                1138,
                1151,
                1163,
                1176,
                1192,
                1205,
                1229,
                1253,
                1269,
                1295,
                1318,
                1341,
                1364,
                1390,
                1416,
                1442,
                1464,
                1486,
                1510,
                1535,
                1559,
                1584,
                1604,
                1624,
                1641,
                1667,
                1693,
                1712,
                1729,
                1746,
                1766,
                1786,
                1806,
                1822,
                1837,
                1860,
                1887,
                1898,
                1921,
                1947,
                1973,
                1995,
                2020,
                2045,
                2066,
                2090,
                2114,
                2130,
                2151,
                2174,
                2190,
                2215,
                2231,
                2253,
                2270,
                2285,
                2298,
                2315,
                2342,
                2363,
                2375,
                2387,
                2400,
                2419,
                2433,
                2453,
                2468,
                2478,
                2489,
                2516,
                2534,
                2564,
                2590,
                2603,
                2624,
                2646,
                2680,
                2693,
                2707,
                2722,
                2747,
                2770,
                2794,
                2830,
                2864,
                2910,
                2930,
                2960,
                2984,
                3017,
                3047,
                3086,
                3095,
                3105,
                3131,
                3154,
                3165,
                3183,
                3206,
                3218,
                3227,
                3235,
                3260,
                3284,
                3310,
                3331,
                3354,
                3377,
                3400,
                3426,
                3438,
                3451,
                3468,
                3486,
                3508,
                3521,
                3540,
                3554,
                3568,
                3592,
                3610,
                3643,
                3661,
                3687,
                3718,
                3751,
                3770,
                3796,
                3824,
                3847,
                3869,
                3890,
                3910,
                3926,
                3940,
                3965,
                3988,
                4008,
                4027,
                4043,
                4070,
                4097,
                4121,
                4144,
                4172,
                4200,
                4221,
                4245,
                4269,
                4284,
                4297,
                4308,
                4322,
                4334,
                4353,
                4375,
                4413,
                4441,
                4469,
                4484,
                4510,
                4536,
                4556,
                4574,
                4590,
                4606,
                4620,
                4644,
                4666,
                4678,
                4701,
                4724,
                4743,
                4763,
                4785,
                4805,
                4833,
                4860,
                4879,
                4894,
                4909,
                4924,
                4940,
                4960,
                4981,
                5002,
                5026,
                5051,
                5069,
                5088,
                5107,
                5126,
                5146,
                5163,
                5183,
                5203,
                5226,
                5240,
                5257,
                5276,
                5296,
                5320,
                5335,
                5363,
                5386,
                5412,
                5435,
                5464,
                5498,
                5523,
                5543,
                5563,
                5576,
                5597,
                5616,
                5638,
                5658,
                5687,
                5711,
                5736,
                5762,
                5786,
                5807,
                5826,
                5840,
                5867,
                5885,
                5897,
                5910,
                5931,
                5962,
                5974,
                5988,
                6013,
                6038,
                6058,
                6079,
                6101,
                6121,
                6143,
                6172,
                6202,
                6225,
                6240,
                6255,
                6275,
                6290,
                6311,
                6337,
                6353,
                6373,
                6393,
                6414,
                6436,
                6456,
                6477,
                6504,
                6530,
                6537,
                6549,
                6572,
                6598,
                6622,
                6649,
                6670,
                6694,
                6705,
                6717,
                6730,
                6746,
                6773,
                6792,
                6804,
                6824,
                6834,
                6851,
                6863,
                6874,
                6883,
                6895,
                6924,
                6946,
                6962,
                6974,
                6988,
                6998,
                7030,
                7059,
                7093,
                7124,
                7136,
                7153,
                7169,
                7178,
                7197,
                7219,
                7237,
                7263,
                7297,
                7317,
                7347,
                7375,
                7411,
                7431,
                7452,
                7472,
                7493,
                7513,
                7534,
                7554,
                7575,
                7592,
                7605,
                7619,
                7633,
                7650,
                7667,
                7687,
                7706,
                7724,
                7749,
                7763,
                7777,
                7795,
                7814,
                7832,
                7851,
                7863,
                7877,
                7893,
                7909,
                7928,
                7952,
                7968,
                7988,
                8007,
                8027,
                8046,
                8066,
                8085,
                8105,
                8125,
                8146,
                8165,
                8185,
                8204,
                8224,
                8243,
                8263,
                8283,
                8304,
                8323,
                8343,
                8362,
                8382,
                8401,
                8421,
                8441,
                8462,
                8481,
                8501,
                8520,
                8540,
                8559,
                8579,
                8599,
                8620,
                8650,
                8681,
                8707,
                8733,
                8761,
                8789,
                8817,
                8845,
                8871,
                8897,
                8925,
                8953,
                8981,
                9009,
                9035,
                9061,
                9089,
                9117,
                9145,
                9173,
                9191,
                9208,
                9228,
                9243,
                9256,
                9273,
                9286,
                9310,
                9332,
                9365,
                9382,
                9396,
                9422,
                9439,
                9453,
                9473,
                9494,
                9514,
                9536,
                9559,
                9580,
                9590,
                9606,
                9623,
                9641,
                9662,
                9684,
                9704,
                9719,
                9734,
                9762,
                9776,
                9798,
                9812,
                9834,
                9846,
                9866,
                9878,
                9895,
                9910,
                9926,
                9941,
                9957,
                9972,
                9988,
                10003,
                10019,
                10032,
                10045,
                10069,
                10082,
                10106,
                10129,
                10145,
                10162,
                10178,
                10196,
                10215,
                10232,
                10247,
                10262,
                10288,
                10303,
                10329,
                10345,
                10361,
                10377,
                10391,
                10419,
                10431,
                10444,
                10456,
                10469,
                10481,
                10494,
                10507,
                10521,
                10533,
                10546,
                10558,
                10571,
                10583,
                10596,
                10609,
                10623,
                10635,
                10648,
                10660,
                10673,
                10685,
                10698,
                10711,
                10725,
                10737,
                10750,
                10762,
                10775,
                10787,
                10800,
                10813,
                10827,
                10849,
                10872,
                10896,
                10915,
                10934,
                10955,
                10976,
                10997,
                11018,
                11037,
                11056,
                11077,
                11098,
                11119,
                11140,
                11159,
                11178,
                11199,
                11220,
                11241,
                11262,
                11286,
                11300,
                11313,
                11332,
                11350,
                11376,
                11393,
                11411,
                11428,
                11446,
                11463,
                11481,
                11498,
                11516,
                11533,
                11551,
                11568,
                11586,
                11603,
                11621,
                11638,
                11656,
                11673,
                11691,
                11709,
                11726,
                11744,
                11761,
                11779,
                11797,
                11816,
                11835,
                11854,
                11873,
                11893,
                11913,
                11933,
                11950,
                11968,
                11987,
                12006,
                12025,
                12047,
                12069,
                12090,
                12108,
                12127,
                12146,
                12166,
                12184,
                12203,
                12222,
                12242,
                12260,
                12279,
                12298,
                12318,
                12337,
                12355,
                12374,
                12393,
                12413,
                12432,
                12452,
                12472,
                12494,
                12517,
                12535,
                12554,
                12578,
                12603,
                12621,
                12640,
                12658,
                12677,
                12695,
                12714,
                12736,
                12759,
                12778,
                12798,
                12817,
                12837,
                12856,
                12876,
                12895,
                12915,
                12937,
                12960,
                12973,
                12987,
                13000,
                13014,
                13027,
                13041,
                13052,
                13069,
                13088,
                13108,
            };
            EntryPoints = new IntPtr[EntryPointNameOffsets.Length];
        }

        public static partial class Arb
        {
            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify the equation used for both the RGB blend equation and the Alpha blend equation
            /// </summary>
            /// <param name="buf"> 
            /// for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.
            /// </param>
            /// <param name="mode"> 
            /// specifies how source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendEquationiARB")]
            [CLSCompliant(false)]
            public static void BlendEquation(Int32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode mode) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify the equation used for both the RGB blend equation and the Alpha blend equation
            /// </summary>
            /// <param name="buf"> 
            /// for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.
            /// </param>
            /// <param name="mode"> 
            /// specifies how source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendEquationiARB")]
            [CLSCompliant(false)]
            public static void BlendEquation(UInt32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode mode) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Set the RGB blend equation and the alpha blend equation separately
            /// </summary>
            /// <param name="buf"> 
            /// for glBlendEquationSeparatei, specifies the index of the draw buffer for which to set the blend equations.
            /// </param>
            /// <param name="modeRGB"> 
            /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            /// <param name="modeAlpha"> 
            /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendEquationSeparateiARB")]
            [CLSCompliant(false)]
            public static void BlendEquationSeparate(Int32 buf, OpenTK.Graphics.OpenGL4.All modeRGB, OpenTK.Graphics.OpenGL4.All modeAlpha) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Set the RGB blend equation and the alpha blend equation separately
            /// </summary>
            /// <param name="buf"> 
            /// for glBlendEquationSeparatei, specifies the index of the draw buffer for which to set the blend equations.
            /// </param>
            /// <param name="modeRGB"> 
            /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            /// <param name="modeAlpha"> 
            /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendEquationSeparateiARB")]
            [CLSCompliant(false)]
            public static void BlendEquationSeparate(UInt32 buf, OpenTK.Graphics.OpenGL4.All modeRGB, OpenTK.Graphics.OpenGL4.All modeAlpha) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify pixel arithmetic
            /// </summary>
            /// <param name="buf"> 
            /// For glBlendFunci, specifies the index of the draw buffer for which to set the blend function.
            /// </param>
            /// <param name="src"> 
            /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is One.
            /// </param>
            /// <param name="dst"> 
            /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: Zero, One, SrcColor, OneMinusSrcColor, DstColor, OneMinusDstColor, SrcAlpha, OneMinusSrcAlpha, DstAlpha, OneMinusDstAlpha. ConstantColor, OneMinusConstantColor, ConstantAlpha, and OneMinusConstantAlpha. The initial value is Zero.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendFunciARB")]
            [CLSCompliant(false)]
            public static void BlendFunc(Int32 buf, OpenTK.Graphics.OpenGL4.All src, OpenTK.Graphics.OpenGL4.All dst) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify pixel arithmetic
            /// </summary>
            /// <param name="buf"> 
            /// For glBlendFunci, specifies the index of the draw buffer for which to set the blend function.
            /// </param>
            /// <param name="src"> 
            /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is One.
            /// </param>
            /// <param name="dst"> 
            /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: Zero, One, SrcColor, OneMinusSrcColor, DstColor, OneMinusDstColor, SrcAlpha, OneMinusSrcAlpha, DstAlpha, OneMinusDstAlpha. ConstantColor, OneMinusConstantColor, ConstantAlpha, and OneMinusConstantAlpha. The initial value is Zero.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendFunciARB")]
            [CLSCompliant(false)]
            public static void BlendFunc(UInt32 buf, OpenTK.Graphics.OpenGL4.All src, OpenTK.Graphics.OpenGL4.All dst) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify pixel arithmetic for RGB and alpha components separately
            /// </summary>
            /// <param name="buf"> 
            /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions.
            /// </param>
            /// <param name="srcRGB"> 
            /// Specifies how the red, green, and blue blending factors are computed. The initial value is One.
            /// </param>
            /// <param name="dstRGB"> 
            /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is Zero.
            /// </param>
            /// <param name="srcAlpha"> 
            /// Specified how the alpha source blending factor is computed. The initial value is One.
            /// </param>
            /// <param name="dstAlpha"> 
            /// Specified how the alpha destination blending factor is computed. The initial value is Zero.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendFuncSeparateiARB")]
            [CLSCompliant(false)]
            public static void BlendFuncSeparate(Int32 buf, OpenTK.Graphics.OpenGL4.All srcRGB, OpenTK.Graphics.OpenGL4.All dstRGB, OpenTK.Graphics.OpenGL4.All srcAlpha, OpenTK.Graphics.OpenGL4.All dstAlpha) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_draw_buffers_blend]
            /// Specify pixel arithmetic for RGB and alpha components separately
            /// </summary>
            /// <param name="buf"> 
            /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions.
            /// </param>
            /// <param name="srcRGB"> 
            /// Specifies how the red, green, and blue blending factors are computed. The initial value is One.
            /// </param>
            /// <param name="dstRGB"> 
            /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is Zero.
            /// </param>
            /// <param name="srcAlpha"> 
            /// Specified how the alpha source blending factor is computed. The initial value is One.
            /// </param>
            /// <param name="dstAlpha"> 
            /// Specified how the alpha destination blending factor is computed. The initial value is Zero.
            /// </param>
            [AutoGenerated(Category = "ARB_draw_buffers_blend", Version = "", EntryPoint = "glBlendFuncSeparateiARB")]
            [CLSCompliant(false)]
            public static void BlendFuncSeparate(UInt32 buf, OpenTK.Graphics.OpenGL4.All srcRGB, OpenTK.Graphics.OpenGL4.All dstRGB, OpenTK.Graphics.OpenGL4.All srcAlpha, OpenTK.Graphics.OpenGL4.All dstAlpha) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static void CompileShaderInclude(Int32 shader, Int32 count, String[] path, Int32[] length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static void CompileShaderInclude(Int32 shader, Int32 count, String[] path, ref Int32 length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static unsafe void CompileShaderInclude(Int32 shader, Int32 count, String[] path, Int32* length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static void CompileShaderInclude(UInt32 shader, Int32 count, String[] path, Int32[] length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static void CompileShaderInclude(UInt32 shader, Int32 count, String[] path, ref Int32 length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="shader"></param>
            /// <param name="count"></param>
            /// <param name="path">[length: count]</param>
            /// <param name="length">[length: count]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glCompileShaderIncludeARB")]
            [CLSCompliant(false)]
            public static unsafe void CompileShaderInclude(UInt32 shader, Int32 count, String[] path, Int32* length) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static IntPtr CreateSyncFromCLevent([OutAttribute] IntPtr[] context, [OutAttribute] IntPtr[] @event, Int32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static IntPtr CreateSyncFromCLevent([OutAttribute] IntPtr[] context, [OutAttribute] IntPtr[] @event, UInt32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static IntPtr CreateSyncFromCLevent([OutAttribute] out IntPtr context, [OutAttribute] out IntPtr @event, Int32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static IntPtr CreateSyncFromCLevent([OutAttribute] out IntPtr context, [OutAttribute] out IntPtr @event, UInt32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static unsafe IntPtr CreateSyncFromCLevent([OutAttribute] IntPtr* context, [OutAttribute] IntPtr* @event, Int32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_cl_event]</summary>
            /// <param name="context"></param>
            /// <param name="@event"></param>
            /// <param name="flags"></param>
            [AutoGenerated(Category = "ARB_cl_event", Version = "", EntryPoint = "glCreateSyncFromCLeventARB")]
            [CLSCompliant(false)]
            public static unsafe IntPtr CreateSyncFromCLevent([OutAttribute] IntPtr* context, [OutAttribute] IntPtr* @event, UInt32 flags) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam">[length: callback] 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageCallbackARB")]
            public static void DebugMessageCallback(DebugProcArb callback, IntPtr userParam) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam">[length: callback] 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageCallbackARB")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcArb callback, [InAttribute, OutAttribute] T1[] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam">[length: callback] 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageCallbackARB")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcArb callback, [InAttribute, OutAttribute] T1[,] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam">[length: callback] 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageCallbackARB")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcArb callback, [InAttribute, OutAttribute] T1[,,] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam">[length: callback] 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageCallbackARB")]
            public static void DebugMessageCallback<T1>(DebugProcArb callback, [InAttribute, OutAttribute] ref T1 userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, Int32[] ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, ref Int32 ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, Int32* ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, UInt32[] ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, ref UInt32 ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageControlARB")]
            [CLSCompliant(false)]
            public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, UInt32* ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Inject an application-supplied message into the debug message queue
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message to insert.
            /// </param>
            /// <param name="type"> 
            /// The type of the debug message insert.
            /// </param>
            /// <param name="id"> 
            /// The user-supplied identifier of the message to insert.
            /// </param>
            /// <param name="severity"> 
            /// The severity of the debug messages to insert.
            /// </param>
            /// <param name="length"> 
            /// The length string contained in the character array whose address is given by message.
            /// </param>
            /// <param name="buf">[length: length] 
            /// The address of a character array containing the message to insert.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageInsertARB")]
            [CLSCompliant(false)]
            public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, Int32 id, OpenTK.Graphics.OpenGL4.All severity, Int32 length, String buf) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Inject an application-supplied message into the debug message queue
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message to insert.
            /// </param>
            /// <param name="type"> 
            /// The type of the debug message insert.
            /// </param>
            /// <param name="id"> 
            /// The user-supplied identifier of the message to insert.
            /// </param>
            /// <param name="severity"> 
            /// The severity of the debug messages to insert.
            /// </param>
            /// <param name="length"> 
            /// The length string contained in the character array whose address is given by message.
            /// </param>
            /// <param name="buf">[length: length] 
            /// The address of a character array containing the message to insert.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glDebugMessageInsertARB")]
            [CLSCompliant(false)]
            public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, UInt32 id, OpenTK.Graphics.OpenGL4.All severity, Int32 length, String buf) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glDeleteNamedStringARB")]
            public static void DeleteNamedString(Int32 namelen, String name) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_compute_variable_group_size]</summary>
            /// <param name="num_groups_x"></param>
            /// <param name="num_groups_y"></param>
            /// <param name="num_groups_z"></param>
            /// <param name="group_size_x"></param>
            /// <param name="group_size_y"></param>
            /// <param name="group_size_z"></param>
            [AutoGenerated(Category = "ARB_compute_variable_group_size", Version = "", EntryPoint = "glDispatchComputeGroupSizeARB")]
            [CLSCompliant(false)]
            public static void DispatchComputeGroupSize(Int32 num_groups_x, Int32 num_groups_y, Int32 num_groups_z, Int32 group_size_x, Int32 group_size_y, Int32 group_size_z) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_compute_variable_group_size]</summary>
            /// <param name="num_groups_x"></param>
            /// <param name="num_groups_y"></param>
            /// <param name="num_groups_z"></param>
            /// <param name="group_size_x"></param>
            /// <param name="group_size_y"></param>
            /// <param name="group_size_z"></param>
            [AutoGenerated(Category = "ARB_compute_variable_group_size", Version = "", EntryPoint = "glDispatchComputeGroupSizeARB")]
            [CLSCompliant(false)]
            public static void DispatchComputeGroupSize(UInt32 num_groups_x, UInt32 num_groups_y, UInt32 num_groups_z, UInt32 group_size_x, UInt32 group_size_y, UInt32 group_size_z) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] types, [OutAttribute] Int32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.All sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.All types, [OutAttribute] out Int32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.All severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static unsafe Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All* types, [OutAttribute] Int32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] types, [OutAttribute] UInt32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.All sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.All types, [OutAttribute] out UInt32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.All severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_debug_output]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "ARB_debug_output", Version = "", EntryPoint = "glGetDebugMessageLogARB")]
            [CLSCompliant(false)]
            public static unsafe Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All* types, [OutAttribute] UInt32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetGraphicsResetStatusARB")]
            public static OpenTK.Graphics.OpenGL4.All GetGraphicsResetStatus() { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            /// <param name="level"></param>
            /// <param name="layered"></param>
            /// <param name="layer"></param>
            /// <param name="format"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetImageHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetImageHandle(Int32 texture, Int32 level, bool layered, Int32 layer, OpenTK.Graphics.OpenGL4.All format) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            /// <param name="level"></param>
            /// <param name="layered"></param>
            /// <param name="layer"></param>
            /// <param name="format"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetImageHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetImageHandle(UInt32 texture, Int32 level, bool layered, Int32 layer, OpenTK.Graphics.OpenGL4.All format) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="bufSize"></param>
            /// <param name="stringlen">[length: 1]</param>
            /// <param name="@string">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glGetNamedStringARB")]
            [CLSCompliant(false)]
            public static void GetNamedString(Int32 namelen, String name, Int32 bufSize, [OutAttribute] out Int32 stringlen, [OutAttribute] StringBuilder @string) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="bufSize"></param>
            /// <param name="stringlen">[length: 1]</param>
            /// <param name="@string">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glGetNamedStringARB")]
            [CLSCompliant(false)]
            public static unsafe void GetNamedString(Int32 namelen, String name, Int32 bufSize, [OutAttribute] Int32* stringlen, [OutAttribute] StringBuilder @string) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="pname"></param>
            /// <param name="@params">[length: pname]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glGetNamedStringivARB")]
            [CLSCompliant(false)]
            public static void GetNamedString(Int32 namelen, String name, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="pname"></param>
            /// <param name="@params">[length: pname]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glGetNamedStringivARB")]
            [CLSCompliant(false)]
            public static void GetNamedString(Int32 namelen, String name, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="pname"></param>
            /// <param name="@params">[length: pname]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glGetNamedStringivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetNamedString(Int32 namelen, String name, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="table">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnColorTableARB")]
            public static void GetnColorTable(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr table) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="table">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnColorTableARB")]
            [CLSCompliant(false)]
            public static void GetnColorTable<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[] table)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="table">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnColorTableARB")]
            [CLSCompliant(false)]
            public static void GetnColorTable<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[,] table)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="table">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnColorTableARB")]
            [CLSCompliant(false)]
            public static void GetnColorTable<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[,,] table)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="table">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnColorTableARB")]
            public static void GetnColorTable<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T4 table)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="lod"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnCompressedTexImageARB")]
            public static void GetnCompressedTexImage(OpenTK.Graphics.OpenGL4.All target, Int32 lod, Int32 bufSize, [OutAttribute] IntPtr img) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="lod"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnCompressedTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnCompressedTexImage<T3>(OpenTK.Graphics.OpenGL4.All target, Int32 lod, Int32 bufSize, [InAttribute, OutAttribute] T3[] img)
                where T3 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="lod"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnCompressedTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnCompressedTexImage<T3>(OpenTK.Graphics.OpenGL4.All target, Int32 lod, Int32 bufSize, [InAttribute, OutAttribute] T3[,] img)
                where T3 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="lod"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnCompressedTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnCompressedTexImage<T3>(OpenTK.Graphics.OpenGL4.All target, Int32 lod, Int32 bufSize, [InAttribute, OutAttribute] T3[,,] img)
                where T3 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="lod"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnCompressedTexImageARB")]
            public static void GetnCompressedTexImage<T3>(OpenTK.Graphics.OpenGL4.All target, Int32 lod, Int32 bufSize, [InAttribute, OutAttribute] ref T3 img)
                where T3 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="image">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnConvolutionFilterARB")]
            public static void GetnConvolutionFilter(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr image) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="image">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnConvolutionFilterARB")]
            [CLSCompliant(false)]
            public static void GetnConvolutionFilter<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[] image)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="image">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnConvolutionFilterARB")]
            [CLSCompliant(false)]
            public static void GetnConvolutionFilter<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[,] image)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="image">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnConvolutionFilterARB")]
            [CLSCompliant(false)]
            public static void GetnConvolutionFilter<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T4[,,] image)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="image">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnConvolutionFilterARB")]
            public static void GetnConvolutionFilter<T4>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T4 image)
                where T4 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnHistogramARB")]
            public static void GetnHistogram(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnHistogramARB")]
            [CLSCompliant(false)]
            public static void GetnHistogram<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnHistogramARB")]
            [CLSCompliant(false)]
            public static void GetnHistogram<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnHistogramARB")]
            [CLSCompliant(false)]
            public static void GetnHistogram<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,,] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnHistogramARB")]
            public static void GetnHistogram<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T5 values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapdvARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Double[] v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapdvARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] out Double v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapdvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Double* v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapfvARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Single[] v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapfvARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] out Single v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapfvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Single* v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapivARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Int32[] v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapivARB")]
            [CLSCompliant(false)]
            public static void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] out Int32 v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="query"></param>
            /// <param name="bufSize"></param>
            /// <param name="v">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMapivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnMap(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All query, Int32 bufSize, [OutAttribute] Int32* v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMinmaxARB")]
            public static void GetnMinmax(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMinmaxARB")]
            [CLSCompliant(false)]
            public static void GetnMinmax<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMinmaxARB")]
            [CLSCompliant(false)]
            public static void GetnMinmax<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMinmaxARB")]
            [CLSCompliant(false)]
            public static void GetnMinmax<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,,] values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="reset"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnMinmaxARB")]
            public static void GetnMinmax<T5>(OpenTK.Graphics.OpenGL4.All target, bool reset, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T5 values)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapfvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Single[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapfvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] out Single values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapfvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Single* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Int32[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] UInt32[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] out UInt32 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapuivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] UInt32* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Int16[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] out Int16 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] Int16* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] UInt16[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] out UInt16 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="map"></param>
            /// <param name="bufSize"></param>
            /// <param name="values">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPixelMapusvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPixelMap(OpenTK.Graphics.OpenGL4.All map, Int32 bufSize, [OutAttribute] UInt16* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPolygonStippleARB")]
            [CLSCompliant(false)]
            public static Byte GetnPolygonStipple() { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="bufSize"></param>
            /// <param name="pattern">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPolygonStippleARB")]
            [CLSCompliant(false)]
            public static void GetnPolygonStipple(Int32 bufSize, [OutAttribute] Byte[] pattern) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="bufSize"></param>
            /// <param name="pattern">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPolygonStippleARB")]
            [CLSCompliant(false)]
            public static void GetnPolygonStipple(Int32 bufSize, [OutAttribute] out Byte pattern) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="bufSize"></param>
            /// <param name="pattern">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnPolygonStippleARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnPolygonStipple(Int32 bufSize, [OutAttribute] Byte* pattern) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="rowBufSize"></param>
            /// <param name="row">[length: rowBufSize]</param>
            /// <param name="columnBufSize"></param>
            /// <param name="column">[length: columnBufSize]</param>
            /// <param name="span">[length: 0]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnSeparableFilterARB")]
            public static void GetnSeparableFilter(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 rowBufSize, [OutAttribute] IntPtr row, Int32 columnBufSize, [OutAttribute] IntPtr column, [OutAttribute] IntPtr span) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="rowBufSize"></param>
            /// <param name="row">[length: rowBufSize]</param>
            /// <param name="columnBufSize"></param>
            /// <param name="column">[length: columnBufSize]</param>
            /// <param name="span">[length: 0]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnSeparableFilterARB")]
            [CLSCompliant(false)]
            public static void GetnSeparableFilter<T4,T6,T7>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 rowBufSize, [InAttribute, OutAttribute] T4[] row, Int32 columnBufSize, [InAttribute, OutAttribute] T6[] column, [InAttribute, OutAttribute] T7[] span)
                where T4 : struct
                where T6 : struct
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="rowBufSize"></param>
            /// <param name="row">[length: rowBufSize]</param>
            /// <param name="columnBufSize"></param>
            /// <param name="column">[length: columnBufSize]</param>
            /// <param name="span">[length: 0]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnSeparableFilterARB")]
            [CLSCompliant(false)]
            public static void GetnSeparableFilter<T4,T6,T7>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 rowBufSize, [InAttribute, OutAttribute] T4[,] row, Int32 columnBufSize, [InAttribute, OutAttribute] T6[,] column, [InAttribute, OutAttribute] T7[,] span)
                where T4 : struct
                where T6 : struct
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="rowBufSize"></param>
            /// <param name="row">[length: rowBufSize]</param>
            /// <param name="columnBufSize"></param>
            /// <param name="column">[length: columnBufSize]</param>
            /// <param name="span">[length: 0]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnSeparableFilterARB")]
            [CLSCompliant(false)]
            public static void GetnSeparableFilter<T4,T6,T7>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 rowBufSize, [InAttribute, OutAttribute] T4[,,] row, Int32 columnBufSize, [InAttribute, OutAttribute] T6[,,] column, [InAttribute, OutAttribute] T7[,,] span)
                where T4 : struct
                where T6 : struct
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="rowBufSize"></param>
            /// <param name="row">[length: rowBufSize]</param>
            /// <param name="columnBufSize"></param>
            /// <param name="column">[length: columnBufSize]</param>
            /// <param name="span">[length: 0]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnSeparableFilterARB")]
            public static void GetnSeparableFilter<T4,T6,T7>(OpenTK.Graphics.OpenGL4.All target, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 rowBufSize, [InAttribute, OutAttribute] ref T4 row, Int32 columnBufSize, [InAttribute, OutAttribute] ref T6 column, [InAttribute, OutAttribute] ref T7 span)
                where T4 : struct
                where T6 : struct
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnTexImageARB")]
            public static void GetnTexImage(OpenTK.Graphics.OpenGL4.All target, Int32 level, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr img) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnTexImage<T5>(OpenTK.Graphics.OpenGL4.All target, Int32 level, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[] img)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnTexImage<T5>(OpenTK.Graphics.OpenGL4.All target, Int32 level, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,] img)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnTexImageARB")]
            [CLSCompliant(false)]
            public static void GetnTexImage<T5>(OpenTK.Graphics.OpenGL4.All target, Int32 level, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T5[,,] img)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="img">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnTexImageARB")]
            public static void GetnTexImage<T5>(OpenTK.Graphics.OpenGL4.All target, Int32 level, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T5 img)
                where T5 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformdvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformfvARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(Int32 program, Int32 location, Int32 bufSize, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformuivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] UInt32[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformuivARB")]
            [CLSCompliant(false)]
            public static void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="bufSize"></param>
            /// <param name="@params">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glGetnUniformuivARB")]
            [CLSCompliant(false)]
            public static unsafe void GetnUniform(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetTextureHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetTextureHandle(Int32 texture) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetTextureHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetTextureHandle(UInt32 texture) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            /// <param name="sampler"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetTextureSamplerHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetTextureSamplerHandle(Int32 texture, Int32 sampler) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="texture"></param>
            /// <param name="sampler"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetTextureSamplerHandleARB")]
            [CLSCompliant(false)]
            public static Int64 GetTextureSamplerHandle(UInt32 texture, UInt32 sampler) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] Int64[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] out Int64 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] Int64* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] UInt64[] @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] out UInt64 @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glGetVertexAttribLui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameterArb pname, [OutAttribute] UInt64* @params) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glIsImageHandleResidentARB")]
            [CLSCompliant(false)]
            public static bool IsImageHandleResident(Int64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glIsImageHandleResidentARB")]
            [CLSCompliant(false)]
            public static bool IsImageHandleResident(UInt64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glIsNamedStringARB")]
            public static bool IsNamedString(Int32 namelen, String name) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glIsTextureHandleResidentARB")]
            [CLSCompliant(false)]
            public static bool IsTextureHandleResident(Int64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glIsTextureHandleResidentARB")]
            [CLSCompliant(false)]
            public static bool IsTextureHandleResident(UInt64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeImageHandleNonResidentARB")]
            [CLSCompliant(false)]
            public static void MakeImageHandleNonResident(Int64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeImageHandleNonResidentARB")]
            [CLSCompliant(false)]
            public static void MakeImageHandleNonResident(UInt64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            /// <param name="access"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeImageHandleResidentARB")]
            [CLSCompliant(false)]
            public static void MakeImageHandleResident(Int64 handle, OpenTK.Graphics.OpenGL4.All access) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            /// <param name="access"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeImageHandleResidentARB")]
            [CLSCompliant(false)]
            public static void MakeImageHandleResident(UInt64 handle, OpenTK.Graphics.OpenGL4.All access) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeTextureHandleNonResidentARB")]
            [CLSCompliant(false)]
            public static void MakeTextureHandleNonResident(Int64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeTextureHandleNonResidentARB")]
            [CLSCompliant(false)]
            public static void MakeTextureHandleNonResident(UInt64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeTextureHandleResidentARB")]
            [CLSCompliant(false)]
            public static void MakeTextureHandleResident(Int64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="handle"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glMakeTextureHandleResidentARB")]
            [CLSCompliant(false)]
            public static void MakeTextureHandleResident(UInt64 handle) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_sample_shading]
            /// Specifies minimum rate at which sample shaing takes place
            /// </summary>
            /// <param name="value"> 
            /// Specifies the rate at which samples are shaded within each covered pixel.
            /// </param>
            [AutoGenerated(Category = "ARB_sample_shading", Version = "", EntryPoint = "glMinSampleShadingARB")]
            public static void MinSampleShading(Single value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_indirect_parameters]</summary>
            /// <param name="mode"></param>
            /// <param name="indirect"></param>
            /// <param name="drawcount"></param>
            /// <param name="maxdrawcount"></param>
            /// <param name="stride"></param>
            [AutoGenerated(Category = "ARB_indirect_parameters", Version = "", EntryPoint = "glMultiDrawArraysIndirectCountARB")]
            public static void MultiDrawArraysIndirectCount(OpenTK.Graphics.OpenGL4.All mode, IntPtr indirect, IntPtr drawcount, Int32 maxdrawcount, Int32 stride) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_indirect_parameters]</summary>
            /// <param name="mode"></param>
            /// <param name="type"></param>
            /// <param name="indirect"></param>
            /// <param name="drawcount"></param>
            /// <param name="maxdrawcount"></param>
            /// <param name="stride"></param>
            [AutoGenerated(Category = "ARB_indirect_parameters", Version = "", EntryPoint = "glMultiDrawElementsIndirectCountARB")]
            public static void MultiDrawElementsIndirectCount(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, IntPtr indirect, IntPtr drawcount, Int32 maxdrawcount, Int32 stride) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_shading_language_include]</summary>
            /// <param name="type"></param>
            /// <param name="namelen"></param>
            /// <param name="name">[length: namelen]</param>
            /// <param name="stringlen"></param>
            /// <param name="@string">[length: stringlen]</param>
            [AutoGenerated(Category = "ARB_shading_language_include", Version = "", EntryPoint = "glNamedStringARB")]
            public static void NamedString(OpenTK.Graphics.OpenGL4.All type, Int32 namelen, String name, Int32 stringlen, String @string) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="value"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64ARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(Int32 program, Int32 location, Int64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="value"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64ARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(UInt32 program, Int32 location, UInt64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(Int32 program, Int32 location, Int32 count, Int64[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(Int32 program, Int32 location, Int32 count, ref Int64 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void ProgramUniformHandle(Int32 program, Int32 location, Int32 count, Int64* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(UInt32 program, Int32 location, Int32 count, UInt64[] values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void ProgramUniformHandle(UInt32 program, Int32 location, Int32 count, ref UInt64 values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="program"></param>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="values">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glProgramUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void ProgramUniformHandle(UInt32 program, Int32 location, Int32 count, UInt64* values) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="data">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glReadnPixelsARB")]
            public static void ReadnPixels(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [OutAttribute] IntPtr data) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="data">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glReadnPixelsARB")]
            [CLSCompliant(false)]
            public static void ReadnPixels<T7>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T7[] data)
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="data">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glReadnPixelsARB")]
            [CLSCompliant(false)]
            public static void ReadnPixels<T7>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T7[,] data)
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="data">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glReadnPixelsARB")]
            [CLSCompliant(false)]
            public static void ReadnPixels<T7>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] T7[,,] data)
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_robustness]</summary>
            /// <param name="x"></param>
            /// <param name="y"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="format"></param>
            /// <param name="type"></param>
            /// <param name="bufSize"></param>
            /// <param name="data">[length: bufSize]</param>
            [AutoGenerated(Category = "ARB_robustness", Version = "", EntryPoint = "glReadnPixelsARB")]
            public static void ReadnPixels<T7>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.All format, OpenTK.Graphics.OpenGL4.All type, Int32 bufSize, [InAttribute, OutAttribute] ref T7 data)
                where T7 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_sparse_texture]</summary>
            /// <param name="target"></param>
            /// <param name="level"></param>
            /// <param name="xoffset"></param>
            /// <param name="yoffset"></param>
            /// <param name="zoffset"></param>
            /// <param name="width"></param>
            /// <param name="height"></param>
            /// <param name="depth"></param>
            /// <param name="resident"></param>
            [AutoGenerated(Category = "ARB_sparse_texture", Version = "", EntryPoint = "glTexPageCommitmentARB")]
            public static void TexPageCommitment(OpenTK.Graphics.OpenGL4.All target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, bool resident) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="value"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64ARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, Int64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="value"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64ARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, UInt64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, Int32 count, Int64[] value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, Int32 count, ref Int64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void UniformHandle(Int32 location, Int32 count, Int64* value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, Int32 count, UInt64[] value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static void UniformHandle(Int32 location, Int32 count, ref UInt64 value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="location"></param>
            /// <param name="count"></param>
            /// <param name="value">[length: count]</param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glUniformHandleui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void UniformHandle(Int32 location, Int32 count, UInt64* value) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="x"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64ARB")]
            [CLSCompliant(false)]
            public static void VertexAttribL1(Int32 index, Int64 x) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="x"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64ARB")]
            [CLSCompliant(false)]
            public static void VertexAttribL1(UInt32 index, UInt64 x) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="v"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64vARB")]
            [CLSCompliant(false)]
            public static void VertexAttribL1(Int32 index, Int64[] v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="v"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void VertexAttribL1(Int32 index, Int64* v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="v"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64vARB")]
            [CLSCompliant(false)]
            public static void VertexAttribL1(UInt32 index, UInt64[] v) { throw new NotImplementedException(); }

            /// <summary>[requires: ARB_bindless_texture]</summary>
            /// <param name="index"></param>
            /// <param name="v"></param>
            [AutoGenerated(Category = "ARB_bindless_texture", Version = "", EntryPoint = "glVertexAttribL1ui64vARB")]
            [CLSCompliant(false)]
            public static unsafe void VertexAttribL1(UInt32 index, UInt64* v) { throw new NotImplementedException(); }

        }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Set the active program object for a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the program pipeline object to set the active program object for.
        /// </param>
        /// <param name="program"> 
        /// Specifies the program object to set as the active program pipeline object pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glActiveShaderProgram")]
        [CLSCompliant(false)]
        public static void ActiveShaderProgram(Int32 pipeline, Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Set the active program object for a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the program pipeline object to set the active program object for.
        /// </param>
        /// <param name="program"> 
        /// Specifies the program object to set as the active program pipeline object pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glActiveShaderProgram")]
        [CLSCompliant(false)]
        public static void ActiveShaderProgram(UInt32 pipeline, UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Select active texture unit
        /// </summary>
        /// <param name="texture"> 
        /// Specifies which texture unit to make active. The number of texture units is implementation dependent, but must be at least 80. texture must be one of Texturei, where i ranges from zero to the value of MaxCombinedTextureImageUnits minus one. The initial value is Texture0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glActiveTexture")]
        public static void ActiveTexture(OpenTK.Graphics.OpenGL4.TextureUnit texture) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Attaches a shader object to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to which a shader object will be attached.
        /// </param>
        /// <param name="shader"> 
        /// Specifies the shader object that is to be attached.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glAttachShader")]
        [CLSCompliant(false)]
        public static void AttachShader(Int32 program, Int32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Attaches a shader object to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to which a shader object will be attached.
        /// </param>
        /// <param name="shader"> 
        /// Specifies the shader object that is to be attached.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glAttachShader")]
        [CLSCompliant(false)]
        public static void AttachShader(UInt32 program, UInt32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Start conditional rendering
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded.
        /// </param>
        /// <param name="mode"> 
        /// Specifies how glBeginConditionalRender interprets the results of the occlusion query.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBeginConditionalRender")]
        [CLSCompliant(false)]
        public static void BeginConditionalRender(Int32 id, OpenTK.Graphics.OpenGL4.ConditionalRenderType mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Start conditional rendering
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded.
        /// </param>
        /// <param name="mode"> 
        /// Specifies how glBeginConditionalRender interprets the results of the occlusion query.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBeginConditionalRender")]
        [CLSCompliant(false)]
        public static void BeginConditionalRender(UInt32 id, OpenTK.Graphics.OpenGL4.ConditionalRenderType mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delimit the boundaries of a query object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target type of query object established between glBeginQuery and the subsequent glEndQuery. The symbolic constant must be one of SamplesPassed, AnySamplesPassed, AnySamplesPassedConservative, PrimitivesGenerated, TransformFeedbackPrimitivesWritten, or TimeElapsed.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBeginQuery")]
        [CLSCompliant(false)]
        public static void BeginQuery(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delimit the boundaries of a query object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target type of query object established between glBeginQuery and the subsequent glEndQuery. The symbolic constant must be one of SamplesPassed, AnySamplesPassed, AnySamplesPassedConservative, PrimitivesGenerated, TransformFeedbackPrimitivesWritten, or TimeElapsed.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBeginQuery")]
        [CLSCompliant(false)]
        public static void BeginQuery(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Delimit the boundaries of a query object on an indexed target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target type of query object established between glBeginQueryIndexed and the subsequent glEndQueryIndexed. The symbolic constant must be one of SamplesPassed, AnySamplesPassed, PrimitivesGenerated, TransformFeedbackPrimitivesWritten, or TimeElapsed.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query target upon which to begin the query.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glBeginQueryIndexed")]
        [CLSCompliant(false)]
        public static void BeginQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 index, Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Delimit the boundaries of a query object on an indexed target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target type of query object established between glBeginQueryIndexed and the subsequent glEndQueryIndexed. The symbolic constant must be one of SamplesPassed, AnySamplesPassed, PrimitivesGenerated, TransformFeedbackPrimitivesWritten, or TimeElapsed.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query target upon which to begin the query.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glBeginQueryIndexed")]
        [CLSCompliant(false)]
        public static void BeginQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 index, UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Start transform feedback operation
        /// </summary>
        /// <param name="primitiveMode"> 
        /// Specify the output type of the primitives that will be recorded into the buffer objects that are bound for transform feedback.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBeginTransformFeedback")]
        public static void BeginTransformFeedback(OpenTK.Graphics.OpenGL4.TransformFeedbackPrimitiveType primitiveMode) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Associates a generic vertex attribute index with a named attribute variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object in which the association is to be made.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be bound.
        /// </param>
        /// <param name="name"> 
        /// Specifies a null terminated string containing the name of the vertex shader attribute variable to which index is to be bound.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glBindAttribLocation")]
        [CLSCompliant(false)]
        public static void BindAttribLocation(Int32 program, Int32 index, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Associates a generic vertex attribute index with a named attribute variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object in which the association is to be made.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be bound.
        /// </param>
        /// <param name="name"> 
        /// Specifies a null terminated string containing the name of the vertex shader attribute variable to which index is to be bound.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glBindAttribLocation")]
        [CLSCompliant(false)]
        public static void BindAttribLocation(UInt32 program, UInt32 index, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Bind a named buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which the buffer object is bound. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of a buffer object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBindBuffer")]
        [CLSCompliant(false)]
        public static void BindBuffer(OpenTK.Graphics.OpenGL4.BufferTarget target, Int32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Bind a named buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which the buffer object is bound. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of a buffer object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBindBuffer")]
        [CLSCompliant(false)]
        public static void BindBuffer(OpenTK.Graphics.OpenGL4.BufferTarget target, UInt32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a buffer object to an indexed buffer target
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="index"> 
        /// Specify the index of the binding point within the array specified by target.
        /// </param>
        /// <param name="buffer"> 
        /// The name of a buffer object to bind to the specified binding point.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindBufferBase")]
        [CLSCompliant(false)]
        public static void BindBufferBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 index, Int32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a buffer object to an indexed buffer target
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="index"> 
        /// Specify the index of the binding point within the array specified by target.
        /// </param>
        /// <param name="buffer"> 
        /// The name of a buffer object to bind to the specified binding point.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindBufferBase")]
        [CLSCompliant(false)]
        public static void BindBufferBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 index, UInt32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a range within a buffer object to an indexed buffer target
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer, or ShaderStorageBuffer.
        /// </param>
        /// <param name="index"> 
        /// Specify the index of the binding point within the array specified by target.
        /// </param>
        /// <param name="buffer"> 
        /// The name of a buffer object to bind to the specified binding point.
        /// </param>
        /// <param name="offset"> 
        /// The starting offset in basic machine units into the buffer object buffer.
        /// </param>
        /// <param name="size"> 
        /// The amount of data in machine units that can be read from the buffet object while used as an indexed target.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindBufferRange")]
        [CLSCompliant(false)]
        public static void BindBufferRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 index, Int32 buffer, IntPtr offset, IntPtr size) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a range within a buffer object to an indexed buffer target
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer, or ShaderStorageBuffer.
        /// </param>
        /// <param name="index"> 
        /// Specify the index of the binding point within the array specified by target.
        /// </param>
        /// <param name="buffer"> 
        /// The name of a buffer object to bind to the specified binding point.
        /// </param>
        /// <param name="offset"> 
        /// The starting offset in basic machine units into the buffer object buffer.
        /// </param>
        /// <param name="size"> 
        /// The amount of data in machine units that can be read from the buffet object while used as an indexed target.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindBufferRange")]
        [CLSCompliant(false)]
        public static void BindBufferRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 index, UInt32 buffer, IntPtr offset, IntPtr size) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, Int32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, ref Int32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static unsafe void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, Int32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, UInt32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, ref UInt32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersBase")]
        [CLSCompliant(false)]
        public static unsafe void BindBuffersBase(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, UInt32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, Int32[] buffers, IntPtr[] offsets, IntPtr[] sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, ref Int32 buffers, ref IntPtr offsets, ref IntPtr sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static unsafe void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, Int32 first, Int32 count, Int32* buffers, IntPtr* offsets, IntPtr* sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, UInt32[] buffers, IntPtr[] offsets, IntPtr[] sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, ref UInt32 buffers, ref IntPtr offsets, ref IntPtr sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind ranges of one or more buffer objects to a sequence of indexed buffer targets
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the bind operation. target must be one of AtomicCounterBuffer, TransformFeedbackBuffer, UniformBuffer or ShaderStorageBuffer.
        /// </param>
        /// <param name="first"> 
        /// Specify the index of the first binding point within the array specified by target.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of contiguous binding points to which to bind buffers.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or Null.
        /// </param>
        /// <param name="offsets">[length: count]</param>
        /// <param name="sizes">[length: count]</param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindBuffersRange")]
        [CLSCompliant(false)]
        public static unsafe void BindBuffersRange(OpenTK.Graphics.OpenGL4.BufferRangeTarget target, UInt32 first, Int32 count, UInt32* buffers, IntPtr* offsets, IntPtr* sizes) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a user-defined varying out variable to a fragment shader color number
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to modify
        /// </param>
        /// <param name="color"> 
        /// The color number to bind the user-defined varying out variable to
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the user-defined varying out variable whose binding to modify
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindFragDataLocation")]
        [CLSCompliant(false)]
        public static void BindFragDataLocation(Int32 program, Int32 color, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Bind a user-defined varying out variable to a fragment shader color number
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to modify
        /// </param>
        /// <param name="color"> 
        /// The color number to bind the user-defined varying out variable to
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the user-defined varying out variable whose binding to modify
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glBindFragDataLocation")]
        [CLSCompliant(false)]
        public static void BindFragDataLocation(UInt32 program, UInt32 color, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_blend_func_extended|VERSION_3_3]
        /// Bind a user-defined varying out variable to a fragment shader color number and index
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to modify
        /// </param>
        /// <param name="colorNumber"> 
        /// The color number to bind the user-defined varying out variable to
        /// </param>
        /// <param name="index"> 
        /// The index of the color input to bind the user-defined varying out variable to
        /// </param>
        /// <param name="name"> 
        /// The name of the user-defined varying out variable whose binding to modify
        /// </param>
        [AutoGenerated(Category = "ARB_blend_func_extended|VERSION_3_3", Version = "3.3", EntryPoint = "glBindFragDataLocationIndexed")]
        [CLSCompliant(false)]
        public static void BindFragDataLocationIndexed(Int32 program, Int32 colorNumber, Int32 index, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_blend_func_extended|VERSION_3_3]
        /// Bind a user-defined varying out variable to a fragment shader color number and index
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to modify
        /// </param>
        /// <param name="colorNumber"> 
        /// The color number to bind the user-defined varying out variable to
        /// </param>
        /// <param name="index"> 
        /// The index of the color input to bind the user-defined varying out variable to
        /// </param>
        /// <param name="name"> 
        /// The name of the user-defined varying out variable whose binding to modify
        /// </param>
        [AutoGenerated(Category = "ARB_blend_func_extended|VERSION_3_3", Version = "3.3", EntryPoint = "glBindFragDataLocationIndexed")]
        [CLSCompliant(false)]
        public static void BindFragDataLocationIndexed(UInt32 program, UInt32 colorNumber, UInt32 index, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Bind a framebuffer to a framebuffer target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target of the binding operation.
        /// </param>
        /// <param name="framebuffer"> 
        /// Specifies the name of the framebuffer object to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindFramebuffer")]
        [CLSCompliant(false)]
        public static void BindFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 framebuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Bind a framebuffer to a framebuffer target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target of the binding operation.
        /// </param>
        /// <param name="framebuffer"> 
        /// Specifies the name of the framebuffer object to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindFramebuffer")]
        [CLSCompliant(false)]
        public static void BindFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, UInt32 framebuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_image_load_store|VERSION_4_2]
        /// Bind a level of a texture to an image unit
        /// </summary>
        /// <param name="unit"> 
        /// Specifies the index of the image unit to which to bind the texture
        /// </param>
        /// <param name="texture"> 
        /// Specifies the name of the texture to bind to the image unit.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level of the texture that is to be bound.
        /// </param>
        /// <param name="layered"> 
        /// Specifies whether a layered texture binding is to be established.
        /// </param>
        /// <param name="layer"> 
        /// If layered is False, specifies the layer of texture to be bound to the image unit. Ignored otherwise.
        /// </param>
        /// <param name="access"> 
        /// Specifies a token indicating the type of access that will be performed on the image.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format that the elements of the image will be treated as for the purposes of formatted stores.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_image_load_store|VERSION_4_2", Version = "4.2", EntryPoint = "glBindImageTexture")]
        [CLSCompliant(false)]
        public static void BindImageTexture(Int32 unit, Int32 texture, Int32 level, bool layered, Int32 layer, OpenTK.Graphics.OpenGL4.TextureAccess access, OpenTK.Graphics.OpenGL4.SizedInternalFormat format) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_image_load_store|VERSION_4_2]
        /// Bind a level of a texture to an image unit
        /// </summary>
        /// <param name="unit"> 
        /// Specifies the index of the image unit to which to bind the texture
        /// </param>
        /// <param name="texture"> 
        /// Specifies the name of the texture to bind to the image unit.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level of the texture that is to be bound.
        /// </param>
        /// <param name="layered"> 
        /// Specifies whether a layered texture binding is to be established.
        /// </param>
        /// <param name="layer"> 
        /// If layered is False, specifies the layer of texture to be bound to the image unit. Ignored otherwise.
        /// </param>
        /// <param name="access"> 
        /// Specifies a token indicating the type of access that will be performed on the image.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format that the elements of the image will be treated as for the purposes of formatted stores.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_image_load_store|VERSION_4_2", Version = "4.2", EntryPoint = "glBindImageTexture")]
        [CLSCompliant(false)]
        public static void BindImageTexture(UInt32 unit, UInt32 texture, Int32 level, bool layered, Int32 layer, OpenTK.Graphics.OpenGL4.TextureAccess access, OpenTK.Graphics.OpenGL4.SizedInternalFormat format) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static void BindImageTextures(Int32 first, Int32 count, Int32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static void BindImageTextures(Int32 first, Int32 count, ref Int32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static unsafe void BindImageTextures(Int32 first, Int32 count, Int32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static void BindImageTextures(UInt32 first, Int32 count, UInt32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static void BindImageTextures(UInt32 first, Int32 count, ref UInt32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named texture images to a sequence of consecutive image units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first image unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindImageTextures")]
        [CLSCompliant(false)]
        public static unsafe void BindImageTextures(UInt32 first, Int32 count, UInt32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Bind a program pipeline to the current context
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of the pipeline object to bind to the context.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glBindProgramPipeline")]
        [CLSCompliant(false)]
        public static void BindProgramPipeline(Int32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Bind a program pipeline to the current context
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of the pipeline object to bind to the context.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glBindProgramPipeline")]
        [CLSCompliant(false)]
        public static void BindProgramPipeline(UInt32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Bind a renderbuffer to a renderbuffer target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the renderbuffer target of the binding operation. target must be Renderbuffer.
        /// </param>
        /// <param name="renderbuffer"> 
        /// Specifies the name of the renderbuffer object to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindRenderbuffer")]
        [CLSCompliant(false)]
        public static void BindRenderbuffer(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, Int32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Bind a renderbuffer to a renderbuffer target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the renderbuffer target of the binding operation. target must be Renderbuffer.
        /// </param>
        /// <param name="renderbuffer"> 
        /// Specifies the name of the renderbuffer object to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindRenderbuffer")]
        [CLSCompliant(false)]
        public static void BindRenderbuffer(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, UInt32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Bind a named sampler to a texturing target
        /// </summary>
        /// <param name="unit"> 
        /// Specifies the index of the texture unit to which the sampler is bound.
        /// </param>
        /// <param name="sampler"> 
        /// Specifies the name of a sampler.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glBindSampler")]
        [CLSCompliant(false)]
        public static void BindSampler(Int32 unit, Int32 sampler) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Bind a named sampler to a texturing target
        /// </summary>
        /// <param name="unit"> 
        /// Specifies the index of the texture unit to which the sampler is bound.
        /// </param>
        /// <param name="sampler"> 
        /// Specifies the name of a sampler.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glBindSampler")]
        [CLSCompliant(false)]
        public static void BindSampler(UInt32 unit, UInt32 sampler) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static void BindSamplers(Int32 first, Int32 count, Int32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static void BindSamplers(Int32 first, Int32 count, ref Int32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static unsafe void BindSamplers(Int32 first, Int32 count, Int32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static void BindSamplers(UInt32 first, Int32 count, UInt32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static void BindSamplers(UInt32 first, Int32 count, ref UInt32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named sampler objects to a sequence of consecutive sampler units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first sampler unit to which a sampler object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of samplers to bind.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies the address of an array of names of existing sampler objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindSamplers")]
        [CLSCompliant(false)]
        public static unsafe void BindSamplers(UInt32 first, Int32 count, UInt32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Bind a named texture to a texturing target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which the texture is bound. Must be one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMap, TextureCubeMapArray, TextureBuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the name of a texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glBindTexture")]
        [CLSCompliant(false)]
        public static void BindTexture(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 texture) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Bind a named texture to a texturing target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which the texture is bound. Must be one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMap, TextureCubeMapArray, TextureBuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the name of a texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glBindTexture")]
        [CLSCompliant(false)]
        public static void BindTexture(OpenTK.Graphics.OpenGL4.TextureTarget target, UInt32 texture) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static void BindTextures(Int32 first, Int32 count, Int32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static void BindTextures(Int32 first, Int32 count, ref Int32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static unsafe void BindTextures(Int32 first, Int32 count, Int32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static void BindTextures(UInt32 first, Int32 count, UInt32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static void BindTextures(UInt32 first, Int32 count, ref UInt32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named textures to a sequence of consecutive texture units
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first texture unit to which a texture is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of textures to bind.
        /// </param>
        /// <param name="textures">[length: count] 
        /// Specifies the address of an array of names of existing texture objects.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindTextures")]
        [CLSCompliant(false)]
        public static unsafe void BindTextures(UInt32 first, Int32 count, UInt32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Bind a transform feedback object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which to bind the transform feedback object id. target must be TransformFeedback.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object reserved by glGenTransformFeedbacks.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glBindTransformFeedback")]
        [CLSCompliant(false)]
        public static void BindTransformFeedback(OpenTK.Graphics.OpenGL4.TransformFeedbackTarget target, Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Bind a transform feedback object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which to bind the transform feedback object id. target must be TransformFeedback.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object reserved by glGenTransformFeedbacks.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glBindTransformFeedback")]
        [CLSCompliant(false)]
        public static void BindTransformFeedback(OpenTK.Graphics.OpenGL4.TransformFeedbackTarget target, UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Bind a vertex array object
        /// </summary>
        /// <param name="array"> 
        /// Specifies the name of the vertex array to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindVertexArray")]
        [CLSCompliant(false)]
        public static void BindVertexArray(Int32 array) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Bind a vertex array object
        /// </summary>
        /// <param name="array"> 
        /// Specifies the name of the vertex array to bind.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBindVertexArray")]
        [CLSCompliant(false)]
        public static void BindVertexArray(UInt32 array) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Bind a buffer to a vertex buffer bind point
        /// </summary>
        /// <param name="bindingindex"> 
        /// The index of the vertex buffer binding point to which to bind the buffer.
        /// </param>
        /// <param name="buffer"> 
        /// The name of an existing buffer to bind to the vertex buffer binding point.
        /// </param>
        /// <param name="offset"> 
        /// The offset of the first element of the buffer.
        /// </param>
        /// <param name="stride"> 
        /// The distance between elements within the buffer.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glBindVertexBuffer")]
        [CLSCompliant(false)]
        public static void BindVertexBuffer(Int32 bindingindex, Int32 buffer, IntPtr offset, Int32 stride) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Bind a buffer to a vertex buffer bind point
        /// </summary>
        /// <param name="bindingindex"> 
        /// The index of the vertex buffer binding point to which to bind the buffer.
        /// </param>
        /// <param name="buffer"> 
        /// The name of an existing buffer to bind to the vertex buffer binding point.
        /// </param>
        /// <param name="offset"> 
        /// The offset of the first element of the buffer.
        /// </param>
        /// <param name="stride"> 
        /// The distance between elements within the buffer.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glBindVertexBuffer")]
        [CLSCompliant(false)]
        public static void BindVertexBuffer(UInt32 bindingindex, UInt32 buffer, IntPtr offset, Int32 stride) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static void BindVertexBuffers(Int32 first, Int32 count, Int32[] buffers, IntPtr[] offsets, Int32[] strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static void BindVertexBuffers(Int32 first, Int32 count, ref Int32 buffers, ref IntPtr offsets, ref Int32 strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static unsafe void BindVertexBuffers(Int32 first, Int32 count, Int32* buffers, IntPtr* offsets, Int32* strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static void BindVertexBuffers(UInt32 first, Int32 count, UInt32[] buffers, IntPtr[] offsets, Int32[] strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static void BindVertexBuffers(UInt32 first, Int32 count, ref UInt32 buffers, ref IntPtr offsets, ref Int32 strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_multi_bind|VERSION_4_4]
        /// Bind one or more named buffer objects to a sequence of consecutive vertex buffer binding points
        /// </summary>
        /// <param name="first"> 
        /// Specifies the first vertex buffer binding point to which a buffer object is to be bound.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of buffers to bind.
        /// </param>
        /// <param name="buffers">[length: count] 
        /// Specifies the address of an array of names of existing buffer objects.
        /// </param>
        /// <param name="offsets">[length: count] 
        /// Specifies the address of an array of offsets to associate with the binding points.
        /// </param>
        /// <param name="strides">[length: count] 
        /// Specifies the address of an array of strides to associate with the binding points.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_bind|VERSION_4_4", Version = "4.4", EntryPoint = "glBindVertexBuffers")]
        [CLSCompliant(false)]
        public static unsafe void BindVertexBuffers(UInt32 first, Int32 count, UInt32* buffers, IntPtr* offsets, Int32* strides) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4 or ARB_imaging|VERSION_1_4]
        /// Set the blend color
        /// </summary>
        /// <param name="red"> 
        /// specify the components of BlendColor
        /// </param>
        /// <param name="green"> 
        /// specify the components of BlendColor
        /// </param>
        /// <param name="blue"> 
        /// specify the components of BlendColor
        /// </param>
        /// <param name="alpha"> 
        /// specify the components of BlendColor
        /// </param>
        [AutoGenerated(Category = "ARB_imaging|VERSION_1_4", Version = "1.4", EntryPoint = "glBlendColor")]
        public static void BlendColor(Single red, Single green, Single blue, Single alpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4 or ARB_imaging|VERSION_1_4]
        /// Specify the equation used for both the RGB blend equation and the Alpha blend equation
        /// </summary>
        /// <param name="mode"> 
        /// specifies how source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging|VERSION_1_4", Version = "1.4", EntryPoint = "glBlendEquation")]
        public static void BlendEquation(OpenTK.Graphics.OpenGL4.BlendEquationMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify the equation used for both the RGB blend equation and the Alpha blend equation
        /// </summary>
        /// <param name="buf"> 
        /// for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.
        /// </param>
        /// <param name="mode"> 
        /// specifies how source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendEquationi")]
        [CLSCompliant(false)]
        public static void BlendEquation(Int32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify the equation used for both the RGB blend equation and the Alpha blend equation
        /// </summary>
        /// <param name="buf"> 
        /// for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.
        /// </param>
        /// <param name="mode"> 
        /// specifies how source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendEquationi")]
        [CLSCompliant(false)]
        public static void BlendEquation(UInt32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Set the RGB blend equation and the alpha blend equation separately
        /// </summary>
        /// <param name="modeRGB"> 
        /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        /// <param name="modeAlpha"> 
        /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glBlendEquationSeparate")]
        public static void BlendEquationSeparate(OpenTK.Graphics.OpenGL4.BlendEquationMode modeRGB, OpenTK.Graphics.OpenGL4.BlendEquationMode modeAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Set the RGB blend equation and the alpha blend equation separately
        /// </summary>
        /// <param name="buf"> 
        /// for glBlendEquationSeparatei, specifies the index of the draw buffer for which to set the blend equations.
        /// </param>
        /// <param name="modeRGB"> 
        /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        /// <param name="modeAlpha"> 
        /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendEquationSeparatei")]
        [CLSCompliant(false)]
        public static void BlendEquationSeparate(Int32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode modeRGB, OpenTK.Graphics.OpenGL4.BlendEquationMode modeAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Set the RGB blend equation and the alpha blend equation separately
        /// </summary>
        /// <param name="buf"> 
        /// for glBlendEquationSeparatei, specifies the index of the draw buffer for which to set the blend equations.
        /// </param>
        /// <param name="modeRGB"> 
        /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        /// <param name="modeAlpha"> 
        /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be FuncAdd, FuncSubtract, FuncReverseSubtract, Min, Max.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendEquationSeparatei")]
        [CLSCompliant(false)]
        public static void BlendEquationSeparate(UInt32 buf, OpenTK.Graphics.OpenGL4.BlendEquationMode modeRGB, OpenTK.Graphics.OpenGL4.BlendEquationMode modeAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify pixel arithmetic
        /// </summary>
        /// <param name="sfactor"> 
        /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="dfactor"> 
        /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: Zero, One, SrcColor, OneMinusSrcColor, DstColor, OneMinusDstColor, SrcAlpha, OneMinusSrcAlpha, DstAlpha, OneMinusDstAlpha. ConstantColor, OneMinusConstantColor, ConstantAlpha, and OneMinusConstantAlpha. The initial value is Zero.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glBlendFunc")]
        public static void BlendFunc(OpenTK.Graphics.OpenGL4.BlendingFactorSrc sfactor, OpenTK.Graphics.OpenGL4.BlendingFactorDest dfactor) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify pixel arithmetic
        /// </summary>
        /// <param name="buf"> 
        /// For glBlendFunci, specifies the index of the draw buffer for which to set the blend function.
        /// </param>
        /// <param name="src"> 
        /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="dst"> 
        /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: Zero, One, SrcColor, OneMinusSrcColor, DstColor, OneMinusDstColor, SrcAlpha, OneMinusSrcAlpha, DstAlpha, OneMinusDstAlpha. ConstantColor, OneMinusConstantColor, ConstantAlpha, and OneMinusConstantAlpha. The initial value is Zero.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendFunci")]
        [CLSCompliant(false)]
        public static void BlendFunc(Int32 buf, OpenTK.Graphics.OpenGL4.BlendingFactorSrc src, OpenTK.Graphics.OpenGL4.BlendingFactorDest dst) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify pixel arithmetic
        /// </summary>
        /// <param name="buf"> 
        /// For glBlendFunci, specifies the index of the draw buffer for which to set the blend function.
        /// </param>
        /// <param name="src"> 
        /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="dst"> 
        /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: Zero, One, SrcColor, OneMinusSrcColor, DstColor, OneMinusDstColor, SrcAlpha, OneMinusSrcAlpha, DstAlpha, OneMinusDstAlpha. ConstantColor, OneMinusConstantColor, ConstantAlpha, and OneMinusConstantAlpha. The initial value is Zero.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendFunci")]
        [CLSCompliant(false)]
        public static void BlendFunc(UInt32 buf, OpenTK.Graphics.OpenGL4.BlendingFactorSrc src, OpenTK.Graphics.OpenGL4.BlendingFactorDest dst) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify pixel arithmetic for RGB and alpha components separately
        /// </summary>
        /// <param name="sfactorRGB"> 
        /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions.
        /// </param>
        /// <param name="dfactorRGB"> 
        /// Specifies how the red, green, and blue blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="sfactorAlpha"> 
        /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is Zero.
        /// </param>
        /// <param name="dfactorAlpha"> 
        /// Specified how the alpha source blending factor is computed. The initial value is One.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glBlendFuncSeparate")]
        public static void BlendFuncSeparate(OpenTK.Graphics.OpenGL4.BlendingFactorSrc sfactorRGB, OpenTK.Graphics.OpenGL4.BlendingFactorDest dfactorRGB, OpenTK.Graphics.OpenGL4.BlendingFactorSrc sfactorAlpha, OpenTK.Graphics.OpenGL4.BlendingFactorDest dfactorAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify pixel arithmetic for RGB and alpha components separately
        /// </summary>
        /// <param name="buf"> 
        /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions.
        /// </param>
        /// <param name="srcRGB"> 
        /// Specifies how the red, green, and blue blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="dstRGB"> 
        /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is Zero.
        /// </param>
        /// <param name="srcAlpha"> 
        /// Specified how the alpha source blending factor is computed. The initial value is One.
        /// </param>
        /// <param name="dstAlpha"> 
        /// Specified how the alpha destination blending factor is computed. The initial value is Zero.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendFuncSeparatei")]
        [CLSCompliant(false)]
        public static void BlendFuncSeparate(Int32 buf, OpenTK.Graphics.OpenGL4.BlendingFactorSrc srcRGB, OpenTK.Graphics.OpenGL4.BlendingFactorDest dstRGB, OpenTK.Graphics.OpenGL4.BlendingFactorSrc srcAlpha, OpenTK.Graphics.OpenGL4.BlendingFactorDest dstAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specify pixel arithmetic for RGB and alpha components separately
        /// </summary>
        /// <param name="buf"> 
        /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions.
        /// </param>
        /// <param name="srcRGB"> 
        /// Specifies how the red, green, and blue blending factors are computed. The initial value is One.
        /// </param>
        /// <param name="dstRGB"> 
        /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is Zero.
        /// </param>
        /// <param name="srcAlpha"> 
        /// Specified how the alpha source blending factor is computed. The initial value is One.
        /// </param>
        /// <param name="dstAlpha"> 
        /// Specified how the alpha destination blending factor is computed. The initial value is Zero.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glBlendFuncSeparatei")]
        [CLSCompliant(false)]
        public static void BlendFuncSeparate(UInt32 buf, OpenTK.Graphics.OpenGL4.BlendingFactorSrc srcRGB, OpenTK.Graphics.OpenGL4.BlendingFactorDest dstRGB, OpenTK.Graphics.OpenGL4.BlendingFactorSrc srcAlpha, OpenTK.Graphics.OpenGL4.BlendingFactorDest dstAlpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Copy a block of pixels from the read framebuffer to the draw framebuffer
        /// </summary>
        /// <param name="srcX0"> 
        /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer.
        /// </param>
        /// <param name="srcY0"> 
        /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer.
        /// </param>
        /// <param name="srcX1"> 
        /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer.
        /// </param>
        /// <param name="srcY1"> 
        /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer.
        /// </param>
        /// <param name="dstX0"> 
        /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer.
        /// </param>
        /// <param name="dstY0"> 
        /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer.
        /// </param>
        /// <param name="dstX1"> 
        /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer.
        /// </param>
        /// <param name="dstY1"> 
        /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer.
        /// </param>
        /// <param name="mask"> 
        /// The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are ColorBufferBit, DepthBufferBit and StencilBufferBit.
        /// </param>
        /// <param name="filter"> 
        /// Specifies the interpolation to be applied if the image is stretched. Must be Nearest or Linear.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glBlitFramebuffer")]
        public static void BlitFramebuffer(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, OpenTK.Graphics.OpenGL4.ClearBufferMask mask, OpenTK.Graphics.OpenGL4.BlitFramebufferFilter filter) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Creates and initializes a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="usage"> 
        /// Specifies the expected usage pattern of the data store. The symbolic constant must be StreamDraw, StreamRead, StreamCopy, StaticDraw, StaticRead, StaticCopy, DynamicDraw, DynamicRead, or DynamicCopy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferData")]
        public static void BufferData(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, IntPtr data, OpenTK.Graphics.OpenGL4.BufferUsageHint usage) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Creates and initializes a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="usage"> 
        /// Specifies the expected usage pattern of the data store. The symbolic constant must be StreamDraw, StreamRead, StreamCopy, StaticDraw, StaticRead, StaticCopy, DynamicDraw, DynamicRead, or DynamicCopy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferData")]
        [CLSCompliant(false)]
        public static void BufferData<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[] data, OpenTK.Graphics.OpenGL4.BufferUsageHint usage)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Creates and initializes a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="usage"> 
        /// Specifies the expected usage pattern of the data store. The symbolic constant must be StreamDraw, StreamRead, StreamCopy, StaticDraw, StaticRead, StaticCopy, DynamicDraw, DynamicRead, or DynamicCopy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferData")]
        [CLSCompliant(false)]
        public static void BufferData<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[,] data, OpenTK.Graphics.OpenGL4.BufferUsageHint usage)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Creates and initializes a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="usage"> 
        /// Specifies the expected usage pattern of the data store. The symbolic constant must be StreamDraw, StreamRead, StreamCopy, StaticDraw, StaticRead, StaticCopy, DynamicDraw, DynamicRead, or DynamicCopy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferData")]
        [CLSCompliant(false)]
        public static void BufferData<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[,,] data, OpenTK.Graphics.OpenGL4.BufferUsageHint usage)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Creates and initializes a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="usage"> 
        /// Specifies the expected usage pattern of the data store. The symbolic constant must be StreamDraw, StreamRead, StreamCopy, StaticDraw, StaticRead, StaticCopy, DynamicDraw, DynamicRead, or DynamicCopy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferData")]
        public static void BufferData<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] ref T2 data, OpenTK.Graphics.OpenGL4.BufferUsageHint usage)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_buffer_storage|VERSION_4_4]
        /// Creates and initializes a buffer object's immutable data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="flags"> 
        /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. DynamicStorageBit, MapReadBitMapWriteBit, MapPersistentBit, MapCoherentBit, and ClientStorageBit.
        /// </param>
        [AutoGenerated(Category = "ARB_buffer_storage|VERSION_4_4", Version = "4.4", EntryPoint = "glBufferStorage")]
        public static void BufferStorage(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, IntPtr data, OpenTK.Graphics.OpenGL4.BufferStorageFlags flags) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_buffer_storage|VERSION_4_4]
        /// Creates and initializes a buffer object's immutable data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="flags"> 
        /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. DynamicStorageBit, MapReadBitMapWriteBit, MapPersistentBit, MapCoherentBit, and ClientStorageBit.
        /// </param>
        [AutoGenerated(Category = "ARB_buffer_storage|VERSION_4_4", Version = "4.4", EntryPoint = "glBufferStorage")]
        [CLSCompliant(false)]
        public static void BufferStorage<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[] data, OpenTK.Graphics.OpenGL4.BufferStorageFlags flags)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_buffer_storage|VERSION_4_4]
        /// Creates and initializes a buffer object's immutable data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="flags"> 
        /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. DynamicStorageBit, MapReadBitMapWriteBit, MapPersistentBit, MapCoherentBit, and ClientStorageBit.
        /// </param>
        [AutoGenerated(Category = "ARB_buffer_storage|VERSION_4_4", Version = "4.4", EntryPoint = "glBufferStorage")]
        [CLSCompliant(false)]
        public static void BufferStorage<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[,] data, OpenTK.Graphics.OpenGL4.BufferStorageFlags flags)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_buffer_storage|VERSION_4_4]
        /// Creates and initializes a buffer object's immutable data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="flags"> 
        /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. DynamicStorageBit, MapReadBitMapWriteBit, MapPersistentBit, MapCoherentBit, and ClientStorageBit.
        /// </param>
        [AutoGenerated(Category = "ARB_buffer_storage|VERSION_4_4", Version = "4.4", EntryPoint = "glBufferStorage")]
        [CLSCompliant(false)]
        public static void BufferStorage<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] T2[,,] data, OpenTK.Graphics.OpenGL4.BufferStorageFlags flags)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_buffer_storage|VERSION_4_4]
        /// Creates and initializes a buffer object's immutable data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the buffer object's new data store.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to data that will be copied into the data store for initialization, or Null if no data is to be copied.
        /// </param>
        /// <param name="flags"> 
        /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. DynamicStorageBit, MapReadBitMapWriteBit, MapPersistentBit, MapCoherentBit, and ClientStorageBit.
        /// </param>
        [AutoGenerated(Category = "ARB_buffer_storage|VERSION_4_4", Version = "4.4", EntryPoint = "glBufferStorage")]
        public static void BufferStorage<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr size, [InAttribute, OutAttribute] ref T2 data, OpenTK.Graphics.OpenGL4.BufferStorageFlags flags)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Updates a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being replaced.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the new data that will be copied into the data store.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferSubData")]
        public static void BufferSubData(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Updates a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being replaced.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the new data that will be copied into the data store.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferSubData")]
        [CLSCompliant(false)]
        public static void BufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Updates a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being replaced.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the new data that will be copied into the data store.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferSubData")]
        [CLSCompliant(false)]
        public static void BufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[,] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Updates a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being replaced.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the new data that will be copied into the data store.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferSubData")]
        [CLSCompliant(false)]
        public static void BufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[,,] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Updates a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being replaced.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the new data that will be copied into the data store.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glBufferSubData")]
        public static void BufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] ref T3 data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Check the completeness status of a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the framebuffer completeness check.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glCheckFramebufferStatus")]
        public static OpenTK.Graphics.OpenGL4.FramebufferErrorCode CheckFramebufferStatus(OpenTK.Graphics.OpenGL4.FramebufferTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify whether data read via glReadPixels should be clamped
        /// </summary>
        /// <param name="target"> 
        /// Target for color clamping. target must be ClampReadColor.
        /// </param>
        /// <param name="clamp"> 
        /// Specifies whether to apply color clamping. clamp must be True or False.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClampColor")]
        public static void ClampColor(OpenTK.Graphics.OpenGL4.ClampColorTarget target, OpenTK.Graphics.OpenGL4.ClampColorMode clamp) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Clear buffers to preset values
        /// </summary>
        /// <param name="mask"> 
        /// Bitwise OR of masks that indicate the buffers to be cleared. The three masks are ColorBufferBit, DepthBufferBit, and StencilBufferBit.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glClear")]
        public static void Clear(OpenTK.Graphics.OpenGL4.ClearBufferMask mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill a buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferData")]
        public static void ClearBufferData(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill a buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferData")]
        [CLSCompliant(false)]
        public static void ClearBufferData<T4>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T4[] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill a buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferData")]
        [CLSCompliant(false)]
        public static void ClearBufferData<T4>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T4[,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill a buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferData")]
        [CLSCompliant(false)]
        public static void ClearBufferData<T4>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T4[,,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill a buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferData")]
        public static void ClearBufferData<T4>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] ref T4 data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="depth"> 
        /// The value to clear a depth render buffer to.
        /// </param>
        /// <param name="stencil"> 
        /// The value to clear a stencil render buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferfi")]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBufferCombined buffer, Int32 drawbuffer, Single depth, Int32 stencil) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferfv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferfv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferfv")]
        [CLSCompliant(false)]
        public static unsafe void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferiv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferiv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferiv")]
        [CLSCompliant(false)]
        public static unsafe void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill all or part of buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="offset"> 
        /// The offset, in basic machine units into the buffer object's data store at which to start filling.
        /// </param>
        /// <param name="size"> 
        /// The size, in basic machine units of the range of the data store to fill.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferSubData")]
        public static void ClearBufferSubData(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, IntPtr offset, IntPtr size, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill all or part of buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="offset"> 
        /// The offset, in basic machine units into the buffer object's data store at which to start filling.
        /// </param>
        /// <param name="size"> 
        /// The size, in basic machine units of the range of the data store to fill.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferSubData")]
        [CLSCompliant(false)]
        public static void ClearBufferSubData<T6>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, IntPtr offset, IntPtr size, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T6[] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill all or part of buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="offset"> 
        /// The offset, in basic machine units into the buffer object's data store at which to start filling.
        /// </param>
        /// <param name="size"> 
        /// The size, in basic machine units of the range of the data store to fill.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferSubData")]
        [CLSCompliant(false)]
        public static void ClearBufferSubData<T6>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, IntPtr offset, IntPtr size, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T6[,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill all or part of buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="offset"> 
        /// The offset, in basic machine units into the buffer object's data store at which to start filling.
        /// </param>
        /// <param name="size"> 
        /// The size, in basic machine units of the range of the data store to fill.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferSubData")]
        [CLSCompliant(false)]
        public static void ClearBufferSubData<T6>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, IntPtr offset, IntPtr size, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T6[,,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_clear_buffer_object|VERSION_4_3]
        /// Fill all or part of buffer object's data store with a fixed value
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of the global buffer binding targets.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format with which the data will be stored in the buffer object.
        /// </param>
        /// <param name="offset"> 
        /// The offset, in basic machine units into the buffer object's data store at which to start filling.
        /// </param>
        /// <param name="size"> 
        /// The size, in basic machine units of the range of the data store to fill.
        /// </param>
        /// <param name="format"> 
        /// The format of the data in memory addressed by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data in memory addressed by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address of a memory location storing the data to be replicated into the buffer's data store.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glClearBufferSubData")]
        public static void ClearBufferSubData<T6>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, IntPtr offset, IntPtr size, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] ref T6 data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferuiv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferuiv")]
        [CLSCompliant(false)]
        public static void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Clear individual buffers of the currently bound draw framebuffer
        /// </summary>
        /// <param name="buffer"> 
        /// Specify the buffer to clear.
        /// </param>
        /// <param name="drawbuffer"> 
        /// Specify a particular draw buffer to clear.
        /// </param>
        /// <param name="value">[length: buffer] 
        /// For color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a single depth value to clear the buffer to. For stencil buffers, a pointer to a single stencil value to clear the buffer to.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glClearBufferuiv")]
        [CLSCompliant(false)]
        public static unsafe void ClearBuffer(OpenTK.Graphics.OpenGL4.ClearBuffer buffer, Int32 drawbuffer, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify clear values for the color buffers
        /// </summary>
        /// <param name="red"> 
        /// Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0.
        /// </param>
        /// <param name="green"> 
        /// Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0.
        /// </param>
        /// <param name="blue"> 
        /// Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0.
        /// </param>
        /// <param name="alpha"> 
        /// Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glClearColor")]
        public static void ClearColor(Single red, Single green, Single blue, Single alpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify the clear value for the depth buffer
        /// </summary>
        /// <param name="depth"> 
        /// Specifies the depth value used when the depth buffer is cleared. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glClearDepth")]
        public static void ClearDepth(Double depth) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Specify the clear value for the depth buffer
        /// </summary>
        /// <param name="d"> 
        /// Specifies the depth value used when the depth buffer is cleared. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glClearDepthf")]
        public static void ClearDepth(Single d) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify the clear value for the stencil buffer
        /// </summary>
        /// <param name="s"> 
        /// Specifies the index used when the stencil buffer is cleared. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glClearStencil")]
        public static void ClearStencil(Int32 s) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage(Int32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(Int32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(Int32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(Int32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(Int32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T4 data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage(UInt32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(UInt32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(UInt32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(UInt32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,,] data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexImage")]
        [CLSCompliant(false)]
        public static void ClearTexImage<T4>(UInt32 texture, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T4 data)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T10 data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.4 or ARB_clear_texture|VERSION_4_4]
        /// Fills all or part of a texture image with a constant value
        /// </summary>
        /// <param name="texture"> 
        /// The name of an existing texture object containing the image to be cleared.
        /// </param>
        /// <param name="level"> 
        /// The level of texture containing the region to be cleared.
        /// </param>
        /// <param name="xoffset"> 
        /// The coordinate of the left edge of the region to be cleared.
        /// </param>
        /// <param name="yoffset"> 
        /// The coordinate of the lower edge of the region to be cleared.
        /// </param>
        /// <param name="zoffset"> 
        /// The coordinate of the front of the region to be cleared.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be cleared.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be cleared.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be cleared.
        /// </param>
        /// <param name="format"> 
        /// The format of the data whose address in memory is given by data.
        /// </param>
        /// <param name="type"> 
        /// The type of the data whose address in memory is given by data.
        /// </param>
        /// <param name="data">[length: format,type] 
        /// The address in memory of the data to be used to clear the specified region.
        /// </param>
        [AutoGenerated(Category = "ARB_clear_texture|VERSION_4_4", Version = "4.4", EntryPoint = "glClearTexSubImage")]
        [CLSCompliant(false)]
        public static void ClearTexSubImage<T10>(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T10 data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Block and wait for a sync object to become signaled
        /// </summary>
        /// <param name="sync"> 
        /// The sync object whose status to wait on.
        /// </param>
        /// <param name="flags"> 
        /// A bitfield controlling the command flushing behavior. flags may be SyncFlushCommandsBit.
        /// </param>
        /// <param name="timeout"> 
        /// The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glClientWaitSync")]
        [CLSCompliant(false)]
        public static OpenTK.Graphics.OpenGL4.WaitSyncStatus ClientWaitSync(IntPtr sync, OpenTK.Graphics.OpenGL4.ClientWaitSyncFlags flags, Int64 timeout) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Block and wait for a sync object to become signaled
        /// </summary>
        /// <param name="sync"> 
        /// The sync object whose status to wait on.
        /// </param>
        /// <param name="flags"> 
        /// A bitfield controlling the command flushing behavior. flags may be SyncFlushCommandsBit.
        /// </param>
        /// <param name="timeout"> 
        /// The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glClientWaitSync")]
        [CLSCompliant(false)]
        public static OpenTK.Graphics.OpenGL4.WaitSyncStatus ClientWaitSync(IntPtr sync, OpenTK.Graphics.OpenGL4.ClientWaitSyncFlags flags, UInt64 timeout) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Enable and disable writing of frame buffer color components
        /// </summary>
        /// <param name="red"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="green"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="blue"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="alpha"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glColorMask")]
        public static void ColorMask(bool red, bool green, bool blue, bool alpha) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Enable and disable writing of frame buffer color components
        /// </summary>
        /// <param name="index"> 
        /// For glColorMaski, specifies the index of the draw buffer whose color mask to set.
        /// </param>
        /// <param name="r"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="g"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="b"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="a"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glColorMaski")]
        [CLSCompliant(false)]
        public static void ColorMask(Int32 index, bool r, bool g, bool b, bool a) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Enable and disable writing of frame buffer color components
        /// </summary>
        /// <param name="index"> 
        /// For glColorMaski, specifies the index of the draw buffer whose color mask to set.
        /// </param>
        /// <param name="r"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="g"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="b"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        /// <param name="a"> 
        /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all True, indicating that the color components are written.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glColorMaski")]
        [CLSCompliant(false)]
        public static void ColorMask(UInt32 index, bool r, bool g, bool b, bool a) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP3ui")]
        [CLSCompliant(false)]
        public static void ColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP3ui")]
        [CLSCompliant(false)]
        public static void ColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void ColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void ColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP4ui")]
        [CLSCompliant(false)]
        public static void ColorP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP4ui")]
        [CLSCompliant(false)]
        public static void ColorP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void ColorP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glColorP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void ColorP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* color) { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="count"> 
        /// The number of table entries to replace.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="data">[length: format,type,count] 
        /// Pointer to a one-dimensional array of pixel data that is processed to replace the specified region of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorSubTable")]
        public static void ColorSubTable(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 count, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="count"> 
        /// The number of table entries to replace.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="data">[length: format,type,count] 
        /// Pointer to a one-dimensional array of pixel data that is processed to replace the specified region of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorSubTable")]
        [CLSCompliant(false)]
        public static void ColorSubTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 count, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[] data)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="count"> 
        /// The number of table entries to replace.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="data">[length: format,type,count] 
        /// Pointer to a one-dimensional array of pixel data that is processed to replace the specified region of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorSubTable")]
        [CLSCompliant(false)]
        public static void ColorSubTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 count, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,] data)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="count"> 
        /// The number of table entries to replace.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="data">[length: format,type,count] 
        /// Pointer to a one-dimensional array of pixel data that is processed to replace the specified region of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorSubTable")]
        [CLSCompliant(false)]
        public static void ColorSubTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 count, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,,] data)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="count"> 
        /// The number of table entries to replace.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="data">[length: format,type,count] 
        /// Pointer to a one-dimensional array of pixel data that is processed to replace the specified region of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorSubTable")]
        public static void ColorSubTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 count, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T5 data)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the color table. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, and Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the color lookup table specified by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="table">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTable")]
        public static void ColorTable(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr table) { throw new NotImplementedException(); }

        /// <summary>
        /// Define a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the color table. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, and Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the color lookup table specified by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="table">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTable")]
        [CLSCompliant(false)]
        public static void ColorTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[] table)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the color table. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, and Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the color lookup table specified by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="table">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTable")]
        [CLSCompliant(false)]
        public static void ColorTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,] table)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the color table. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, and Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the color lookup table specified by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="table">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTable")]
        [CLSCompliant(false)]
        public static void ColorTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,,] table)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the color table. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, and Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the color lookup table specified by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. The allowable values are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="table">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTable")]
        public static void ColorTable<T5>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T5 table)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameterfv")]
        [CLSCompliant(false)]
        public static void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameterfv")]
        [CLSCompliant(false)]
        public static void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, ref Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameteriv")]
        [CLSCompliant(false)]
        public static void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameteriv")]
        [CLSCompliant(false)]
        public static void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, ref Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a texture color lookup table parameter. Must be one of ColorTableScale or ColorTableBias.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glColorTableParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void ColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.ColorTableParameterPName pname, Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Compiles a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be compiled.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glCompileShader")]
        [CLSCompliant(false)]
        public static void CompileShader(Int32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Compiles a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be compiled.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glCompileShader")]
        [CLSCompliant(false)]
        public static void CompileShader(UInt32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage1D")]
        public static void CompressedTexImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T6[] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T6[,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T6[,,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage1D")]
        public static void CompressedTexImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] ref T6 data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage2D")]
        public static void CompressedTexImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage2D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T7[] data)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage2D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T7[,] data)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage2D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T7[,,] data)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage2D")]
        public static void CompressedTexImage2D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] ref T7 data)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage3D")]
        public static void CompressedTexImage3D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage3D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T8[] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage3D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T8[,] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexImage3D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] T8[,,] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture image in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexImage3D")]
        public static void CompressedTexImage3D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, [InAttribute, OutAttribute] ref T8 data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage1D")]
        public static void CompressedTexSubImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T6[] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T6[,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage1D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T6[,,] data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a one-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage1D")]
        public static void CompressedTexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] ref T6 data)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage2D")]
        public static void CompressedTexSubImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T8[] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T8[,] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage2D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T8[,,] data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a two-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage2D")]
        public static void CompressedTexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] ref T8 data)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage3D")]
        public static void CompressedTexSubImage3D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T10[] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T10[,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage3D")]
        [CLSCompliant(false)]
        public static void CompressedTexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] T10[,,] data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify a three-dimensional texture subimage in a compressed format
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the compressed image data stored at address data.
        /// </param>
        /// <param name="imageSize"> 
        /// Specifies the number of unsigned bytes of image data starting at the address specified by data.
        /// </param>
        /// <param name="data">[length: imageSize] 
        /// Specifies a pointer to the compressed image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glCompressedTexSubImage3D")]
        public static void CompressedTexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, Int32 imageSize, [InAttribute, OutAttribute] ref T10 data)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Alpha, Luminance, LuminanceAlpha, Intensity, Rgb, and Rgba.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter1D")]
        public static void ConvolutionFilter1D(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr image) { throw new NotImplementedException(); }

        /// <summary>
        /// Define a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Alpha, Luminance, LuminanceAlpha, Intensity, Rgb, and Rgba.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter1D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter1D<T5>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[] image)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Alpha, Luminance, LuminanceAlpha, Intensity, Rgb, and Rgba.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter1D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter1D<T5>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,] image)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Alpha, Luminance, LuminanceAlpha, Intensity, Rgb, and Rgba.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter1D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter1D<T5>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T5[,,] image)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Alpha, Luminance, LuminanceAlpha, Intensity, Rgb, and Rgba.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter1D")]
        public static void ConvolutionFilter1D<T5>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T5 image)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width,height] 
        /// Pointer to a two-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter2D")]
        public static void ConvolutionFilter2D(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr image) { throw new NotImplementedException(); }

        /// <summary>
        /// Define a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width,height] 
        /// Pointer to a two-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter2D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter2D<T6>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[] image)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width,height] 
        /// Pointer to a two-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter2D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter2D<T6>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,] image)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width,height] 
        /// Pointer to a two-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter2D")]
        [CLSCompliant(false)]
        public static void ConvolutionFilter2D<T6>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,,] image)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array referenced by data.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array referenced by data.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in data. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in data. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: format,type,width,height] 
        /// Pointer to a two-dimensional array of pixel data that is processed to build the convolution filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionFilter2D")]
        public static void ConvolutionFilter2D<T6>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T6 image)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params"> 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameterf")]
        public static void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameterfv")]
        [CLSCompliant(false)]
        public static void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params"> 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameteri")]
        public static void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameteriv")]
        [CLSCompliant(false)]
        public static void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Set convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The target for the convolution parameter. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be set. Must be ConvolutionBorderMode.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The parameter value. Must be one of Reduce, ConstantBorder, ReplicateBorder.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glConvolutionParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void ConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.ConvolutionParameter pname, Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_copy_buffer|VERSION_3_1]
        /// Copy part of the data store of a buffer object to the data store of another buffer object
        /// </summary>
        /// <param name="readTarget"> 
        /// Specifies the target from whose data store data should be read.
        /// </param>
        /// <param name="writeTarget"> 
        /// Specifies the target to whose data store data should be written.
        /// </param>
        /// <param name="readOffset"> 
        /// Specifies the offset, in basic machine units, within the data store of readtarget from which data should be read.
        /// </param>
        /// <param name="writeOffset"> 
        /// Specifies the offset, in basic machine units, within the data store of writetarget to which data should be written.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size, in basic machine units, of the data to be copied from readtarget to writetarget.
        /// </param>
        [AutoGenerated(Category = "ARB_copy_buffer|VERSION_3_1", Version = "3.1", EntryPoint = "glCopyBufferSubData")]
        public static void CopyBufferSubData(OpenTK.Graphics.OpenGL4.BufferTarget readTarget, OpenTK.Graphics.OpenGL4.BufferTarget writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size) { throw new NotImplementedException(); }

        /// <summary>
        /// Respecify a portion of a color table
        /// </summary>
        /// <param name="target"> 
        /// Must be one of ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="start"> 
        /// The starting index of the portion of the color table to be replaced.
        /// </param>
        /// <param name="x"> 
        /// The window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// The window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// The number of table entries to replace.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glCopyColorSubTable")]
        public static void CopyColorSubTable(OpenTK.Graphics.OpenGL4.ColorTableTarget target, Int32 start, Int32 x, Int32 y, Int32 width) { throw new NotImplementedException(); }

        /// <summary>
        /// Copy pixels into a color table
        /// </summary>
        /// <param name="target"> 
        /// The color table target. Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal storage format of the texture image. Must be one of the following symbolic constants: Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="x"> 
        /// The x coordinate of the lower-left corner of the pixel rectangle to be transferred to the color table.
        /// </param>
        /// <param name="y"> 
        /// The y coordinate of the lower-left corner of the pixel rectangle to be transferred to the color table.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel rectangle.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glCopyColorTable")]
        public static void CopyColorTable(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 x, Int32 y, Int32 width) { throw new NotImplementedException(); }

        /// <summary>
        /// Copy pixels into a one-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution1D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="x"> 
        /// The window space coordinates of the lower-left coordinate of the pixel array to copy.
        /// </param>
        /// <param name="y"> 
        /// The window space coordinates of the lower-left coordinate of the pixel array to copy.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array to copy.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glCopyConvolutionFilter1D")]
        public static void CopyConvolutionFilter1D(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 x, Int32 y, Int32 width) { throw new NotImplementedException(); }

        /// <summary>
        /// Copy pixels into a two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Convolution2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="x"> 
        /// The window space coordinates of the lower-left coordinate of the pixel array to copy.
        /// </param>
        /// <param name="y"> 
        /// The window space coordinates of the lower-left coordinate of the pixel array to copy.
        /// </param>
        /// <param name="width"> 
        /// The width of the pixel array to copy.
        /// </param>
        /// <param name="height"> 
        /// The height of the pixel array to copy.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glCopyConvolutionFilter2D")]
        public static void CopyConvolutionFilter2D(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_copy_image|VERSION_4_3]
        /// Perform a raw data copy between two images
        /// </summary>
        /// <param name="srcName"> 
        /// The name of a texture or renderbuffer object from which to copy.
        /// </param>
        /// <param name="srcTarget"> 
        /// The target representing the namespace of the source name srcName.
        /// </param>
        /// <param name="srcLevel"> 
        /// The mipmap level to read from the source.
        /// </param>
        /// <param name="srcX"> 
        /// The X coordinate of the left edge of the souce region to copy.
        /// </param>
        /// <param name="srcY"> 
        /// The Y coordinate of the top edge of the souce region to copy.
        /// </param>
        /// <param name="srcZ"> 
        /// The Z coordinate of the near edge of the souce region to copy.
        /// </param>
        /// <param name="dstName"> 
        /// The name of a texture or renderbuffer object to which to copy.
        /// </param>
        /// <param name="dstTarget"> 
        /// The target representing the namespace of the destination name dstName.
        /// </param>
        /// <param name="dstLevel"> 
        /// The X coordinate of the left edge of the destination region.
        /// </param>
        /// <param name="dstX"> 
        /// The X coordinate of the left edge of the destination region.
        /// </param>
        /// <param name="dstY"> 
        /// The Y coordinate of the top edge of the destination region.
        /// </param>
        /// <param name="dstZ"> 
        /// The Z coordinate of the near edge of the destination region.
        /// </param>
        /// <param name="srcWidth"> 
        /// The width of the region to be copied.
        /// </param>
        /// <param name="srcHeight"> 
        /// The height of the region to be copied.
        /// </param>
        /// <param name="srcDepth"> 
        /// The depth of the region to be copied.
        /// </param>
        [AutoGenerated(Category = "ARB_copy_image|VERSION_4_3", Version = "4.3", EntryPoint = "glCopyImageSubData")]
        [CLSCompliant(false)]
        public static void CopyImageSubData(Int32 srcName, OpenTK.Graphics.OpenGL4.ImageTarget srcTarget, Int32 srcLevel, Int32 srcX, Int32 srcY, Int32 srcZ, Int32 dstName, OpenTK.Graphics.OpenGL4.ImageTarget dstTarget, Int32 dstLevel, Int32 dstX, Int32 dstY, Int32 dstZ, Int32 srcWidth, Int32 srcHeight, Int32 srcDepth) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_copy_image|VERSION_4_3]
        /// Perform a raw data copy between two images
        /// </summary>
        /// <param name="srcName"> 
        /// The name of a texture or renderbuffer object from which to copy.
        /// </param>
        /// <param name="srcTarget"> 
        /// The target representing the namespace of the source name srcName.
        /// </param>
        /// <param name="srcLevel"> 
        /// The mipmap level to read from the source.
        /// </param>
        /// <param name="srcX"> 
        /// The X coordinate of the left edge of the souce region to copy.
        /// </param>
        /// <param name="srcY"> 
        /// The Y coordinate of the top edge of the souce region to copy.
        /// </param>
        /// <param name="srcZ"> 
        /// The Z coordinate of the near edge of the souce region to copy.
        /// </param>
        /// <param name="dstName"> 
        /// The name of a texture or renderbuffer object to which to copy.
        /// </param>
        /// <param name="dstTarget"> 
        /// The target representing the namespace of the destination name dstName.
        /// </param>
        /// <param name="dstLevel"> 
        /// The X coordinate of the left edge of the destination region.
        /// </param>
        /// <param name="dstX"> 
        /// The X coordinate of the left edge of the destination region.
        /// </param>
        /// <param name="dstY"> 
        /// The Y coordinate of the top edge of the destination region.
        /// </param>
        /// <param name="dstZ"> 
        /// The Z coordinate of the near edge of the destination region.
        /// </param>
        /// <param name="srcWidth"> 
        /// The width of the region to be copied.
        /// </param>
        /// <param name="srcHeight"> 
        /// The height of the region to be copied.
        /// </param>
        /// <param name="srcDepth"> 
        /// The depth of the region to be copied.
        /// </param>
        [AutoGenerated(Category = "ARB_copy_image|VERSION_4_3", Version = "4.3", EntryPoint = "glCopyImageSubData")]
        [CLSCompliant(false)]
        public static void CopyImageSubData(UInt32 srcName, OpenTK.Graphics.OpenGL4.ImageTarget srcTarget, Int32 srcLevel, Int32 srcX, Int32 srcY, Int32 srcZ, UInt32 dstName, OpenTK.Graphics.OpenGL4.ImageTarget dstTarget, Int32 dstLevel, Int32 dstX, Int32 dstY, Int32 dstZ, Int32 srcWidth, Int32 srcHeight, Int32 srcDepth) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Copy pixels into a 1D texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the texture. Must be one of the following symbolic constants: CompressedRed, CompressedRg, CompressedRgb, CompressedRgba. CompressedSrgb, CompressedSrgbAlpha. DepthComponent, DepthComponent16, DepthComponent24, DepthComponent32, StencilIndex8, Red, Rg, Rgb, R3G3B2, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, Rgba16, Srgb, Srgb8, SrgbAlpha, or Srgb8Alpha8.
        /// </param>
        /// <param name="x"> 
        /// Specify the window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. The height of the texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// Must be 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glCopyTexImage1D")]
        public static void CopyTexImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 x, Int32 y, Int32 width, Int32 border) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Copy pixels into a 2D texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, or TextureCubeMapNegativeZ.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the texture. Must be one of the following symbolic constants: CompressedRed, CompressedRg, CompressedRgb, CompressedRgba. CompressedSrgb, CompressedSrgbAlpha. DepthComponent, DepthComponent16, DepthComponent24, DepthComponent32, StencilIndex8, Red, Rg, Rgb, R3G3B2, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, Rgba16, Srgb, Srgb8, SrgbAlpha, or Srgb8Alpha8.
        /// </param>
        /// <param name="x"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image.
        /// </param>
        /// <param name="border"> 
        /// Must be 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glCopyTexImage2D")]
        public static void CopyTexImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 x, Int32 y, Int32 width, Int32 height, Int32 border) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Copy a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies the texel offset within the texture array.
        /// </param>
        /// <param name="x"> 
        /// Specify the window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the left corner of the row of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glCopyTexSubImage1D")]
        public static void CopyTexSubImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 x, Int32 y, Int32 width) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Copy a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="x"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glCopyTexSubImage2D")]
        public static void CopyTexSubImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Copy a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="x"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glCopyTexSubImage3D")]
        public static void CopyTexSubImage3D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Creates a program object
        /// </summary>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glCreateProgram")]
        public static Int32 CreateProgram() { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Creates a shader object
        /// </summary>
        /// <param name="type"> 
        /// Specifies the type of shader to be created. Must be one of ComputeShader, VertexShader, TessControlShader, TessEvaluationShader, GeometryShader, or FragmentShader.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glCreateShader")]
        public static Int32 CreateShader(OpenTK.Graphics.OpenGL4.ShaderType type) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Create a stand-alone program from an array of null-terminated source code strings
        /// </summary>
        /// <param name="type"> 
        /// Specifies the type of shader to create.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of source code strings in the array strings.
        /// </param>
        /// <param name="strings">[length: count] 
        /// Specifies the address of an array of pointers to source code strings from which to create the program object.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glCreateShaderProgramv")]
        public static Int32 CreateShaderProgram(OpenTK.Graphics.OpenGL4.ShaderType type, Int32 count, String[] strings) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify whether front- or back-facing facets can be culled
        /// </summary>
        /// <param name="mode"> 
        /// Specifies whether front- or back-facing facets are candidates for culling. Symbolic constants Front, Back, and FrontAndBack are accepted. The initial value is Back.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glCullFace")]
        public static void CullFace(OpenTK.Graphics.OpenGL4.CullFaceMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Specify a callback to receive debugging messages from the GL
        /// </summary>
        /// <param name="callback"> 
        /// The address of a callback function that will be called when a debug message is generated.
        /// </param>
        /// <param name="userParam"> 
        /// A user supplied pointer that will be passed on each invocation of callback.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageCallback")]
        public static void DebugMessageCallback(DebugProc callback, IntPtr userParam) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Specify a callback to receive debugging messages from the GL
        /// </summary>
        /// <param name="callback"> 
        /// The address of a callback function that will be called when a debug message is generated.
        /// </param>
        /// <param name="userParam"> 
        /// A user supplied pointer that will be passed on each invocation of callback.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageCallback")]
        [CLSCompliant(false)]
        public static void DebugMessageCallback<T1>(DebugProc callback, [InAttribute, OutAttribute] T1[] userParam)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Specify a callback to receive debugging messages from the GL
        /// </summary>
        /// <param name="callback"> 
        /// The address of a callback function that will be called when a debug message is generated.
        /// </param>
        /// <param name="userParam"> 
        /// A user supplied pointer that will be passed on each invocation of callback.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageCallback")]
        [CLSCompliant(false)]
        public static void DebugMessageCallback<T1>(DebugProc callback, [InAttribute, OutAttribute] T1[,] userParam)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Specify a callback to receive debugging messages from the GL
        /// </summary>
        /// <param name="callback"> 
        /// The address of a callback function that will be called when a debug message is generated.
        /// </param>
        /// <param name="userParam"> 
        /// A user supplied pointer that will be passed on each invocation of callback.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageCallback")]
        [CLSCompliant(false)]
        public static void DebugMessageCallback<T1>(DebugProc callback, [InAttribute, OutAttribute] T1[,,] userParam)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Specify a callback to receive debugging messages from the GL
        /// </summary>
        /// <param name="callback"> 
        /// The address of a callback function that will be called when a debug message is generated.
        /// </param>
        /// <param name="userParam"> 
        /// A user supplied pointer that will be passed on each invocation of callback.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageCallback")]
        public static void DebugMessageCallback<T1>(DebugProc callback, [InAttribute, OutAttribute] ref T1 userParam)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, Int32[] ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, ref Int32 ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, Int32* ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, UInt32[] ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, ref UInt32 ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Control the reporting of debug messages in a debug context
        /// </summary>
        /// <param name="source"> 
        /// The source of debug messages to enable or disable.
        /// </param>
        /// <param name="type"> 
        /// The type of debug messages to enable or disable.
        /// </param>
        /// <param name="severity"> 
        /// The severity of debug messages to enable or disable.
        /// </param>
        /// <param name="count"> 
        /// The length of the array ids.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
        /// </param>
        /// <param name="enabled"> 
        /// A Boolean flag determining whether the selected messages should be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageControl")]
        [CLSCompliant(false)]
        public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.DebugSourceControl source, OpenTK.Graphics.OpenGL4.DebugTypeControl type, OpenTK.Graphics.OpenGL4.DebugSeverityControl severity, Int32 count, UInt32* ids, bool enabled) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Inject an application-supplied message into the debug message queue
        /// </summary>
        /// <param name="source"> 
        /// The source of the debug message to insert.
        /// </param>
        /// <param name="type"> 
        /// The type of the debug message insert.
        /// </param>
        /// <param name="id"> 
        /// The user-supplied identifier of the message to insert.
        /// </param>
        /// <param name="severity"> 
        /// The severity of the debug messages to insert.
        /// </param>
        /// <param name="length"> 
        /// The length string contained in the character array whose address is given by message.
        /// </param>
        /// <param name="buf">[length: buf,length] 
        /// The address of a character array containing the message to insert.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageInsert")]
        [CLSCompliant(false)]
        public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.DebugSourceExternal source, OpenTK.Graphics.OpenGL4.DebugType type, Int32 id, OpenTK.Graphics.OpenGL4.DebugSeverity severity, Int32 length, String buf) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Inject an application-supplied message into the debug message queue
        /// </summary>
        /// <param name="source"> 
        /// The source of the debug message to insert.
        /// </param>
        /// <param name="type"> 
        /// The type of the debug message insert.
        /// </param>
        /// <param name="id"> 
        /// The user-supplied identifier of the message to insert.
        /// </param>
        /// <param name="severity"> 
        /// The severity of the debug messages to insert.
        /// </param>
        /// <param name="length"> 
        /// The length string contained in the character array whose address is given by message.
        /// </param>
        /// <param name="buf">[length: buf,length] 
        /// The address of a character array containing the message to insert.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glDebugMessageInsert")]
        [CLSCompliant(false)]
        public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.DebugSourceExternal source, OpenTK.Graphics.OpenGL4.DebugType type, UInt32 id, OpenTK.Graphics.OpenGL4.DebugSeverity severity, Int32 length, String buf) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffer(Int32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffer(UInt32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffers(Int32 n, Int32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffers(Int32 n, ref Int32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteBuffers(Int32 n, Int32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffers(Int32 n, UInt32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static void DeleteBuffers(Int32 n, ref UInt32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named buffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer objects to be deleted.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array of buffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteBuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteBuffers(Int32 n, UInt32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffer(Int32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffer(UInt32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffers(Int32 n, Int32[] framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffers(Int32 n, ref Int32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteFramebuffers(Int32 n, Int32* framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffers(Int32 n, UInt32[] framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static void DeleteFramebuffers(Int32 n, ref UInt32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete framebuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer objects to be deleted.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// A pointer to an array containing n framebuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteFramebuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteFramebuffers(Int32 n, UInt32* framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Deletes a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDeleteProgram")]
        [CLSCompliant(false)]
        public static void DeleteProgram(Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Deletes a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDeleteProgram")]
        [CLSCompliant(false)]
        public static void DeleteProgram(UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipeline(Int32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipeline(UInt32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipelines(Int32 n, Int32[] pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipelines(Int32 n, ref Int32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static unsafe void DeleteProgramPipelines(Int32 n, Int32* pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipelines(Int32 n, UInt32[] pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static void DeleteProgramPipelines(Int32 n, ref UInt32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Delete program pipeline objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline objects to delete.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of names of program pipeline objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glDeleteProgramPipelines")]
        [CLSCompliant(false)]
        public static unsafe void DeleteProgramPipelines(Int32 n, UInt32* pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQuery(Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQuery(UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQueries(Int32 n, Int32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQueries(Int32 n, ref Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static unsafe void DeleteQueries(Int32 n, Int32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQueries(Int32 n, UInt32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static void DeleteQueries(Int32 n, ref UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Delete named query objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query objects to be deleted.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of query objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glDeleteQueries")]
        [CLSCompliant(false)]
        public static unsafe void DeleteQueries(Int32 n, UInt32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffer(Int32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffer(UInt32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffers(Int32 n, Int32[] renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffers(Int32 n, ref Int32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteRenderbuffers(Int32 n, Int32* renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffers(Int32 n, UInt32[] renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static void DeleteRenderbuffers(Int32 n, ref UInt32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Delete renderbuffer objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer objects to be deleted.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// A pointer to an array containing n renderbuffer objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteRenderbuffers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteRenderbuffers(Int32 n, UInt32* renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSampler(Int32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSampler(UInt32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSamplers(Int32 count, Int32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSamplers(Int32 count, ref Int32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteSamplers(Int32 count, Int32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSamplers(Int32 count, UInt32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static void DeleteSamplers(Int32 count, ref UInt32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Delete named sampler objects
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler objects to be deleted.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array of sampler objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glDeleteSamplers")]
        [CLSCompliant(false)]
        public static unsafe void DeleteSamplers(Int32 count, UInt32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Deletes a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDeleteShader")]
        [CLSCompliant(false)]
        public static void DeleteShader(Int32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Deletes a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDeleteShader")]
        [CLSCompliant(false)]
        public static void DeleteShader(UInt32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Delete a sync object
        /// </summary>
        /// <param name="sync"> 
        /// The sync object to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glDeleteSync")]
        public static void DeleteSync(IntPtr sync) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTexture(Int32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTexture(UInt32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTextures(Int32 n, Int32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTextures(Int32 n, ref Int32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static unsafe void DeleteTextures(Int32 n, Int32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTextures(Int32 n, UInt32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static void DeleteTextures(Int32 n, ref UInt32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Delete named textures
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of textures to be deleted.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array of textures to be deleted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDeleteTextures")]
        [CLSCompliant(false)]
        public static unsafe void DeleteTextures(Int32 n, UInt32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedback(Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedback(UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedbacks(Int32 n, Int32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedbacks(Int32 n, ref Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static unsafe void DeleteTransformFeedbacks(Int32 n, Int32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedbacks(Int32 n, UInt32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void DeleteTransformFeedbacks(Int32 n, ref UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Delete transform feedback objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback objects to delete.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of names of transform feedback objects to delete.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDeleteTransformFeedbacks")]
        [CLSCompliant(false)]
        public static unsafe void DeleteTransformFeedbacks(Int32 n, UInt32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArray(Int32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArray(UInt32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArrays(Int32 n, Int32[] arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArrays(Int32 n, ref Int32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static unsafe void DeleteVertexArrays(Int32 n, Int32* arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArrays(Int32 n, UInt32[] arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static void DeleteVertexArrays(Int32 n, ref UInt32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Delete vertex array objects
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array objects to be deleted.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies the address of an array containing the n names of the objects to be deleted.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glDeleteVertexArrays")]
        [CLSCompliant(false)]
        public static unsafe void DeleteVertexArrays(Int32 n, UInt32* arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify the value used for depth buffer comparisons
        /// </summary>
        /// <param name="func"> 
        /// Specifies the depth comparison function. Symbolic constants Never, Less, Equal, Lequal, Greater, Notequal, Gequal, and Always are accepted. The initial value is Less.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glDepthFunc")]
        public static void DepthFunc(OpenTK.Graphics.OpenGL4.DepthFunction func) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Enable or disable writing into the depth buffer
        /// </summary>
        /// <param name="flag"> 
        /// Specifies whether the depth buffer is enabled for writing. If flag is False, depth buffer writing is disabled. Otherwise, it is enabled. Initially, depth buffer writing is enabled.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glDepthMask")]
        public static void DepthMask(bool flag) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates
        /// </summary>
        /// <param name="near"> 
        /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0.
        /// </param>
        /// <param name="far"> 
        /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glDepthRange")]
        public static void DepthRange(Double near, Double far) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static void DepthRangeArray(Int32 first, Int32 count, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static void DepthRangeArray(Int32 first, Int32 count, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static unsafe void DepthRangeArray(Int32 first, Int32 count, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static void DepthRangeArray(UInt32 first, Int32 count, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static void DepthRangeArray(UInt32 first, Int32 count, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified set of viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose depth range to update.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of viewports whose depth range to update.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the near and far values for the depth range of each modified viewport.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeArrayv")]
        [CLSCompliant(false)]
        public static unsafe void DepthRangeArray(UInt32 first, Int32 count, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates
        /// </summary>
        /// <param name="n"> 
        /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0.
        /// </param>
        /// <param name="f"> 
        /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangef")]
        public static void DepthRange(Single n, Single f) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose depth range to update.
        /// </param>
        /// <param name="n"> 
        /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0.
        /// </param>
        /// <param name="f"> 
        /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeIndexed")]
        [CLSCompliant(false)]
        public static void DepthRangeIndexed(Int32 index, Double n, Double f) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Specify mapping of depth values from normalized device coordinates to window coordinates for a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose depth range to update.
        /// </param>
        /// <param name="n"> 
        /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0.
        /// </param>
        /// <param name="f"> 
        /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glDepthRangeIndexed")]
        [CLSCompliant(false)]
        public static void DepthRangeIndexed(UInt32 index, Double n, Double f) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Detaches a shader object from a program object to which it is attached
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object from which to detach the shader object.
        /// </param>
        /// <param name="shader"> 
        /// Specifies the shader object to be detached.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDetachShader")]
        [CLSCompliant(false)]
        public static void DetachShader(Int32 program, Int32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Detaches a shader object from a program object to which it is attached
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object from which to detach the shader object.
        /// </param>
        /// <param name="shader"> 
        /// Specifies the shader object to be detached.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDetachShader")]
        [CLSCompliant(false)]
        public static void DetachShader(UInt32 program, UInt32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="cap"></param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glDisable")]
        public static void Disable(OpenTK.Graphics.OpenGL4.EnableCap cap) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glDisablei")]
        [CLSCompliant(false)]
        public static void Disable(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glDisablei")]
        [CLSCompliant(false)]
        public static void Disable(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDisableVertexAttribArray")]
        [CLSCompliant(false)]
        public static void DisableVertexAttribArray(Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDisableVertexAttribArray")]
        [CLSCompliant(false)]
        public static void DisableVertexAttribArray(UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_compute_shader|VERSION_4_3]
        /// Launch one or more compute work groups
        /// </summary>
        /// <param name="num_groups_x"> 
        /// The number of work groups to be launched in the X dimension.
        /// </param>
        /// <param name="num_groups_y"> 
        /// The number of work groups to be launched in the Y dimension.
        /// </param>
        /// <param name="num_groups_z"> 
        /// The number of work groups to be launched in the Z dimension.
        /// </param>
        [AutoGenerated(Category = "ARB_compute_shader|VERSION_4_3", Version = "4.3", EntryPoint = "glDispatchCompute")]
        [CLSCompliant(false)]
        public static void DispatchCompute(Int32 num_groups_x, Int32 num_groups_y, Int32 num_groups_z) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_compute_shader|VERSION_4_3]
        /// Launch one or more compute work groups
        /// </summary>
        /// <param name="num_groups_x"> 
        /// The number of work groups to be launched in the X dimension.
        /// </param>
        /// <param name="num_groups_y"> 
        /// The number of work groups to be launched in the Y dimension.
        /// </param>
        /// <param name="num_groups_z"> 
        /// The number of work groups to be launched in the Z dimension.
        /// </param>
        [AutoGenerated(Category = "ARB_compute_shader|VERSION_4_3", Version = "4.3", EntryPoint = "glDispatchCompute")]
        [CLSCompliant(false)]
        public static void DispatchCompute(UInt32 num_groups_x, UInt32 num_groups_y, UInt32 num_groups_z) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_compute_shader|VERSION_4_3]
        /// Launch one or more compute work groups using parameters stored in a buffer
        /// </summary>
        /// <param name="indirect"> 
        /// The offset into the buffer object currently bound to the DispatchIndirectBuffer buffer target at which the dispatch parameters are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_compute_shader|VERSION_4_3", Version = "4.3", EntryPoint = "glDispatchComputeIndirect")]
        public static void DispatchComputeIndirect(IntPtr indirect) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first"> 
        /// Specifies the starting index in the enabled arrays.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawArrays")]
        public static void DrawArrays(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 first, Int32 count) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawArraysIndirect")]
        public static void DrawArraysIndirect(OpenTK.Graphics.OpenGL4.PrimitiveType mode, IntPtr indirect) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void DrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[] indirect)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void DrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[,] indirect)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void DrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[,,] indirect)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawArraysIndirect")]
        public static void DrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] ref T1 indirect)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a range of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, TrianglesLinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first"> 
        /// Specifies the starting index in the enabled arrays.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of indices to be rendered.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawArraysInstanced")]
        public static void DrawArraysInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 first, Int32 count, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a range of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, TrianglesLinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first"> 
        /// Specifies the starting index in the enabled arrays.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of indices to be rendered.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawArraysInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawArraysInstancedBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 first, Int32 count, Int32 instancecount, Int32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a range of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, TrianglesLinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first"> 
        /// Specifies the starting index in the enabled arrays.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of indices to be rendered.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawArraysInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawArraysInstancedBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 first, Int32 count, Int32 instancecount, UInt32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify which color buffers are to be drawn into
        /// </summary>
        /// <param name="mode"> 
        /// Specifies up to four color buffers to be drawn into. Symbolic constants None, FrontLeft, FrontRight, BackLeft, BackRight, Front, Back, Left, Right, and FrontAndBack are accepted. The initial value is Front for single-buffered contexts, and Back for double-buffered contexts.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glDrawBuffer")]
        public static void DrawBuffer(OpenTK.Graphics.OpenGL4.DrawBufferMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies a list of color buffers to be drawn into
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffers in bufs.
        /// </param>
        /// <param name="bufs">[length: n] 
        /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDrawBuffers")]
        [CLSCompliant(false)]
        public static void DrawBuffers(Int32 n, OpenTK.Graphics.OpenGL4.DrawBuffersEnum[] bufs) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies a list of color buffers to be drawn into
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffers in bufs.
        /// </param>
        /// <param name="bufs">[length: n] 
        /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDrawBuffers")]
        [CLSCompliant(false)]
        public static void DrawBuffers(Int32 n, ref OpenTK.Graphics.OpenGL4.DrawBuffersEnum bufs) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies a list of color buffers to be drawn into
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffers in bufs.
        /// </param>
        /// <param name="bufs">[length: n] 
        /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glDrawBuffers")]
        [CLSCompliant(false)]
        public static unsafe void DrawBuffers(Int32 n, OpenTK.Graphics.OpenGL4.DrawBuffersEnum* bufs) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
        public static void DrawElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
        [CLSCompliant(false)]
        public static void DrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
        [CLSCompliant(false)]
        public static void DrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
        [CLSCompliant(false)]
        public static void DrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
        public static void DrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsBaseVertex")]
        public static void DrawElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsBaseVertex")]
        public static void DrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawElementsIndirect")]
        public static void DrawElementsIndirect(OpenTK.Graphics.OpenGL4.PrimitiveType mode, OpenTK.Graphics.OpenGL4.All type, IntPtr indirect) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void DrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[] indirect)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void DrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[,] indirect)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void DrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[,,] indirect)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_draw_indirect|VERSION_4_0]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect"> 
        /// Specifies the address of a structure containing the draw parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_indirect|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawElementsIndirect")]
        public static void DrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] ref T2 indirect)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a set of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawElementsInstanced")]
        public static void DrawElementsInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a set of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawElementsInstanced")]
        [CLSCompliant(false)]
        public static void DrawElementsInstanced<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a set of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawElementsInstanced")]
        [CLSCompliant(false)]
        public static void DrawElementsInstanced<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a set of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawElementsInstanced")]
        [CLSCompliant(false)]
        public static void DrawElementsInstanced<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Draw multiple instances of a set of elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawElementsInstanced")]
        public static void DrawElementsInstanced<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount, Int32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount, UInt32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Draw multiple instances of a set of elements with offset applied to instanced attributes
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the specified range of indices to be rendered.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsInstancedBaseVertex")]
        public static void DrawElementsInstancedBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount, Int32 basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsInstancedBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsInstancedBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsInstancedBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawElementsInstancedBaseVertex")]
        public static void DrawElementsInstancedBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount, Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount, Int32 basevertex, Int32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount, Int32 basevertex, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount, Int32 basevertex, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount, Int32 basevertex, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount, Int32 basevertex, Int32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_base_instance|VERSION_4_2]
        /// Render multiple instances of a set of primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the indexed geometry that should be drawn.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        /// <param name="baseinstance"> 
        /// Specifies the base instance for use in fetching instanced vertex attributes.
        /// </param>
        [AutoGenerated(Category = "ARB_base_instance|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawElementsInstancedBaseVertexBaseInstance")]
        [CLSCompliant(false)]
        public static void DrawElementsInstancedBaseVertexBaseInstance<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,,] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T5 indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,,] indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Render primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glDrawRangeElements")]
        [CLSCompliant(false)]
        public static void DrawRangeElements<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T5 indices)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,,] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 start, Int32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T5 indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T5[,,] indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render primitives from array data with a per-element offset
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, TriangleStrip, TriangleFan, Triangles, LinesAdjacency, LineStripAdjacency, TrianglesAdjacency, TriangleStripAdjacency and Patches are accepted.
        /// </param>
        /// <param name="start"> 
        /// Specifies the minimum array index contained in indices.
        /// </param>
        /// <param name="end"> 
        /// Specifies the maximum array index contained in indices.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements to be rendered.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: count,type] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="basevertex"> 
        /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glDrawRangeElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void DrawRangeElementsBaseVertex<T5>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 start, UInt32 end, Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T5 indices, Int32 basevertex)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Render primitives using a count derived from a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawTransformFeedback")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedback(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Render primitives using a count derived from a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawTransformFeedback")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedback(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_transform_feedback_instanced|VERSION_4_2]
        /// Render multiple instances of primitives using a count derived from a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the geometry to render.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback_instanced|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawTransformFeedbackInstanced")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 id, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_transform_feedback_instanced|VERSION_4_2]
        /// Render multiple instances of primitives using a count derived from a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the geometry to render.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback_instanced|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawTransformFeedbackInstanced")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 id, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Render primitives using a count derived from a specifed stream of a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="stream"> 
        /// Specifies the index of the transform feedback stream from which to retrieve a primitive count.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawTransformFeedbackStream")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackStream(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 id, Int32 stream) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Render primitives using a count derived from a specifed stream of a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="stream"> 
        /// Specifies the index of the transform feedback stream from which to retrieve a primitive count.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glDrawTransformFeedbackStream")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackStream(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 id, UInt32 stream) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_transform_feedback_instanced|VERSION_4_2]
        /// Render multiple instances of primitives using a count derived from a specifed stream of a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="stream"> 
        /// Specifies the index of the transform feedback stream from which to retrieve a primitive count.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the geometry to render.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback_instanced|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawTransformFeedbackStreamInstanced")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackStreamInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32 id, Int32 stream, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_transform_feedback_instanced|VERSION_4_2]
        /// Render multiple instances of primitives using a count derived from a specifed stream of a transform feedback object
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="id"> 
        /// Specifies the name of a transform feedback object from which to retrieve a primitive count.
        /// </param>
        /// <param name="stream"> 
        /// Specifies the index of the transform feedback stream from which to retrieve a primitive count.
        /// </param>
        /// <param name="instancecount"> 
        /// Specifies the number of instances of the geometry to render.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback_instanced|VERSION_4_2", Version = "4.2", EntryPoint = "glDrawTransformFeedbackStreamInstanced")]
        [CLSCompliant(false)]
        public static void DrawTransformFeedbackStreamInstanced(OpenTK.Graphics.OpenGL4.PrimitiveType mode, UInt32 id, UInt32 stream, Int32 instancecount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Enable or disable server-side GL capabilities
        /// </summary>
        /// <param name="cap"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glEnable")]
        public static void Enable(OpenTK.Graphics.OpenGL4.EnableCap cap) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Enable or disable server-side GL capabilities
        /// </summary>
        /// <param name="target"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the switch to disable (for glEnablei and glDisablei only).
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glEnablei")]
        [CLSCompliant(false)]
        public static void Enable(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Enable or disable server-side GL capabilities
        /// </summary>
        /// <param name="target"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the switch to disable (for glEnablei and glDisablei only).
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glEnablei")]
        [CLSCompliant(false)]
        public static void Enable(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Enable or disable a generic vertex attribute array
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glEnableVertexAttribArray")]
        [CLSCompliant(false)]
        public static void EnableVertexAttribArray(Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Enable or disable a generic vertex attribute array
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be enabled or disabled.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glEnableVertexAttribArray")]
        [CLSCompliant(false)]
        public static void EnableVertexAttribArray(UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glEndConditionalRender")]
        public static void EndConditionalRender() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]</summary>
        /// <param name="target"></param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glEndQuery")]
        public static void EndQuery(OpenTK.Graphics.OpenGL4.QueryTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glEndQueryIndexed")]
        [CLSCompliant(false)]
        public static void EndQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glEndQueryIndexed")]
        [CLSCompliant(false)]
        public static void EndQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glEndTransformFeedback")]
        public static void EndTransformFeedback() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Create a new sync object and insert it into the GL command stream
        /// </summary>
        /// <param name="condition"> 
        /// Specifies the condition that must be met to set the sync object's state to signaled. condition must be SyncGpuCommandsComplete.
        /// </param>
        /// <param name="flags"> 
        /// Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined for this operation and flags must be zero.flags is a placeholder for anticipated future extensions of fence sync object capabilities.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glFenceSync")]
        public static IntPtr FenceSync(OpenTK.Graphics.OpenGL4.SyncCondition condition, OpenTK.Graphics.OpenGL4.WaitSyncFlags flags) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Block until all GL execution is complete
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glFinish")]
        public static void Finish() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Force execution of GL commands in finite time
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glFlush")]
        public static void Flush() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_map_buffer_range|VERSION_3_0]
        /// Indicate modifications to a range of a mapped buffer
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the flush operation. target must be ArrayBuffer, CopyReadBuffer, CopyWriteBuffer, DispatchIndirectBuffer, DrawIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the start of the buffer subrange, in basic machine units.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the buffer subrange, in basic machine units.
        /// </param>
        [AutoGenerated(Category = "ARB_map_buffer_range|VERSION_3_0", Version = "3.0", EntryPoint = "glFlushMappedBufferRange")]
        public static void FlushMappedBufferRange(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_framebuffer_no_attachments|VERSION_4_3]
        /// Set a named parameter of a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// The target of the operation, which must be ReadFramebuffer, DrawFramebuffer or Framebuffer.
        /// </param>
        /// <param name="pname"> 
        /// A token indicating the parameter to be modified.
        /// </param>
        /// <param name="param"> 
        /// The new value for the parameter named pname.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_no_attachments|VERSION_4_3", Version = "4.3", EntryPoint = "glFramebufferParameteri")]
        public static void FramebufferParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferDefaultParameter pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Attach a renderbuffer as a logical buffer to the currently bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer.
        /// </param>
        /// <param name="renderbuffertarget"> 
        /// Specifies the renderbuffer target and must be Renderbuffer.
        /// </param>
        /// <param name="renderbuffer"> 
        /// Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferRenderbuffer")]
        [CLSCompliant(false)]
        public static void FramebufferRenderbuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.RenderbufferTarget renderbuffertarget, Int32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Attach a renderbuffer as a logical buffer to the currently bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer.
        /// </param>
        /// <param name="renderbuffertarget"> 
        /// Specifies the renderbuffer target and must be Renderbuffer.
        /// </param>
        /// <param name="renderbuffer"> 
        /// Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferRenderbuffer")]
        [CLSCompliant(false)]
        public static void FramebufferRenderbuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.RenderbufferTarget renderbuffertarget, UInt32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]
        /// Attach a level of a texture object as a logical buffer to the currently bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer. attachment must be ColorAttachmenti, DepthAttachment, StencilAttachment or DepthStencilAttachment.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the texture object to attach to the framebuffer attachment point named by attachment.
        /// </param>
        /// <param name="level"> 
        /// Specifies the mipmap level of texture to attach.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glFramebufferTexture")]
        [CLSCompliant(false)]
        public static void FramebufferTexture(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, Int32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]
        /// Attach a level of a texture object as a logical buffer to the currently bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer. attachment must be ColorAttachmenti, DepthAttachment, StencilAttachment or DepthStencilAttachment.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the texture object to attach to the framebuffer attachment point named by attachment.
        /// </param>
        /// <param name="level"> 
        /// Specifies the mipmap level of texture to attach.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glFramebufferTexture")]
        [CLSCompliant(false)]
        public static void FramebufferTexture(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, UInt32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture1D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture1D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, Int32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture1D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture1D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, UInt32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture2D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture2D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, Int32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture2D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture2D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, UInt32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        /// <param name="zoffset"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture3D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture3D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, Int32 texture, Int32 level, Int32 zoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]</summary>
        /// <param name="target"></param>
        /// <param name="attachment"></param>
        /// <param name="textarget"></param>
        /// <param name="texture"></param>
        /// <param name="level"></param>
        /// <param name="zoffset"></param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTexture3D")]
        [CLSCompliant(false)]
        public static void FramebufferTexture3D(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.TextureTarget textarget, UInt32 texture, Int32 level, Int32 zoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Attach a single layer of a texture to a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer. attachment must be ColorAttachmenti, DepthAttachment, StencilAttachment or DepthStencilAttachment.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the texture object to attach to the framebuffer attachment point named by attachment.
        /// </param>
        /// <param name="level"> 
        /// Specifies the mipmap level of texture to attach.
        /// </param>
        /// <param name="layer"> 
        /// Specifies the layer of texture to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTextureLayer")]
        [CLSCompliant(false)]
        public static void FramebufferTextureLayer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, Int32 texture, Int32 level, Int32 layer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Attach a single layer of a texture to a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// Specifies the framebuffer target. target must be DrawFramebuffer, ReadFramebuffer, or Framebuffer. Framebuffer is equivalent to DrawFramebuffer.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment point of the framebuffer. attachment must be ColorAttachmenti, DepthAttachment, StencilAttachment or DepthStencilAttachment.
        /// </param>
        /// <param name="texture"> 
        /// Specifies the texture object to attach to the framebuffer attachment point named by attachment.
        /// </param>
        /// <param name="level"> 
        /// Specifies the mipmap level of texture to attach.
        /// </param>
        /// <param name="layer"> 
        /// Specifies the layer of texture to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glFramebufferTextureLayer")]
        [CLSCompliant(false)]
        public static void FramebufferTextureLayer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, UInt32 texture, Int32 level, Int32 layer) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Define front- and back-facing polygons
        /// </summary>
        /// <param name="mode"> 
        /// Specifies the orientation of front-facing polygons. Cw and Ccw are accepted. The initial value is Ccw.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glFrontFace")]
        public static void FrontFace(OpenTK.Graphics.OpenGL4.FrontFaceDirection mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static Int32 GenBuffer() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static void GenBuffers(Int32 n, [OutAttribute] Int32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static void GenBuffers(Int32 n, [OutAttribute] out Int32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenBuffers(Int32 n, [OutAttribute] Int32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static void GenBuffers(Int32 n, [OutAttribute] UInt32[] buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static void GenBuffers(Int32 n, [OutAttribute] out UInt32 buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate buffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of buffer object names to be generated.
        /// </param>
        /// <param name="buffers">[length: n] 
        /// Specifies an array in which the generated buffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenBuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenBuffers(Int32 n, [OutAttribute] UInt32* buffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate mipmaps for a specified texture target
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target to which the texture whose mimaps to generate is bound. target must be Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray or TextureCubeMap.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenerateMipmap")]
        public static void GenerateMipmap(OpenTK.Graphics.OpenGL4.GenerateMipmapTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static Int32 GenFramebuffer() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static void GenFramebuffers(Int32 n, [OutAttribute] Int32[] framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static void GenFramebuffers(Int32 n, [OutAttribute] out Int32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenFramebuffers(Int32 n, [OutAttribute] Int32* framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static void GenFramebuffers(Int32 n, [OutAttribute] UInt32[] framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static void GenFramebuffers(Int32 n, [OutAttribute] out UInt32 framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate framebuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of framebuffer object names to generate.
        /// </param>
        /// <param name="framebuffers">[length: n] 
        /// Specifies an array in which the generated framebuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenFramebuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenFramebuffers(Int32 n, [OutAttribute] UInt32* framebuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static Int32 GenProgramPipeline() { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static void GenProgramPipelines(Int32 n, [OutAttribute] Int32[] pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static void GenProgramPipelines(Int32 n, [OutAttribute] out Int32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static unsafe void GenProgramPipelines(Int32 n, [OutAttribute] Int32* pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static void GenProgramPipelines(Int32 n, [OutAttribute] UInt32[] pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static void GenProgramPipelines(Int32 n, [OutAttribute] out UInt32 pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Reserve program pipeline object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of program pipeline object names to reserve.
        /// </param>
        /// <param name="pipelines">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGenProgramPipelines")]
        [CLSCompliant(false)]
        public static unsafe void GenProgramPipelines(Int32 n, [OutAttribute] UInt32* pipelines) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static Int32 GenQuery() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static void GenQueries(Int32 n, [OutAttribute] Int32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static void GenQueries(Int32 n, [OutAttribute] out Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static unsafe void GenQueries(Int32 n, [OutAttribute] Int32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static void GenQueries(Int32 n, [OutAttribute] UInt32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static void GenQueries(Int32 n, [OutAttribute] out UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Generate query object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of query object names to be generated.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array in which the generated query object names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGenQueries")]
        [CLSCompliant(false)]
        public static unsafe void GenQueries(Int32 n, [OutAttribute] UInt32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static Int32 GenRenderbuffer() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static void GenRenderbuffers(Int32 n, [OutAttribute] Int32[] renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static void GenRenderbuffers(Int32 n, [OutAttribute] out Int32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenRenderbuffers(Int32 n, [OutAttribute] Int32* renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static void GenRenderbuffers(Int32 n, [OutAttribute] UInt32[] renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static void GenRenderbuffers(Int32 n, [OutAttribute] out UInt32 renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Generate renderbuffer object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of renderbuffer object names to generate.
        /// </param>
        /// <param name="renderbuffers">[length: n] 
        /// Specifies an array in which the generated renderbuffer object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenRenderbuffers")]
        [CLSCompliant(false)]
        public static unsafe void GenRenderbuffers(Int32 n, [OutAttribute] UInt32* renderbuffers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static Int32 GenSampler() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static void GenSamplers(Int32 count, [OutAttribute] Int32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static void GenSamplers(Int32 count, [OutAttribute] out Int32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static unsafe void GenSamplers(Int32 count, [OutAttribute] Int32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static void GenSamplers(Int32 count, [OutAttribute] UInt32[] samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static void GenSamplers(Int32 count, [OutAttribute] out UInt32 samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Generate sampler object names
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of sampler object names to generate.
        /// </param>
        /// <param name="samplers">[length: count] 
        /// Specifies an array in which the generated sampler object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGenSamplers")]
        [CLSCompliant(false)]
        public static unsafe void GenSamplers(Int32 count, [OutAttribute] UInt32* samplers) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static Int32 GenTexture() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static void GenTextures(Int32 n, [OutAttribute] Int32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static void GenTextures(Int32 n, [OutAttribute] out Int32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static unsafe void GenTextures(Int32 n, [OutAttribute] Int32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static void GenTextures(Int32 n, [OutAttribute] UInt32[] textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static void GenTextures(Int32 n, [OutAttribute] out UInt32 textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Generate texture names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of texture names to be generated.
        /// </param>
        /// <param name="textures">[length: n] 
        /// Specifies an array in which the generated texture names are stored.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glGenTextures")]
        [CLSCompliant(false)]
        public static unsafe void GenTextures(Int32 n, [OutAttribute] UInt32* textures) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static Int32 GenTransformFeedback() { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void GenTransformFeedbacks(Int32 n, [OutAttribute] Int32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void GenTransformFeedbacks(Int32 n, [OutAttribute] out Int32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static unsafe void GenTransformFeedbacks(Int32 n, [OutAttribute] Int32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void GenTransformFeedbacks(Int32 n, [OutAttribute] UInt32[] ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static void GenTransformFeedbacks(Int32 n, [OutAttribute] out UInt32 ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Reserve transform feedback object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of transform feedback object names to reserve.
        /// </param>
        /// <param name="ids">[length: n] 
        /// Specifies an array of into which the reserved names will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glGenTransformFeedbacks")]
        [CLSCompliant(false)]
        public static unsafe void GenTransformFeedbacks(Int32 n, [OutAttribute] UInt32* ids) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static Int32 GenVertexArray() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static void GenVertexArrays(Int32 n, [OutAttribute] Int32[] arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static void GenVertexArrays(Int32 n, [OutAttribute] out Int32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static unsafe void GenVertexArrays(Int32 n, [OutAttribute] Int32* arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static void GenVertexArrays(Int32 n, [OutAttribute] UInt32[] arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static void GenVertexArrays(Int32 n, [OutAttribute] out UInt32 arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Generate vertex array object names
        /// </summary>
        /// <param name="n"> 
        /// Specifies the number of vertex array object names to generate.
        /// </param>
        /// <param name="arrays">[length: n] 
        /// Specifies an array in which the generated vertex array object names are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGenVertexArrays")]
        [CLSCompliant(false)]
        public static unsafe void GenVertexArrays(Int32 n, [OutAttribute] UInt32* arrays) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static void GetActiveAtomicCounterBuffer(Int32 program, Int32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static void GetActiveAtomicCounterBuffer(Int32 program, Int32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveAtomicCounterBuffer(Int32 program, Int32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static void GetActiveAtomicCounterBuffer(UInt32 program, UInt32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static void GetActiveAtomicCounterBuffer(UInt32 program, UInt32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_atomic_counters|VERSION_4_2]
        /// Retrieve information about the set of active atomic counter buffers for a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object from which to retrieve information.
        /// </param>
        /// <param name="bufferIndex"> 
        /// Specifies index of an active atomic counter buffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies which parameter of the atomic counter buffer to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_atomic_counters|VERSION_4_2", Version = "4.2", EntryPoint = "glGetActiveAtomicCounterBufferiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveAtomicCounterBuffer(UInt32 program, UInt32 bufferIndex, OpenTK.Graphics.OpenGL4.AtomicCounterBufferParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active attribute variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the attribute variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the attribute variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the attribute variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the attribute variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveAttrib")]
        [CLSCompliant(false)]
        public static void GetActiveAttrib(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.ActiveAttribType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active attribute variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the attribute variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the attribute variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the attribute variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the attribute variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveAttrib")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveAttrib(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.ActiveAttribType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active attribute variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the attribute variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the attribute variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the attribute variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the attribute variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveAttrib")]
        [CLSCompliant(false)]
        public static void GetActiveAttrib(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.ActiveAttribType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active attribute variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the attribute variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the attribute variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the attribute variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the attribute variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveAttrib")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveAttrib(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.ActiveAttribType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query the subroutine name.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of an array into which the name of the shader subroutine uniform will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineName")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineName(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, Int32 bufsize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query the subroutine name.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of an array into which the name of the shader subroutine uniform will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineName(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query the subroutine name.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of an array into which the name of the shader subroutine uniform will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineName")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineName(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, Int32 bufsize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query the subroutine name.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of an array into which the name of the shader subroutine uniform will be written.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineName(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniform(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] Int32[] values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniform(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineUniform(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniform(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] Int32[] values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniform(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query a property of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader subroutine uniform to query. pname must be NumCompatibleSubroutines, CompatibleSubroutines, UniformSize or UniformNameLength.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of a into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineUniform(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, OpenTK.Graphics.OpenGL4.ActiveSubroutineUniformParameter pname, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which is written the number of characters copied into name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformName")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniformName(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, Int32 bufsize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which is written the number of characters copied into name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineUniformName(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which is written the number of characters copied into name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformName")]
        [CLSCompliant(false)]
        public static void GetActiveSubroutineUniformName(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, Int32 bufsize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Query the name of an active shader subroutine uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing the subroutine.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the shader subroutine uniform.
        /// </param>
        /// <param name="bufsize"> 
        /// Specifies the size of the buffer whose address is given in name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which is written the number of characters copied into name.
        /// </param>
        /// <param name="name">[length: bufsize] 
        /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetActiveSubroutineUniformName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveSubroutineUniformName(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, UInt32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active uniform variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the uniform variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the uniform variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the uniform variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveUniform")]
        [CLSCompliant(false)]
        public static void GetActiveUniform(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.ActiveUniformType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active uniform variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the uniform variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the uniform variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the uniform variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveUniform")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniform(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.ActiveUniformType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active uniform variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the uniform variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the uniform variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the uniform variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveUniform")]
        [CLSCompliant(false)]
        public static void GetActiveUniform(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.ActiveUniformType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns information about an active uniform variable for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the uniform variable to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than Null is passed.
        /// </param>
        /// <param name="size">[length: 1] 
        /// Returns the size of the uniform variable.
        /// </param>
        /// <param name="type">[length: 1] 
        /// Returns the data type of the uniform variable.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// Returns a null terminated string containing the name of the uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetActiveUniform")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniform(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.ActiveUniformType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlock(Int32 program, Int32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlock(Int32 program, Int32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformBlock(Int32 program, Int32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlock(UInt32 program, UInt32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlock(UInt32 program, UInt32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query information about an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to query.
        /// </param>
        /// <param name="@params">[length: program, uniformBlockIndex, pname] 
        /// Specifies the address of a variable to receive the result of the query.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformBlock(UInt32 program, UInt32 uniformBlockIndex, OpenTK.Graphics.OpenGL4.ActiveUniformBlockParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the name of an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer addressed by uniformBlockName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName.
        /// </param>
        /// <param name="uniformBlockName">[length: bufSize] 
        /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockName")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlockName(Int32 program, Int32 uniformBlockIndex, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the name of an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer addressed by uniformBlockName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName.
        /// </param>
        /// <param name="uniformBlockName">[length: bufSize] 
        /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformBlockName(Int32 program, Int32 uniformBlockIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the name of an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer addressed by uniformBlockName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName.
        /// </param>
        /// <param name="uniformBlockName">[length: bufSize] 
        /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockName")]
        [CLSCompliant(false)]
        public static void GetActiveUniformBlockName(UInt32 program, UInt32 uniformBlockIndex, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the name of an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// Specifies the index of the uniform block within program.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer addressed by uniformBlockName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName.
        /// </param>
        /// <param name="uniformBlockName">[length: bufSize] 
        /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformBlockName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformBlockName(UInt32 program, UInt32 uniformBlockIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query the name of an active uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program containing the active uniform index uniformIndex.
        /// </param>
        /// <param name="uniformIndex"> 
        /// Specifies the index of the active uniform whose name to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName.
        /// </param>
        /// <param name="uniformName">[length: bufSize] 
        /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformName")]
        [CLSCompliant(false)]
        public static void GetActiveUniformName(Int32 program, Int32 uniformIndex, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder uniformName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query the name of an active uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program containing the active uniform index uniformIndex.
        /// </param>
        /// <param name="uniformIndex"> 
        /// Specifies the index of the active uniform whose name to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName.
        /// </param>
        /// <param name="uniformName">[length: bufSize] 
        /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformName(Int32 program, Int32 uniformIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder uniformName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query the name of an active uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program containing the active uniform index uniformIndex.
        /// </param>
        /// <param name="uniformIndex"> 
        /// Specifies the index of the active uniform whose name to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName.
        /// </param>
        /// <param name="uniformName">[length: bufSize] 
        /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformName")]
        [CLSCompliant(false)]
        public static void GetActiveUniformName(UInt32 program, UInt32 uniformIndex, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder uniformName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Query the name of an active uniform
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program containing the active uniform index uniformIndex.
        /// </param>
        /// <param name="uniformIndex"> 
        /// Specifies the index of the active uniform whose name to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName.
        /// </param>
        /// <param name="uniformName">[length: bufSize] 
        /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformName")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniformName(UInt32 program, UInt32 uniformIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder uniformName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniforms(Int32 program, Int32 uniformCount, Int32[] uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniforms(Int32 program, Int32 uniformCount, ref Int32 uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniforms(Int32 program, Int32 uniformCount, Int32* uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniforms(UInt32 program, Int32 uniformCount, UInt32[] uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static void GetActiveUniforms(UInt32 program, Int32 uniformCount, ref UInt32 uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Returns information about several active uniform variables for the specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params.
        /// </param>
        /// <param name="@params">[length: uniformCount, pname] 
        /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetActiveUniformsiv")]
        [CLSCompliant(false)]
        public static unsafe void GetActiveUniforms(UInt32 program, Int32 uniformCount, UInt32* uniformIndices, OpenTK.Graphics.OpenGL4.ActiveUniformParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static void GetAttachedShaders(Int32 program, Int32 maxCount, [OutAttribute] out Int32 count, [OutAttribute] Int32[] shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static void GetAttachedShaders(Int32 program, Int32 maxCount, [OutAttribute] out Int32 count, [OutAttribute] out Int32 shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static unsafe void GetAttachedShaders(Int32 program, Int32 maxCount, [OutAttribute] Int32* count, [OutAttribute] Int32* shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static void GetAttachedShaders(UInt32 program, Int32 maxCount, [OutAttribute] out Int32 count, [OutAttribute] UInt32[] shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static void GetAttachedShaders(UInt32 program, Int32 maxCount, [OutAttribute] out Int32 count, [OutAttribute] out UInt32 shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the handles of the shader objects attached to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="maxCount"> 
        /// Specifies the size of the array for storing the returned object names.
        /// </param>
        /// <param name="count">[length: 1] 
        /// Returns the number of names actually returned in shaders.
        /// </param>
        /// <param name="shaders">[length: maxCount] 
        /// Specifies an array that is used to return the names of attached shader objects.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttachedShaders")]
        [CLSCompliant(false)]
        public static unsafe void GetAttachedShaders(UInt32 program, Int32 maxCount, [OutAttribute] Int32* count, [OutAttribute] UInt32* shaders) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the location of an attribute variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="name"> 
        /// Points to a null terminated string containing the name of the attribute variable whose location is to be queried.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttribLocation")]
        [CLSCompliant(false)]
        public static Int32 GetAttribLocation(Int32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the location of an attribute variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="name"> 
        /// Points to a null terminated string containing the name of the attribute variable whose location is to be queried.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetAttribLocation")]
        [CLSCompliant(false)]
        public static Int32 GetAttribLocation(UInt32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] bool[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] out bool data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static unsafe void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] bool* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] bool[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] out bool data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetBooleani_v")]
        [CLSCompliant(false)]
        public static unsafe void GetBoolean(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] bool* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetBooleanv")]
        [CLSCompliant(false)]
        public static bool GetBoolean(OpenTK.Graphics.OpenGL4.GetPName pname) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetBooleanv")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] bool[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetBooleanv")]
        [CLSCompliant(false)]
        public static void GetBoolean(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] out bool data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetBooleanv")]
        [CLSCompliant(false)]
        public static unsafe void GetBoolean(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] bool* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetBufferParameteri64v")]
        [CLSCompliant(false)]
        public static void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] Int64[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetBufferParameteri64v")]
        [CLSCompliant(false)]
        public static void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] out Int64 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetBufferParameteri64v")]
        [CLSCompliant(false)]
        public static unsafe void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] Int64* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, ElementArrayBuffer, PixelPackBuffer, or PixelUnpackBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, ElementArrayBuffer, PixelPackBuffer, or PixelUnpackBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a buffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, ElementArrayBuffer, PixelPackBuffer, or PixelUnpackBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a buffer object parameter. Accepted values are BufferAccess, BufferMapped, BufferSize, or BufferUsage.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetBufferParameter(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return the pointer to a mapped buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the pointer to be returned.  The symbolic constant must be BufferMapPointer.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferPointerv")]
        public static void GetBufferPointer(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferPointer pname, [OutAttribute] IntPtr @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return the pointer to a mapped buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the pointer to be returned.  The symbolic constant must be BufferMapPointer.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferPointerv")]
        [CLSCompliant(false)]
        public static void GetBufferPointer<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferPointer pname, [InAttribute, OutAttribute] T2[] @params)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return the pointer to a mapped buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the pointer to be returned.  The symbolic constant must be BufferMapPointer.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferPointerv")]
        [CLSCompliant(false)]
        public static void GetBufferPointer<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferPointer pname, [InAttribute, OutAttribute] T2[,] @params)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return the pointer to a mapped buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the pointer to be returned.  The symbolic constant must be BufferMapPointer.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferPointerv")]
        [CLSCompliant(false)]
        public static void GetBufferPointer<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferPointer pname, [InAttribute, OutAttribute] T2[,,] @params)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return the pointer to a mapped buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the pointer to be returned.  The symbolic constant must be BufferMapPointer.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferPointerv")]
        public static void GetBufferPointer<T2>(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferPointer pname, [InAttribute, OutAttribute] ref T2 @params)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Returns a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryResultBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being returned.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the location where buffer object data is returned.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferSubData")]
        public static void GetBufferSubData(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [OutAttribute] IntPtr data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Returns a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryResultBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being returned.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the location where buffer object data is returned.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferSubData")]
        [CLSCompliant(false)]
        public static void GetBufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Returns a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryResultBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being returned.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the location where buffer object data is returned.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferSubData")]
        [CLSCompliant(false)]
        public static void GetBufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[,] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Returns a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryResultBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being returned.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the location where buffer object data is returned.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferSubData")]
        [CLSCompliant(false)]
        public static void GetBufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] T3[,,] data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Returns a subset of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryResultBuffer, TextureBuffer, TransformFeedbackBuffer, or UniformBuffer.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size in bytes of the data store region being returned.
        /// </param>
        /// <param name="data">[length: size] 
        /// Specifies a pointer to the location where buffer object data is returned.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetBufferSubData")]
        public static void GetBufferSubData<T3>(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr size, [InAttribute, OutAttribute] ref T3 data)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Retrieve contents of a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in table. The possible values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in table. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="table">[length: target,format,type] 
        /// Pointer to a one-dimensional array of pixel data containing the contents of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTable")]
        public static void GetColorTable(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr table) { throw new NotImplementedException(); }

        /// <summary>
        /// Retrieve contents of a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in table. The possible values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in table. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="table">[length: target,format,type] 
        /// Pointer to a one-dimensional array of pixel data containing the contents of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTable")]
        [CLSCompliant(false)]
        public static void GetColorTable<T3>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[] table)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Retrieve contents of a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in table. The possible values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in table. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="table">[length: target,format,type] 
        /// Pointer to a one-dimensional array of pixel data containing the contents of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTable")]
        [CLSCompliant(false)]
        public static void GetColorTable<T3>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,] table)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Retrieve contents of a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in table. The possible values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in table. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="table">[length: target,format,type] 
        /// Pointer to a one-dimensional array of pixel data containing the contents of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTable")]
        [CLSCompliant(false)]
        public static void GetColorTable<T3>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,,] table)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Retrieve contents of a color lookup table
        /// </summary>
        /// <param name="target"> 
        /// Must be ColorTable, PostConvolutionColorTable, or PostColorMatrixColorTable.
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in table. The possible values are Red, Green, Blue, Alpha, Luminance, LuminanceAlpha, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in table. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="table">[length: target,format,type] 
        /// Pointer to a one-dimensional array of pixel data containing the contents of the color table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTable")]
        public static void GetColorTable<T3>(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T3 table)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameterfv")]
        [CLSCompliant(false)]
        public static void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameterfv")]
        [CLSCompliant(false)]
        public static void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameteriv")]
        [CLSCompliant(false)]
        public static void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameteriv")]
        [CLSCompliant(false)]
        public static void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get color lookup table parameters
        /// </summary>
        /// <param name="target"> 
        /// The target color table. Must be ColorTable, PostConvolutionColorTable, PostColorMatrixColorTable, ProxyColorTable, ProxyPostConvolutionColorTable, or ProxyPostColorMatrixColorTable.
        /// </param>
        /// <param name="pname"> 
        /// The symbolic name of a color lookup table parameter. Must be one of ColorTableBias, ColorTableScale, ColorTableFormat, ColorTableWidth, ColorTableRedSize, ColorTableGreenSize, ColorTableBlueSize, ColorTableAlphaSize, ColorTableLuminanceSize, or ColorTableIntensitySize.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to an array where the values of the parameter will be stored.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetColorTableParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetColorTableParameter(OpenTK.Graphics.OpenGL4.ColorTableTarget target, OpenTK.Graphics.OpenGL4.GetColorTableParameterPName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Return a compressed texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="img">[length: target,level] 
        /// Returns the compressed texture image.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glGetCompressedTexImage")]
        public static void GetCompressedTexImage(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, [OutAttribute] IntPtr img) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Return a compressed texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="img">[length: target,level] 
        /// Returns the compressed texture image.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glGetCompressedTexImage")]
        [CLSCompliant(false)]
        public static void GetCompressedTexImage<T2>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, [InAttribute, OutAttribute] T2[] img)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Return a compressed texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="img">[length: target,level] 
        /// Returns the compressed texture image.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glGetCompressedTexImage")]
        [CLSCompliant(false)]
        public static void GetCompressedTexImage<T2>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, [InAttribute, OutAttribute] T2[,] img)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Return a compressed texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="img">[length: target,level] 
        /// Returns the compressed texture image.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glGetCompressedTexImage")]
        [CLSCompliant(false)]
        public static void GetCompressedTexImage<T2>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, [InAttribute, OutAttribute] T2[,,] img)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Return a compressed texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="img">[length: target,level] 
        /// Returns the compressed texture image.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glGetCompressedTexImage")]
        public static void GetCompressedTexImage<T2>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, [InAttribute, OutAttribute] ref T2 img)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get current 1D or 2D convolution filter kernel
        /// </summary>
        /// <param name="target"> 
        /// The filter to be retrieved. Must be one of Convolution1D or Convolution2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output image. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output image. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: target,format,type] 
        /// Pointer to storage for the output image.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionFilter")]
        public static void GetConvolutionFilter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr image) { throw new NotImplementedException(); }

        /// <summary>
        /// Get current 1D or 2D convolution filter kernel
        /// </summary>
        /// <param name="target"> 
        /// The filter to be retrieved. Must be one of Convolution1D or Convolution2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output image. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output image. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: target,format,type] 
        /// Pointer to storage for the output image.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionFilter")]
        [CLSCompliant(false)]
        public static void GetConvolutionFilter<T3>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[] image)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get current 1D or 2D convolution filter kernel
        /// </summary>
        /// <param name="target"> 
        /// The filter to be retrieved. Must be one of Convolution1D or Convolution2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output image. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output image. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: target,format,type] 
        /// Pointer to storage for the output image.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionFilter")]
        [CLSCompliant(false)]
        public static void GetConvolutionFilter<T3>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,] image)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get current 1D or 2D convolution filter kernel
        /// </summary>
        /// <param name="target"> 
        /// The filter to be retrieved. Must be one of Convolution1D or Convolution2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output image. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output image. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: target,format,type] 
        /// Pointer to storage for the output image.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionFilter")]
        [CLSCompliant(false)]
        public static void GetConvolutionFilter<T3>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,,] image)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get current 1D or 2D convolution filter kernel
        /// </summary>
        /// <param name="target"> 
        /// The filter to be retrieved. Must be one of Convolution1D or Convolution2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output image. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output image. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="image">[length: target,format,type] 
        /// Pointer to storage for the output image.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionFilter")]
        public static void GetConvolutionFilter<T3>(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T3 image)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameterfv")]
        [CLSCompliant(false)]
        public static void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameterfv")]
        [CLSCompliant(false)]
        public static void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameteriv")]
        [CLSCompliant(false)]
        public static void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameteriv")]
        [CLSCompliant(false)]
        public static void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get convolution parameters
        /// </summary>
        /// <param name="target"> 
        /// The filter whose parameters are to be retrieved. Must be one of Convolution1D, Convolution2D, or Separable2D.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of ConvolutionBorderMode, ConvolutionBorderColor, ConvolutionFilterScale, ConvolutionFilterBias, ConvolutionFormat, ConvolutionWidth, ConvolutionHeight, MaxConvolutionWidth, or MaxConvolutionHeight.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the parameters to be retrieved.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetConvolutionParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetConvolutionParameter(OpenTK.Graphics.OpenGL4.ConvolutionTarget target, OpenTK.Graphics.OpenGL4.GetConvolutionParameterPName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSource[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugType[] types, [OutAttribute] Int32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSeverity[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugSource sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugType types, [OutAttribute] out Int32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugSeverity severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static unsafe Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSource* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugType* types, [OutAttribute] Int32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSeverity* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSource[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugType[] types, [OutAttribute] UInt32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSeverity[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugSource sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugType types, [OutAttribute] out UInt32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.DebugSeverity severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve messages from the debug message log
        /// </summary>
        /// <param name="count"> 
        /// The number of debug messages to retrieve from the log.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the buffer whose address is given by messageLog.
        /// </param>
        /// <param name="sources">[length: count] 
        /// The address of an array of variables to receive the sources of the retrieved messages.
        /// </param>
        /// <param name="types">[length: count] 
        /// The address of an array of variables to receive the types of the retrieved messages.
        /// </param>
        /// <param name="ids">[length: count] 
        /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
        /// </param>
        /// <param name="severities">[length: count] 
        /// The address of an array of variables to receive the severites of the retrieved messages.
        /// </param>
        /// <param name="lengths">[length: count] 
        /// The address of an array of variables to receive the lengths of the received messages.
        /// </param>
        /// <param name="messageLog">[length: bufSize] 
        /// The address of an array of characters that will receive the messages.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetDebugMessageLog")]
        [CLSCompliant(false)]
        public static unsafe Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSource* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugType* types, [OutAttribute] UInt32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.DebugSeverity* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Double[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] out Double data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static unsafe void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Double* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Double[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] out Double data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetDoublei_v")]
        [CLSCompliant(false)]
        public static unsafe void GetDouble(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Double* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetDoublev")]
        [CLSCompliant(false)]
        public static Double GetDouble(OpenTK.Graphics.OpenGL4.GetPName pname) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetDoublev")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Double[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetDoublev")]
        [CLSCompliant(false)]
        public static void GetDouble(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] out Double data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetDoublev")]
        [CLSCompliant(false)]
        public static unsafe void GetDouble(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Double* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return error information
        /// </summary>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetError")]
        public static OpenTK.Graphics.OpenGL4.ErrorCode GetError() { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Single[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] out Single data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static unsafe void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Single* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Single[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] out Single data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glGetFloati_v")]
        [CLSCompliant(false)]
        public static unsafe void GetFloat(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Single* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetFloatv")]
        [CLSCompliant(false)]
        public static Single GetFloat(OpenTK.Graphics.OpenGL4.GetPName pname) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetFloatv")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Single[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetFloatv")]
        [CLSCompliant(false)]
        public static void GetFloat(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] out Single data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetFloatv")]
        [CLSCompliant(false)]
        public static unsafe void GetFloat(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Single* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_blend_func_extended|VERSION_3_3]
        /// Query the bindings of color indices to user-defined varying out variables
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to query
        /// </param>
        /// <param name="name"> 
        /// The name of the user-defined varying out variable whose index to query
        /// </param>
        [AutoGenerated(Category = "ARB_blend_func_extended|VERSION_3_3", Version = "3.3", EntryPoint = "glGetFragDataIndex")]
        [CLSCompliant(false)]
        public static Int32 GetFragDataIndex(Int32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_blend_func_extended|VERSION_3_3]
        /// Query the bindings of color indices to user-defined varying out variables
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to query
        /// </param>
        /// <param name="name"> 
        /// The name of the user-defined varying out variable whose index to query
        /// </param>
        [AutoGenerated(Category = "ARB_blend_func_extended|VERSION_3_3", Version = "3.3", EntryPoint = "glGetFragDataIndex")]
        [CLSCompliant(false)]
        public static Int32 GetFragDataIndex(UInt32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Query the bindings of color numbers to user-defined varying out variables
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to query
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the user-defined varying out variable whose binding to query
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetFragDataLocation")]
        [CLSCompliant(false)]
        public static Int32 GetFragDataLocation(Int32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Query the bindings of color numbers to user-defined varying out variables
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing varying out variable whose binding to query
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the user-defined varying out variable whose binding to query
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetFragDataLocation")]
        [CLSCompliant(false)]
        public static Int32 GetFragDataLocation(UInt32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about attachments of a bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment within target
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of attachment to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable receive the value of pname for attachment.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetFramebufferAttachmentParameteriv")]
        [CLSCompliant(false)]
        public static void GetFramebufferAttachmentParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.FramebufferParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about attachments of a bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment within target
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of attachment to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable receive the value of pname for attachment.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetFramebufferAttachmentParameteriv")]
        [CLSCompliant(false)]
        public static void GetFramebufferAttachmentParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.FramebufferParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about attachments of a bound framebuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation.
        /// </param>
        /// <param name="attachment"> 
        /// Specifies the attachment within target
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of attachment to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable receive the value of pname for attachment.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetFramebufferAttachmentParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetFramebufferAttachmentParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferAttachment attachment, OpenTK.Graphics.OpenGL4.FramebufferParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_framebuffer_no_attachments|VERSION_4_3]
        /// Retrieve a named parameter from a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// The target of the operation, which must be ReadFramebuffer, DrawFramebuffer or Framebuffer.
        /// </param>
        /// <param name="pname"> 
        /// A token indicating the parameter to be retrieved.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to receive the value of the parameter named pname.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_no_attachments|VERSION_4_3", Version = "4.3", EntryPoint = "glGetFramebufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetFramebufferParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferDefaultParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_framebuffer_no_attachments|VERSION_4_3]
        /// Retrieve a named parameter from a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// The target of the operation, which must be ReadFramebuffer, DrawFramebuffer or Framebuffer.
        /// </param>
        /// <param name="pname"> 
        /// A token indicating the parameter to be retrieved.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to receive the value of the parameter named pname.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_no_attachments|VERSION_4_3", Version = "4.3", EntryPoint = "glGetFramebufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetFramebufferParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferDefaultParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_framebuffer_no_attachments|VERSION_4_3]
        /// Retrieve a named parameter from a framebuffer
        /// </summary>
        /// <param name="target"> 
        /// The target of the operation, which must be ReadFramebuffer, DrawFramebuffer or Framebuffer.
        /// </param>
        /// <param name="pname"> 
        /// A token indicating the parameter to be retrieved.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to receive the value of the parameter named pname.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_no_attachments|VERSION_4_3", Version = "4.3", EntryPoint = "glGetFramebufferParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetFramebufferParameter(OpenTK.Graphics.OpenGL4.FramebufferTarget target, OpenTK.Graphics.OpenGL4.FramebufferDefaultParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram table
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        /// <param name="reset"> 
        /// If True, each component counter that is actually returned is reset to zero.  (Other counters are unaffected.) If False, none of the counters in the histogram table is modified.
        /// </param>
        /// <param name="format"> 
        /// The format of values to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of values to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned histogram table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogram")]
        public static void GetHistogram(OpenTK.Graphics.OpenGL4.HistogramTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr values) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram table
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        /// <param name="reset"> 
        /// If True, each component counter that is actually returned is reset to zero.  (Other counters are unaffected.) If False, none of the counters in the histogram table is modified.
        /// </param>
        /// <param name="format"> 
        /// The format of values to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of values to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned histogram table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogram")]
        [CLSCompliant(false)]
        public static void GetHistogram<T4>(OpenTK.Graphics.OpenGL4.HistogramTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram table
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        /// <param name="reset"> 
        /// If True, each component counter that is actually returned is reset to zero.  (Other counters are unaffected.) If False, none of the counters in the histogram table is modified.
        /// </param>
        /// <param name="format"> 
        /// The format of values to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of values to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned histogram table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogram")]
        [CLSCompliant(false)]
        public static void GetHistogram<T4>(OpenTK.Graphics.OpenGL4.HistogramTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram table
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        /// <param name="reset"> 
        /// If True, each component counter that is actually returned is reset to zero.  (Other counters are unaffected.) If False, none of the counters in the histogram table is modified.
        /// </param>
        /// <param name="format"> 
        /// The format of values to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of values to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned histogram table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogram")]
        [CLSCompliant(false)]
        public static void GetHistogram<T4>(OpenTK.Graphics.OpenGL4.HistogramTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,,] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram table
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        /// <param name="reset"> 
        /// If True, each component counter that is actually returned is reset to zero.  (Other counters are unaffected.) If False, none of the counters in the histogram table is modified.
        /// </param>
        /// <param name="format"> 
        /// The format of values to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of values to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned histogram table.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogram")]
        public static void GetHistogram<T4>(OpenTK.Graphics.OpenGL4.HistogramTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T4 values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameterfv")]
        [CLSCompliant(false)]
        public static void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameterfv")]
        [CLSCompliant(false)]
        public static void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameteriv")]
        [CLSCompliant(false)]
        public static void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameteriv")]
        [CLSCompliant(false)]
        public static void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get histogram parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter to be retrieved. Must be one of HistogramWidth, HistogramFormat, HistogramRedSize, HistogramGreenSize, HistogramBlueSize, HistogramAlphaSize, HistogramLuminanceSize, or HistogramSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetHistogramParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetHistogramParameter(OpenTK.Graphics.OpenGL4.HistogramTarget target, OpenTK.Graphics.OpenGL4.GetHistogramParameterPName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Int64[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] out Int64 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Int64* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Int64[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] out Int64 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64i_v")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger64(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Int64* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]</summary>
        /// <param name="pname"></param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64v")]
        [CLSCompliant(false)]
        public static Int64 GetInteger64(OpenTK.Graphics.OpenGL4.GetPName pname) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Int64[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64v")]
        [CLSCompliant(false)]
        public static void GetInteger64(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] out Int64 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetInteger64v")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger64(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Int64* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Int32[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] out Int32 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, Int32 index, [OutAttribute] Int32* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Int32[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] out Int32 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="index"></param>
        /// <param name="data">[length: target]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetIntegeri_v")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger(OpenTK.Graphics.OpenGL4.GetIndexedPName target, UInt32 index, [OutAttribute] Int32* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetIntegerv")]
        [CLSCompliant(false)]
        public static Int32 GetInteger(OpenTK.Graphics.OpenGL4.GetPName pname) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetIntegerv")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Int32[] data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetIntegerv")]
        [CLSCompliant(false)]
        public static void GetInteger(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] out Int32 data) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]</summary>
        /// <param name="pname"></param>
        /// <param name="data">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetIntegerv")]
        [CLSCompliant(false)]
        public static unsafe void GetInteger(OpenTK.Graphics.OpenGL4.GetPName pname, [OutAttribute] Int32* data) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_internalformat_query2|VERSION_4_3]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query2|VERSION_4_3", Version = "4.3", EntryPoint = "glGetInternalformati64v")]
        [CLSCompliant(false)]
        public static void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] Int64[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_internalformat_query2|VERSION_4_3]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query2|VERSION_4_3", Version = "4.3", EntryPoint = "glGetInternalformati64v")]
        [CLSCompliant(false)]
        public static void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] out Int64 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_internalformat_query2|VERSION_4_3]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query2|VERSION_4_3", Version = "4.3", EntryPoint = "glGetInternalformati64v")]
        [CLSCompliant(false)]
        public static unsafe void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] Int64* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_internalformat_query|VERSION_4_2]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query|VERSION_4_2", Version = "4.2", EntryPoint = "glGetInternalformativ")]
        [CLSCompliant(false)]
        public static void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_internalformat_query|VERSION_4_2]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query|VERSION_4_2", Version = "4.2", EntryPoint = "glGetInternalformativ")]
        [CLSCompliant(false)]
        public static void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_internalformat_query|VERSION_4_2]
        /// Retrieve information about implementation-dependent support for internal formats
        /// </summary>
        /// <param name="target"> 
        /// Indicates the usage of the internal format. target must be Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCubeMap, TextureCubeMapArray, TextureRectangle, TextureBuffer, Renderbuffer, Texture2DMultisample or Texture2DMultisampleArray.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format about which to retrieve information.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the type of information to query.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of basic machine units that may be written to params by the function.
        /// </param>
        /// <param name="@params">[length: bufSize] 
        /// Specifies the address of a variable into which to write the retrieved information.
        /// </param>
        [AutoGenerated(Category = "ARB_internalformat_query|VERSION_4_2", Version = "4.2", EntryPoint = "glGetInternalformativ")]
        [CLSCompliant(false)]
        public static unsafe void GetInternalformat(OpenTK.Graphics.OpenGL4.ImageTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, OpenTK.Graphics.OpenGL4.InternalFormatParameter pname, Int32 bufSize, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minimum and maximum pixel values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="reset"> 
        /// If True, all entries in the minmax table that are actually returned are reset to their initial values.  (Other entries are unaltered.) If False, the minmax table is unaltered.
        /// </param>
        /// <param name="format"> 
        /// The format of the data to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the data to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmax")]
        public static void GetMinmax(OpenTK.Graphics.OpenGL4.MinmaxTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr values) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minimum and maximum pixel values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="reset"> 
        /// If True, all entries in the minmax table that are actually returned are reset to their initial values.  (Other entries are unaltered.) If False, the minmax table is unaltered.
        /// </param>
        /// <param name="format"> 
        /// The format of the data to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the data to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmax")]
        [CLSCompliant(false)]
        public static void GetMinmax<T4>(OpenTK.Graphics.OpenGL4.MinmaxTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get minimum and maximum pixel values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="reset"> 
        /// If True, all entries in the minmax table that are actually returned are reset to their initial values.  (Other entries are unaltered.) If False, the minmax table is unaltered.
        /// </param>
        /// <param name="format"> 
        /// The format of the data to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the data to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmax")]
        [CLSCompliant(false)]
        public static void GetMinmax<T4>(OpenTK.Graphics.OpenGL4.MinmaxTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get minimum and maximum pixel values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="reset"> 
        /// If True, all entries in the minmax table that are actually returned are reset to their initial values.  (Other entries are unaltered.) If False, the minmax table is unaltered.
        /// </param>
        /// <param name="format"> 
        /// The format of the data to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the data to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmax")]
        [CLSCompliant(false)]
        public static void GetMinmax<T4>(OpenTK.Graphics.OpenGL4.MinmaxTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,,] values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get minimum and maximum pixel values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="reset"> 
        /// If True, all entries in the minmax table that are actually returned are reset to their initial values.  (Other entries are unaltered.) If False, the minmax table is unaltered.
        /// </param>
        /// <param name="format"> 
        /// The format of the data to be returned in values. Must be one of Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the data to be returned in values. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="values">[length: target,format,type] 
        /// A pointer to storage for the returned values.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmax")]
        public static void GetMinmax<T4>(OpenTK.Graphics.OpenGL4.MinmaxTarget target, bool reset, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T4 values)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameterfv")]
        [CLSCompliant(false)]
        public static void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameterfv")]
        [CLSCompliant(false)]
        public static void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameteriv")]
        [CLSCompliant(false)]
        public static void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameteriv")]
        [CLSCompliant(false)]
        public static void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get minmax parameters
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        /// <param name="pname"> 
        /// The parameter to be retrieved. Must be one of MinmaxFormat or MinmaxSink.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// A pointer to storage for the retrieved parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetMinmaxParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetMinmaxParameter(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.GetMinmaxParameterPName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, Int32 index, [OutAttribute] Single[] val) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, Int32 index, [OutAttribute] out Single val) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static unsafe void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, Int32 index, [OutAttribute] Single* val) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, UInt32 index, [OutAttribute] Single[] val) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, UInt32 index, [OutAttribute] out Single val) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Retrieve the location of a sample
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the sample parameter name. pname must be SamplePosition.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the sample whose position to query.
        /// </param>
        /// <param name="val">[length: pname] 
        /// Specifies the address of an array to receive the position of the sample.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glGetMultisamplefv")]
        [CLSCompliant(false)]
        public static unsafe void GetMultisample(OpenTK.Graphics.OpenGL4.GetMultisamplePName pname, UInt32 index, [OutAttribute] Single* val) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, Int32 name, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, Int32 name, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, Int32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, UInt32 name, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Retrieve the label of a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// The name of the sync object whose label to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The length of the buffer whose address is in label.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable to receive the length of the object label.
        /// </param>
        /// <param name="label">[length: bufSize] 
        /// The address of a string that will receive the object label.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glGetObjectPtrLabel")]
        [CLSCompliant(false)]
        public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3|VERSION_4_3]
        /// Return the address of the specified pointer
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the array or buffer pointer to be returned. Symbolic constants ColorArrayPointer, EdgeFlagArrayPointer, FogCoordArrayPointer, FeedbackBufferPointer, IndexArrayPointer, NormalArrayPointer, SecondaryColorArrayPointer, SelectionBufferPointer, TextureCoordArrayPointer, or VertexArrayPointer are accepted.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3|VERSION_4_3", Version = "4.3", EntryPoint = "glGetPointerv")]
        public static void GetPointer(OpenTK.Graphics.OpenGL4.GetPointervPName pname, [OutAttribute] IntPtr @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3|VERSION_4_3]
        /// Return the address of the specified pointer
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the array or buffer pointer to be returned. Symbolic constants ColorArrayPointer, EdgeFlagArrayPointer, FogCoordArrayPointer, FeedbackBufferPointer, IndexArrayPointer, NormalArrayPointer, SecondaryColorArrayPointer, SelectionBufferPointer, TextureCoordArrayPointer, or VertexArrayPointer are accepted.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3|VERSION_4_3", Version = "4.3", EntryPoint = "glGetPointerv")]
        [CLSCompliant(false)]
        public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.GetPointervPName pname, [InAttribute, OutAttribute] T1[] @params)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3|VERSION_4_3]
        /// Return the address of the specified pointer
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the array or buffer pointer to be returned. Symbolic constants ColorArrayPointer, EdgeFlagArrayPointer, FogCoordArrayPointer, FeedbackBufferPointer, IndexArrayPointer, NormalArrayPointer, SecondaryColorArrayPointer, SelectionBufferPointer, TextureCoordArrayPointer, or VertexArrayPointer are accepted.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3|VERSION_4_3", Version = "4.3", EntryPoint = "glGetPointerv")]
        [CLSCompliant(false)]
        public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.GetPointervPName pname, [InAttribute, OutAttribute] T1[,] @params)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3|VERSION_4_3]
        /// Return the address of the specified pointer
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the array or buffer pointer to be returned. Symbolic constants ColorArrayPointer, EdgeFlagArrayPointer, FogCoordArrayPointer, FeedbackBufferPointer, IndexArrayPointer, NormalArrayPointer, SecondaryColorArrayPointer, SelectionBufferPointer, TextureCoordArrayPointer, or VertexArrayPointer are accepted.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3|VERSION_4_3", Version = "4.3", EntryPoint = "glGetPointerv")]
        [CLSCompliant(false)]
        public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.GetPointervPName pname, [InAttribute, OutAttribute] T1[,,] @params)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3|VERSION_4_3]
        /// Return the address of the specified pointer
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the array or buffer pointer to be returned. Symbolic constants ColorArrayPointer, EdgeFlagArrayPointer, FogCoordArrayPointer, FeedbackBufferPointer, IndexArrayPointer, NormalArrayPointer, SecondaryColorArrayPointer, SelectionBufferPointer, TextureCoordArrayPointer, or VertexArrayPointer are accepted.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Returns the pointer value specified by pname.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3|VERSION_4_3", Version = "4.3", EntryPoint = "glGetPointerv")]
        public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.GetPointervPName pname, [InAttribute, OutAttribute] ref T1 @params)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [OutAttribute] IntPtr binary) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[,,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] ref T4 binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [OutAttribute] IntPtr binary) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[,,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] ref T4 binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [OutAttribute] IntPtr binary) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T4[,,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] ref T4 binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [OutAttribute] IntPtr binary) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] T4[,,] binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Return a binary representation of a program object's compiled and linked executable source
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose binary representation to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given by binary.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable to receive the number of bytes written into binary.
        /// </param>
        /// <param name="binaryFormat">[length: 1] 
        /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL.
        /// </param>
        /// <param name="binary">[length: bufSize] 
        /// Specifies the address an array into which the GL will return program's binary representation.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramBinary")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramBinary<T4>(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] OpenTK.Graphics.OpenGL4.BinaryFormat* binaryFormat, [InAttribute, OutAttribute] ref T4 binary)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramInfoLog")]
        [CLSCompliant(false)]
        public static void GetProgramInfoLog(Int32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramInfoLog(Int32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramInfoLog")]
        [CLSCompliant(false)]
        public static void GetProgramInfoLog(UInt32 program, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramInfoLog(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static void GetProgramInterface(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static void GetProgramInterface(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramInterface(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static void GetProgramInterface(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static void GetProgramInterface(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query a property of an interface in a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose interface to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program to query.
        /// </param>
        /// <param name="pname"> 
        /// The name of the parameter within programInterface to query.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// The address of a variable to retrieve the value of pname for the program interface.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramInterfaceiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramInterface(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, OpenTK.Graphics.OpenGL4.ProgramInterfaceParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static void GetProgram(Int32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static void GetProgram(Int32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgram(Int32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static void GetProgram(UInt32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static void GetProgram(UInt32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are DeleteStatus, LinkStatus, ValidateStatus, InfoLogLength, AttachedShaders, ActiveAtomicCounterBuffers, ActiveAttributes, ActiveAttributeMaxLength, ActiveUniforms, ActiveUniformBlocks, ActiveUniformBlockMaxNameLength, ActiveUniformMaxLength, ComputeWorkGroupSizeProgramBinaryLength, TransformFeedbackBufferMode, TransformFeedbackVaryings, TransformFeedbackVaryingMaxLength, GeometryVerticesOut, GeometryInputType, and GeometryOutputType.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetProgramiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgram(UInt32 program, OpenTK.Graphics.OpenGL4.GetProgramParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve the info log string from a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object from which to retrieve the info log.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which will be written the number of characters written into infoLog.
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies the address of an array of characters into which will be written the info log for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineInfoLog")]
        [CLSCompliant(false)]
        public static void GetProgramPipelineInfoLog(Int32 pipeline, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve the info log string from a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object from which to retrieve the info log.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which will be written the number of characters written into infoLog.
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies the address of an array of characters into which will be written the info log for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramPipelineInfoLog(Int32 pipeline, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve the info log string from a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object from which to retrieve the info log.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which will be written the number of characters written into infoLog.
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies the address of an array of characters into which will be written the info log for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineInfoLog")]
        [CLSCompliant(false)]
        public static void GetProgramPipelineInfoLog(UInt32 pipeline, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve the info log string from a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object from which to retrieve the info log.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of a variable into which will be written the number of characters written into infoLog.
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies the address of an array of characters into which will be written the info log for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramPipelineInfoLog(UInt32 pipeline, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static void GetProgramPipeline(Int32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static void GetProgramPipeline(Int32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramPipeline(Int32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static void GetProgramPipeline(UInt32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static void GetProgramPipeline(UInt32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Retrieve properties of a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object whose parameter retrieve.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to retrieve.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of a variable into which will be written the value or values of pname for pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glGetProgramPipelineiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramPipeline(UInt32 pipeline, OpenTK.Graphics.OpenGL4.ProgramPipelineParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the index of a named resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the index of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceIndex")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceIndex(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the index of a named resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the index of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceIndex")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceIndex(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty[] props, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty[] props, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 propCount, ref OpenTK.Graphics.OpenGL4.ProgramProperty props, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramResource(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty* props, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty[] props, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty[] props, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static void GetProgramResource(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 propCount, ref OpenTK.Graphics.OpenGL4.ProgramProperty props, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Retrieve values for multiple properties of a single active resource within a program object
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="index"></param>
        /// <param name="propCount"></param>
        /// <param name="props">[length: propCount]</param>
        /// <param name="bufSize"></param>
        /// <param name="length">[length: 1]</param>
        /// <param name="@params">[length: bufSize]</param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramResource(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 propCount, OpenTK.Graphics.OpenGL4.ProgramProperty* props, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the location of a named resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the location of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceLocation")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceLocation(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the location of a named resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the location of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceLocation")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceLocation(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the fragment color index of a named variable within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the location of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceLocationIndex")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceLocationIndex(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the fragment color index of a named variable within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the resource named name.
        /// </param>
        /// <param name="name">[length: name] 
        /// The name of the resource to query the location of.
        /// </param>
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceLocationIndex")]
        [CLSCompliant(false)]
        public static Int32 GetProgramResourceLocationIndex(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static void GetProgramResourceName(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static void GetProgramResourceName(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramResourceName(Int32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, Int32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static void GetProgramResourceName(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static void GetProgramResourceName(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_program_interface_query|VERSION_4_3]
        /// Query the name of an indexed resource within a program
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object whose resources to query.
        /// </param>
        /// <param name="programInterface"> 
        /// A token identifying the interface within program containing the indexed resource.
        /// </param>
        /// <param name="index"> 
        /// The index of the resource within programInterface of program.
        /// </param>
        /// <param name="bufSize"> 
        /// The size of the character array whose address is given by name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the length of the resource name.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a character array into which will be written the name of the resource.
        /// </param>
        [Obsolete("Use out overload instead")]
        [AutoGenerated(Category = "ARB_program_interface_query|VERSION_4_3", Version = "4.3", EntryPoint = "glGetProgramResourceName")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramResourceName(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramInterface programInterface, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve properties of a program object corresponding to a specified shader stage
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader to query. pname must be ActiveSubroutineUniforms, ActiveSubroutineUniformLocations, ActiveSubroutines, ActiveSubroutineUniformMaxLength, or ActiveSubroutineMaxLength.
        /// </param>
        /// <param name="values">[length: 1] 
        /// Specifies the address of a variable into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetProgramStageiv")]
        [CLSCompliant(false)]
        public static void GetProgramStage(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ProgramStageParameter pname, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve properties of a program object corresponding to a specified shader stage
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader to query. pname must be ActiveSubroutineUniforms, ActiveSubroutineUniformLocations, ActiveSubroutines, ActiveSubroutineUniformMaxLength, or ActiveSubroutineMaxLength.
        /// </param>
        /// <param name="values">[length: 1] 
        /// Specifies the address of a variable into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetProgramStageiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramStage(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ProgramStageParameter pname, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve properties of a program object corresponding to a specified shader stage
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader to query. pname must be ActiveSubroutineUniforms, ActiveSubroutineUniformLocations, ActiveSubroutines, ActiveSubroutineUniformMaxLength, or ActiveSubroutineMaxLength.
        /// </param>
        /// <param name="values">[length: 1] 
        /// Specifies the address of a variable into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetProgramStageiv")]
        [CLSCompliant(false)]
        public static void GetProgramStage(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ProgramStageParameter pname, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve properties of a program object corresponding to a specified shader stage
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter of the shader to query. pname must be ActiveSubroutineUniforms, ActiveSubroutineUniformLocations, ActiveSubroutines, ActiveSubroutineUniformMaxLength, or ActiveSubroutineMaxLength.
        /// </param>
        /// <param name="values">[length: 1] 
        /// Specifies the address of a variable into which the queried value or values will be placed.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetProgramStageiv")]
        [CLSCompliant(false)]
        public static unsafe void GetProgramStage(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ProgramStageParameter pname, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, Int32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback3|VERSION_4_0]
        /// Return parameters of an indexed query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the query object target.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback3|VERSION_4_0", Version = "4.0", EntryPoint = "glGetQueryIndexediv")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryIndexed(OpenTK.Graphics.OpenGL4.QueryTarget target, UInt32 index, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryiv")]
        [CLSCompliant(false)]
        public static void GetQuery(OpenTK.Graphics.OpenGL4.QueryTarget target, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryiv")]
        [CLSCompliant(false)]
        public static void GetQuery(OpenTK.Graphics.OpenGL4.QueryTarget target, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object target
        /// </summary>
        /// <param name="target"> 
        /// Specifies a query object target. Must be SamplesPassed, AnySamplesPassed, AnySamplesPassedConservativePrimitivesGenerated, TransformFeedbackPrimitivesWritten, TimeElapsed, or Timestamp.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object target parameter. Accepted values are CurrentQuery or QueryCounterBits.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryiv")]
        [CLSCompliant(false)]
        public static unsafe void GetQuery(OpenTK.Graphics.OpenGL4.QueryTarget target, OpenTK.Graphics.OpenGL4.GetQueryParam pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int64[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out Int64 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int64* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int64[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out Int64 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjecti64v")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int64* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(Int32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectiv")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjectui64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] UInt64[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjectui64v")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out UInt64 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glGetQueryObjectui64v")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] UInt64* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectuiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] UInt32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectuiv")]
        [CLSCompliant(false)]
        public static void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Return parameters of a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies the name of a query object.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a query object parameter. Accepted values are QueryResult or QueryResultAvailable.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// If a buffer is bound to the QueryResultBuffer target, then params is treated as an offset to a location within that buffer's data store to receive the result of the query. If no buffer is bound to QueryResultBuffer, then params is treated as an address in client memory of a variable to receive the resulting data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glGetQueryObjectuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetQueryObject(UInt32 id, OpenTK.Graphics.OpenGL4.GetQueryObjectParam pname, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about a bound renderbuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation. target must be Renderbuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the renderbuffer bound to target.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of an array to receive the value of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetRenderbufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetRenderbufferParameter(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, OpenTK.Graphics.OpenGL4.RenderbufferParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about a bound renderbuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation. target must be Renderbuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the renderbuffer bound to target.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of an array to receive the value of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetRenderbufferParameteriv")]
        [CLSCompliant(false)]
        public static void GetRenderbufferParameter(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, OpenTK.Graphics.OpenGL4.RenderbufferParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Retrieve information about a bound renderbuffer object
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the query operation. target must be Renderbuffer.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the renderbuffer bound to target.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Specifies the address of an array to receive the value of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glGetRenderbufferParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetRenderbufferParameter(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, OpenTK.Graphics.OpenGL4.RenderbufferParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] UInt32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Return sampler parameter values
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies name of the sampler object from which to retrieve parameters.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. TextureMagFilter, TextureMinFilter, TextureMinLod, TextureMaxLod, TextureLodBias, TextureWrapS, TextureWrapT, TextureWrapR, TextureBorderColor, TextureCompareMode, and TextureCompareFunc are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the sampler parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glGetSamplerParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetSamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>
        /// Get separable convolution filter kernel images
        /// </summary>
        /// <param name="target"> 
        /// The separable filter to be retrieved. Must be Separable2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output images. Must be one of Red, Green, Blue, Alpha, Rgb, BgrRgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output images. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type] 
        /// Pointer to storage for the row filter image.
        /// </param>
        /// <param name="column">[length: target,format,type] 
        /// Pointer to storage for the column filter image.
        /// </param>
        /// <param name="span">[length: target,format,type] 
        /// Pointer to storage for the span filter image (currently unused).
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetSeparableFilter")]
        public static void GetSeparableFilter(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr row, [OutAttribute] IntPtr column, [OutAttribute] IntPtr span) { throw new NotImplementedException(); }

        /// <summary>
        /// Get separable convolution filter kernel images
        /// </summary>
        /// <param name="target"> 
        /// The separable filter to be retrieved. Must be Separable2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output images. Must be one of Red, Green, Blue, Alpha, Rgb, BgrRgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output images. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type] 
        /// Pointer to storage for the row filter image.
        /// </param>
        /// <param name="column">[length: target,format,type] 
        /// Pointer to storage for the column filter image.
        /// </param>
        /// <param name="span">[length: target,format,type] 
        /// Pointer to storage for the span filter image (currently unused).
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetSeparableFilter")]
        [CLSCompliant(false)]
        public static void GetSeparableFilter<T3,T4,T5>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[] row, [InAttribute, OutAttribute] T4[] column, [InAttribute, OutAttribute] T5[] span)
            where T3 : struct
            where T4 : struct
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get separable convolution filter kernel images
        /// </summary>
        /// <param name="target"> 
        /// The separable filter to be retrieved. Must be Separable2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output images. Must be one of Red, Green, Blue, Alpha, Rgb, BgrRgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output images. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type] 
        /// Pointer to storage for the row filter image.
        /// </param>
        /// <param name="column">[length: target,format,type] 
        /// Pointer to storage for the column filter image.
        /// </param>
        /// <param name="span">[length: target,format,type] 
        /// Pointer to storage for the span filter image (currently unused).
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetSeparableFilter")]
        [CLSCompliant(false)]
        public static void GetSeparableFilter<T3,T4,T5>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,] row, [InAttribute, OutAttribute] T4[,] column, [InAttribute, OutAttribute] T5[,] span)
            where T3 : struct
            where T4 : struct
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get separable convolution filter kernel images
        /// </summary>
        /// <param name="target"> 
        /// The separable filter to be retrieved. Must be Separable2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output images. Must be one of Red, Green, Blue, Alpha, Rgb, BgrRgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output images. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type] 
        /// Pointer to storage for the row filter image.
        /// </param>
        /// <param name="column">[length: target,format,type] 
        /// Pointer to storage for the column filter image.
        /// </param>
        /// <param name="span">[length: target,format,type] 
        /// Pointer to storage for the span filter image (currently unused).
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetSeparableFilter")]
        [CLSCompliant(false)]
        public static void GetSeparableFilter<T3,T4,T5>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T3[,,] row, [InAttribute, OutAttribute] T4[,,] column, [InAttribute, OutAttribute] T5[,,] span)
            where T3 : struct
            where T4 : struct
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Get separable convolution filter kernel images
        /// </summary>
        /// <param name="target"> 
        /// The separable filter to be retrieved. Must be Separable2D.
        /// </param>
        /// <param name="format"> 
        /// Format of the output images. Must be one of Red, Green, Blue, Alpha, Rgb, BgrRgba, Bgra, Luminance, or LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// Data type of components in the output images. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type] 
        /// Pointer to storage for the row filter image.
        /// </param>
        /// <param name="column">[length: target,format,type] 
        /// Pointer to storage for the column filter image.
        /// </param>
        /// <param name="span">[length: target,format,type] 
        /// Pointer to storage for the span filter image (currently unused).
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glGetSeparableFilter")]
        public static void GetSeparableFilter<T3,T4,T5>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T3 row, [InAttribute, OutAttribute] ref T4 column, [InAttribute, OutAttribute] ref T5 span)
            where T3 : struct
            where T4 : struct
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderInfoLog")]
        [CLSCompliant(false)]
        public static void GetShaderInfoLog(Int32 shader, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetShaderInfoLog(Int32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderInfoLog")]
        [CLSCompliant(false)]
        public static void GetShaderInfoLog(UInt32 shader, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the information log for a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object whose information log is to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned information log.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in infoLog (excluding the null terminator).
        /// </param>
        /// <param name="infoLog">[length: bufSize] 
        /// Specifies an array of characters that is used to return the information log.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderInfoLog")]
        [CLSCompliant(false)]
        public static unsafe void GetShaderInfoLog(UInt32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder infoLog) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static void GetShader(Int32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static void GetShader(Int32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static unsafe void GetShader(Int32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static void GetShader(UInt32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static void GetShader(UInt32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns a parameter from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the object parameter. Accepted symbolic names are ShaderType, DeleteStatus, CompileStatus, InfoLogLength, ShaderSourceLength.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested object parameter.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderiv")]
        [CLSCompliant(false)]
        public static unsafe void GetShader(UInt32 shader, OpenTK.Graphics.OpenGL4.ShaderParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Retrieve the range and precision for numeric formats supported by the shader compiler
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the type of shader whose precision to query. shaderType must be VertexShader or FragmentShader.
        /// </param>
        /// <param name="precisiontype"> 
        /// Specifies the numeric format whose precision and range to query.
        /// </param>
        /// <param name="range">[length: 2] 
        /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned.
        /// </param>
        /// <param name="precision">[length: 2] 
        /// Specifies the address of an integer into which the numeric precision of the implementation is written.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glGetShaderPrecisionFormat")]
        [CLSCompliant(false)]
        public static void GetShaderPrecisionFormat(OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ShaderPrecision precisiontype, [OutAttribute] Int32[] range, [OutAttribute] Int32[] precision) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Retrieve the range and precision for numeric formats supported by the shader compiler
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the type of shader whose precision to query. shaderType must be VertexShader or FragmentShader.
        /// </param>
        /// <param name="precisiontype"> 
        /// Specifies the numeric format whose precision and range to query.
        /// </param>
        /// <param name="range">[length: 2] 
        /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned.
        /// </param>
        /// <param name="precision">[length: 2] 
        /// Specifies the address of an integer into which the numeric precision of the implementation is written.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glGetShaderPrecisionFormat")]
        [CLSCompliant(false)]
        public static void GetShaderPrecisionFormat(OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ShaderPrecision precisiontype, [OutAttribute] out Int32 range, [OutAttribute] out Int32 precision) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Retrieve the range and precision for numeric formats supported by the shader compiler
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the type of shader whose precision to query. shaderType must be VertexShader or FragmentShader.
        /// </param>
        /// <param name="precisiontype"> 
        /// Specifies the numeric format whose precision and range to query.
        /// </param>
        /// <param name="range">[length: 2] 
        /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned.
        /// </param>
        /// <param name="precision">[length: 2] 
        /// Specifies the address of an integer into which the numeric precision of the implementation is written.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glGetShaderPrecisionFormat")]
        [CLSCompliant(false)]
        public static unsafe void GetShaderPrecisionFormat(OpenTK.Graphics.OpenGL4.ShaderType shadertype, OpenTK.Graphics.OpenGL4.ShaderPrecision precisiontype, [OutAttribute] Int32* range, [OutAttribute] Int32* precision) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the source code string from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned source code string.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in source (excluding the null terminator).
        /// </param>
        /// <param name="source">[length: bufSize] 
        /// Specifies an array of characters that is used to return the source code string.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderSource")]
        [CLSCompliant(false)]
        public static void GetShaderSource(Int32 shader, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder source) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the source code string from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned source code string.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in source (excluding the null terminator).
        /// </param>
        /// <param name="source">[length: bufSize] 
        /// Specifies an array of characters that is used to return the source code string.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderSource")]
        [CLSCompliant(false)]
        public static unsafe void GetShaderSource(Int32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder source) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the source code string from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned source code string.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in source (excluding the null terminator).
        /// </param>
        /// <param name="source">[length: bufSize] 
        /// Specifies an array of characters that is used to return the source code string.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderSource")]
        [CLSCompliant(false)]
        public static void GetShaderSource(UInt32 shader, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder source) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the source code string from a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the shader object to be queried.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the character buffer for storing the returned source code string.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Returns the length of the string returned in source (excluding the null terminator).
        /// </param>
        /// <param name="source">[length: bufSize] 
        /// Specifies an array of characters that is used to return the source code string.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetShaderSource")]
        [CLSCompliant(false)]
        public static unsafe void GetShaderSource(UInt32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder source) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a string describing the current GL connection
        /// </summary>
        /// <param name="name"> 
        /// Specifies a symbolic constant, one of Vendor, Renderer, Version, or ShadingLanguageVersion. Additionally, glGetStringi accepts the Extensions token.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetString")]
        public static String GetString(OpenTK.Graphics.OpenGL4.StringName name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Return a string describing the current GL connection
        /// </summary>
        /// <param name="name"> 
        /// Specifies a symbolic constant, one of Vendor, Renderer, Version, or ShadingLanguageVersion. Additionally, glGetStringi accepts the Extensions token.
        /// </param>
        /// <param name="index"> 
        /// For glGetStringi, specifies the index of the string to return.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetStringi")]
        [CLSCompliant(false)]
        public static String GetString(OpenTK.Graphics.OpenGL4.StringNameIndexed name, Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Return a string describing the current GL connection
        /// </summary>
        /// <param name="name"> 
        /// Specifies a symbolic constant, one of Vendor, Renderer, Version, or ShadingLanguageVersion. Additionally, glGetStringi accepts the Extensions token.
        /// </param>
        /// <param name="index"> 
        /// For glGetStringi, specifies the index of the string to return.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetStringi")]
        [CLSCompliant(false)]
        public static String GetString(OpenTK.Graphics.OpenGL4.StringNameIndexed name, UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the index of a subroutine uniform of a given shader stage within a program
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="name"> 
        /// Specifies the name of the subroutine uniform whose index to query.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetSubroutineIndex")]
        [CLSCompliant(false)]
        public static Int32 GetSubroutineIndex(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the index of a subroutine uniform of a given shader stage within a program
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="name"> 
        /// Specifies the name of the subroutine uniform whose index to query.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetSubroutineIndex")]
        [CLSCompliant(false)]
        public static Int32 GetSubroutineIndex(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the location of a subroutine uniform of a given shader stage within a program
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="name"> 
        /// Specifies the name of the subroutine uniform whose index to query.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetSubroutineUniformLocation")]
        [CLSCompliant(false)]
        public static Int32 GetSubroutineUniformLocation(Int32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the location of a subroutine uniform of a given shader stage within a program
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of the program containing shader stage.
        /// </param>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="name"> 
        /// Specifies the name of the subroutine uniform whose index to query.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetSubroutineUniformLocation")]
        [CLSCompliant(false)]
        public static Int32 GetSubroutineUniformLocation(UInt32 program, OpenTK.Graphics.OpenGL4.ShaderType shadertype, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Query the properties of a sync object
        /// </summary>
        /// <param name="sync"> 
        /// Specifies the sync object whose properties to query.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the sync object specified in sync.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given in values.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of an variable to receive the number of integers placed in values.
        /// </param>
        /// <param name="values">[length: bufSize] 
        /// Specifies the address of an array to receive the values of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetSynciv")]
        [CLSCompliant(false)]
        public static void GetSync(IntPtr sync, OpenTK.Graphics.OpenGL4.SyncParameterName pname, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] Int32[] values) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Query the properties of a sync object
        /// </summary>
        /// <param name="sync"> 
        /// Specifies the sync object whose properties to query.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the sync object specified in sync.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given in values.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of an variable to receive the number of integers placed in values.
        /// </param>
        /// <param name="values">[length: bufSize] 
        /// Specifies the address of an array to receive the values of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetSynciv")]
        [CLSCompliant(false)]
        public static void GetSync(IntPtr sync, OpenTK.Graphics.OpenGL4.SyncParameterName pname, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 values) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Query the properties of a sync object
        /// </summary>
        /// <param name="sync"> 
        /// Specifies the sync object whose properties to query.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the parameter whose value to retrieve from the sync object specified in sync.
        /// </param>
        /// <param name="bufSize"> 
        /// Specifies the size of the buffer whose address is given in values.
        /// </param>
        /// <param name="length">[length: 1] 
        /// Specifies the address of an variable to receive the number of integers placed in values.
        /// </param>
        /// <param name="values">[length: bufSize] 
        /// Specifies the address of an array to receive the values of the queried parameter.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glGetSynciv")]
        [CLSCompliant(false)]
        public static unsafe void GetSync(IntPtr sync, OpenTK.Graphics.OpenGL4.SyncParameterName pname, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="format"> 
        /// Specifies a pixel format for the returned data. The supported formats are StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rg, Rgb, Rgba, Bgr, Bgra, RedInteger, GreenInteger, BlueInteger, RgInteger, RgbInteger, RgbaInteger, BgrInteger, BgraInteger.
        /// </param>
        /// <param name="type"> 
        /// Specifies a pixel type for the returned data. The supported types are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, and Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: target,level,format,type] 
        /// Returns the texture image. Should be a pointer to an array of the type specified by type.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexImage")]
        public static void GetTexImage(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="format"> 
        /// Specifies a pixel format for the returned data. The supported formats are StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rg, Rgb, Rgba, Bgr, Bgra, RedInteger, GreenInteger, BlueInteger, RgInteger, RgbInteger, RgbaInteger, BgrInteger, BgraInteger.
        /// </param>
        /// <param name="type"> 
        /// Specifies a pixel type for the returned data. The supported types are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, and Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: target,level,format,type] 
        /// Returns the texture image. Should be a pointer to an array of the type specified by type.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexImage")]
        [CLSCompliant(false)]
        public static void GetTexImage<T4>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[] pixels)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="format"> 
        /// Specifies a pixel format for the returned data. The supported formats are StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rg, Rgb, Rgba, Bgr, Bgra, RedInteger, GreenInteger, BlueInteger, RgInteger, RgbInteger, RgbaInteger, BgrInteger, BgraInteger.
        /// </param>
        /// <param name="type"> 
        /// Specifies a pixel type for the returned data. The supported types are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, and Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: target,level,format,type] 
        /// Returns the texture image. Should be a pointer to an array of the type specified by type.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexImage")]
        [CLSCompliant(false)]
        public static void GetTexImage<T4>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,] pixels)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="format"> 
        /// Specifies a pixel format for the returned data. The supported formats are StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rg, Rgb, Rgba, Bgr, Bgra, RedInteger, GreenInteger, BlueInteger, RgInteger, RgbInteger, RgbaInteger, BgrInteger, BgraInteger.
        /// </param>
        /// <param name="type"> 
        /// Specifies a pixel type for the returned data. The supported types are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, and Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: target,level,format,type] 
        /// Returns the texture image. Should be a pointer to an array of the type specified by type.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexImage")]
        [CLSCompliant(false)]
        public static void GetTexImage<T4>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T4[,,] pixels)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return a texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies which texture is to be obtained. Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, and TextureCubeMapNegativeZ are accepted.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="format"> 
        /// Specifies a pixel format for the returned data. The supported formats are StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rg, Rgb, Rgba, Bgr, Bgra, RedInteger, GreenInteger, BlueInteger, RgInteger, RgbInteger, RgbaInteger, BgrInteger, BgraInteger.
        /// </param>
        /// <param name="type"> 
        /// Specifies a pixel type for the returned data. The supported types are UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, and Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: target,level,format,type] 
        /// Returns the texture image. Should be a pointer to an array of the type specified by type.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexImage")]
        public static void GetTexImage<T4>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T4 pixels)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameterfv")]
        [CLSCompliant(false)]
        public static void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameterfv")]
        [CLSCompliant(false)]
        public static void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameteriv")]
        [CLSCompliant(false)]
        public static void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameteriv")]
        [CLSCompliant(false)]
        public static void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values for a specific level of detail
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture, one of Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, Texture2DMultisample, Texture2DMultisampleArray, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, ProxyTexture1D, ProxyTexture2D, ProxyTexture3D, ProxyTexture1DArray, ProxyTexture2DArray, ProxyTextureRectangle, ProxyTexture2DMultisample, ProxyTexture2DMultisampleArray, ProxyTextureCubeMap, or TextureBuffer.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level  is the th mipmap reduction image.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. TextureWidth, TextureHeight, TextureDepth, TextureInternalFormat, TextureRedSize, TextureGreenSize, TextureBlueSize, TextureAlphaSize, TextureDepthSize, TextureCompressed, TextureCompressedImageSize, and TextureBufferOffset are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexLevelParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexLevelParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameterfv")]
        [CLSCompliant(false)]
        public static void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameterfv")]
        [CLSCompliant(false)]
        public static void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIiv")]
        [CLSCompliant(false)]
        public static void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIiv")]
        [CLSCompliant(false)]
        public static void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIuiv")]
        [CLSCompliant(false)]
        public static void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] UInt32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIuiv")]
        [CLSCompliant(false)]
        public static void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTexParameterIuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameteriv")]
        [CLSCompliant(false)]
        public static void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameteriv")]
        [CLSCompliant(false)]
        public static void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Return texture parameter values
        /// </summary>
        /// <param name="target"> 
        /// Specifies the symbolic name of the target texture. Texture1D, Texture2D, Texture1DArray, Texture2DArray, Texture3D, TextureRectangle, TextureCubeMap, and TextureCubeMapArray are accepted.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a texture parameter. DepthStencilTextureMode, TextureBaseLevel, TextureBorderColor, TextureCompareMode, TextureCompareFunc, TextureImmutableFormat, TextureImmutableLevels, TextureLodBias, TextureMagFilter, TextureMaxLevel, TextureMaxLod, TextureMinFilter, TextureMinLod, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureSwizzleRgba, TextureViewMinLayer, TextureViewMinLevel, TextureViewNumLayers, TextureViewNumLevels, TextureWrapS, TextureWrapT, and TextureWrapR are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// Returns the texture parameters.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glGetTexParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void GetTexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.GetTextureParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Retrieve information about varying variables selected for transform feedback
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="index"> 
        /// The index of the varying variable whose information to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The maximum number of characters, including the null terminator, that may be written into name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is Null no length is returned.
        /// </param>
        /// <param name="size">[length: 1] 
        /// The address of a variable that will receive the size of the varying.
        /// </param>
        /// <param name="type">[length: 1] 
        /// The address of a variable that will recieve the type of the varying.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a buffer into which will be written the name of the varying.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTransformFeedbackVarying")]
        [CLSCompliant(false)]
        public static void GetTransformFeedbackVarying(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.TransformFeedbackType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Retrieve information about varying variables selected for transform feedback
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="index"> 
        /// The index of the varying variable whose information to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The maximum number of characters, including the null terminator, that may be written into name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is Null no length is returned.
        /// </param>
        /// <param name="size">[length: 1] 
        /// The address of a variable that will receive the size of the varying.
        /// </param>
        /// <param name="type">[length: 1] 
        /// The address of a variable that will recieve the type of the varying.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a buffer into which will be written the name of the varying.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTransformFeedbackVarying")]
        [CLSCompliant(false)]
        public static unsafe void GetTransformFeedbackVarying(Int32 program, Int32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.TransformFeedbackType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Retrieve information about varying variables selected for transform feedback
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="index"> 
        /// The index of the varying variable whose information to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The maximum number of characters, including the null terminator, that may be written into name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is Null no length is returned.
        /// </param>
        /// <param name="size">[length: 1] 
        /// The address of a variable that will receive the size of the varying.
        /// </param>
        /// <param name="type">[length: 1] 
        /// The address of a variable that will recieve the type of the varying.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a buffer into which will be written the name of the varying.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTransformFeedbackVarying")]
        [CLSCompliant(false)]
        public static void GetTransformFeedbackVarying(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] out Int32 size, [OutAttribute] out OpenTK.Graphics.OpenGL4.TransformFeedbackType type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Retrieve information about varying variables selected for transform feedback
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="index"> 
        /// The index of the varying variable whose information to retrieve.
        /// </param>
        /// <param name="bufSize"> 
        /// The maximum number of characters, including the null terminator, that may be written into name.
        /// </param>
        /// <param name="length">[length: 1] 
        /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is Null no length is returned.
        /// </param>
        /// <param name="size">[length: 1] 
        /// The address of a variable that will receive the size of the varying.
        /// </param>
        /// <param name="type">[length: 1] 
        /// The address of a variable that will recieve the type of the varying.
        /// </param>
        /// <param name="name">[length: bufSize] 
        /// The address of a buffer into which will be written the name of the varying.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetTransformFeedbackVarying")]
        [CLSCompliant(false)]
        public static unsafe void GetTransformFeedbackVarying(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] OpenTK.Graphics.OpenGL4.TransformFeedbackType* type, [OutAttribute] StringBuilder name) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockName"> 
        /// Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformBlockIndex")]
        [CLSCompliant(false)]
        public static Int32 GetUniformBlockIndex(Int32 program, String uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing the uniform block.
        /// </param>
        /// <param name="uniformBlockName"> 
        /// Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformBlockIndex")]
        [CLSCompliant(false)]
        public static Int32 GetUniformBlockIndex(UInt32 program, String uniformBlockName) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(Int32 program, Int32 location, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformdv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(UInt32 program, Int32 location, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(Int32 program, Int32 location, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformfv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(UInt32 program, Int32 location, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static void GetUniformIndices(Int32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] Int32[] uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static void GetUniformIndices(Int32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] out Int32 uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static unsafe void GetUniformIndices(Int32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] Int32* uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static void GetUniformIndices(UInt32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] UInt32[] uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static void GetUniformIndices(UInt32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] out UInt32 uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Retrieve the index of a named uniform block
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program containing uniforms whose indices to query.
        /// </param>
        /// <param name="uniformCount"> 
        /// Specifies the number of uniforms whose indices to query.
        /// </param>
        /// <param name="uniformNames">[length: uniformCount] 
        /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms.
        /// </param>
        /// <param name="uniformIndices">[length: uniformCount] 
        /// Specifies the address of an array that will receive the indices of the uniforms.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glGetUniformIndices")]
        [CLSCompliant(false)]
        public static unsafe void GetUniformIndices(UInt32 program, Int32 uniformCount, String[] uniformNames, [OutAttribute] UInt32* uniformIndices) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static void GetUniform(Int32 program, Int32 location, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(Int32 program, Int32 location, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program, location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformiv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(UInt32 program, Int32 location, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the location of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="name"> 
        /// Points to a null terminated string containing the name of the uniform variable whose location is to be queried.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformLocation")]
        [CLSCompliant(false)]
        public static Int32 GetUniformLocation(Int32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Returns the location of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="name"> 
        /// Points to a null terminated string containing the name of the uniform variable whose location is to be queried.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetUniformLocation")]
        [CLSCompliant(false)]
        public static Int32 GetUniformLocation(UInt32 program, String name) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the value of a subroutine uniform of a given shader stage of the current program
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the subroutine uniform.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Specifies the address of a variable to receive the value or values of the subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformSubroutineuiv")]
        [CLSCompliant(false)]
        public static void GetUniformSubroutine(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 location, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the value of a subroutine uniform of a given shader stage of the current program
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the subroutine uniform.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Specifies the address of a variable to receive the value or values of the subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformSubroutineuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniformSubroutine(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 location, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the value of a subroutine uniform of a given shader stage of the current program
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the subroutine uniform.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Specifies the address of a variable to receive the value or values of the subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformSubroutineuiv")]
        [CLSCompliant(false)]
        public static void GetUniformSubroutine(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 location, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Retrieve the value of a subroutine uniform of a given shader stage of the current program
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the subroutine uniform.
        /// </param>
        /// <param name="@params">[length: 1] 
        /// Specifies the address of a variable to receive the value or values of the subroutine uniform.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glGetUniformSubroutineuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniformSubroutine(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 location, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program,location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetUniformuiv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] UInt32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program,location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetUniformuiv")]
        [CLSCompliant(false)]
        public static void GetUniform(UInt32 program, Int32 location, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Returns the value of a uniform variable
        /// </summary>
        /// <param name="program"> 
        /// Specifies the program object to be queried.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be queried.
        /// </param>
        /// <param name="@params">[length: program,location] 
        /// Returns the value of the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetUniformuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetUniform(UInt32 program, Int32 location, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribdv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Single @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribfv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribI(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIiv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttribI(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribI(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIiv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttribI(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIuiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribI(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glGetVertexAttribIuiv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttribI(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return a generic vertex attribute parameter
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be queried.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the vertex attribute parameter to be queried. Accepted values are VertexAttribArrayBufferBinding, VertexAttribArrayEnabled, VertexAttribArraySize, VertexAttribArrayStride, VertexAttribArrayType, VertexAttribArrayNormalized, VertexAttribArrayInteger, VertexAttribArrayDivisor, or CurrentVertexAttrib.
        /// </param>
        /// <param name="@params">[length: 4] 
        /// Returns the requested data.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribiv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttrib(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttribL(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] out Double @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glGetVertexAttribLdv")]
        [CLSCompliant(false)]
        public static unsafe void GetVertexAttribL(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribParameter pname, [OutAttribute] Double* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [OutAttribute] IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[,] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[,,] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(Int32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] ref T2 pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [OutAttribute] IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[,] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] T2[,,] pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Return the address of the specified generic vertex attribute pointer
        /// </summary>
        /// <param name="index"> 
        /// Specifies the generic vertex attribute parameter to be returned.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be VertexAttribArrayPointer.
        /// </param>
        /// <param name="pointer">[length: 1] 
        /// Returns the pointer value.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glGetVertexAttribPointerv")]
        [CLSCompliant(false)]
        public static void GetVertexAttribPointer<T2>(UInt32 index, OpenTK.Graphics.OpenGL4.VertexAttribPointerParameter pname, [InAttribute, OutAttribute] ref T2 pointer)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify implementation-specific hints
        /// </summary>
        /// <param name="target"> 
        /// Specifies a symbolic constant indicating the behavior to be controlled. LineSmoothHint, PolygonSmoothHint, TextureCompressionHint, and FragmentShaderDerivativeHint are accepted.
        /// </param>
        /// <param name="mode"> 
        /// Specifies a symbolic constant indicating the desired behavior. Fastest, Nicest, and DontCare are accepted.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glHint")]
        public static void Hint(OpenTK.Graphics.OpenGL4.HintTarget target, OpenTK.Graphics.OpenGL4.HintMode mode) { throw new NotImplementedException(); }

        /// <summary>
        /// Define histogram table
        /// </summary>
        /// <param name="target"> 
        /// The histogram whose parameters are to be set. Must be one of Histogram or ProxyHistogram.
        /// </param>
        /// <param name="width"> 
        /// The number of entries in the histogram table.  Must be a power of 2.
        /// </param>
        /// <param name="internalformat"> 
        /// The format of entries in the histogram table. Must be one of Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="sink"> 
        /// If True, pixels will be consumed by the histogramming process and no drawing or texture loading will take place. If False, pixels will proceed to the minmax process after histogramming.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glHistogram")]
        public static void Histogram(OpenTK.Graphics.OpenGL4.HistogramTarget target, Int32 width, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, bool sink) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content of a buffer object's data store
        /// </summary>
        /// <param name="buffer"> 
        /// The name of a buffer object whose data store to invalidate.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateBufferData")]
        [CLSCompliant(false)]
        public static void InvalidateBufferData(Int32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content of a buffer object's data store
        /// </summary>
        /// <param name="buffer"> 
        /// The name of a buffer object whose data store to invalidate.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateBufferData")]
        [CLSCompliant(false)]
        public static void InvalidateBufferData(UInt32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate a region of a buffer object's data store
        /// </summary>
        /// <param name="buffer"> 
        /// The name of a buffer object, a subrange of whose data store to invalidate.
        /// </param>
        /// <param name="offset"> 
        /// The offset within the buffer's data store of the start of the range to be invalidated.
        /// </param>
        /// <param name="length"> 
        /// The length of the range within the buffer's data store to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateBufferSubData")]
        [CLSCompliant(false)]
        public static void InvalidateBufferSubData(Int32 buffer, IntPtr offset, IntPtr length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate a region of a buffer object's data store
        /// </summary>
        /// <param name="buffer"> 
        /// The name of a buffer object, a subrange of whose data store to invalidate.
        /// </param>
        /// <param name="offset"> 
        /// The offset within the buffer's data store of the start of the range to be invalidated.
        /// </param>
        /// <param name="length"> 
        /// The length of the range within the buffer's data store to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateBufferSubData")]
        [CLSCompliant(false)]
        public static void InvalidateBufferSubData(UInt32 buffer, IntPtr offset, IntPtr length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateFramebuffer")]
        [CLSCompliant(false)]
        public static void InvalidateFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, OpenTK.Graphics.OpenGL4.FramebufferAttachment[] attachments) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateFramebuffer")]
        [CLSCompliant(false)]
        public static void InvalidateFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, ref OpenTK.Graphics.OpenGL4.FramebufferAttachment attachments) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateFramebuffer")]
        [CLSCompliant(false)]
        public static unsafe void InvalidateFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, OpenTK.Graphics.OpenGL4.FramebufferAttachment* attachments) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content of a region of some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        /// <param name="x"> 
        /// The X offset of the region to be invalidated.
        /// </param>
        /// <param name="y"> 
        /// The Y offset of the region to be invalidated.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be invalidated.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateSubFramebuffer")]
        [CLSCompliant(false)]
        public static void InvalidateSubFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, OpenTK.Graphics.OpenGL4.FramebufferAttachment[] attachments, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content of a region of some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        /// <param name="x"> 
        /// The X offset of the region to be invalidated.
        /// </param>
        /// <param name="y"> 
        /// The Y offset of the region to be invalidated.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be invalidated.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateSubFramebuffer")]
        [CLSCompliant(false)]
        public static void InvalidateSubFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, ref OpenTK.Graphics.OpenGL4.FramebufferAttachment attachments, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the content of a region of some or all of a framebuffer object's attachments
        /// </summary>
        /// <param name="target"> 
        /// The target to which the framebuffer is attached. target must be Framebuffer, DrawFramebuffer, or ReadFramebuffer.
        /// </param>
        /// <param name="numAttachments"> 
        /// The number of entries in the attachments array.
        /// </param>
        /// <param name="attachments">[length: numAttachments] 
        /// The address of an array identifying the attachments to be invalidated.
        /// </param>
        /// <param name="x"> 
        /// The X offset of the region to be invalidated.
        /// </param>
        /// <param name="y"> 
        /// The Y offset of the region to be invalidated.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be invalidated.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateSubFramebuffer")]
        [CLSCompliant(false)]
        public static unsafe void InvalidateSubFramebuffer(OpenTK.Graphics.OpenGL4.FramebufferTarget target, Int32 numAttachments, OpenTK.Graphics.OpenGL4.FramebufferAttachment* attachments, Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the entirety a texture image
        /// </summary>
        /// <param name="texture"> 
        /// The name of a texture object to invalidate.
        /// </param>
        /// <param name="level"> 
        /// The level of detail of the texture object to invalidate.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateTexImage")]
        [CLSCompliant(false)]
        public static void InvalidateTexImage(Int32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate the entirety a texture image
        /// </summary>
        /// <param name="texture"> 
        /// The name of a texture object to invalidate.
        /// </param>
        /// <param name="level"> 
        /// The level of detail of the texture object to invalidate.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateTexImage")]
        [CLSCompliant(false)]
        public static void InvalidateTexImage(UInt32 texture, Int32 level) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate a region of a texture image
        /// </summary>
        /// <param name="texture"> 
        /// The name of a texture object a subregion of which to invalidate.
        /// </param>
        /// <param name="level"> 
        /// The level of detail of the texture object within which the region resides.
        /// </param>
        /// <param name="xoffset"> 
        /// The X offset of the region to be invalidated.
        /// </param>
        /// <param name="yoffset"> 
        /// The Y offset of the region to be invalidated.
        /// </param>
        /// <param name="zoffset"> 
        /// The Z offset of the region to be invalidated.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be invalidated.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be invalidated.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateTexSubImage")]
        [CLSCompliant(false)]
        public static void InvalidateTexSubImage(Int32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_invalidate_subdata|VERSION_4_3]
        /// Invalidate a region of a texture image
        /// </summary>
        /// <param name="texture"> 
        /// The name of a texture object a subregion of which to invalidate.
        /// </param>
        /// <param name="level"> 
        /// The level of detail of the texture object within which the region resides.
        /// </param>
        /// <param name="xoffset"> 
        /// The X offset of the region to be invalidated.
        /// </param>
        /// <param name="yoffset"> 
        /// The Y offset of the region to be invalidated.
        /// </param>
        /// <param name="zoffset"> 
        /// The Z offset of the region to be invalidated.
        /// </param>
        /// <param name="width"> 
        /// The width of the region to be invalidated.
        /// </param>
        /// <param name="height"> 
        /// The height of the region to be invalidated.
        /// </param>
        /// <param name="depth"> 
        /// The depth of the region to be invalidated.
        /// </param>
        [AutoGenerated(Category = "ARB_invalidate_subdata|VERSION_4_3", Version = "4.3", EntryPoint = "glInvalidateTexSubImage")]
        [CLSCompliant(false)]
        public static void InvalidateTexSubImage(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Determine if a name corresponds to a buffer object
        /// </summary>
        /// <param name="buffer"> 
        /// Specifies a value that may be the name of a buffer object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glIsBuffer")]
        [CLSCompliant(false)]
        public static bool IsBuffer(Int32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Determine if a name corresponds to a buffer object
        /// </summary>
        /// <param name="buffer"> 
        /// Specifies a value that may be the name of a buffer object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glIsBuffer")]
        [CLSCompliant(false)]
        public static bool IsBuffer(UInt32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Test whether a capability is enabled
        /// </summary>
        /// <param name="cap"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glIsEnabled")]
        public static bool IsEnabled(OpenTK.Graphics.OpenGL4.EnableCap cap) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Test whether a capability is enabled
        /// </summary>
        /// <param name="target"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the capability.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glIsEnabledi")]
        [CLSCompliant(false)]
        public static bool IsEnabled(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Test whether a capability is enabled
        /// </summary>
        /// <param name="target"> 
        /// Specifies a symbolic constant indicating a GL capability.
        /// </param>
        /// <param name="index"> 
        /// Specifies the index of the capability.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glIsEnabledi")]
        [CLSCompliant(false)]
        public static bool IsEnabled(OpenTK.Graphics.OpenGL4.IndexedEnableCap target, UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Determine if a name corresponds to a framebuffer object
        /// </summary>
        /// <param name="framebuffer"> 
        /// Specifies a value that may be the name of a framebuffer object.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsFramebuffer")]
        [CLSCompliant(false)]
        public static bool IsFramebuffer(Int32 framebuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Determine if a name corresponds to a framebuffer object
        /// </summary>
        /// <param name="framebuffer"> 
        /// Specifies a value that may be the name of a framebuffer object.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsFramebuffer")]
        [CLSCompliant(false)]
        public static bool IsFramebuffer(UInt32 framebuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Determines if a name corresponds to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies a potential program object.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glIsProgram")]
        [CLSCompliant(false)]
        public static bool IsProgram(Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Determines if a name corresponds to a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies a potential program object.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glIsProgram")]
        [CLSCompliant(false)]
        public static bool IsProgram(UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Determine if a name corresponds to a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies a value that may be the name of a program pipeline object.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glIsProgramPipeline")]
        [CLSCompliant(false)]
        public static bool IsProgramPipeline(Int32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Determine if a name corresponds to a program pipeline object
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies a value that may be the name of a program pipeline object.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glIsProgramPipeline")]
        [CLSCompliant(false)]
        public static bool IsProgramPipeline(UInt32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Determine if a name corresponds to a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies a value that may be the name of a query object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glIsQuery")]
        [CLSCompliant(false)]
        public static bool IsQuery(Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Determine if a name corresponds to a query object
        /// </summary>
        /// <param name="id"> 
        /// Specifies a value that may be the name of a query object.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glIsQuery")]
        [CLSCompliant(false)]
        public static bool IsQuery(UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Determine if a name corresponds to a renderbuffer object
        /// </summary>
        /// <param name="renderbuffer"> 
        /// Specifies a value that may be the name of a renderbuffer object.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsRenderbuffer")]
        [CLSCompliant(false)]
        public static bool IsRenderbuffer(Int32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Determine if a name corresponds to a renderbuffer object
        /// </summary>
        /// <param name="renderbuffer"> 
        /// Specifies a value that may be the name of a renderbuffer object.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsRenderbuffer")]
        [CLSCompliant(false)]
        public static bool IsRenderbuffer(UInt32 renderbuffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Determine if a name corresponds to a sampler object
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies a value that may be the name of a sampler object.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glIsSampler")]
        [CLSCompliant(false)]
        public static bool IsSampler(Int32 sampler) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Determine if a name corresponds to a sampler object
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies a value that may be the name of a sampler object.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glIsSampler")]
        [CLSCompliant(false)]
        public static bool IsSampler(UInt32 sampler) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Determines if a name corresponds to a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies a potential shader object.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glIsShader")]
        [CLSCompliant(false)]
        public static bool IsShader(Int32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Determines if a name corresponds to a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies a potential shader object.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glIsShader")]
        [CLSCompliant(false)]
        public static bool IsShader(UInt32 shader) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Determine if a name corresponds to a sync object
        /// </summary>
        /// <param name="sync"> 
        /// Specifies a value that may be the name of a sync object.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glIsSync")]
        public static bool IsSync(IntPtr sync) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Determine if a name corresponds to a texture
        /// </summary>
        /// <param name="texture"> 
        /// Specifies a value that may be the name of a texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glIsTexture")]
        [CLSCompliant(false)]
        public static bool IsTexture(Int32 texture) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Determine if a name corresponds to a texture
        /// </summary>
        /// <param name="texture"> 
        /// Specifies a value that may be the name of a texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glIsTexture")]
        [CLSCompliant(false)]
        public static bool IsTexture(UInt32 texture) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Determine if a name corresponds to a transform feedback object
        /// </summary>
        /// <param name="id"> 
        /// Specifies a value that may be the name of a transform feedback object.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glIsTransformFeedback")]
        [CLSCompliant(false)]
        public static bool IsTransformFeedback(Int32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Determine if a name corresponds to a transform feedback object
        /// </summary>
        /// <param name="id"> 
        /// Specifies a value that may be the name of a transform feedback object.
        /// </param>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glIsTransformFeedback")]
        [CLSCompliant(false)]
        public static bool IsTransformFeedback(UInt32 id) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Determine if a name corresponds to a vertex array object
        /// </summary>
        /// <param name="array"> 
        /// Specifies a value that may be the name of a vertex array object.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsVertexArray")]
        [CLSCompliant(false)]
        public static bool IsVertexArray(Int32 array) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_vertex_array_object|VERSION_3_0]
        /// Determine if a name corresponds to a vertex array object
        /// </summary>
        /// <param name="array"> 
        /// Specifies a value that may be the name of a vertex array object.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_array_object|VERSION_3_0", Version = "3.0", EntryPoint = "glIsVertexArray")]
        [CLSCompliant(false)]
        public static bool IsVertexArray(UInt32 array) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify the width of rasterized lines
        /// </summary>
        /// <param name="width"> 
        /// Specifies the width of rasterized lines. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glLineWidth")]
        public static void LineWidth(Single width) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Links a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object to be linked.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glLinkProgram")]
        [CLSCompliant(false)]
        public static void LinkProgram(Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Links a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object to be linked.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glLinkProgram")]
        [CLSCompliant(false)]
        public static void LinkProgram(UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a logical pixel operation for rendering
        /// </summary>
        /// <param name="opcode"> 
        /// Specifies a symbolic constant that selects a logical operation. The following symbols are accepted: Clear, Set, Copy, CopyInverted, Noop, Invert, And, Nand, Or, Nor, Xor, Equiv, AndReverse, AndInverted, OrReverse, and OrInverted. The initial value is Copy.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glLogicOp")]
        public static void LogicOp(OpenTK.Graphics.OpenGL4.LogicOp opcode) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]
        /// Map a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target buffer object being mapped. The symbolic constant must be ArrayBuffer, AtomicCounterBuffer, CopyReadBuffer, CopyWriteBuffer, DrawIndirectBuffer, DispatchIndirectBuffer, ElementArrayBuffer, PixelPackBuffer, PixelUnpackBuffer, QueryBuffer, ShaderStorageBuffer, TextureBuffer, TransformFeedbackBuffer or UniformBuffer.
        /// </param>
        /// <param name="access"> 
        /// For glMapBuffer only, specifies the access policy, indicating whether it will be possible to read from, write to, or both read from and write to the buffer object's mapped data store. The symbolic constant must be ReadOnly, WriteOnly, or ReadWrite.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glMapBuffer")]
        public static IntPtr MapBuffer(OpenTK.Graphics.OpenGL4.BufferTarget target, OpenTK.Graphics.OpenGL4.BufferAccess access) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_map_buffer_range|VERSION_3_0]
        /// Map a section of a buffer object's data store
        /// </summary>
        /// <param name="target"> 
        /// Specifies a binding to which the target buffer is bound.
        /// </param>
        /// <param name="offset"> 
        /// Specifies a the starting offset within the buffer of the range to be mapped.
        /// </param>
        /// <param name="length"> 
        /// Specifies a length of the range to be mapped.
        /// </param>
        /// <param name="access"> 
        /// Specifies a combination of access flags indicating the desired access to the range.
        /// </param>
        [AutoGenerated(Category = "ARB_map_buffer_range|VERSION_3_0", Version = "3.0", EntryPoint = "glMapBufferRange")]
        public static IntPtr MapBufferRange(OpenTK.Graphics.OpenGL4.BufferTarget target, IntPtr offset, IntPtr length, OpenTK.Graphics.OpenGL4.BufferAccessMask access) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_shader_image_load_store|VERSION_4_2]
        /// Defines a barrier ordering memory transactions
        /// </summary>
        /// <param name="barriers"> 
        /// Specifies the barriers to insert. Must be a bitwise combination of VertexAttribArrayBarrierBit, ElementArrayBarrierBit, UniformBarrierBit, TextureFetchBarrierBit, ShaderImageAccessBarrierBit, CommandBarrierBit, PixelBufferBarrierBit, TextureUpdateBarrierBit, BufferUpdateBarrierBit, FramebufferBarrierBit, TransformFeedbackBarrierBit, AtomicCounterBarrierBit, or ShaderStorageBarrierBit. If the special value AllBarrierBits is specified, all supported barriers will be inserted.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_image_load_store|VERSION_4_2", Version = "4.2", EntryPoint = "glMemoryBarrier")]
        public static void MemoryBarrier(OpenTK.Graphics.OpenGL4.MemoryBarrierFlags barriers) { throw new NotImplementedException(); }

        /// <summary>
        /// Define minmax table
        /// </summary>
        /// <param name="target"> 
        /// The minmax table whose parameters are to be set. Must be Minmax.
        /// </param>
        /// <param name="internalformat"> 
        /// The format of entries in the minmax table. Must be one of Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="sink"> 
        /// If True, pixels will be consumed by the minmax process and no drawing or texture loading will take place. If False, pixels will proceed to the final conversion process after minmax.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glMinmax")]
        public static void Minmax(OpenTK.Graphics.OpenGL4.MinmaxTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, bool sink) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0]
        /// Specifies minimum rate at which sample shaing takes place
        /// </summary>
        /// <param name="value"> 
        /// Specifies the rate at which samples are shaded within each covered pixel.
        /// </param>
        [AutoGenerated(Category = "VERSION_4_0", Version = "4.0", EntryPoint = "glMinSampleShading")]
        public static void MinSampleShading(Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first">[length: count] 
        /// Points to an array of starting indices in the enabled arrays.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the number of indices to be rendered.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the first and count
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
        [CLSCompliant(false)]
        public static void MultiDrawArrays(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] first, Int32[] count, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first">[length: count] 
        /// Points to an array of starting indices in the enabled arrays.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the number of indices to be rendered.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the first and count
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
        [CLSCompliant(false)]
        public static void MultiDrawArrays(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 first, ref Int32 count, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives from array data
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="first">[length: count] 
        /// Points to an array of starting indices in the enabled arrays.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the number of indices to be rendered.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the first and count
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawArrays(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* first, Int32* count, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render multiple sets of primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of an array of structures containing the draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the the number of elements in the array of draw parameter structures.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawArraysIndirect")]
        public static void MultiDrawArraysIndirect(OpenTK.Graphics.OpenGL4.PrimitiveType mode, IntPtr indirect, Int32 drawcount, Int32 stride) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render multiple sets of primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of an array of structures containing the draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the the number of elements in the array of draw parameter structures.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[] indirect, Int32 drawcount, Int32 stride)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render multiple sets of primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of an array of structures containing the draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the the number of elements in the array of draw parameter structures.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[,] indirect, Int32 drawcount, Int32 stride)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render multiple sets of primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of an array of structures containing the draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the the number of elements in the array of draw parameter structures.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawArraysIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] T1[,,] indirect, Int32 drawcount, Int32 stride)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render multiple sets of primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of an array of structures containing the draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the the number of elements in the array of draw parameter structures.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawArraysIndirect")]
        public static void MultiDrawArraysIndirect<T1>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, [InAttribute, OutAttribute] ref T1 indirect, Int32 drawcount, Int32 stride)
            where T1 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElements(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Render multiple sets of primitives by specifying indices of array data elements
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count and indices arrays.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawElements")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElements<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount, Int32[] basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount, Int32[] basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount, Int32[] basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount, Int32[] basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32[] count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount, Int32[] basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount, ref Int32 basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount, ref Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount, ref Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount, ref Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, ref Int32 count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount, ref Int32 basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElementsBaseVertex(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, IntPtr indices, Int32 drawcount, Int32* basevertex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices, Int32 drawcount, Int32* basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices, Int32 drawcount, Int32* basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices, Int32 drawcount, Int32* basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_draw_elements_base_vertex|VERSION_3_2]
        /// Render multiple sets of primitives by specifying indices of array data elements and an index to apply to each index
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency and Patches are accepted.
        /// </param>
        /// <param name="count">[length: drawcount] 
        /// Points to an array of the elements counts.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of the values in indices. Must be one of UnsignedByte, UnsignedShort, or UnsignedInt.
        /// </param>
        /// <param name="indices">[length: drawcount] 
        /// Specifies a pointer to the location where the indices are stored.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the size of the count, indices and basevertex arrays.
        /// </param>
        /// <param name="basevertex">[length: drawcount] 
        /// Specifies a pointer to the location where the base vertices are stored.
        /// </param>
        [AutoGenerated(Category = "ARB_draw_elements_base_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glMultiDrawElementsBaseVertex")]
        [CLSCompliant(false)]
        public static unsafe void MultiDrawElementsBaseVertex<T3>(OpenTK.Graphics.OpenGL4.PrimitiveType mode, Int32* count, OpenTK.Graphics.OpenGL4.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices, Int32 drawcount, Int32* basevertex)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of a structure containing an array of draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the number of elements in the array addressed by indirect.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawElementsIndirect")]
        public static void MultiDrawElementsIndirect(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, IntPtr indirect, Int32 drawcount, Int32 stride) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of a structure containing an array of draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the number of elements in the array addressed by indirect.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[] indirect, Int32 drawcount, Int32 stride)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of a structure containing an array of draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the number of elements in the array addressed by indirect.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[,] indirect, Int32 drawcount, Int32 stride)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of a structure containing an array of draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the number of elements in the array addressed by indirect.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawElementsIndirect")]
        [CLSCompliant(false)]
        public static void MultiDrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] T2[,,] indirect, Int32 drawcount, Int32 stride)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_multi_draw_indirect|VERSION_4_3]
        /// Render indexed primitives from array data, taking parameters from memory
        /// </summary>
        /// <param name="mode"> 
        /// Specifies what kind of primitives to render. Symbolic constants Points, LineStrip, LineLoop, Lines, LineStripAdjacency, LinesAdjacency, TriangleStrip, TriangleFan, Triangles, TriangleStripAdjacency, TrianglesAdjacency, and Patches are accepted.
        /// </param>
        /// <param name="type"> 
        /// Specifies the type of data in the buffer bound to the ElementArrayBuffer binding.
        /// </param>
        /// <param name="indirect">[length: drawcount,stride] 
        /// Specifies the address of a structure containing an array of draw parameters.
        /// </param>
        /// <param name="drawcount"> 
        /// Specifies the number of elements in the array addressed by indirect.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the distance in basic machine units between elements of the draw parameter array.
        /// </param>
        [AutoGenerated(Category = "ARB_multi_draw_indirect|VERSION_4_3", Version = "4.3", EntryPoint = "glMultiDrawElementsIndirect")]
        public static void MultiDrawElementsIndirect<T2>(OpenTK.Graphics.OpenGL4.All mode, OpenTK.Graphics.OpenGL4.All type, [InAttribute, OutAttribute] ref T2 indirect, Int32 drawcount, Int32 stride)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP1ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP1(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP1ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP1(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP1(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP1(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP2ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP2(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP2ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP2(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP2(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP2(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP3ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP3(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP3ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP3(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP3(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP3(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP4ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP4(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP4ui")]
        [CLSCompliant(false)]
        public static void MultiTexCoordP4(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP4(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="texture"></param>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glMultiTexCoordP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void MultiTexCoordP4(OpenTK.Graphics.OpenGL4.TextureUnit texture, OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glNormalP3ui")]
        [CLSCompliant(false)]
        public static void NormalP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glNormalP3ui")]
        [CLSCompliant(false)]
        public static void NormalP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glNormalP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void NormalP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glNormalP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void NormalP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object to label.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectLabel")]
        [CLSCompliant(false)]
        public static void ObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, Int32 name, Int32 length, String label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a named object identified within a namespace
        /// </summary>
        /// <param name="identifier"> 
        /// The namespace from which the name of the object is allocated.
        /// </param>
        /// <param name="name"> 
        /// The name of the object to label.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectLabel")]
        [CLSCompliant(false)]
        public static void ObjectLabel(OpenTK.Graphics.OpenGL4.ObjectLabelIdentifier identifier, UInt32 name, Int32 length, String label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// A pointer identifying a sync object.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectPtrLabel")]
        public static void ObjectPtrLabel(IntPtr ptr, Int32 length, String label) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// A pointer identifying a sync object.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 length, String label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// A pointer identifying a sync object.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 length, String label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// A pointer identifying a sync object.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectPtrLabel")]
        [CLSCompliant(false)]
        public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 length, String label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Label a a sync object identified by a pointer
        /// </summary>
        /// <param name="ptr"> 
        /// A pointer identifying a sync object.
        /// </param>
        /// <param name="length"> 
        /// The length of the label to be used for the object.
        /// </param>
        /// <param name="label">[length: label,length] 
        /// The address of a string containing the label to assign to the object.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glObjectPtrLabel")]
        public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 length, String label)
            where T0 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_tessellation_shader|VERSION_4_0]
        /// Specifies the parameters for patch primitives
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to set. The symbolc constants PatchVertices, PatchDefaultOuterLevel, and PatchDefaultInnerLevel are accepted.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of an array containing the new values for the parameter given by pname.
        /// </param>
        [AutoGenerated(Category = "ARB_tessellation_shader|VERSION_4_0", Version = "4.0", EntryPoint = "glPatchParameterfv")]
        [CLSCompliant(false)]
        public static void PatchParameter(OpenTK.Graphics.OpenGL4.PatchParameterFloat pname, Single[] values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_tessellation_shader|VERSION_4_0]
        /// Specifies the parameters for patch primitives
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to set. The symbolc constants PatchVertices, PatchDefaultOuterLevel, and PatchDefaultInnerLevel are accepted.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of an array containing the new values for the parameter given by pname.
        /// </param>
        [AutoGenerated(Category = "ARB_tessellation_shader|VERSION_4_0", Version = "4.0", EntryPoint = "glPatchParameterfv")]
        [CLSCompliant(false)]
        public static void PatchParameter(OpenTK.Graphics.OpenGL4.PatchParameterFloat pname, ref Single values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_tessellation_shader|VERSION_4_0]
        /// Specifies the parameters for patch primitives
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to set. The symbolc constants PatchVertices, PatchDefaultOuterLevel, and PatchDefaultInnerLevel are accepted.
        /// </param>
        /// <param name="values">[length: pname] 
        /// Specifies the address of an array containing the new values for the parameter given by pname.
        /// </param>
        [AutoGenerated(Category = "ARB_tessellation_shader|VERSION_4_0", Version = "4.0", EntryPoint = "glPatchParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void PatchParameter(OpenTK.Graphics.OpenGL4.PatchParameterFloat pname, Single* values) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_tessellation_shader|VERSION_4_0]
        /// Specifies the parameters for patch primitives
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to set. The symbolc constants PatchVertices, PatchDefaultOuterLevel, and PatchDefaultInnerLevel are accepted.
        /// </param>
        /// <param name="value"> 
        /// Specifies the new value for the parameter given by pname.
        /// </param>
        [AutoGenerated(Category = "ARB_tessellation_shader|VERSION_4_0", Version = "4.0", EntryPoint = "glPatchParameteri")]
        public static void PatchParameter(OpenTK.Graphics.OpenGL4.PatchParameterInt pname, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Pause transform feedback operations
        /// </summary>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glPauseTransformFeedback")]
        public static void PauseTransformFeedback() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set pixel storage modes
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the parameter to be set. Six values affect the packing of pixel data into memory: PackSwapBytes, PackLsbFirst, PackRowLength, PackImageHeight, PackSkipPixels, PackSkipRows, PackSkipImages, and PackAlignment. Six more affect the unpacking of pixel data from memory: UnpackSwapBytes, UnpackLsbFirst, UnpackRowLength, UnpackImageHeight, UnpackSkipPixels, UnpackSkipRows, UnpackSkipImages, and UnpackAlignment.
        /// </param>
        /// <param name="param"> 
        /// Specifies the value that pname is set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glPixelStoref")]
        public static void PixelStore(OpenTK.Graphics.OpenGL4.PixelStoreParameter pname, Single param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set pixel storage modes
        /// </summary>
        /// <param name="pname"> 
        /// Specifies the symbolic name of the parameter to be set. Six values affect the packing of pixel data into memory: PackSwapBytes, PackLsbFirst, PackRowLength, PackImageHeight, PackSkipPixels, PackSkipRows, PackSkipImages, and PackAlignment. Six more affect the unpacking of pixel data from memory: UnpackSwapBytes, UnpackLsbFirst, UnpackRowLength, UnpackImageHeight, UnpackSkipPixels, UnpackSkipRows, UnpackSkipImages, and UnpackAlignment.
        /// </param>
        /// <param name="param"> 
        /// Specifies the value that pname is set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glPixelStorei")]
        public static void PixelStore(OpenTK.Graphics.OpenGL4.PixelStoreParameter pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="param"> 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameterf")]
        public static void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Single param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameterfv")]
        [CLSCompliant(false)]
        public static void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="param"> 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameteri")]
        public static void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameteriv")]
        [CLSCompliant(false)]
        public static void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.4]
        /// Specify point parameters
        /// </summary>
        /// <param name="pname"> 
        /// Specifies a single-valued point parameter. PointFadeThresholdSize, and PointSpriteCoordOrigin are accepted.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For glPointParameterf and glPointParameteri, specifies the value that pname will be set to.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glPointParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void PointParameter(OpenTK.Graphics.OpenGL4.PointParameterName pname, Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify the diameter of rasterized points
        /// </summary>
        /// <param name="size"> 
        /// Specifies the diameter of rasterized points. The initial value is 1.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glPointSize")]
        public static void PointSize(Single size) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Select a polygon rasterization mode
        /// </summary>
        /// <param name="face"> 
        /// Specifies the polygons that mode applies to. Must be FrontAndBack for front- and back-facing polygons.
        /// </param>
        /// <param name="mode"> 
        /// Specifies how polygons will be rasterized. Accepted values are Point, Line, and Fill. The initial value is Fill for both front- and back-facing polygons.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glPolygonMode")]
        public static void PolygonMode(OpenTK.Graphics.OpenGL4.MaterialFace face, OpenTK.Graphics.OpenGL4.PolygonMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Set the scale and units used to calculate depth values
        /// </summary>
        /// <param name="factor"> 
        /// Specifies a scale factor that is used to create a variable depth offset for each polygon. The initial value is 0.
        /// </param>
        /// <param name="units"> 
        /// Is multiplied by an implementation-specific value to create a constant depth offset. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glPolygonOffset")]
        public static void PolygonOffset(Single factor, Single units) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Pop the active debug group
        /// </summary>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glPopDebugGroup")]
        public static void PopDebugGroup() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Specify the primitive restart index
        /// </summary>
        /// <param name="index"> 
        /// Specifies the value to be interpreted as the primitive restart index.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glPrimitiveRestartIndex")]
        [CLSCompliant(false)]
        public static void PrimitiveRestartIndex(Int32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Specify the primitive restart index
        /// </summary>
        /// <param name="index"> 
        /// Specifies the value to be interpreted as the primitive restart index.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glPrimitiveRestartIndex")]
        [CLSCompliant(false)]
        public static void PrimitiveRestartIndex(UInt32 index) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary(Int32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(Int32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(Int32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[,] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(Int32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[,,] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(Int32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] ref T2 binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary(UInt32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(UInt32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(UInt32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[,] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(UInt32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] T2[,,] binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Load a program object with a program binary
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object into which to load a program binary.
        /// </param>
        /// <param name="binaryFormat"> 
        /// Specifies the format of the binary data in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address an array containing the binary to be loaded into program.
        /// </param>
        /// <param name="length"> 
        /// Specifies the number of bytes contained in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramBinary")]
        [CLSCompliant(false)]
        public static void ProgramBinary<T2>(UInt32 program, OpenTK.Graphics.OpenGL4.BinaryFormat binaryFormat, [InAttribute, OutAttribute] ref T2 binary, Int32 length)
            where T2 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Specify a parameter for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to modify.
        /// </param>
        /// <param name="value"> 
        /// Specifies the new value of the parameter specified by pname for program.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramParameteri")]
        [CLSCompliant(false)]
        public static void ProgramParameter(Int32 program, OpenTK.Graphics.OpenGL4.ProgramParameterName pname, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_get_program_binary|VERSION_4_1]
        /// Specify a parameter for a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the name of a program object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the name of the parameter to modify.
        /// </param>
        /// <param name="value"> 
        /// Specifies the new value of the parameter specified by pname for program.
        /// </param>
        [AutoGenerated(Category = "ARB_get_program_binary|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramParameteri")]
        [CLSCompliant(false)]
        public static void ProgramParameter(UInt32 program, OpenTK.Graphics.OpenGL4.ProgramParameterName pname, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1d")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Double v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1d")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Double v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(Int32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(UInt32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1f")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Single v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1f")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Single v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(Int32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(UInt32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1i")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Int32 v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1i")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Int32 v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(Int32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(Int32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(UInt32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1ui")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, UInt32 v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform1(UInt32 program, Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform1uiv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform1(UInt32 program, Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2d")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Double v0, Double v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2d")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Double v0, Double v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(Int32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2f")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Single v0, Single v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2f")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Single v0, Single v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(Int32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2i")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 v0, Int32 v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2i")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 v0, Int32 v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(Int32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(Int32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(UInt32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2ui")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, UInt32 v0, UInt32 v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform2(UInt32 program, Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform2uiv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform2(UInt32 program, Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3d")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Double v0, Double v1, Double v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3d")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Double v0, Double v1, Double v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(Int32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3f")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Single v0, Single v1, Single v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3f")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Single v0, Single v1, Single v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(Int32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3i")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3i")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(Int32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(Int32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(UInt32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3ui")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, UInt32 v0, UInt32 v1, UInt32 v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform3(UInt32 program, Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform3uiv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform3(UInt32 program, Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4d")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Double v0, Double v1, Double v2, Double v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4d")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Double v0, Double v1, Double v2, Double v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(Int32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4f")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Single v0, Single v1, Single v2, Single v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4f")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Single v0, Single v1, Single v2, Single v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(Int32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4i")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2, Int32 v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4i")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2, Int32 v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(Int32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(Int32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4iv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(UInt32 program, Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4ui")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, UInt32 v0, UInt32 v1, UInt32 v2, UInt32 v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4uiv")]
        [CLSCompliant(false)]
        public static void ProgramUniform4(UInt32 program, Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Specify the value of a uniform variable for a specified program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program containing the uniform variable to be modified.
        /// </param>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector commands (glProgramUniform*v), specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix commands (glProgramUniformMatrix*), specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: 4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniform4uiv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniform4(UInt32 program, Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 2]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x3(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x3(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x4(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix2x4(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 3]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x2(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x2(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x4(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix3x4(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: 4]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x2(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x2(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x3(Int32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]</summary>
        /// <param name="program"></param>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count]</param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glProgramUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static unsafe void ProgramUniformMatrix4x3(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_provoking_vertex|VERSION_3_2]
        /// Specifiy the vertex to be used as the source of data for flat shaded varyings
        /// </summary>
        /// <param name="mode"> 
        /// Specifies the vertex to be used as the source of data for flat shaded varyings.
        /// </param>
        [AutoGenerated(Category = "ARB_provoking_vertex|VERSION_3_2", Version = "3.2", EntryPoint = "glProvokingVertex")]
        public static void ProvokingVertex(OpenTK.Graphics.OpenGL4.ProvokingVertexMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Push a named debug group into the command stream
        /// </summary>
        /// <param name="source"> 
        /// The source of the debug message.
        /// </param>
        /// <param name="id"> 
        /// The identifier of the message.
        /// </param>
        /// <param name="length"> 
        /// The length of the message to be sent to the debug output stream.
        /// </param>
        /// <param name="message">[length: message,length] 
        /// The a string containing the message to be sent to the debug output stream.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glPushDebugGroup")]
        [CLSCompliant(false)]
        public static void PushDebugGroup(OpenTK.Graphics.OpenGL4.DebugSourceExternal source, Int32 id, Int32 length, String message) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or KHR_debug|VERSION_4_3]
        /// Push a named debug group into the command stream
        /// </summary>
        /// <param name="source"> 
        /// The source of the debug message.
        /// </param>
        /// <param name="id"> 
        /// The identifier of the message.
        /// </param>
        /// <param name="length"> 
        /// The length of the message to be sent to the debug output stream.
        /// </param>
        /// <param name="message">[length: message,length] 
        /// The a string containing the message to be sent to the debug output stream.
        /// </param>
        [AutoGenerated(Category = "KHR_debug|VERSION_4_3", Version = "4.3", EntryPoint = "glPushDebugGroup")]
        [CLSCompliant(false)]
        public static void PushDebugGroup(OpenTK.Graphics.OpenGL4.DebugSourceExternal source, UInt32 id, Int32 length, String message) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.
        /// </summary>
        /// <param name="id"> 
        /// Specify the name of a query object into which to record the GL time.
        /// </param>
        /// <param name="target"> 
        /// Specify the counter to query. target must be Timestamp.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glQueryCounter")]
        [CLSCompliant(false)]
        public static void QueryCounter(Int32 id, OpenTK.Graphics.OpenGL4.QueryCounterTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_timer_query|VERSION_3_3]
        /// Record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.
        /// </summary>
        /// <param name="id"> 
        /// Specify the name of a query object into which to record the GL time.
        /// </param>
        /// <param name="target"> 
        /// Specify the counter to query. target must be Timestamp.
        /// </param>
        [AutoGenerated(Category = "ARB_timer_query|VERSION_3_3", Version = "3.3", EntryPoint = "glQueryCounter")]
        [CLSCompliant(false)]
        public static void QueryCounter(UInt32 id, OpenTK.Graphics.OpenGL4.QueryCounterTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Select a color buffer source for pixels
        /// </summary>
        /// <param name="mode"> 
        /// Specifies a color buffer. Accepted values are FrontLeft, FrontRight, BackLeft, BackRight, Front, Back, Left, Right, and the constants ColorAttachmenti.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadBuffer")]
        public static void ReadBuffer(OpenTK.Graphics.OpenGL4.ReadBufferMode mode) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Read a block of pixels from the frame buffer
        /// </summary>
        /// <param name="x"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="height"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. Must be one of UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, or Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Returns the pixel data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadPixels")]
        public static void ReadPixels(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [OutAttribute] IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Read a block of pixels from the frame buffer
        /// </summary>
        /// <param name="x"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="height"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. Must be one of UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, or Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Returns the pixel data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadPixels")]
        [CLSCompliant(false)]
        public static void ReadPixels<T6>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Read a block of pixels from the frame buffer
        /// </summary>
        /// <param name="x"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="height"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. Must be one of UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, or Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Returns the pixel data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadPixels")]
        [CLSCompliant(false)]
        public static void ReadPixels<T6>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Read a block of pixels from the frame buffer
        /// </summary>
        /// <param name="x"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="height"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. Must be one of UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, or Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Returns the pixel data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadPixels")]
        [CLSCompliant(false)]
        public static void ReadPixels<T6>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,,] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Read a block of pixels from the frame buffer
        /// </summary>
        /// <param name="x"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="y"> 
        /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="height"> 
        /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: StencilIndex, DepthComponent, DepthStencil, Red, Green, Blue, Rgb, Bgr, Rgba, and Bgra.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. Must be one of UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, HalfFloat, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, UnsignedInt2101010Rev, UnsignedInt248, UnsignedInt10F11F11FRev, UnsignedInt5999Rev, or Float32UnsignedInt248Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Returns the pixel data.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glReadPixels")]
        public static void ReadPixels<T6>(Int32 x, Int32 y, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T6 pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Release resources consumed by the implementation's shader compiler
        /// </summary>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glReleaseShaderCompiler")]
        public static void ReleaseShaderCompiler() { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Establish data storage, format and dimensions of a renderbuffer object's image
        /// </summary>
        /// <param name="target"> 
        /// Specifies a binding to which the target of the allocation and must be Renderbuffer.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format to use for the renderbuffer object's image.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the renderbuffer, in pixels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the renderbuffer, in pixels.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glRenderbufferStorage")]
        public static void RenderbufferStorage(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, OpenTK.Graphics.OpenGL4.RenderbufferStorage internalformat, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0 or ARB_framebuffer_object|VERSION_3_0]
        /// Establish data storage, format, dimensions and sample count of a renderbuffer object's image
        /// </summary>
        /// <param name="target"> 
        /// Specifies a binding to which the target of the allocation and must be Renderbuffer.
        /// </param>
        /// <param name="samples"> 
        /// Specifies the number of samples to be used for the renderbuffer object's storage.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format to use for the renderbuffer object's image.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the renderbuffer, in pixels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the renderbuffer, in pixels.
        /// </param>
        [AutoGenerated(Category = "ARB_framebuffer_object|VERSION_3_0", Version = "3.0", EntryPoint = "glRenderbufferStorageMultisample")]
        public static void RenderbufferStorageMultisample(OpenTK.Graphics.OpenGL4.RenderbufferTarget target, Int32 samples, OpenTK.Graphics.OpenGL4.RenderbufferStorage internalformat, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>
        /// Reset histogram table entries to zero
        /// </summary>
        /// <param name="target"> 
        /// Must be Histogram.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glResetHistogram")]
        public static void ResetHistogram(OpenTK.Graphics.OpenGL4.HistogramTarget target) { throw new NotImplementedException(); }

        /// <summary>
        /// Reset minmax table entries to initial values
        /// </summary>
        /// <param name="target"> 
        /// Must be Minmax.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glResetMinmax")]
        public static void ResetMinmax(OpenTK.Graphics.OpenGL4.MinmaxTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_transform_feedback2|VERSION_4_0]
        /// Resume transform feedback operations
        /// </summary>
        [AutoGenerated(Category = "ARB_transform_feedback2|VERSION_4_0", Version = "4.0", EntryPoint = "glResumeTransformFeedback")]
        public static void ResumeTransformFeedback() { throw new NotImplementedException(); }

        /// <summary>[requires: v1.3]
        /// Specify multisample coverage parameters
        /// </summary>
        /// <param name="value"> 
        /// Specify a single floating-point sample coverage value.  The value is clamped to the range [0 ,1]. The initial value is 1.0.
        /// </param>
        /// <param name="invert"> 
        /// Specify a single boolean value representing if the coverage masks should be inverted.  True and False are accepted.  The initial value is False.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_3", Version = "1.3", EntryPoint = "glSampleCoverage")]
        public static void SampleCoverage(Single value, bool invert) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Set the value of a sub-word of the sample mask
        /// </summary>
        /// <param name="maskNumber"> 
        /// Specifies which 32-bit sub-word of the sample mask to update.
        /// </param>
        /// <param name="mask"> 
        /// Specifies the new value of the mask sub-word.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glSampleMaski")]
        [CLSCompliant(false)]
        public static void SampleMask(Int32 maskNumber, Int32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Set the value of a sub-word of the sample mask
        /// </summary>
        /// <param name="maskNumber"> 
        /// Specifies which 32-bit sub-word of the sample mask to update.
        /// </param>
        /// <param name="mask"> 
        /// Specifies the new value of the mask sub-word.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glSampleMaski")]
        [CLSCompliant(false)]
        public static void SampleMask(UInt32 maskNumber, UInt32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterf")]
        [CLSCompliant(false)]
        public static void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterf")]
        [CLSCompliant(false)]
        public static void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterfv")]
        [CLSCompliant(false)]
        public static void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Single* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteri")]
        [CLSCompliant(false)]
        public static void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteri")]
        [CLSCompliant(false)]
        public static void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, ref Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameterI(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, ref Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, UInt32[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, ref UInt32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]</summary>
        /// <param name="sampler"></param>
        /// <param name="pname"></param>
        /// <param name="param">[length: pname]</param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameterIuiv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameterI(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, UInt32* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameter(Int32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteriv")]
        [CLSCompliant(false)]
        public static void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32[] param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_sampler_objects|VERSION_3_3]
        /// Set sampler parameters
        /// </summary>
        /// <param name="sampler"> 
        /// Specifies the sampler object whose parameter to modify.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a sampler parameter. pname can be one of the following: TextureWrapS, TextureWrapT, TextureWrapR, TextureMinFilter, TextureMagFilter, TextureBorderColor, TextureMinLod, TextureMaxLod, TextureLodBiasTextureCompareMode, or TextureCompareFunc.
        /// </param>
        /// <param name="param">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "ARB_sampler_objects|VERSION_3_3", Version = "3.3", EntryPoint = "glSamplerParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void SamplerParameter(UInt32 sampler, OpenTK.Graphics.OpenGL4.SamplerParameterName pname, Int32* param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Define the scissor box
        /// </summary>
        /// <param name="x"> 
        /// Specify the lower left corner of the scissor box. Initially (0, 0).
        /// </param>
        /// <param name="y"> 
        /// Specify the lower left corner of the scissor box. Initially (0, 0).
        /// </param>
        /// <param name="width"> 
        /// Specify the width and height of the scissor box. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        /// <param name="height"> 
        /// Specify the width and height of the scissor box. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glScissor")]
        public static void Scissor(Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static void ScissorArray(Int32 first, Int32 count, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static void ScissorArray(Int32 first, Int32 count, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static unsafe void ScissorArray(Int32 first, Int32 count, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static void ScissorArray(UInt32 first, Int32 count, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static void ScissorArray(UInt32 first, Int32 count, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specifies the index of the first viewport whose scissor box to modify.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of scissor boxes to modify.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorArrayv")]
        [CLSCompliant(false)]
        public static unsafe void ScissorArray(UInt32 first, Int32 count, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="left"> 
        /// Specify the coordinate of the bottom left corner of the scissor box, in pixels.
        /// </param>
        /// <param name="bottom"> 
        /// Specify the coordinate of the bottom left corner of the scissor box, in pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify ths dimensions of the scissor box, in pixels.
        /// </param>
        /// <param name="height"> 
        /// Specify ths dimensions of the scissor box, in pixels.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexed")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(Int32 index, Int32 left, Int32 bottom, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="left"> 
        /// Specify the coordinate of the bottom left corner of the scissor box, in pixels.
        /// </param>
        /// <param name="bottom"> 
        /// Specify the coordinate of the bottom left corner of the scissor box, in pixels.
        /// </param>
        /// <param name="width"> 
        /// Specify ths dimensions of the scissor box, in pixels.
        /// </param>
        /// <param name="height"> 
        /// Specify ths dimensions of the scissor box, in pixels.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexed")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(UInt32 index, Int32 left, Int32 bottom, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static unsafe void ScissorIndexed(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static void ScissorIndexed(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Define the scissor box for a specific viewport
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the viewport whose scissor box to modify.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glScissorIndexedv")]
        [CLSCompliant(false)]
        public static unsafe void ScissorIndexed(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glSecondaryColorP3ui")]
        [CLSCompliant(false)]
        public static void SecondaryColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glSecondaryColorP3ui")]
        [CLSCompliant(false)]
        public static void SecondaryColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glSecondaryColorP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void SecondaryColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* color) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="color">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glSecondaryColorP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void SecondaryColorP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* color) { throw new NotImplementedException(); }

        /// <summary>
        /// Define a separable two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Separable2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of elements in the pixel array referenced by row. (This is the width of the separable filter kernel.)
        /// </param>
        /// <param name="height"> 
        /// The number of elements in the pixel array referenced by column. (This is the height of the separable filter kernel.)
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in row and column. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Intensity, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in row and column. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the row filter kernel.
        /// </param>
        /// <param name="column">[length: target,format,type,height] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the column filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glSeparableFilter2D")]
        public static void SeparableFilter2D(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr row, IntPtr column) { throw new NotImplementedException(); }

        /// <summary>
        /// Define a separable two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Separable2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of elements in the pixel array referenced by row. (This is the width of the separable filter kernel.)
        /// </param>
        /// <param name="height"> 
        /// The number of elements in the pixel array referenced by column. (This is the height of the separable filter kernel.)
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in row and column. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Intensity, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in row and column. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the row filter kernel.
        /// </param>
        /// <param name="column">[length: target,format,type,height] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the column filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glSeparableFilter2D")]
        [CLSCompliant(false)]
        public static void SeparableFilter2D<T6,T7>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[] row, [InAttribute, OutAttribute] T7[] column)
            where T6 : struct
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a separable two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Separable2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of elements in the pixel array referenced by row. (This is the width of the separable filter kernel.)
        /// </param>
        /// <param name="height"> 
        /// The number of elements in the pixel array referenced by column. (This is the height of the separable filter kernel.)
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in row and column. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Intensity, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in row and column. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the row filter kernel.
        /// </param>
        /// <param name="column">[length: target,format,type,height] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the column filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glSeparableFilter2D")]
        [CLSCompliant(false)]
        public static void SeparableFilter2D<T6,T7>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,] row, [InAttribute, OutAttribute] T7[,] column)
            where T6 : struct
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a separable two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Separable2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of elements in the pixel array referenced by row. (This is the width of the separable filter kernel.)
        /// </param>
        /// <param name="height"> 
        /// The number of elements in the pixel array referenced by column. (This is the height of the separable filter kernel.)
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in row and column. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Intensity, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in row and column. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the row filter kernel.
        /// </param>
        /// <param name="column">[length: target,format,type,height] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the column filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glSeparableFilter2D")]
        [CLSCompliant(false)]
        public static void SeparableFilter2D<T6,T7>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,,] row, [InAttribute, OutAttribute] T7[,,] column)
            where T6 : struct
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>
        /// Define a separable two-dimensional convolution filter
        /// </summary>
        /// <param name="target"> 
        /// Must be Separable2D.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format of the convolution filter kernel. The allowable values are Alpha, Alpha4, Alpha8, Alpha12, Alpha16, Luminance, Luminance4, Luminance8, Luminance12, Luminance16, LuminanceAlpha, Luminance4Alpha4, Luminance6Alpha2, Luminance8Alpha8, Luminance12Alpha4, Luminance12Alpha12, Luminance16Alpha16, Intensity, Intensity4, Intensity8, Intensity12, Intensity16, R3G3B2, Rgb, Rgb4, Rgb5, Rgb8, Rgb10, Rgb12, Rgb16, Rgba, Rgba2, Rgba4, Rgb5A1, Rgba8, Rgb10A2, Rgba12, or Rgba16.
        /// </param>
        /// <param name="width"> 
        /// The number of elements in the pixel array referenced by row. (This is the width of the separable filter kernel.)
        /// </param>
        /// <param name="height"> 
        /// The number of elements in the pixel array referenced by column. (This is the height of the separable filter kernel.)
        /// </param>
        /// <param name="format"> 
        /// The format of the pixel data in row and column. The allowable values are Red, Green, Blue, Alpha, Rgb, Bgr, Rgba, Bgra, Intensity, Luminance, and LuminanceAlpha.
        /// </param>
        /// <param name="type"> 
        /// The type of the pixel data in row and column. Symbolic constants UnsignedByte, Byte, Bitmap, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev are accepted.
        /// </param>
        /// <param name="row">[length: target,format,type,width] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the row filter kernel.
        /// </param>
        /// <param name="column">[length: target,format,type,height] 
        /// Pointer to a one-dimensional array of pixel data that is processed to build the column filter kernel.
        /// </param>
        [AutoGenerated(Category = "ARB_imaging", Version = "", EntryPoint = "glSeparableFilter2D")]
        public static void SeparableFilter2D<T6,T7>(OpenTK.Graphics.OpenGL4.SeparableTarget target, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T6 row, [InAttribute, OutAttribute] ref T7 column)
            where T6 : struct
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary(Int32 count, Int32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, Int32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, Int32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, Int32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, Int32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary(Int32 count, ref Int32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref Int32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref Int32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref Int32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref Int32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary(Int32 count, Int32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, Int32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, Int32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, Int32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, Int32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary(Int32 count, UInt32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, UInt32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, UInt32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, UInt32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, UInt32[] shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary(Int32 count, ref UInt32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref UInt32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref UInt32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref UInt32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static void ShaderBinary<T3>(Int32 count, ref UInt32 shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary(Int32 count, UInt32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, IntPtr binary, Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, UInt32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, UInt32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, UInt32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] T3[,,] binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_ES2_compatibility|VERSION_4_1]
        /// Load pre-compiled shader binaries
        /// </summary>
        /// <param name="count"> 
        /// Specifies the number of shader object handles contained in shaders.
        /// </param>
        /// <param name="shaders">[length: count] 
        /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries.
        /// </param>
        /// <param name="binaryformat"> 
        /// Specifies the format of the shader binaries contained in binary.
        /// </param>
        /// <param name="binary">[length: length] 
        /// Specifies the address of an array of bytes containing pre-compiled binary shader code.
        /// </param>
        /// <param name="length"> 
        /// Specifies the length of the array whose address is given in binary.
        /// </param>
        [AutoGenerated(Category = "ARB_ES2_compatibility|VERSION_4_1", Version = "4.1", EntryPoint = "glShaderBinary")]
        [CLSCompliant(false)]
        public static unsafe void ShaderBinary<T3>(Int32 count, UInt32* shaders, OpenTK.Graphics.OpenGL4.BinaryFormat binaryformat, [InAttribute, OutAttribute] ref T3 binary, Int32 length)
            where T3 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static void ShaderSource(Int32 shader, Int32 count, String[] @string, Int32[] length) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static void ShaderSource(Int32 shader, Int32 count, String[] @string, ref Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static unsafe void ShaderSource(Int32 shader, Int32 count, String[] @string, Int32* length) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static void ShaderSource(UInt32 shader, Int32 count, String[] @string, Int32[] length) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static void ShaderSource(UInt32 shader, Int32 count, String[] @string, ref Int32 length) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Replaces the source code in a shader object
        /// </summary>
        /// <param name="shader"> 
        /// Specifies the handle of the shader object whose source code is to be replaced.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of elements in the string and length arrays.
        /// </param>
        /// <param name="@string">[length: count] 
        /// Specifies an array of pointers to strings containing the source code to be loaded into the shader.
        /// </param>
        /// <param name="length">[length: count] 
        /// Specifies an array of string lengths.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glShaderSource")]
        [CLSCompliant(false)]
        public static unsafe void ShaderSource(UInt32 shader, Int32 count, String[] @string, Int32* length) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_shader_storage_buffer_object|VERSION_4_3]
        /// Change an active shader storage block binding
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing the block whose binding to change.
        /// </param>
        /// <param name="storageBlockIndex"> 
        /// The index storage block within the program.
        /// </param>
        /// <param name="storageBlockBinding"> 
        /// The index storage block binding to associate with the specified storage block.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_storage_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glShaderStorageBlockBinding")]
        [CLSCompliant(false)]
        public static void ShaderStorageBlockBinding(Int32 program, Int32 storageBlockIndex, Int32 storageBlockBinding) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_shader_storage_buffer_object|VERSION_4_3]
        /// Change an active shader storage block binding
        /// </summary>
        /// <param name="program"> 
        /// The name of the program containing the block whose binding to change.
        /// </param>
        /// <param name="storageBlockIndex"> 
        /// The index storage block within the program.
        /// </param>
        /// <param name="storageBlockBinding"> 
        /// The index storage block binding to associate with the specified storage block.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_storage_buffer_object|VERSION_4_3", Version = "4.3", EntryPoint = "glShaderStorageBlockBinding")]
        [CLSCompliant(false)]
        public static void ShaderStorageBlockBinding(UInt32 program, UInt32 storageBlockIndex, UInt32 storageBlockBinding) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set front and back function and reference value for stencil testing
        /// </summary>
        /// <param name="func"> 
        /// Specifies the test function. Eight symbolic constants are valid: Never, Less, Lequal, Greater, Gequal, Equal, Notequal, and Always. The initial value is Always.
        /// </param>
        /// <param name="@ref"> 
        /// Specifies the reference value for the stencil test. ref is clamped to the range [0, 2 sup n - 1], where  is the number of bitplanes in the stencil buffer. The initial value is 0.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glStencilFunc")]
        [CLSCompliant(false)]
        public static void StencilFunc(OpenTK.Graphics.OpenGL4.StencilFunction func, Int32 @ref, Int32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set front and back function and reference value for stencil testing
        /// </summary>
        /// <param name="func"> 
        /// Specifies the test function. Eight symbolic constants are valid: Never, Less, Lequal, Greater, Gequal, Equal, Notequal, and Always. The initial value is Always.
        /// </param>
        /// <param name="@ref"> 
        /// Specifies the reference value for the stencil test. ref is clamped to the range [0, 2 sup n - 1], where  is the number of bitplanes in the stencil buffer. The initial value is 0.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glStencilFunc")]
        [CLSCompliant(false)]
        public static void StencilFunc(OpenTK.Graphics.OpenGL4.StencilFunction func, Int32 @ref, UInt32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Set front and/or back function and reference value for stencil testing
        /// </summary>
        /// <param name="face"> 
        /// Specifies whether front and/or back stencil state is updated. Three symbolic constants are valid: Front, Back, and FrontAndBack.
        /// </param>
        /// <param name="func"> 
        /// Specifies the test function. Eight symbolic constants are valid: Never, Less, Lequal, Greater, Gequal, Equal, Notequal, and Always. The initial value is Always.
        /// </param>
        /// <param name="@ref"> 
        /// Specifies the reference value for the stencil test. ref is clamped to the range [0, 2 sup n - 1], where  is the number of bitplanes in the stencil buffer. The initial value is 0.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")]
        [CLSCompliant(false)]
        public static void StencilFuncSeparate(OpenTK.Graphics.OpenGL4.StencilFace face, OpenTK.Graphics.OpenGL4.StencilFunction func, Int32 @ref, Int32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Set front and/or back function and reference value for stencil testing
        /// </summary>
        /// <param name="face"> 
        /// Specifies whether front and/or back stencil state is updated. Three symbolic constants are valid: Front, Back, and FrontAndBack.
        /// </param>
        /// <param name="func"> 
        /// Specifies the test function. Eight symbolic constants are valid: Never, Less, Lequal, Greater, Gequal, Equal, Notequal, and Always. The initial value is Always.
        /// </param>
        /// <param name="@ref"> 
        /// Specifies the reference value for the stencil test. ref is clamped to the range [0, 2 sup n - 1], where  is the number of bitplanes in the stencil buffer. The initial value is 0.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")]
        [CLSCompliant(false)]
        public static void StencilFuncSeparate(OpenTK.Graphics.OpenGL4.StencilFace face, OpenTK.Graphics.OpenGL4.StencilFunction func, Int32 @ref, UInt32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Control the front and back writing of individual bits in the stencil planes
        /// </summary>
        /// <param name="mask"> 
        /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glStencilMask")]
        [CLSCompliant(false)]
        public static void StencilMask(Int32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Control the front and back writing of individual bits in the stencil planes
        /// </summary>
        /// <param name="mask"> 
        /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glStencilMask")]
        [CLSCompliant(false)]
        public static void StencilMask(UInt32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Control the front and/or back writing of individual bits in the stencil planes
        /// </summary>
        /// <param name="face"> 
        /// Specifies whether the front and/or back stencil writemask is updated. Three symbolic constants are valid: Front, Back, and FrontAndBack.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilMaskSeparate")]
        [CLSCompliant(false)]
        public static void StencilMaskSeparate(OpenTK.Graphics.OpenGL4.StencilFace face, Int32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Control the front and/or back writing of individual bits in the stencil planes
        /// </summary>
        /// <param name="face"> 
        /// Specifies whether the front and/or back stencil writemask is updated. Three symbolic constants are valid: Front, Back, and FrontAndBack.
        /// </param>
        /// <param name="mask"> 
        /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilMaskSeparate")]
        [CLSCompliant(false)]
        public static void StencilMaskSeparate(OpenTK.Graphics.OpenGL4.StencilFace face, UInt32 mask) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set front and back stencil test actions
        /// </summary>
        /// <param name="fail"> 
        /// Specifies the action to take when the stencil test fails. Eight symbolic constants are accepted: Keep, Zero, Replace, Incr, IncrWrap, Decr, DecrWrap, and Invert. The initial value is Keep.
        /// </param>
        /// <param name="zfail"> 
        /// Specifies the stencil action when the stencil test passes, but the depth test fails. dpfail accepts the same symbolic constants as sfail. The initial value is Keep.
        /// </param>
        /// <param name="zpass"> 
        /// Specifies the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth testing is not enabled. dppass accepts the same symbolic constants as sfail. The initial value is Keep.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glStencilOp")]
        public static void StencilOp(OpenTK.Graphics.OpenGL4.StencilOp fail, OpenTK.Graphics.OpenGL4.StencilOp zfail, OpenTK.Graphics.OpenGL4.StencilOp zpass) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Set front and/or back stencil test actions
        /// </summary>
        /// <param name="face"> 
        /// Specifies whether front and/or back stencil state is updated. Three symbolic constants are valid: Front, Back, and FrontAndBack.
        /// </param>
        /// <param name="sfail"> 
        /// Specifies the action to take when the stencil test fails. Eight symbolic constants are accepted: Keep, Zero, Replace, Incr, IncrWrap, Decr, DecrWrap, and Invert. The initial value is Keep.
        /// </param>
        /// <param name="dpfail"> 
        /// Specifies the stencil action when the stencil test passes, but the depth test fails. dpfail accepts the same symbolic constants as sfail. The initial value is Keep.
        /// </param>
        /// <param name="dppass"> 
        /// Specifies the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth testing is not enabled. dppass accepts the same symbolic constants as sfail. The initial value is Keep.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilOpSeparate")]
        public static void StencilOpSeparate(OpenTK.Graphics.OpenGL4.StencilFace face, OpenTK.Graphics.OpenGL4.StencilOp sfail, OpenTK.Graphics.OpenGL4.StencilOp dpfail, OpenTK.Graphics.OpenGL4.StencilOp dppass) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Attach the storage for a buffer object to the active buffer texture
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation and must be TextureBuffer.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the data in the store belonging to buffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of the buffer object whose storage to attach to the active buffer texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glTexBuffer")]
        [CLSCompliant(false)]
        public static void TexBuffer(OpenTK.Graphics.OpenGL4.TextureBufferTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1]
        /// Attach the storage for a buffer object to the active buffer texture
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation and must be TextureBuffer.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the data in the store belonging to buffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of the buffer object whose storage to attach to the active buffer texture.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glTexBuffer")]
        [CLSCompliant(false)]
        public static void TexBuffer(OpenTK.Graphics.OpenGL4.TextureBufferTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, UInt32 buffer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_buffer_range|VERSION_4_3]
        /// Bind a range of a buffer's data store to a buffer texture
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation and must be TextureBuffer.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the data in the store belonging to buffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of the buffer object whose storage to attach to the active buffer texture.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset of the start of the range of the buffer's data store to attach.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size of the range of the buffer's data store to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_buffer_range|VERSION_4_3", Version = "4.3", EntryPoint = "glTexBufferRange")]
        [CLSCompliant(false)]
        public static void TexBufferRange(OpenTK.Graphics.OpenGL4.TextureBufferTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 buffer, IntPtr offset, IntPtr size) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_buffer_range|VERSION_4_3]
        /// Bind a range of a buffer's data store to a buffer texture
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation and must be TextureBuffer.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format of the data in the store belonging to buffer.
        /// </param>
        /// <param name="buffer"> 
        /// Specifies the name of the buffer object whose storage to attach to the active buffer texture.
        /// </param>
        /// <param name="offset"> 
        /// Specifies the offset of the start of the range of the buffer's data store to attach.
        /// </param>
        /// <param name="size"> 
        /// Specifies the size of the range of the buffer's data store to attach.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_buffer_range|VERSION_4_3", Version = "4.3", EntryPoint = "glTexBufferRange")]
        [CLSCompliant(false)]
        public static void TexBufferRange(OpenTK.Graphics.OpenGL4.TextureBufferTarget target, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, UInt32 buffer, IntPtr offset, IntPtr size) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP1ui")]
        [CLSCompliant(false)]
        public static void TexCoordP1(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP1ui")]
        [CLSCompliant(false)]
        public static void TexCoordP1(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP1(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP1(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP2ui")]
        [CLSCompliant(false)]
        public static void TexCoordP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP2ui")]
        [CLSCompliant(false)]
        public static void TexCoordP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP3ui")]
        [CLSCompliant(false)]
        public static void TexCoordP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP3ui")]
        [CLSCompliant(false)]
        public static void TexCoordP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP4ui")]
        [CLSCompliant(false)]
        public static void TexCoordP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP4ui")]
        [CLSCompliant(false)]
        public static void TexCoordP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="coords">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glTexCoordP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void TexCoordP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* coords) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a one-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage1D")]
        public static void TexImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a one-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage1D")]
        [CLSCompliant(false)]
        public static void TexImage1D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T7[] pixels)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a one-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage1D")]
        [CLSCompliant(false)]
        public static void TexImage1D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T7[,] pixels)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a one-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage1D")]
        [CLSCompliant(false)]
        public static void TexImage1D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T7[,,] pixels)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a one-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage1D")]
        public static void TexImage1D<T7>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T7 pixels)
            where T7 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a two-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is TextureRectangle or ProxyTextureRectangle, level must be 0.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the Texture1DArray and ProxyTexture1DArray targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage2D")]
        public static void TexImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a two-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is TextureRectangle or ProxyTextureRectangle, level must be 0.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the Texture1DArray and ProxyTexture1DArray targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage2D")]
        [CLSCompliant(false)]
        public static void TexImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a two-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is TextureRectangle or ProxyTextureRectangle, level must be 0.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the Texture1DArray and ProxyTexture1DArray targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage2D")]
        [CLSCompliant(false)]
        public static void TexImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[,] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a two-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is TextureRectangle or ProxyTextureRectangle, level must be 0.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the Texture1DArray and ProxyTexture1DArray targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage2D")]
        [CLSCompliant(false)]
        public static void TexImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[,,] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Specify a two-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is TextureRectangle or ProxyTextureRectangle, level must be 0.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the Texture1DArray and ProxyTexture1DArray targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexImage2D")]
        public static void TexImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T8 pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Establish the data storage, format, dimensions, and number of samples of a multisample texture's image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation. target must be Texture2DMultisample or ProxyTexture2DMultisample.
        /// </param>
        /// <param name="samples"> 
        /// The number of samples in the multisample texture's image.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format.
        /// </param>
        /// <param name="width"> 
        /// The width of the multisample texture's image, in texels.
        /// </param>
        /// <param name="height"> 
        /// The height of the multisample texture's image, in texels.
        /// </param>
        /// <param name="fixedsamplelocations"> 
        /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glTexImage2DMultisample")]
        public static void TexImage2DMultisample(OpenTK.Graphics.OpenGL4.TextureTargetMultisample target, Int32 samples, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, bool fixedsamplelocations) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be one of Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level  is the n sup th mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 256 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image, or the number of layers in a texture array. All implementations support 3D texture images that are at least 256 texels deep, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexImage3D")]
        public static void TexImage3D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be one of Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level  is the n sup th mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 256 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image, or the number of layers in a texture array. All implementations support 3D texture images that are at least 256 texels deep, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexImage3D")]
        [CLSCompliant(false)]
        public static void TexImage3D<T9>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T9[] pixels)
            where T9 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be one of Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level  is the n sup th mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 256 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image, or the number of layers in a texture array. All implementations support 3D texture images that are at least 256 texels deep, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexImage3D")]
        [CLSCompliant(false)]
        public static void TexImage3D<T9>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T9[,] pixels)
            where T9 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be one of Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level  is the n sup th mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 256 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image, or the number of layers in a texture array. All implementations support 3D texture images that are at least 256 texels deep, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexImage3D")]
        [CLSCompliant(false)]
        public static void TexImage3D<T9>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T9[,,] pixels)
            where T9 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be one of Texture3D, ProxyTexture3D, Texture2DArray or ProxyTexture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level  is the n sup th mipmap reduction image.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 256 texels high.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture image, or the number of layers in a texture array. All implementations support 3D texture images that are at least 256 texels deep, and texture arrays that are at least 256 layers deep.
        /// </param>
        /// <param name="border"> 
        /// This value must be 0.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, RedInteger, RgInteger, RgbInteger, BgrInteger, RgbaInteger, BgraInteger, StencilIndex, DepthComponent, DepthStencil.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexImage3D")]
        public static void TexImage3D<T9>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T9 pixels)
            where T9 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_texture_multisample|VERSION_3_2]
        /// Establish the data storage, format, dimensions, and number of samples of a multisample texture's image
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target of the operation. target must be Texture2DMultisampleArray or ProxyTexture2DMultisampleArray.
        /// </param>
        /// <param name="samples"> 
        /// The number of samples in the multisample texture's image.
        /// </param>
        /// <param name="internalformat"> 
        /// The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format.
        /// </param>
        /// <param name="width"> 
        /// The width of the multisample texture's image, in texels.
        /// </param>
        /// <param name="height"> 
        /// The height of the multisample texture's image, in texels.
        /// </param>
        /// <param name="depth"> 
        /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image.
        /// </param>
        /// <param name="fixedsamplelocations"> 
        /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_multisample|VERSION_3_2", Version = "3.2", EntryPoint = "glTexImage3DMultisample")]
        public static void TexImage3DMultisample(OpenTK.Graphics.OpenGL4.TextureTargetMultisample target, Int32 samples, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, bool fixedsamplelocations) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameterf")]
        public static void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Single param) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameterfv")]
        [CLSCompliant(false)]
        public static void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Single[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameterfv")]
        [CLSCompliant(false)]
        public static unsafe void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Single* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="param"> 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameteri")]
        public static void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Int32 param) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIiv")]
        [CLSCompliant(false)]
        public static void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIiv")]
        [CLSCompliant(false)]
        public static void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, ref Int32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIiv")]
        [CLSCompliant(false)]
        public static unsafe void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIuiv")]
        [CLSCompliant(false)]
        public static void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, UInt32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIuiv")]
        [CLSCompliant(false)]
        public static void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, ref UInt32 @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="target"></param>
        /// <param name="pname"></param>
        /// <param name="@params">[length: pname]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTexParameterIuiv")]
        [CLSCompliant(false)]
        public static unsafe void TexParameterI(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, UInt32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameteriv")]
        [CLSCompliant(false)]
        public static void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Int32[] @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set texture parameters
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture, which must be either Texture1D, Texture2D, Texture3D, Texture1DArray, Texture2DArray, TextureRectangle, or TextureCubeMap.
        /// </param>
        /// <param name="pname"> 
        /// Specifies the symbolic name of a single-valued texture parameter. pname can be one of the following: DepthStencilTextureMode, TextureBaseLevel, TextureCompareFunc, TextureCompareMode, TextureLodBias, TextureMinFilter, TextureMagFilter, TextureMinLod, TextureMaxLod, TextureMaxLevel, TextureSwizzleR, TextureSwizzleG, TextureSwizzleB, TextureSwizzleA, TextureWrapS, TextureWrapT, or TextureWrapR.  For the vector commands (glTexParameter*v), pname can also be one of TextureBorderColor or TextureSwizzleRgba.
        /// </param>
        /// <param name="@params">[length: pname] 
        /// For the scalar commands, specifies the value of pname.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glTexParameteriv")]
        [CLSCompliant(false)]
        public static unsafe void TexParameter(OpenTK.Graphics.OpenGL4.TextureTarget target, OpenTK.Graphics.OpenGL4.TextureParameterName pname, Int32* @params) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_texture_storage|VERSION_4_2]
        /// Simultaneously specify storage for all levels of a one-dimensional texture
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be either Texture1D or ProxyTexture1D.
        /// </param>
        /// <param name="levels"> 
        /// Specify the number of texture levels.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the sized internal format to be used to store texture image data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture, in texels.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_storage|VERSION_4_2", Version = "4.2", EntryPoint = "glTexStorage1D")]
        public static void TexStorage1D(OpenTK.Graphics.OpenGL4.TextureTarget1d target, Int32 levels, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 width) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_texture_storage|VERSION_4_2]
        /// Simultaneously specify storage for all levels of a two-dimensional or one-dimensional array texture
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of Texture2D, ProxyTexture2D, Texture1DArray, ProxyTexture1DArray, TextureRectangle, ProxyTextureRectangle, or ProxyTextureCubeMap.
        /// </param>
        /// <param name="levels"> 
        /// Specify the number of texture levels.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the sized internal format to be used to store texture image data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture, in texels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture, in texels.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_storage|VERSION_4_2", Version = "4.2", EntryPoint = "glTexStorage2D")]
        public static void TexStorage2D(OpenTK.Graphics.OpenGL4.TextureTarget2d target, Int32 levels, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_storage_multisample|VERSION_4_3]
        /// Specify storage for a two-dimensional multisample texture
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be Texture2DMultisample or ProxyTexture2DMultisample.
        /// </param>
        /// <param name="samples"> 
        /// Specify the number of samples in the texture.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the sized internal format to be used to store texture image data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture, in texels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture, in texels.
        /// </param>
        /// <param name="fixedsamplelocations"> 
        /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_storage_multisample|VERSION_4_3", Version = "4.3", EntryPoint = "glTexStorage2DMultisample")]
        public static void TexStorage2DMultisample(OpenTK.Graphics.OpenGL4.TextureTargetMultisample2d target, Int32 samples, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 width, Int32 height, bool fixedsamplelocations) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.2 or ARB_texture_storage|VERSION_4_2]
        /// Simultaneously specify storage for all levels of a three-dimensional, two-dimensional array or cube-map array texture
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be one of Texture3D, ProxyTexture3D, Texture2DArray, ProxyTexture2DArray, TextureCubeArray, or ProxyTextureCubeArray.
        /// </param>
        /// <param name="levels"> 
        /// Specify the number of texture levels.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the sized internal format to be used to store texture image data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture, in texels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture, in texels.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture, in texels.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_storage|VERSION_4_2", Version = "4.2", EntryPoint = "glTexStorage3D")]
        public static void TexStorage3D(OpenTK.Graphics.OpenGL4.TextureTarget3d target, Int32 levels, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 width, Int32 height, Int32 depth) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_storage_multisample|VERSION_4_3]
        /// Specify storage for a two-dimensional multisample array texture
        /// </summary>
        /// <param name="target"> 
        /// Specify the target of the operation. target must be Texture2DMultisampleArray or ProxyTexture2DMultisampleMultisample.
        /// </param>
        /// <param name="samples"> 
        /// Specify the number of samples in the texture.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the sized internal format to be used to store texture image data.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture, in texels.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture, in texels.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture, in layers.
        /// </param>
        /// <param name="fixedsamplelocations"> 
        /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_storage_multisample|VERSION_4_3", Version = "4.3", EntryPoint = "glTexStorage3DMultisample")]
        public static void TexStorage3DMultisample(OpenTK.Graphics.OpenGL4.TextureTargetMultisample3d target, Int32 samples, OpenTK.Graphics.OpenGL4.SizedInternalFormat internalformat, Int32 width, Int32 height, Int32 depth, bool fixedsamplelocations) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage1D")]
        public static void TexSubImage1D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage1D")]
        [CLSCompliant(false)]
        public static void TexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage1D")]
        [CLSCompliant(false)]
        public static void TexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage1D")]
        [CLSCompliant(false)]
        public static void TexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T6[,,] pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a one-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture1D.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage1D")]
        public static void TexSubImage1D<T6>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 width, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T6 pixels)
            where T6 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage2D")]
        public static void TexSubImage2D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage2D")]
        [CLSCompliant(false)]
        public static void TexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage2D")]
        [CLSCompliant(false)]
        public static void TexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[,] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage2D")]
        [CLSCompliant(false)]
        public static void TexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T8[,,] pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.1]
        /// Specify a two-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture2D, TextureCubeMapPositiveX, TextureCubeMapNegativeX, TextureCubeMapPositiveY, TextureCubeMapNegativeY, TextureCubeMapPositiveZ, TextureCubeMapNegativeZ, or Texture1DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, Bgra, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glTexSubImage2D")]
        public static void TexSubImage2D<T8>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T8 pixels)
            where T8 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexSubImage3D")]
        public static void TexSubImage3D(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, IntPtr pixels) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexSubImage3D")]
        [CLSCompliant(false)]
        public static void TexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[] pixels)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexSubImage3D")]
        [CLSCompliant(false)]
        public static void TexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,] pixels)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexSubImage3D")]
        [CLSCompliant(false)]
        public static void TexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] T10[,,] pixels)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v1.2]
        /// Specify a three-dimensional texture subimage
        /// </summary>
        /// <param name="target"> 
        /// Specifies the target texture. Must be Texture3D or Texture2DArray.
        /// </param>
        /// <param name="level"> 
        /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
        /// </param>
        /// <param name="xoffset"> 
        /// Specifies a texel offset in the x direction within the texture array.
        /// </param>
        /// <param name="yoffset"> 
        /// Specifies a texel offset in the y direction within the texture array.
        /// </param>
        /// <param name="zoffset"> 
        /// Specifies a texel offset in the z direction within the texture array.
        /// </param>
        /// <param name="width"> 
        /// Specifies the width of the texture subimage.
        /// </param>
        /// <param name="height"> 
        /// Specifies the height of the texture subimage.
        /// </param>
        /// <param name="depth"> 
        /// Specifies the depth of the texture subimage.
        /// </param>
        /// <param name="format"> 
        /// Specifies the format of the pixel data. The following symbolic values are accepted: Red, Rg, Rgb, Bgr, Rgba, DepthComponent, and StencilIndex.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of the pixel data. The following symbolic values are accepted: UnsignedByte, Byte, UnsignedShort, Short, UnsignedInt, Int, Float, UnsignedByte332, UnsignedByte233Rev, UnsignedShort565, UnsignedShort565Rev, UnsignedShort4444, UnsignedShort4444Rev, UnsignedShort5551, UnsignedShort1555Rev, UnsignedInt8888, UnsignedInt8888Rev, UnsignedInt1010102, and UnsignedInt2101010Rev.
        /// </param>
        /// <param name="pixels">[length: format,type,width,height,depth] 
        /// Specifies a pointer to the image data in memory.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_2", Version = "1.2", EntryPoint = "glTexSubImage3D")]
        public static void TexSubImage3D<T10>(OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, OpenTK.Graphics.OpenGL4.PixelFormat format, OpenTK.Graphics.OpenGL4.PixelType type, [InAttribute, OutAttribute] ref T10 pixels)
            where T10 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_view|VERSION_4_3]
        /// Initialize a texture as a data alias of another texture's data store
        /// </summary>
        /// <param name="texture"> 
        /// Specifies the texture object to be initialized as a view.
        /// </param>
        /// <param name="target"> 
        /// Specifies the target to be used for the newly initialized texture.
        /// </param>
        /// <param name="origtexture"> 
        /// Specifies the name of a texture object of which to make a view.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format for the newly created view.
        /// </param>
        /// <param name="minlevel"> 
        /// Specifies lowest level of detail of the view.
        /// </param>
        /// <param name="numlevels"> 
        /// Specifies the number of levels of detail to include in the view.
        /// </param>
        /// <param name="minlayer"> 
        /// Specifies the index of the first layer to include in the view.
        /// </param>
        /// <param name="numlayers"> 
        /// Specifies the number of layers to include in the view.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_view|VERSION_4_3", Version = "4.3", EntryPoint = "glTextureView")]
        [CLSCompliant(false)]
        public static void TextureView(Int32 texture, OpenTK.Graphics.OpenGL4.TextureTarget target, Int32 origtexture, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, Int32 minlevel, Int32 numlevels, Int32 minlayer, Int32 numlayers) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_texture_view|VERSION_4_3]
        /// Initialize a texture as a data alias of another texture's data store
        /// </summary>
        /// <param name="texture"> 
        /// Specifies the texture object to be initialized as a view.
        /// </param>
        /// <param name="target"> 
        /// Specifies the target to be used for the newly initialized texture.
        /// </param>
        /// <param name="origtexture"> 
        /// Specifies the name of a texture object of which to make a view.
        /// </param>
        /// <param name="internalformat"> 
        /// Specifies the internal format for the newly created view.
        /// </param>
        /// <param name="minlevel"> 
        /// Specifies lowest level of detail of the view.
        /// </param>
        /// <param name="numlevels"> 
        /// Specifies the number of levels of detail to include in the view.
        /// </param>
        /// <param name="minlayer"> 
        /// Specifies the index of the first layer to include in the view.
        /// </param>
        /// <param name="numlayers"> 
        /// Specifies the number of layers to include in the view.
        /// </param>
        [AutoGenerated(Category = "ARB_texture_view|VERSION_4_3", Version = "4.3", EntryPoint = "glTextureView")]
        [CLSCompliant(false)]
        public static void TextureView(UInt32 texture, OpenTK.Graphics.OpenGL4.TextureTarget target, UInt32 origtexture, OpenTK.Graphics.OpenGL4.PixelInternalFormat internalformat, UInt32 minlevel, UInt32 numlevels, UInt32 minlayer, UInt32 numlayers) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify values to record in transform feedback buffers
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="count"> 
        /// The number of varying variables used for transform feedback.
        /// </param>
        /// <param name="varyings">[length: count] 
        /// An array of count zero-terminated strings specifying the names of the varying variables to use for transform feedback.
        /// </param>
        /// <param name="bufferMode"> 
        /// Identifies the mode used to capture the varying variables when transform feedback is active. bufferMode must be InterleavedAttribs or SeparateAttribs.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTransformFeedbackVaryings")]
        [CLSCompliant(false)]
        public static void TransformFeedbackVaryings(Int32 program, Int32 count, String[] varyings, OpenTK.Graphics.OpenGL4.TransformFeedbackMode bufferMode) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify values to record in transform feedback buffers
        /// </summary>
        /// <param name="program"> 
        /// The name of the target program object.
        /// </param>
        /// <param name="count"> 
        /// The number of varying variables used for transform feedback.
        /// </param>
        /// <param name="varyings">[length: count] 
        /// An array of count zero-terminated strings specifying the names of the varying variables to use for transform feedback.
        /// </param>
        /// <param name="bufferMode"> 
        /// Identifies the mode used to capture the varying variables when transform feedback is active. bufferMode must be InterleavedAttribs or SeparateAttribs.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glTransformFeedbackVaryings")]
        [CLSCompliant(false)]
        public static void TransformFeedbackVaryings(UInt32 program, Int32 count, String[] varyings, OpenTK.Graphics.OpenGL4.TransformFeedbackMode bufferMode) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform1d")]
        public static void Uniform1(Int32 location, Double x) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform1dv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform1dv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform1dv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform1(Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1f")]
        public static void Uniform1(Int32 location, Single v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1fv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1fv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1fv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform1(Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1i")]
        public static void Uniform1(Int32 location, Int32 v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1iv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1iv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform1iv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform1(Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform1ui")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, UInt32 v0) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform1uiv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform1uiv")]
        [CLSCompliant(false)]
        public static void Uniform1(Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*1] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform1uiv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform1(Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="y"> 
        /// For the matrix commands, specifies whether to transpose the matrix as the values are loaded into the uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform2d")]
        public static void Uniform2(Int32 location, Double x, Double y) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform2dv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform2dv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform2dv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform2(Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2f")]
        public static void Uniform2(Int32 location, Single v0, Single v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2fv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2fv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2fv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform2(Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2i")]
        public static void Uniform2(Int32 location, Int32 v0, Int32 v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2iv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform2iv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform2(Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform2ui")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, UInt32 v0, UInt32 v1) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform2uiv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform2uiv")]
        [CLSCompliant(false)]
        public static void Uniform2(Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*2] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform2uiv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform2(Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="y"> 
        /// For the matrix commands, specifies whether to transpose the matrix as the values are loaded into the uniform variable.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform3d")]
        public static void Uniform3(Int32 location, Double x, Double y, Double z) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform3dv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform3dv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform3dv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform3(Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3f")]
        public static void Uniform3(Int32 location, Single v0, Single v1, Single v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3fv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3fv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3fv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform3(Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3i")]
        public static void Uniform3(Int32 location, Int32 v0, Int32 v1, Int32 v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3iv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3iv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform3iv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform3(Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform3ui")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, UInt32 v0, UInt32 v1, UInt32 v2) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform3uiv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform3uiv")]
        [CLSCompliant(false)]
        public static void Uniform3(Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*3] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform3uiv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform3(Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="y"> 
        /// For the matrix commands, specifies whether to transpose the matrix as the values are loaded into the uniform variable.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform4d")]
        public static void Uniform4(Int32 location, Double x, Double y, Double z, Double w) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform4dv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform4dv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniform4dv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform4(Int32 location, Int32 count, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4f")]
        public static void Uniform4(Int32 location, Single v0, Single v1, Single v2, Single v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4fv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4fv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4fv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform4(Int32 location, Int32 count, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4i")]
        public static void Uniform4(Int32 location, Int32 v0, Int32 v1, Int32 v2, Int32 v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4iv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, Int32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4iv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, ref Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniform4iv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform4(Int32 location, Int32 count, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="v0"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v1"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v2"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        /// <param name="v3"> 
        /// For the scalar commands, specifies the new values to be used for the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform4ui")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, UInt32 v0, UInt32 v1, UInt32 v2, UInt32 v3) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform4uiv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, UInt32[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform4uiv")]
        [CLSCompliant(false)]
        public static void Uniform4(Int32 location, Int32 count, ref UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]
        /// Specify the value of a uniform variable for the current program object
        /// </summary>
        /// <param name="location"> 
        /// Specifies the location of the uniform variable to be modified.
        /// </param>
        /// <param name="count"> 
        /// For the vector (glUniform*v) commands, specifies the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.  For the matrix (glUniformMatrix*) commands, specifies the number of matrices that are to be modified. This should be 1 if the targeted uniform variable is not an array of matrices, and 1 or more if it is an array of matrices.
        /// </param>
        /// <param name="value">[length: count*4] 
        /// For the vector and matrix commands, specifies a pointer to an array of count values that will be used to update the specified uniform variable.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glUniform4uiv")]
        [CLSCompliant(false)]
        public static unsafe void Uniform4(Int32 location, Int32 count, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Assign a binding point to an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object containing the active uniform block whose binding to assign.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// The index of the active uniform block within program whose binding to assign.
        /// </param>
        /// <param name="uniformBlockBinding"> 
        /// Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glUniformBlockBinding")]
        [CLSCompliant(false)]
        public static void UniformBlockBinding(Int32 program, Int32 uniformBlockIndex, Int32 uniformBlockBinding) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.1 or ARB_uniform_buffer_object|VERSION_3_1]
        /// Assign a binding point to an active uniform block
        /// </summary>
        /// <param name="program"> 
        /// The name of a program object containing the active uniform block whose binding to assign.
        /// </param>
        /// <param name="uniformBlockIndex"> 
        /// The index of the active uniform block within program whose binding to assign.
        /// </param>
        /// <param name="uniformBlockBinding"> 
        /// Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program.
        /// </param>
        [AutoGenerated(Category = "ARB_uniform_buffer_object|VERSION_3_1", Version = "3.1", EntryPoint = "glUniformBlockBinding")]
        [CLSCompliant(false)]
        public static void UniformBlockBinding(UInt32 program, UInt32 uniformBlockIndex, UInt32 uniformBlockBinding) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix2fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x3dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x3fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2x3(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix2x4dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix2x4fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix2x4(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*9]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix3fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x2dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*6]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x2fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3x2(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix3x4dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix3x4fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix3x4(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*16]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUniformMatrix4fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x2dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*8]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x2fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4x2(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, Double[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, ref Double value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_gpu_shader_fp64|VERSION_4_0]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "ARB_gpu_shader_fp64|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformMatrix4x3dv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, Double* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, Single[] value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, ref Single value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.1]</summary>
        /// <param name="location"></param>
        /// <param name="count"></param>
        /// <param name="transpose"></param>
        /// <param name="value">[length: count*12]</param>
        [AutoGenerated(Category = "VERSION_2_1", Version = "2.1", EntryPoint = "glUniformMatrix4x3fv")]
        [CLSCompliant(false)]
        public static unsafe void UniformMatrix4x3(Int32 location, Int32 count, bool transpose, Single* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, Int32[] indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, ref Int32 indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static unsafe void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, Int32* indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, UInt32[] indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, ref UInt32 indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.0 or ARB_shader_subroutine|VERSION_4_0]
        /// Load active subroutine uniforms
        /// </summary>
        /// <param name="shadertype"> 
        /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of VertexShader, TessControlShader, TessEvaluationShader, GeometryShader or FragmentShader.
        /// </param>
        /// <param name="count"> 
        /// Specifies the number of uniform indices stored in indices.
        /// </param>
        /// <param name="indices">[length: count] 
        /// Specifies the address of an array holding the indices to load into the shader subroutine variables.
        /// </param>
        [AutoGenerated(Category = "ARB_shader_subroutine|VERSION_4_0", Version = "4.0", EntryPoint = "glUniformSubroutinesuiv")]
        [CLSCompliant(false)]
        public static unsafe void UniformSubroutines(OpenTK.Graphics.OpenGL4.ShaderType shadertype, Int32 count, UInt32* indices) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.5]</summary>
        /// <param name="target"></param>
        [AutoGenerated(Category = "VERSION_1_5", Version = "1.5", EntryPoint = "glUnmapBuffer")]
        public static bool UnmapBuffer(OpenTK.Graphics.OpenGL4.BufferTarget target) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Installs a program object as part of current rendering state
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object whose executables are to be used as part of current rendering state.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUseProgram")]
        [CLSCompliant(false)]
        public static void UseProgram(Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Installs a program object as part of current rendering state
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object whose executables are to be used as part of current rendering state.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glUseProgram")]
        [CLSCompliant(false)]
        public static void UseProgram(UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Bind stages of a program object to a program pipeline
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the program pipeline object to which to bind stages from program.
        /// </param>
        /// <param name="stages"> 
        /// Specifies a set of program stages to bind to the program pipeline object.
        /// </param>
        /// <param name="program"> 
        /// Specifies the program object containing the shader executables to use in pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glUseProgramStages")]
        [CLSCompliant(false)]
        public static void UseProgramStages(Int32 pipeline, OpenTK.Graphics.OpenGL4.ProgramStageMask stages, Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Bind stages of a program object to a program pipeline
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the program pipeline object to which to bind stages from program.
        /// </param>
        /// <param name="stages"> 
        /// Specifies a set of program stages to bind to the program pipeline object.
        /// </param>
        /// <param name="program"> 
        /// Specifies the program object containing the shader executables to use in pipeline.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glUseProgramStages")]
        [CLSCompliant(false)]
        public static void UseProgramStages(UInt32 pipeline, OpenTK.Graphics.OpenGL4.ProgramStageMask stages, UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Validates a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object to be validated.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glValidateProgram")]
        [CLSCompliant(false)]
        public static void ValidateProgram(Int32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Validates a program object
        /// </summary>
        /// <param name="program"> 
        /// Specifies the handle of the program object to be validated.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glValidateProgram")]
        [CLSCompliant(false)]
        public static void ValidateProgram(UInt32 program) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Validate a program pipeline object against current GL state
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object to validate.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glValidateProgramPipeline")]
        [CLSCompliant(false)]
        public static void ValidateProgramPipeline(Int32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_separate_shader_objects|VERSION_4_1]
        /// Validate a program pipeline object against current GL state
        /// </summary>
        /// <param name="pipeline"> 
        /// Specifies the name of a program pipeline object to validate.
        /// </param>
        [AutoGenerated(Category = "ARB_separate_shader_objects|VERSION_4_1", Version = "4.1", EntryPoint = "glValidateProgramPipeline")]
        [CLSCompliant(false)]
        public static void ValidateProgramPipeline(UInt32 pipeline) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1d")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(Int32 index, Double x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1d")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(UInt32 index, Double x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1f")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(Int32 index, Single x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1f")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(UInt32 index, Single x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(Int32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(UInt32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1s")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(Int32 index, Int16 x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1s")]
        [CLSCompliant(false)]
        public static void VertexAttrib1(UInt32 index, Int16 x) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 1] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib1sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib1(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2d")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Double x, Double y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2d")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Double x, Double y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2f")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Single x, Single y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2f")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Single x, Single y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(Int32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(UInt32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2s")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Int16 x, Int16 y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2s")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Int16 x, Int16 y) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(Int32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib2(UInt32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 2] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib2sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib2(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3d")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Double x, Double y, Double z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3d")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Double x, Double y, Double z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3f")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Single x, Single y, Single z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3f")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Single x, Single y, Single z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(Int32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(UInt32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3s")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Int16 x, Int16 y, Int16 z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3s")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Int16 x, Int16 y, Int16 z) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(Int32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib3(UInt32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 3] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib3sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib3(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4bv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, SByte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4bv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref SByte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4bv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, SByte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4d")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Double x, Double y, Double z, Double w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4d")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Double x, Double y, Double z, Double w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4f")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Single x, Single y, Single z, Single w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4f")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Single x, Single y, Single z, Single w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(Int32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4fv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nbv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, SByte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nbv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref SByte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nbv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, SByte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Niv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nsv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nub")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, Byte x, Byte y, Byte z, Byte w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nub")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, Byte x, Byte y, Byte z, Byte w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(Int32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(Int32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nuiv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, UInt32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nuiv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref UInt32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nuiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nusv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, UInt16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nusv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4N(UInt32 index, ref UInt16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4Nusv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4N(UInt32 index, UInt16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4s")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Int16 x, Int16 y, Int16 z, Int16 w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="x"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="y"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="z"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        /// <param name="w"> 
        /// For the scalar commands, specifies the new values to be used for the specified vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4s")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Int16 x, Int16 y, Int16 z, Int16 w) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(Int32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(Int32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4ubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4uiv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, UInt32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4uiv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref UInt32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4usv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, UInt16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4usv")]
        [CLSCompliant(false)]
        public static void VertexAttrib4(UInt32 index, ref UInt16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Specifies the value of a generic vertex attribute
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For the vector commands (glVertexAttrib*v), specifies a pointer to an array of values to be used for the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttrib4usv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttrib4(UInt32 index, UInt16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Associate a vertex attribute and a vertex buffer binding
        /// </summary>
        /// <param name="attribindex"> 
        /// The index of the attribute to associate with a vertex buffer binding.
        /// </param>
        /// <param name="bindingindex"> 
        /// The index of the vertex buffer binding with which to associate the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribBinding")]
        [CLSCompliant(false)]
        public static void VertexAttribBinding(Int32 attribindex, Int32 bindingindex) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Associate a vertex attribute and a vertex buffer binding
        /// </summary>
        /// <param name="attribindex"> 
        /// The index of the attribute to associate with a vertex buffer binding.
        /// </param>
        /// <param name="bindingindex"> 
        /// The index of the vertex buffer binding with which to associate the generic vertex attribute.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribBinding")]
        [CLSCompliant(false)]
        public static void VertexAttribBinding(UInt32 attribindex, UInt32 bindingindex) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3]
        /// Modify the rate at which generic vertex attributes advance during instanced rendering
        /// </summary>
        /// <param name="index"> 
        /// Specify the index of the generic vertex attribute.
        /// </param>
        /// <param name="divisor"> 
        /// Specify the number of instances that will pass between updates of the generic attribute at slot index.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribDivisor")]
        [CLSCompliant(false)]
        public static void VertexAttribDivisor(Int32 index, Int32 divisor) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3]
        /// Modify the rate at which generic vertex attributes advance during instanced rendering
        /// </summary>
        /// <param name="index"> 
        /// Specify the index of the generic vertex attribute.
        /// </param>
        /// <param name="divisor"> 
        /// Specify the number of instances that will pass between updates of the generic attribute at slot index.
        /// </param>
        [AutoGenerated(Category = "VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribDivisor")]
        [CLSCompliant(false)]
        public static void VertexAttribDivisor(UInt32 index, UInt32 divisor) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Specify the organization of vertex arrays
        /// </summary>
        /// <param name="attribindex"> 
        /// The generic vertex attribute array being described.
        /// </param>
        /// <param name="size"> 
        /// The number of values per vertex that are stored in the array.
        /// </param>
        /// <param name="type"> 
        /// The type of the data stored in the array.
        /// </param>
        /// <param name="normalized"> 
        /// The distance between elements within the buffer.
        /// </param>
        /// <param name="relativeoffset"> 
        /// The distance between elements within the buffer.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribFormat(Int32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribType type, bool normalized, Int32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Specify the organization of vertex arrays
        /// </summary>
        /// <param name="attribindex"> 
        /// The generic vertex attribute array being described.
        /// </param>
        /// <param name="size"> 
        /// The number of values per vertex that are stored in the array.
        /// </param>
        /// <param name="type"> 
        /// The type of the data stored in the array.
        /// </param>
        /// <param name="normalized"> 
        /// The distance between elements within the buffer.
        /// </param>
        /// <param name="relativeoffset"> 
        /// The distance between elements within the buffer.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribFormat(UInt32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribType type, bool normalized, UInt32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1i")]
        [CLSCompliant(false)]
        public static void VertexAttribI1(Int32 index, Int32 x) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1i")]
        [CLSCompliant(false)]
        public static void VertexAttribI1(UInt32 index, Int32 x) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI1(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI1(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1ui")]
        [CLSCompliant(false)]
        public static void VertexAttribI1(UInt32 index, UInt32 x) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 1]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI1uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI1(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2i")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(Int32 index, Int32 x, Int32 y) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2i")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, Int32 x, Int32 y) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI2(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI2(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2ui")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, UInt32 x, UInt32 y) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, UInt32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI2(UInt32 index, ref UInt32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI2uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI2(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3i")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(Int32 index, Int32 x, Int32 y, Int32 z) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3i")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, Int32 x, Int32 y, Int32 z) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI3(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI3(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3ui")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, UInt32 x, UInt32 y, UInt32 z) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, UInt32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI3(UInt32 index, ref UInt32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI3uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI3(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4bv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, SByte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4bv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref SByte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4bv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, SByte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4i")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, Int32 x, Int32 y, Int32 z, Int32 w) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4i")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, Int32 x, Int32 y, Int32 z, Int32 w) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(Int32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, Int32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref Int32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4iv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, Int32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(Int32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, Int16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref Int16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4sv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, Int16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(Int32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(Int32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, Byte[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref Byte v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ubv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, Byte* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4ui")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, UInt32 x, UInt32 y, UInt32 z, UInt32 w) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, UInt32[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4uiv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref UInt32 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, UInt32* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4usv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, UInt16[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4usv")]
        [CLSCompliant(false)]
        public static void VertexAttribI4(UInt32 index, ref UInt16 v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribI4usv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribI4(UInt32 index, UInt16* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]</summary>
        /// <param name="attribindex"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="relativeoffset"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribIFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribIFormat(Int32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]</summary>
        /// <param name="attribindex"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="relativeoffset"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribIFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribIFormat(UInt32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, UInt32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[,,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] ref T4 pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] T4[,,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.0]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size,type,stride]</param>
        [AutoGenerated(Category = "VERSION_3_0", Version = "3.0", EntryPoint = "glVertexAttribIPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribIPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribIntegerType type, Int32 stride, [InAttribute, OutAttribute] ref T4 pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL1d")]
        [CLSCompliant(false)]
        public static void VertexAttribL1(Int32 index, Double x) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL1d")]
        [CLSCompliant(false)]
        public static void VertexAttribL1(UInt32 index, Double x) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL1dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL1(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL1dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL1(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2d")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(Int32 index, Double x, Double y) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2d")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(UInt32 index, Double x, Double y) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL2(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL2(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 2]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL2dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL2(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3d")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(Int32 index, Double x, Double y, Double z) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3d")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(UInt32 index, Double x, Double y, Double z) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL3(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL3(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 3]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL3dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL3(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4d")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(Int32 index, Double x, Double y, Double z, Double w) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="z"></param>
        /// <param name="w"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4d")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(UInt32 index, Double x, Double y, Double z, Double w) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(Int32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(Int32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL4(Int32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(UInt32 index, Double[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static void VertexAttribL4(UInt32 index, ref Double v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="v">[length: 4]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribL4dv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribL4(UInt32 index, Double* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]</summary>
        /// <param name="attribindex"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="relativeoffset"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribLFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribLFormat(Int32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]</summary>
        /// <param name="attribindex"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="relativeoffset"></param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexAttribLFormat")]
        [CLSCompliant(false)]
        public static void VertexAttribLFormat(UInt32 attribindex, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, UInt32 relativeoffset) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[,,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] ref T4 pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] T4[,,] pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_vertex_attrib_64bit|VERSION_4_1]</summary>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="type"></param>
        /// <param name="stride"></param>
        /// <param name="pointer">[length: size]</param>
        [AutoGenerated(Category = "ARB_vertex_attrib_64bit|VERSION_4_1", Version = "4.1", EntryPoint = "glVertexAttribLPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribLPointer<T4>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribDoubleType type, Int32 stride, [InAttribute, OutAttribute] ref T4 pointer)
            where T4 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP1ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP1(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP1ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP1(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP1(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP1uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP1(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP2ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP2(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP2ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP2(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP2(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP2(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP3ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP3(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP3ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP3(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP3(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP3(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP4ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP4(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP4ui")]
        [CLSCompliant(false)]
        public static void VertexAttribP4(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP4(Int32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="index"></param>
        /// <param name="type"></param>
        /// <param name="normalized"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexAttribP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexAttribP4(UInt32 index, OpenTK.Graphics.OpenGL4.PackedPointerType type, bool normalized, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[,] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[,,] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(Int32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] ref T5 pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, IntPtr pointer) { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[,] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] T5[,,] pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v2.0]
        /// Define an array of generic vertex attribute data
        /// </summary>
        /// <param name="index"> 
        /// Specifies the index of the generic vertex attribute to be modified.
        /// </param>
        /// <param name="size"> 
        /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant Bgra is accepted by glVertexAttribPointer. The initial value is 4.
        /// </param>
        /// <param name="type"> 
        /// Specifies the data type of each component in the array. The symbolic constants Byte, UnsignedByte, Short, UnsignedShort, Int, and UnsignedInt are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally HalfFloat, Float, Double, Fixed, Int2101010Rev, UnsignedInt2101010Rev and UnsignedInt10F11F11FRev are accepted by glVertexAttribPointer. Double is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is Float.
        /// </param>
        /// <param name="normalized"> 
        /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (True) or converted directly as fixed-point values (False) when they are accessed.
        /// </param>
        /// <param name="stride"> 
        /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0.
        /// </param>
        /// <param name="pointer">[length: size,type,stride] 
        /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the ArrayBuffer target. The initial value is 0.
        /// </param>
        [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glVertexAttribPointer")]
        [CLSCompliant(false)]
        public static void VertexAttribPointer<T5>(UInt32 index, Int32 size, OpenTK.Graphics.OpenGL4.VertexAttribPointerType type, bool normalized, Int32 stride, [InAttribute, OutAttribute] ref T5 pointer)
            where T5 : struct
         { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Modify the rate at which generic vertex attributes advance
        /// </summary>
        /// <param name="bindingindex"> 
        /// The index of the binding whose divisor to modify.
        /// </param>
        /// <param name="divisor"> 
        /// The new value for the instance step rate to apply.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexBindingDivisor")]
        [CLSCompliant(false)]
        public static void VertexBindingDivisor(Int32 bindingindex, Int32 divisor) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.3 or ARB_vertex_attrib_binding|VERSION_4_3]
        /// Modify the rate at which generic vertex attributes advance
        /// </summary>
        /// <param name="bindingindex"> 
        /// The index of the binding whose divisor to modify.
        /// </param>
        /// <param name="divisor"> 
        /// The new value for the instance step rate to apply.
        /// </param>
        [AutoGenerated(Category = "ARB_vertex_attrib_binding|VERSION_4_3", Version = "4.3", EntryPoint = "glVertexBindingDivisor")]
        [CLSCompliant(false)]
        public static void VertexBindingDivisor(UInt32 bindingindex, UInt32 divisor) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP2ui")]
        [CLSCompliant(false)]
        public static void VertexP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP2ui")]
        [CLSCompliant(false)]
        public static void VertexP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP2uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP2(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP3ui")]
        [CLSCompliant(false)]
        public static void VertexP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP3ui")]
        [CLSCompliant(false)]
        public static void VertexP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP3uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP3(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP4ui")]
        [CLSCompliant(false)]
        public static void VertexP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value"></param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP4ui")]
        [CLSCompliant(false)]
        public static void VertexP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32 value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, Int32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.3 or ARB_vertex_type_2_10_10_10_rev|VERSION_3_3]</summary>
        /// <param name="type"></param>
        /// <param name="value">[length: 1]</param>
        [AutoGenerated(Category = "ARB_vertex_type_2_10_10_10_rev|VERSION_3_3", Version = "3.3", EntryPoint = "glVertexP4uiv")]
        [CLSCompliant(false)]
        public static unsafe void VertexP4(OpenTK.Graphics.OpenGL4.PackedPointerType type, UInt32* value) { throw new NotImplementedException(); }

        /// <summary>[requires: v1.0]
        /// Set the viewport
        /// </summary>
        /// <param name="x"> 
        /// Specify the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="y"> 
        /// Specify the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="width"> 
        /// Specify the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        /// <param name="height"> 
        /// Specify the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        [AutoGenerated(Category = "VERSION_1_0", Version = "1.0", EntryPoint = "glViewport")]
        public static void Viewport(Int32 x, Int32 y, Int32 width, Int32 height) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static void ViewportArray(Int32 first, Int32 count, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static void ViewportArray(Int32 first, Int32 count, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static unsafe void ViewportArray(Int32 first, Int32 count, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static void ViewportArray(UInt32 first, Int32 count, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static void ViewportArray(UInt32 first, Int32 count, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set multiple viewports
        /// </summary>
        /// <param name="first"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="count"> 
        /// Specify the number of viewports to set.
        /// </param>
        /// <param name="v">[length: count] 
        /// Specify the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportArrayv")]
        [CLSCompliant(false)]
        public static unsafe void ViewportArray(UInt32 first, Int32 count, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="x"> 
        /// For glViewportIndexedf, specifies the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="y"> 
        /// For glViewportIndexedf, specifies the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="w"> 
        /// For glViewportIndexedf, specifies the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        /// <param name="h"> 
        /// For glViewportIndexedf, specifies the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedf")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(Int32 index, Single x, Single y, Single w, Single h) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="x"> 
        /// For glViewportIndexedf, specifies the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="y"> 
        /// For glViewportIndexedf, specifies the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
        /// </param>
        /// <param name="w"> 
        /// For glViewportIndexedf, specifies the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        /// <param name="h"> 
        /// For glViewportIndexedf, specifies the width and height of the viewport. When a GL context is first attached to a window, width and height are set to the dimensions of that window.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedf")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(UInt32 index, Single x, Single y, Single w, Single h) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(Int32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(Int32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static unsafe void ViewportIndexed(Int32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(UInt32 index, Single[] v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static void ViewportIndexed(UInt32 index, ref Single v) { throw new NotImplementedException(); }

        /// <summary>[requires: v4.1 or ARB_viewport_array|VERSION_4_1]
        /// Set a specified viewport
        /// </summary>
        /// <param name="index"> 
        /// Specify the first viewport to set.
        /// </param>
        /// <param name="v">[length: 4] 
        /// For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
        /// </param>
        [AutoGenerated(Category = "ARB_viewport_array|VERSION_4_1", Version = "4.1", EntryPoint = "glViewportIndexedfv")]
        [CLSCompliant(false)]
        public static unsafe void ViewportIndexed(UInt32 index, Single* v) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Instruct the GL server to block until the specified sync object becomes signaled
        /// </summary>
        /// <param name="sync"> 
        /// Specifies the sync object whose status to wait on.
        /// </param>
        /// <param name="flags"> 
        /// A bitfield controlling the command flushing behavior. flags may be zero.
        /// </param>
        /// <param name="timeout"> 
        /// Specifies the timeout that the server should wait before continuing. timeout must be TimeoutIgnored.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glWaitSync")]
        [CLSCompliant(false)]
        public static OpenTK.Graphics.OpenGL4.WaitSyncStatus WaitSync(IntPtr sync, OpenTK.Graphics.OpenGL4.WaitSyncFlags flags, Int64 timeout) { throw new NotImplementedException(); }

        /// <summary>[requires: v3.2 or ARB_sync|VERSION_3_2]
        /// Instruct the GL server to block until the specified sync object becomes signaled
        /// </summary>
        /// <param name="sync"> 
        /// Specifies the sync object whose status to wait on.
        /// </param>
        /// <param name="flags"> 
        /// A bitfield controlling the command flushing behavior. flags may be zero.
        /// </param>
        /// <param name="timeout"> 
        /// Specifies the timeout that the server should wait before continuing. timeout must be TimeoutIgnored.
        /// </param>
        [AutoGenerated(Category = "ARB_sync|VERSION_3_2", Version = "3.2", EntryPoint = "glWaitSync")]
        [CLSCompliant(false)]
        public static OpenTK.Graphics.OpenGL4.WaitSyncStatus WaitSync(IntPtr sync, OpenTK.Graphics.OpenGL4.WaitSyncFlags flags, UInt64 timeout) { throw new NotImplementedException(); }

        public static partial class Khr
        {
            /// <summary>[requires: KHR_debug]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam"> 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageCallbackKHR")]
            public static void DebugMessageCallback(DebugProcKhr callback, IntPtr userParam) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam"> 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageCallbackKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcKhr callback, [InAttribute, OutAttribute] T1[] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam"> 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageCallbackKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcKhr callback, [InAttribute, OutAttribute] T1[,] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam"> 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageCallbackKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageCallback<T1>(DebugProcKhr callback, [InAttribute, OutAttribute] T1[,,] userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Specify a callback to receive debugging messages from the GL
            /// </summary>
            /// <param name="callback"> 
            /// The address of a callback function that will be called when a debug message is generated.
            /// </param>
            /// <param name="userParam"> 
            /// A user supplied pointer that will be passed on each invocation of callback.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageCallbackKHR")]
            public static void DebugMessageCallback<T1>(DebugProcKhr callback, [InAttribute, OutAttribute] ref T1 userParam)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, Int32[] ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, ref Int32 ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, Int32* ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, UInt32[] ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, ref UInt32 ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Control the reporting of debug messages in a debug context
            /// </summary>
            /// <param name="source"> 
            /// The source of debug messages to enable or disable.
            /// </param>
            /// <param name="type"> 
            /// The type of debug messages to enable or disable.
            /// </param>
            /// <param name="severity"> 
            /// The severity of debug messages to enable or disable.
            /// </param>
            /// <param name="count"> 
            /// The length of the array ids.
            /// </param>
            /// <param name="ids"> 
            /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable.
            /// </param>
            /// <param name="enabled"> 
            /// A Boolean flag determining whether the selected messages should be enabled or disabled.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageControlKHR")]
            [CLSCompliant(false)]
            public static unsafe void DebugMessageControl(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, OpenTK.Graphics.OpenGL4.All severity, Int32 count, UInt32* ids, bool enabled) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Inject an application-supplied message into the debug message queue
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message to insert.
            /// </param>
            /// <param name="type"> 
            /// The type of the debug message insert.
            /// </param>
            /// <param name="id"> 
            /// The user-supplied identifier of the message to insert.
            /// </param>
            /// <param name="severity"> 
            /// The severity of the debug messages to insert.
            /// </param>
            /// <param name="length"> 
            /// The length string contained in the character array whose address is given by message.
            /// </param>
            /// <param name="buf"> 
            /// The address of a character array containing the message to insert.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageInsertKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, Int32 id, OpenTK.Graphics.OpenGL4.All severity, Int32 length, String buf) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Inject an application-supplied message into the debug message queue
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message to insert.
            /// </param>
            /// <param name="type"> 
            /// The type of the debug message insert.
            /// </param>
            /// <param name="id"> 
            /// The user-supplied identifier of the message to insert.
            /// </param>
            /// <param name="severity"> 
            /// The severity of the debug messages to insert.
            /// </param>
            /// <param name="length"> 
            /// The length string contained in the character array whose address is given by message.
            /// </param>
            /// <param name="buf"> 
            /// The address of a character array containing the message to insert.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glDebugMessageInsertKHR")]
            [CLSCompliant(false)]
            public static void DebugMessageInsert(OpenTK.Graphics.OpenGL4.All source, OpenTK.Graphics.OpenGL4.All type, UInt32 id, OpenTK.Graphics.OpenGL4.All severity, Int32 length, String buf) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] types, [OutAttribute] Int32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.All sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.All types, [OutAttribute] out Int32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.All severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static unsafe Int32 GetDebugMessageLog(Int32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All* types, [OutAttribute] Int32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] types, [OutAttribute] UInt32[] ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All[] severities, [OutAttribute] Int32[] lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] out OpenTK.Graphics.OpenGL4.All sources, [OutAttribute] out OpenTK.Graphics.OpenGL4.All types, [OutAttribute] out UInt32 ids, [OutAttribute] out OpenTK.Graphics.OpenGL4.All severities, [OutAttribute] out Int32 lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve messages from the debug message log
            /// </summary>
            /// <param name="count"> 
            /// The number of debug messages to retrieve from the log.
            /// </param>
            /// <param name="bufSize"> 
            /// The size of the buffer whose address is given by messageLog.
            /// </param>
            /// <param name="sources">[length: count] 
            /// The address of an array of variables to receive the sources of the retrieved messages.
            /// </param>
            /// <param name="types">[length: count] 
            /// The address of an array of variables to receive the types of the retrieved messages.
            /// </param>
            /// <param name="ids">[length: count] 
            /// The address of an array of unsigned integers to receive the ids of the retrieved messages.
            /// </param>
            /// <param name="severities">[length: count] 
            /// The address of an array of variables to receive the severites of the retrieved messages.
            /// </param>
            /// <param name="lengths">[length: count] 
            /// The address of an array of variables to receive the lengths of the received messages.
            /// </param>
            /// <param name="messageLog">[length: bufSize] 
            /// The address of an array of characters that will receive the messages.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetDebugMessageLogKHR")]
            [CLSCompliant(false)]
            public static unsafe Int32 GetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] OpenTK.Graphics.OpenGL4.All* sources, [OutAttribute] OpenTK.Graphics.OpenGL4.All* types, [OutAttribute] UInt32* ids, [OutAttribute] OpenTK.Graphics.OpenGL4.All* severities, [OutAttribute] Int32* lengths, [OutAttribute] StringBuilder messageLog) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, Int32 name, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, Int32 name, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, Int32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, UInt32 name, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length"> 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] Int32[] length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] out Int32 length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Retrieve the label of a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// The name of the sync object whose label to retrieve.
            /// </param>
            /// <param name="bufSize"> 
            /// The length of the buffer whose address is in label.
            /// </param>
            /// <param name="length">[length: 1] 
            /// The address of a variable to receive the length of the object label.
            /// </param>
            /// <param name="label">[length: bufSize] 
            /// The address of a string that will receive the object label.
            /// </param>
            [Obsolete("Use out overload instead")]
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static unsafe void GetObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] StringBuilder label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]</summary>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetPointervKHR")]
            public static void GetPointer(OpenTK.Graphics.OpenGL4.All pname, [OutAttribute] IntPtr @params) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]</summary>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetPointervKHR")]
            [CLSCompliant(false)]
            public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.All pname, [InAttribute, OutAttribute] T1[] @params)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]</summary>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetPointervKHR")]
            [CLSCompliant(false)]
            public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.All pname, [InAttribute, OutAttribute] T1[,] @params)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]</summary>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetPointervKHR")]
            [CLSCompliant(false)]
            public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.All pname, [InAttribute, OutAttribute] T1[,,] @params)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]</summary>
            /// <param name="pname"></param>
            /// <param name="@params"></param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glGetPointervKHR")]
            public static void GetPointer<T1>(OpenTK.Graphics.OpenGL4.All pname, [InAttribute, OutAttribute] ref T1 @params)
                where T1 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object to label.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void ObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, Int32 name, Int32 length, String label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a named object identified within a namespace
            /// </summary>
            /// <param name="identifier"> 
            /// The namespace from which the name of the object is allocated.
            /// </param>
            /// <param name="name"> 
            /// The name of the object to label.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectLabelKHR")]
            [CLSCompliant(false)]
            public static void ObjectLabel(OpenTK.Graphics.OpenGL4.All identifier, UInt32 name, Int32 length, String label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// A pointer identifying a sync object.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectPtrLabelKHR")]
            public static void ObjectPtrLabel(IntPtr ptr, Int32 length, String label) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// A pointer identifying a sync object.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[] ptr, Int32 length, String label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// A pointer identifying a sync object.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,] ptr, Int32 length, String label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// A pointer identifying a sync object.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectPtrLabelKHR")]
            [CLSCompliant(false)]
            public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] T0[,,] ptr, Int32 length, String label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Label a a sync object identified by a pointer
            /// </summary>
            /// <param name="ptr"> 
            /// A pointer identifying a sync object.
            /// </param>
            /// <param name="length"> 
            /// The length of the label to be used for the object.
            /// </param>
            /// <param name="label"> 
            /// The address of a string containing the label to assign to the object.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glObjectPtrLabelKHR")]
            public static void ObjectPtrLabel<T0>([InAttribute, OutAttribute] ref T0 ptr, Int32 length, String label)
                where T0 : struct
             { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Pop the active debug group
            /// </summary>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glPopDebugGroupKHR")]
            public static void PopDebugGroup() { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Push a named debug group into the command stream
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message.
            /// </param>
            /// <param name="id"> 
            /// The identifier of the message.
            /// </param>
            /// <param name="length"> 
            /// The length of the message to be sent to the debug output stream.
            /// </param>
            /// <param name="message"> 
            /// The a string containing the message to be sent to the debug output stream.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glPushDebugGroupKHR")]
            [CLSCompliant(false)]
            public static void PushDebugGroup(OpenTK.Graphics.OpenGL4.All source, Int32 id, Int32 length, String message) { throw new NotImplementedException(); }

            /// <summary>[requires: KHR_debug]
            /// Push a named debug group into the command stream
            /// </summary>
            /// <param name="source"> 
            /// The source of the debug message.
            /// </param>
            /// <param name="id"> 
            /// The identifier of the message.
            /// </param>
            /// <param name="length"> 
            /// The length of the message to be sent to the debug output stream.
            /// </param>
            /// <param name="message"> 
            /// The a string containing the message to be sent to the debug output stream.
            /// </param>
            [AutoGenerated(Category = "KHR_debug", Version = "", EntryPoint = "glPushDebugGroupKHR")]
            [CLSCompliant(false)]
            public static void PushDebugGroup(OpenTK.Graphics.OpenGL4.All source, UInt32 id, Int32 length, String message) { throw new NotImplementedException(); }

        }

        [Slot(31)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquationiARB(UInt32 buf, System.Int32 mode);
        [Slot(34)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquationSeparateiARB(UInt32 buf, System.Int32 modeRGB, System.Int32 modeAlpha);
        [Slot(37)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFunciARB(UInt32 buf, System.Int32 src, System.Int32 dst);
        [Slot(40)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFuncSeparateiARB(UInt32 buf, System.Int32 srcRGB, System.Int32 dstRGB, System.Int32 srcAlpha, System.Int32 dstAlpha);
        [Slot(72)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glCompileShaderIncludeARB(UInt32 shader, Int32 count, IntPtr path, Int32* length);
        [Slot(99)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe IntPtr glCreateSyncFromCLeventARB([OutAttribute] IntPtr* context, [OutAttribute] IntPtr* @event, UInt32 flags);
        [Slot(102)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageCallbackARB(DebugProcArb callback, IntPtr userParam);
        [Slot(105)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDebugMessageControlARB(System.Int32 source, System.Int32 type, System.Int32 severity, Int32 count, UInt32* ids, bool enabled);
        [Slot(108)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageInsertARB(System.Int32 source, System.Int32 type, UInt32 id, System.Int32 severity, Int32 length, IntPtr buf);
        [Slot(112)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDeleteNamedStringARB(Int32 namelen, IntPtr name);
        [Slot(134)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDispatchComputeGroupSizeARB(UInt32 num_groups_x, UInt32 num_groups_y, UInt32 num_groups_z, UInt32 group_size_x, UInt32 group_size_y, UInt32 group_size_z);
        [Slot(210)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe Int32 glGetDebugMessageLogARB(UInt32 count, Int32 bufSize, [OutAttribute] System.Int32* sources, [OutAttribute] System.Int32* types, [OutAttribute] UInt32* ids, [OutAttribute] System.Int32* severities, [OutAttribute] Int32* lengths, [OutAttribute] IntPtr messageLog);
        [Slot(221)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern System.Int32 glGetGraphicsResetStatusARB();
        [Slot(225)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int64 glGetImageHandleARB(UInt32 texture, Int32 level, bool layered, Int32 layer, System.Int32 format);
        [Slot(236)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetNamedStringARB(Int32 namelen, IntPtr name, Int32 bufSize, [OutAttribute] Int32* stringlen, [OutAttribute] IntPtr @string);
        [Slot(237)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetNamedStringivARB(Int32 namelen, IntPtr name, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(238)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnColorTableARB(System.Int32 target, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr table);
        [Slot(239)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnCompressedTexImageARB(System.Int32 target, Int32 lod, Int32 bufSize, [OutAttribute] IntPtr img);
        [Slot(240)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnConvolutionFilterARB(System.Int32 target, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr image);
        [Slot(241)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnHistogramARB(System.Int32 target, bool reset, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr values);
        [Slot(242)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnMapdvARB(System.Int32 target, System.Int32 query, Int32 bufSize, [OutAttribute] Double* v);
        [Slot(243)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnMapfvARB(System.Int32 target, System.Int32 query, Int32 bufSize, [OutAttribute] Single* v);
        [Slot(244)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnMapivARB(System.Int32 target, System.Int32 query, Int32 bufSize, [OutAttribute] Int32* v);
        [Slot(245)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnMinmaxARB(System.Int32 target, bool reset, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr values);
        [Slot(246)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnPixelMapfvARB(System.Int32 map, Int32 bufSize, [OutAttribute] Single* values);
        [Slot(247)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnPixelMapuivARB(System.Int32 map, Int32 bufSize, [OutAttribute] UInt32* values);
        [Slot(248)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnPixelMapusvARB(System.Int32 map, Int32 bufSize, [OutAttribute] UInt16* values);
        [Slot(249)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnPolygonStippleARB(Int32 bufSize, [OutAttribute] Byte* pattern);
        [Slot(250)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnSeparableFilterARB(System.Int32 target, System.Int32 format, System.Int32 type, Int32 rowBufSize, [OutAttribute] IntPtr row, Int32 columnBufSize, [OutAttribute] IntPtr column, [OutAttribute] IntPtr span);
        [Slot(251)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetnTexImageARB(System.Int32 target, Int32 level, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr img);
        [Slot(252)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnUniformdvARB(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Double* @params);
        [Slot(253)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnUniformfvARB(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Single* @params);
        [Slot(254)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnUniformivARB(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] Int32* @params);
        [Slot(255)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetnUniformuivARB(UInt32 program, Int32 location, Int32 bufSize, [OutAttribute] UInt32* @params);
        [Slot(302)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int64 glGetTextureHandleARB(UInt32 texture);
        [Slot(303)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int64 glGetTextureSamplerHandleARB(UInt32 texture, UInt32 sampler);
        [Slot(319)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribLui64vARB(UInt32 index, System.Int32 pname, [OutAttribute] UInt64* @params);
        [Slot(333)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsImageHandleResidentARB(UInt64 handle);
        [Slot(334)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsNamedStringARB(Int32 namelen, IntPtr name);
        [Slot(343)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsTextureHandleResidentARB(UInt64 handle);
        [Slot(349)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMakeImageHandleNonResidentARB(UInt64 handle);
        [Slot(350)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMakeImageHandleResidentARB(UInt64 handle, System.Int32 access);
        [Slot(351)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMakeTextureHandleNonResidentARB(UInt64 handle);
        [Slot(352)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMakeTextureHandleResidentARB(UInt64 handle);
        [Slot(358)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMinSampleShadingARB(Single value);
        [Slot(361)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiDrawArraysIndirectCountARB(System.Int32 mode, IntPtr indirect, IntPtr drawcount, Int32 maxdrawcount, Int32 stride);
        [Slot(365)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiDrawElementsIndirectCountARB(System.Int32 mode, System.Int32 type, IntPtr indirect, IntPtr drawcount, Int32 maxdrawcount, Int32 stride);
        [Slot(374)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glNamedStringARB(System.Int32 type, Int32 namelen, IntPtr name, Int32 stringlen, IntPtr @string);
        [Slot(430)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniformHandleui64ARB(UInt32 program, Int32 location, UInt64 value);
        [Slot(431)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformHandleui64vARB(UInt32 program, Int32 location, Int32 count, UInt64* values);
        [Slot(455)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glReadnPixelsARB(Int32 x, Int32 y, Int32 width, Int32 height, System.Int32 format, System.Int32 type, Int32 bufSize, [OutAttribute] IntPtr data);
        [Slot(502)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexPageCommitmentARB(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, bool resident);
        [Slot(552)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniformHandleui64ARB(Int32 location, UInt64 value);
        [Slot(553)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformHandleui64vARB(Int32 location, Int32 count, UInt64* value);
        [Slot(641)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribL1ui64ARB(UInt32 index, UInt64 x);
        [Slot(642)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribL1ui64vARB(UInt32 index, UInt64* v);
        [Slot(0)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glActiveShaderProgram(UInt32 pipeline, UInt32 program);
        [Slot(1)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glActiveTexture(System.Int32 texture);
        [Slot(2)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glAttachShader(UInt32 program, UInt32 shader);
        [Slot(3)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBeginConditionalRender(UInt32 id, System.Int32 mode);
        [Slot(4)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBeginQuery(System.Int32 target, UInt32 id);
        [Slot(5)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBeginQueryIndexed(System.Int32 target, UInt32 index, UInt32 id);
        [Slot(6)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBeginTransformFeedback(System.Int32 primitiveMode);
        [Slot(7)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindAttribLocation(UInt32 program, UInt32 index, IntPtr name);
        [Slot(8)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindBuffer(System.Int32 target, UInt32 buffer);
        [Slot(9)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindBufferBase(System.Int32 target, UInt32 index, UInt32 buffer);
        [Slot(10)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindBufferRange(System.Int32 target, UInt32 index, UInt32 buffer, IntPtr offset, IntPtr size);
        [Slot(11)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindBuffersBase(System.Int32 target, UInt32 first, Int32 count, UInt32* buffers);
        [Slot(12)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindBuffersRange(System.Int32 target, UInt32 first, Int32 count, UInt32* buffers, IntPtr* offsets, IntPtr* sizes);
        [Slot(13)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindFragDataLocation(UInt32 program, UInt32 color, IntPtr name);
        [Slot(14)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindFragDataLocationIndexed(UInt32 program, UInt32 colorNumber, UInt32 index, IntPtr name);
        [Slot(15)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindFramebuffer(System.Int32 target, UInt32 framebuffer);
        [Slot(16)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindImageTexture(UInt32 unit, UInt32 texture, Int32 level, bool layered, Int32 layer, System.Int32 access, System.Int32 format);
        [Slot(17)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindImageTextures(UInt32 first, Int32 count, UInt32* textures);
        [Slot(18)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindProgramPipeline(UInt32 pipeline);
        [Slot(19)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindRenderbuffer(System.Int32 target, UInt32 renderbuffer);
        [Slot(20)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindSampler(UInt32 unit, UInt32 sampler);
        [Slot(21)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindSamplers(UInt32 first, Int32 count, UInt32* samplers);
        [Slot(22)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindTexture(System.Int32 target, UInt32 texture);
        [Slot(23)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindTextures(UInt32 first, Int32 count, UInt32* textures);
        [Slot(24)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindTransformFeedback(System.Int32 target, UInt32 id);
        [Slot(25)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindVertexArray(UInt32 array);
        [Slot(26)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBindVertexBuffer(UInt32 bindingindex, UInt32 buffer, IntPtr offset, Int32 stride);
        [Slot(27)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glBindVertexBuffers(UInt32 first, Int32 count, UInt32* buffers, IntPtr* offsets, Int32* strides);
        [Slot(28)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendColor(Single red, Single green, Single blue, Single alpha);
        [Slot(29)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquation(System.Int32 mode);
        [Slot(30)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquationi(UInt32 buf, System.Int32 mode);
        [Slot(32)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquationSeparate(System.Int32 modeRGB, System.Int32 modeAlpha);
        [Slot(33)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendEquationSeparatei(UInt32 buf, System.Int32 modeRGB, System.Int32 modeAlpha);
        [Slot(35)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFunc(System.Int32 sfactor, System.Int32 dfactor);
        [Slot(36)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFunci(UInt32 buf, System.Int32 src, System.Int32 dst);
        [Slot(38)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFuncSeparate(System.Int32 sfactorRGB, System.Int32 dfactorRGB, System.Int32 sfactorAlpha, System.Int32 dfactorAlpha);
        [Slot(39)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlendFuncSeparatei(UInt32 buf, System.Int32 srcRGB, System.Int32 dstRGB, System.Int32 srcAlpha, System.Int32 dstAlpha);
        [Slot(41)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBlitFramebuffer(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, System.Int32 mask, System.Int32 filter);
        [Slot(42)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBufferData(System.Int32 target, IntPtr size, IntPtr data, System.Int32 usage);
        [Slot(43)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBufferStorage(System.Int32 target, IntPtr size, IntPtr data, System.Int32 flags);
        [Slot(44)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glBufferSubData(System.Int32 target, IntPtr offset, IntPtr size, IntPtr data);
        [Slot(45)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern System.Int32 glCheckFramebufferStatus(System.Int32 target);
        [Slot(46)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClampColor(System.Int32 target, System.Int32 clamp);
        [Slot(47)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClear(System.Int32 mask);
        [Slot(48)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearBufferData(System.Int32 target, System.Int32 internalformat, System.Int32 format, System.Int32 type, IntPtr data);
        [Slot(49)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearBufferfi(System.Int32 buffer, Int32 drawbuffer, Single depth, Int32 stencil);
        [Slot(50)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glClearBufferfv(System.Int32 buffer, Int32 drawbuffer, Single* value);
        [Slot(51)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glClearBufferiv(System.Int32 buffer, Int32 drawbuffer, Int32* value);
        [Slot(52)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearBufferSubData(System.Int32 target, System.Int32 internalformat, IntPtr offset, IntPtr size, System.Int32 format, System.Int32 type, IntPtr data);
        [Slot(53)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glClearBufferuiv(System.Int32 buffer, Int32 drawbuffer, UInt32* value);
        [Slot(54)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearColor(Single red, Single green, Single blue, Single alpha);
        [Slot(55)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearDepth(Double depth);
        [Slot(56)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearDepthf(Single d);
        [Slot(57)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearStencil(Int32 s);
        [Slot(58)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearTexImage(UInt32 texture, Int32 level, System.Int32 format, System.Int32 type, IntPtr data);
        [Slot(59)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glClearTexSubImage(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, System.Int32 format, System.Int32 type, IntPtr data);
        [Slot(60)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern System.Int32 glClientWaitSync(IntPtr sync, System.Int32 flags, UInt64 timeout);
        [Slot(61)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorMask(bool red, bool green, bool blue, bool alpha);
        [Slot(62)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorMaski(UInt32 index, bool r, bool g, bool b, bool a);
        [Slot(63)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorP3ui(System.Int32 type, UInt32 color);
        [Slot(64)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glColorP3uiv(System.Int32 type, UInt32* color);
        [Slot(65)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorP4ui(System.Int32 type, UInt32 color);
        [Slot(66)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glColorP4uiv(System.Int32 type, UInt32* color);
        [Slot(67)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorSubTable(System.Int32 target, Int32 start, Int32 count, System.Int32 format, System.Int32 type, IntPtr data);
        [Slot(68)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glColorTable(System.Int32 target, System.Int32 internalformat, Int32 width, System.Int32 format, System.Int32 type, IntPtr table);
        [Slot(69)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glColorTableParameterfv(System.Int32 target, System.Int32 pname, Single* @params);
        [Slot(70)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glColorTableParameteriv(System.Int32 target, System.Int32 pname, Int32* @params);
        [Slot(71)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompileShader(UInt32 shader);
        [Slot(73)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexImage1D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 border, Int32 imageSize, IntPtr data);
        [Slot(74)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexImage2D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 height, Int32 border, Int32 imageSize, IntPtr data);
        [Slot(75)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexImage3D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, Int32 imageSize, IntPtr data);
        [Slot(76)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexSubImage1D(System.Int32 target, Int32 level, Int32 xoffset, Int32 width, System.Int32 format, Int32 imageSize, IntPtr data);
        [Slot(77)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexSubImage2D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, System.Int32 format, Int32 imageSize, IntPtr data);
        [Slot(78)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCompressedTexSubImage3D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, System.Int32 format, Int32 imageSize, IntPtr data);
        [Slot(79)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glConvolutionFilter1D(System.Int32 target, System.Int32 internalformat, Int32 width, System.Int32 format, System.Int32 type, IntPtr image);
        [Slot(80)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glConvolutionFilter2D(System.Int32 target, System.Int32 internalformat, Int32 width, Int32 height, System.Int32 format, System.Int32 type, IntPtr image);
        [Slot(81)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glConvolutionParameterf(System.Int32 target, System.Int32 pname, Single @params);
        [Slot(82)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glConvolutionParameterfv(System.Int32 target, System.Int32 pname, Single* @params);
        [Slot(83)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glConvolutionParameteri(System.Int32 target, System.Int32 pname, Int32 @params);
        [Slot(84)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glConvolutionParameteriv(System.Int32 target, System.Int32 pname, Int32* @params);
        [Slot(85)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyBufferSubData(System.Int32 readTarget, System.Int32 writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size);
        [Slot(86)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyColorSubTable(System.Int32 target, Int32 start, Int32 x, Int32 y, Int32 width);
        [Slot(87)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyColorTable(System.Int32 target, System.Int32 internalformat, Int32 x, Int32 y, Int32 width);
        [Slot(88)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyConvolutionFilter1D(System.Int32 target, System.Int32 internalformat, Int32 x, Int32 y, Int32 width);
        [Slot(89)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyConvolutionFilter2D(System.Int32 target, System.Int32 internalformat, Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(90)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyImageSubData(UInt32 srcName, System.Int32 srcTarget, Int32 srcLevel, Int32 srcX, Int32 srcY, Int32 srcZ, UInt32 dstName, System.Int32 dstTarget, Int32 dstLevel, Int32 dstX, Int32 dstY, Int32 dstZ, Int32 srcWidth, Int32 srcHeight, Int32 srcDepth);
        [Slot(91)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyTexImage1D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 x, Int32 y, Int32 width, Int32 border);
        [Slot(92)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyTexImage2D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 x, Int32 y, Int32 width, Int32 height, Int32 border);
        [Slot(93)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyTexSubImage1D(System.Int32 target, Int32 level, Int32 xoffset, Int32 x, Int32 y, Int32 width);
        [Slot(94)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyTexSubImage2D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(95)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCopyTexSubImage3D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(96)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glCreateProgram();
        [Slot(97)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glCreateShader(System.Int32 type);
        [Slot(98)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glCreateShaderProgramv(System.Int32 type, Int32 count, IntPtr strings);
        [Slot(100)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glCullFace(System.Int32 mode);
        [Slot(101)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageCallback(DebugProc callback, IntPtr userParam);
        [Slot(104)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDebugMessageControl(System.Int32 source, System.Int32 type, System.Int32 severity, Int32 count, UInt32* ids, bool enabled);
        [Slot(107)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageInsert(System.Int32 source, System.Int32 type, UInt32 id, System.Int32 severity, Int32 length, IntPtr buf);
        [Slot(110)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteBuffers(Int32 n, UInt32* buffers);
        [Slot(111)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteFramebuffers(Int32 n, UInt32* framebuffers);
        [Slot(113)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDeleteProgram(UInt32 program);
        [Slot(114)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteProgramPipelines(Int32 n, UInt32* pipelines);
        [Slot(115)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteQueries(Int32 n, UInt32* ids);
        [Slot(116)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteRenderbuffers(Int32 n, UInt32* renderbuffers);
        [Slot(117)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteSamplers(Int32 count, UInt32* samplers);
        [Slot(118)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDeleteShader(UInt32 shader);
        [Slot(119)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDeleteSync(IntPtr sync);
        [Slot(120)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteTextures(Int32 n, UInt32* textures);
        [Slot(121)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteTransformFeedbacks(Int32 n, UInt32* ids);
        [Slot(122)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDeleteVertexArrays(Int32 n, UInt32* arrays);
        [Slot(123)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDepthFunc(System.Int32 func);
        [Slot(124)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDepthMask(bool flag);
        [Slot(125)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDepthRange(Double near, Double far);
        [Slot(126)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDepthRangeArrayv(UInt32 first, Int32 count, Double* v);
        [Slot(127)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDepthRangef(Single n, Single f);
        [Slot(128)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDepthRangeIndexed(UInt32 index, Double n, Double f);
        [Slot(129)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDetachShader(UInt32 program, UInt32 shader);
        [Slot(130)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDisable(System.Int32 cap);
        [Slot(131)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDisablei(System.Int32 target, UInt32 index);
        [Slot(132)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDisableVertexAttribArray(UInt32 index);
        [Slot(133)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDispatchCompute(UInt32 num_groups_x, UInt32 num_groups_y, UInt32 num_groups_z);
        [Slot(135)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDispatchComputeIndirect(IntPtr indirect);
        [Slot(136)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawArrays(System.Int32 mode, Int32 first, Int32 count);
        [Slot(137)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawArraysIndirect(System.Int32 mode, IntPtr indirect);
        [Slot(138)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawArraysInstanced(System.Int32 mode, Int32 first, Int32 count, Int32 instancecount);
        [Slot(139)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawArraysInstancedBaseInstance(System.Int32 mode, Int32 first, Int32 count, Int32 instancecount, UInt32 baseinstance);
        [Slot(140)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawBuffer(System.Int32 mode);
        [Slot(141)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDrawBuffers(Int32 n, System.Int32* bufs);
        [Slot(142)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElements(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices);
        [Slot(143)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsBaseVertex(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices, Int32 basevertex);
        [Slot(144)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsIndirect(System.Int32 mode, System.Int32 type, IntPtr indirect);
        [Slot(145)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsInstanced(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices, Int32 instancecount);
        [Slot(146)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsInstancedBaseInstance(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices, Int32 instancecount, UInt32 baseinstance);
        [Slot(147)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsInstancedBaseVertex(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices, Int32 instancecount, Int32 basevertex);
        [Slot(148)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawElementsInstancedBaseVertexBaseInstance(System.Int32 mode, Int32 count, System.Int32 type, IntPtr indices, Int32 instancecount, Int32 basevertex, UInt32 baseinstance);
        [Slot(149)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawRangeElements(System.Int32 mode, UInt32 start, UInt32 end, Int32 count, System.Int32 type, IntPtr indices);
        [Slot(150)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawRangeElementsBaseVertex(System.Int32 mode, UInt32 start, UInt32 end, Int32 count, System.Int32 type, IntPtr indices, Int32 basevertex);
        [Slot(151)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawTransformFeedback(System.Int32 mode, UInt32 id);
        [Slot(152)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawTransformFeedbackInstanced(System.Int32 mode, UInt32 id, Int32 instancecount);
        [Slot(153)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawTransformFeedbackStream(System.Int32 mode, UInt32 id, UInt32 stream);
        [Slot(154)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDrawTransformFeedbackStreamInstanced(System.Int32 mode, UInt32 id, UInt32 stream, Int32 instancecount);
        [Slot(155)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEnable(System.Int32 cap);
        [Slot(156)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEnablei(System.Int32 target, UInt32 index);
        [Slot(157)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEnableVertexAttribArray(UInt32 index);
        [Slot(158)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEndConditionalRender();
        [Slot(159)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEndQuery(System.Int32 target);
        [Slot(160)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEndQueryIndexed(System.Int32 target, UInt32 index);
        [Slot(161)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glEndTransformFeedback();
        [Slot(162)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern IntPtr glFenceSync(System.Int32 condition, System.Int32 flags);
        [Slot(163)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFinish();
        [Slot(164)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFlush();
        [Slot(165)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFlushMappedBufferRange(System.Int32 target, IntPtr offset, IntPtr length);
        [Slot(166)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferParameteri(System.Int32 target, System.Int32 pname, Int32 param);
        [Slot(167)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferRenderbuffer(System.Int32 target, System.Int32 attachment, System.Int32 renderbuffertarget, UInt32 renderbuffer);
        [Slot(168)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferTexture(System.Int32 target, System.Int32 attachment, UInt32 texture, Int32 level);
        [Slot(169)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferTexture1D(System.Int32 target, System.Int32 attachment, System.Int32 textarget, UInt32 texture, Int32 level);
        [Slot(170)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferTexture2D(System.Int32 target, System.Int32 attachment, System.Int32 textarget, UInt32 texture, Int32 level);
        [Slot(171)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferTexture3D(System.Int32 target, System.Int32 attachment, System.Int32 textarget, UInt32 texture, Int32 level, Int32 zoffset);
        [Slot(172)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFramebufferTextureLayer(System.Int32 target, System.Int32 attachment, UInt32 texture, Int32 level, Int32 layer);
        [Slot(173)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glFrontFace(System.Int32 mode);
        [Slot(174)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenBuffers(Int32 n, [OutAttribute] UInt32* buffers);
        [Slot(175)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGenerateMipmap(System.Int32 target);
        [Slot(176)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenFramebuffers(Int32 n, [OutAttribute] UInt32* framebuffers);
        [Slot(177)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenProgramPipelines(Int32 n, [OutAttribute] UInt32* pipelines);
        [Slot(178)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenQueries(Int32 n, [OutAttribute] UInt32* ids);
        [Slot(179)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenRenderbuffers(Int32 n, [OutAttribute] UInt32* renderbuffers);
        [Slot(180)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenSamplers(Int32 count, [OutAttribute] UInt32* samplers);
        [Slot(181)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenTextures(Int32 n, [OutAttribute] UInt32* textures);
        [Slot(182)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenTransformFeedbacks(Int32 n, [OutAttribute] UInt32* ids);
        [Slot(183)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGenVertexArrays(Int32 n, [OutAttribute] UInt32* arrays);
        [Slot(184)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveAtomicCounterBufferiv(UInt32 program, UInt32 bufferIndex, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(185)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveAttrib(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] System.Int32* type, [OutAttribute] IntPtr name);
        [Slot(186)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveSubroutineName(UInt32 program, System.Int32 shadertype, UInt32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] IntPtr name);
        [Slot(187)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveSubroutineUniformiv(UInt32 program, System.Int32 shadertype, UInt32 index, System.Int32 pname, [OutAttribute] Int32* values);
        [Slot(188)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveSubroutineUniformName(UInt32 program, System.Int32 shadertype, UInt32 index, Int32 bufsize, [OutAttribute] Int32* length, [OutAttribute] IntPtr name);
        [Slot(189)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveUniform(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] System.Int32* type, [OutAttribute] IntPtr name);
        [Slot(190)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveUniformBlockiv(UInt32 program, UInt32 uniformBlockIndex, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(191)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveUniformBlockName(UInt32 program, UInt32 uniformBlockIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr uniformBlockName);
        [Slot(192)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveUniformName(UInt32 program, UInt32 uniformIndex, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr uniformName);
        [Slot(193)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetActiveUniformsiv(UInt32 program, Int32 uniformCount, UInt32* uniformIndices, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(194)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetAttachedShaders(UInt32 program, Int32 maxCount, [OutAttribute] Int32* count, [OutAttribute] UInt32* shaders);
        [Slot(195)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetAttribLocation(UInt32 program, IntPtr name);
        [Slot(196)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetBooleani_v(System.Int32 target, UInt32 index, [OutAttribute] bool* data);
        [Slot(197)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetBooleanv(System.Int32 pname, [OutAttribute] bool* data);
        [Slot(198)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetBufferParameteri64v(System.Int32 target, System.Int32 pname, [OutAttribute] Int64* @params);
        [Slot(199)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetBufferParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(200)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetBufferPointerv(System.Int32 target, System.Int32 pname, [OutAttribute] IntPtr @params);
        [Slot(201)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetBufferSubData(System.Int32 target, IntPtr offset, IntPtr size, [OutAttribute] IntPtr data);
        [Slot(202)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetColorTable(System.Int32 target, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr table);
        [Slot(203)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetColorTableParameterfv(System.Int32 target, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(204)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetColorTableParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(205)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetCompressedTexImage(System.Int32 target, Int32 level, [OutAttribute] IntPtr img);
        [Slot(206)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetConvolutionFilter(System.Int32 target, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr image);
        [Slot(207)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetConvolutionParameterfv(System.Int32 target, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(208)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetConvolutionParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(209)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe Int32 glGetDebugMessageLog(UInt32 count, Int32 bufSize, [OutAttribute] System.Int32* sources, [OutAttribute] System.Int32* types, [OutAttribute] UInt32* ids, [OutAttribute] System.Int32* severities, [OutAttribute] Int32* lengths, [OutAttribute] IntPtr messageLog);
        [Slot(212)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetDoublei_v(System.Int32 target, UInt32 index, [OutAttribute] Double* data);
        [Slot(213)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetDoublev(System.Int32 pname, [OutAttribute] Double* data);
        [Slot(214)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern System.Int32 glGetError();
        [Slot(215)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetFloati_v(System.Int32 target, UInt32 index, [OutAttribute] Single* data);
        [Slot(216)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetFloatv(System.Int32 pname, [OutAttribute] Single* data);
        [Slot(217)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetFragDataIndex(UInt32 program, IntPtr name);
        [Slot(218)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetFragDataLocation(UInt32 program, IntPtr name);
        [Slot(219)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetFramebufferAttachmentParameteriv(System.Int32 target, System.Int32 attachment, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(220)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetFramebufferParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(222)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetHistogram(System.Int32 target, bool reset, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr values);
        [Slot(223)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetHistogramParameterfv(System.Int32 target, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(224)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetHistogramParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(226)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetInteger64i_v(System.Int32 target, UInt32 index, [OutAttribute] Int64* data);
        [Slot(227)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetInteger64v(System.Int32 pname, [OutAttribute] Int64* data);
        [Slot(228)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetIntegeri_v(System.Int32 target, UInt32 index, [OutAttribute] Int32* data);
        [Slot(229)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetIntegerv(System.Int32 pname, [OutAttribute] Int32* data);
        [Slot(230)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetInternalformati64v(System.Int32 target, System.Int32 internalformat, System.Int32 pname, Int32 bufSize, [OutAttribute] Int64* @params);
        [Slot(231)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetInternalformativ(System.Int32 target, System.Int32 internalformat, System.Int32 pname, Int32 bufSize, [OutAttribute] Int32* @params);
        [Slot(232)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetMinmax(System.Int32 target, bool reset, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr values);
        [Slot(233)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetMinmaxParameterfv(System.Int32 target, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(234)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetMinmaxParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(235)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetMultisamplefv(System.Int32 pname, UInt32 index, [OutAttribute] Single* val);
        [Slot(256)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetObjectLabel(System.Int32 identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr label);
        [Slot(258)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetObjectPtrLabel(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr label);
        [Slot(260)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetPointerv(System.Int32 pname, [OutAttribute] IntPtr @params);
        [Slot(262)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramBinary(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] System.Int32* binaryFormat, [OutAttribute] IntPtr binary);
        [Slot(263)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramInfoLog(UInt32 program, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr infoLog);
        [Slot(264)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramInterfaceiv(UInt32 program, System.Int32 programInterface, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(265)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramiv(UInt32 program, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(266)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramPipelineInfoLog(UInt32 pipeline, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr infoLog);
        [Slot(267)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramPipelineiv(UInt32 pipeline, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(268)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetProgramResourceIndex(UInt32 program, System.Int32 programInterface, IntPtr name);
        [Slot(269)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramResourceiv(UInt32 program, System.Int32 programInterface, UInt32 index, Int32 propCount, System.Int32* props, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* @params);
        [Slot(270)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetProgramResourceLocation(UInt32 program, System.Int32 programInterface, IntPtr name);
        [Slot(271)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetProgramResourceLocationIndex(UInt32 program, System.Int32 programInterface, IntPtr name);
        [Slot(272)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramResourceName(UInt32 program, System.Int32 programInterface, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr name);
        [Slot(273)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetProgramStageiv(UInt32 program, System.Int32 shadertype, System.Int32 pname, [OutAttribute] Int32* values);
        [Slot(274)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryIndexediv(System.Int32 target, UInt32 index, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(275)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryiv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(276)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryObjecti64v(UInt32 id, System.Int32 pname, [OutAttribute] Int64* @params);
        [Slot(277)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryObjectiv(UInt32 id, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(278)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryObjectui64v(UInt32 id, System.Int32 pname, [OutAttribute] UInt64* @params);
        [Slot(279)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetQueryObjectuiv(UInt32 id, System.Int32 pname, [OutAttribute] UInt32* @params);
        [Slot(280)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetRenderbufferParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(281)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetSamplerParameterfv(UInt32 sampler, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(282)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetSamplerParameterIiv(UInt32 sampler, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(283)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetSamplerParameterIuiv(UInt32 sampler, System.Int32 pname, [OutAttribute] UInt32* @params);
        [Slot(284)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetSamplerParameteriv(UInt32 sampler, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(285)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetSeparableFilter(System.Int32 target, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr row, [OutAttribute] IntPtr column, [OutAttribute] IntPtr span);
        [Slot(286)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetShaderInfoLog(UInt32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr infoLog);
        [Slot(287)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetShaderiv(UInt32 shader, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(288)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetShaderPrecisionFormat(System.Int32 shadertype, System.Int32 precisiontype, [OutAttribute] Int32* range, [OutAttribute] Int32* precision);
        [Slot(289)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetShaderSource(UInt32 shader, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr source);
        [Slot(290)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern IntPtr glGetString(System.Int32 name);
        [Slot(291)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern IntPtr glGetStringi(System.Int32 name, UInt32 index);
        [Slot(292)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetSubroutineIndex(UInt32 program, System.Int32 shadertype, IntPtr name);
        [Slot(293)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetSubroutineUniformLocation(UInt32 program, System.Int32 shadertype, IntPtr name);
        [Slot(294)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetSynciv(IntPtr sync, System.Int32 pname, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* values);
        [Slot(295)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetTexImage(System.Int32 target, Int32 level, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr pixels);
        [Slot(296)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexLevelParameterfv(System.Int32 target, Int32 level, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(297)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexLevelParameteriv(System.Int32 target, Int32 level, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(298)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexParameterfv(System.Int32 target, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(299)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexParameterIiv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(300)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexParameterIuiv(System.Int32 target, System.Int32 pname, [OutAttribute] UInt32* @params);
        [Slot(301)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTexParameteriv(System.Int32 target, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(304)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetTransformFeedbackVarying(UInt32 program, UInt32 index, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] Int32* size, [OutAttribute] System.Int32* type, [OutAttribute] IntPtr name);
        [Slot(305)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetUniformBlockIndex(UInt32 program, IntPtr uniformBlockName);
        [Slot(306)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformdv(UInt32 program, Int32 location, [OutAttribute] Double* @params);
        [Slot(307)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformfv(UInt32 program, Int32 location, [OutAttribute] Single* @params);
        [Slot(308)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformIndices(UInt32 program, Int32 uniformCount, IntPtr uniformNames, [OutAttribute] UInt32* uniformIndices);
        [Slot(309)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformiv(UInt32 program, Int32 location, [OutAttribute] Int32* @params);
        [Slot(310)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern Int32 glGetUniformLocation(UInt32 program, IntPtr name);
        [Slot(311)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformSubroutineuiv(System.Int32 shadertype, Int32 location, [OutAttribute] UInt32* @params);
        [Slot(312)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetUniformuiv(UInt32 program, Int32 location, [OutAttribute] UInt32* @params);
        [Slot(313)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribdv(UInt32 index, System.Int32 pname, [OutAttribute] Double* @params);
        [Slot(314)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribfv(UInt32 index, System.Int32 pname, [OutAttribute] Single* @params);
        [Slot(315)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribIiv(UInt32 index, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(316)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribIuiv(UInt32 index, System.Int32 pname, [OutAttribute] UInt32* @params);
        [Slot(317)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribiv(UInt32 index, System.Int32 pname, [OutAttribute] Int32* @params);
        [Slot(318)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetVertexAttribLdv(UInt32 index, System.Int32 pname, [OutAttribute] Double* @params);
        [Slot(320)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetVertexAttribPointerv(UInt32 index, System.Int32 pname, [OutAttribute] IntPtr pointer);
        [Slot(321)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glHint(System.Int32 target, System.Int32 mode);
        [Slot(322)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glHistogram(System.Int32 target, Int32 width, System.Int32 internalformat, bool sink);
        [Slot(323)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glInvalidateBufferData(UInt32 buffer);
        [Slot(324)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glInvalidateBufferSubData(UInt32 buffer, IntPtr offset, IntPtr length);
        [Slot(325)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glInvalidateFramebuffer(System.Int32 target, Int32 numAttachments, System.Int32* attachments);
        [Slot(326)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glInvalidateSubFramebuffer(System.Int32 target, Int32 numAttachments, System.Int32* attachments, Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(327)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glInvalidateTexImage(UInt32 texture, Int32 level);
        [Slot(328)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glInvalidateTexSubImage(UInt32 texture, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth);
        [Slot(329)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsBuffer(UInt32 buffer);
        [Slot(330)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsEnabled(System.Int32 cap);
        [Slot(331)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsEnabledi(System.Int32 target, UInt32 index);
        [Slot(332)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsFramebuffer(UInt32 framebuffer);
        [Slot(335)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsProgram(UInt32 program);
        [Slot(336)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsProgramPipeline(UInt32 pipeline);
        [Slot(337)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsQuery(UInt32 id);
        [Slot(338)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsRenderbuffer(UInt32 renderbuffer);
        [Slot(339)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsSampler(UInt32 sampler);
        [Slot(340)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsShader(UInt32 shader);
        [Slot(341)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsSync(IntPtr sync);
        [Slot(342)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsTexture(UInt32 texture);
        [Slot(344)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsTransformFeedback(UInt32 id);
        [Slot(345)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glIsVertexArray(UInt32 array);
        [Slot(346)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glLineWidth(Single width);
        [Slot(347)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glLinkProgram(UInt32 program);
        [Slot(348)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glLogicOp(System.Int32 opcode);
        [Slot(353)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern IntPtr glMapBuffer(System.Int32 target, System.Int32 access);
        [Slot(354)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern IntPtr glMapBufferRange(System.Int32 target, IntPtr offset, IntPtr length, System.Int32 access);
        [Slot(355)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMemoryBarrier(System.Int32 barriers);
        [Slot(356)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMinmax(System.Int32 target, System.Int32 internalformat, bool sink);
        [Slot(357)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMinSampleShading(Single value);
        [Slot(359)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiDrawArrays(System.Int32 mode, Int32* first, Int32* count, Int32 drawcount);
        [Slot(360)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiDrawArraysIndirect(System.Int32 mode, IntPtr indirect, Int32 drawcount, Int32 stride);
        [Slot(362)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiDrawElements(System.Int32 mode, Int32* count, System.Int32 type, IntPtr indices, Int32 drawcount);
        [Slot(363)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiDrawElementsBaseVertex(System.Int32 mode, Int32* count, System.Int32 type, IntPtr indices, Int32 drawcount, Int32* basevertex);
        [Slot(364)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiDrawElementsIndirect(System.Int32 mode, System.Int32 type, IntPtr indirect, Int32 drawcount, Int32 stride);
        [Slot(366)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiTexCoordP1ui(System.Int32 texture, System.Int32 type, UInt32 coords);
        [Slot(367)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiTexCoordP1uiv(System.Int32 texture, System.Int32 type, UInt32* coords);
        [Slot(368)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiTexCoordP2ui(System.Int32 texture, System.Int32 type, UInt32 coords);
        [Slot(369)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiTexCoordP2uiv(System.Int32 texture, System.Int32 type, UInt32* coords);
        [Slot(370)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiTexCoordP3ui(System.Int32 texture, System.Int32 type, UInt32 coords);
        [Slot(371)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiTexCoordP3uiv(System.Int32 texture, System.Int32 type, UInt32* coords);
        [Slot(372)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glMultiTexCoordP4ui(System.Int32 texture, System.Int32 type, UInt32 coords);
        [Slot(373)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glMultiTexCoordP4uiv(System.Int32 texture, System.Int32 type, UInt32* coords);
        [Slot(375)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glNormalP3ui(System.Int32 type, UInt32 coords);
        [Slot(376)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glNormalP3uiv(System.Int32 type, UInt32* coords);
        [Slot(377)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glObjectLabel(System.Int32 identifier, UInt32 name, Int32 length, IntPtr label);
        [Slot(379)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glObjectPtrLabel(IntPtr ptr, Int32 length, IntPtr label);
        [Slot(381)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glPatchParameterfv(System.Int32 pname, Single* values);
        [Slot(382)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPatchParameteri(System.Int32 pname, Int32 value);
        [Slot(383)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPauseTransformFeedback();
        [Slot(384)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPixelStoref(System.Int32 pname, Single param);
        [Slot(385)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPixelStorei(System.Int32 pname, Int32 param);
        [Slot(386)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPointParameterf(System.Int32 pname, Single param);
        [Slot(387)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glPointParameterfv(System.Int32 pname, Single* @params);
        [Slot(388)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPointParameteri(System.Int32 pname, Int32 param);
        [Slot(389)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glPointParameteriv(System.Int32 pname, Int32* @params);
        [Slot(390)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPointSize(Single size);
        [Slot(391)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPolygonMode(System.Int32 face, System.Int32 mode);
        [Slot(392)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPolygonOffset(Single factor, Single units);
        [Slot(393)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPopDebugGroup();
        [Slot(395)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPrimitiveRestartIndex(UInt32 index);
        [Slot(396)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramBinary(UInt32 program, System.Int32 binaryFormat, IntPtr binary, Int32 length);
        [Slot(397)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramParameteri(UInt32 program, System.Int32 pname, Int32 value);
        [Slot(398)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform1d(UInt32 program, Int32 location, Double v0);
        [Slot(399)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform1dv(UInt32 program, Int32 location, Int32 count, Double* value);
        [Slot(400)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform1f(UInt32 program, Int32 location, Single v0);
        [Slot(401)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform1fv(UInt32 program, Int32 location, Int32 count, Single* value);
        [Slot(402)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform1i(UInt32 program, Int32 location, Int32 v0);
        [Slot(403)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform1iv(UInt32 program, Int32 location, Int32 count, Int32* value);
        [Slot(404)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform1ui(UInt32 program, Int32 location, UInt32 v0);
        [Slot(405)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform1uiv(UInt32 program, Int32 location, Int32 count, UInt32* value);
        [Slot(406)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform2d(UInt32 program, Int32 location, Double v0, Double v1);
        [Slot(407)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform2dv(UInt32 program, Int32 location, Int32 count, Double* value);
        [Slot(408)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform2f(UInt32 program, Int32 location, Single v0, Single v1);
        [Slot(409)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform2fv(UInt32 program, Int32 location, Int32 count, Single* value);
        [Slot(410)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform2i(UInt32 program, Int32 location, Int32 v0, Int32 v1);
        [Slot(411)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform2iv(UInt32 program, Int32 location, Int32 count, Int32* value);
        [Slot(412)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform2ui(UInt32 program, Int32 location, UInt32 v0, UInt32 v1);
        [Slot(413)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform2uiv(UInt32 program, Int32 location, Int32 count, UInt32* value);
        [Slot(414)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform3d(UInt32 program, Int32 location, Double v0, Double v1, Double v2);
        [Slot(415)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform3dv(UInt32 program, Int32 location, Int32 count, Double* value);
        [Slot(416)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform3f(UInt32 program, Int32 location, Single v0, Single v1, Single v2);
        [Slot(417)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform3fv(UInt32 program, Int32 location, Int32 count, Single* value);
        [Slot(418)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform3i(UInt32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2);
        [Slot(419)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform3iv(UInt32 program, Int32 location, Int32 count, Int32* value);
        [Slot(420)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform3ui(UInt32 program, Int32 location, UInt32 v0, UInt32 v1, UInt32 v2);
        [Slot(421)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform3uiv(UInt32 program, Int32 location, Int32 count, UInt32* value);
        [Slot(422)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform4d(UInt32 program, Int32 location, Double v0, Double v1, Double v2, Double v3);
        [Slot(423)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform4dv(UInt32 program, Int32 location, Int32 count, Double* value);
        [Slot(424)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform4f(UInt32 program, Int32 location, Single v0, Single v1, Single v2, Single v3);
        [Slot(425)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform4fv(UInt32 program, Int32 location, Int32 count, Single* value);
        [Slot(426)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform4i(UInt32 program, Int32 location, Int32 v0, Int32 v1, Int32 v2, Int32 v3);
        [Slot(427)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform4iv(UInt32 program, Int32 location, Int32 count, Int32* value);
        [Slot(428)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProgramUniform4ui(UInt32 program, Int32 location, UInt32 v0, UInt32 v1, UInt32 v2, UInt32 v3);
        [Slot(429)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniform4uiv(UInt32 program, Int32 location, Int32 count, UInt32* value);
        [Slot(432)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(433)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(434)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2x3dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(435)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2x3fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(436)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2x4dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(437)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix2x4fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(438)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(439)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(440)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3x2dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(441)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3x2fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(442)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3x4dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(443)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix3x4fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(444)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(445)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(446)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4x2dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(447)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4x2fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(448)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4x3dv(UInt32 program, Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(449)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glProgramUniformMatrix4x3fv(UInt32 program, Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(450)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glProvokingVertex(System.Int32 mode);
        [Slot(451)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPushDebugGroup(System.Int32 source, UInt32 id, Int32 length, IntPtr message);
        [Slot(453)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glQueryCounter(UInt32 id, System.Int32 target);
        [Slot(454)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glReadBuffer(System.Int32 mode);
        [Slot(456)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glReadPixels(Int32 x, Int32 y, Int32 width, Int32 height, System.Int32 format, System.Int32 type, [OutAttribute] IntPtr pixels);
        [Slot(457)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glReleaseShaderCompiler();
        [Slot(458)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glRenderbufferStorage(System.Int32 target, System.Int32 internalformat, Int32 width, Int32 height);
        [Slot(459)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glRenderbufferStorageMultisample(System.Int32 target, Int32 samples, System.Int32 internalformat, Int32 width, Int32 height);
        [Slot(460)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glResetHistogram(System.Int32 target);
        [Slot(461)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glResetMinmax(System.Int32 target);
        [Slot(462)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glResumeTransformFeedback();
        [Slot(463)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSampleCoverage(Single value, bool invert);
        [Slot(464)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSampleMaski(UInt32 maskNumber, UInt32 mask);
        [Slot(465)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSamplerParameterf(UInt32 sampler, System.Int32 pname, Single param);
        [Slot(466)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glSamplerParameterfv(UInt32 sampler, System.Int32 pname, Single* param);
        [Slot(467)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSamplerParameteri(UInt32 sampler, System.Int32 pname, Int32 param);
        [Slot(468)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glSamplerParameterIiv(UInt32 sampler, System.Int32 pname, Int32* param);
        [Slot(469)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glSamplerParameterIuiv(UInt32 sampler, System.Int32 pname, UInt32* param);
        [Slot(470)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glSamplerParameteriv(UInt32 sampler, System.Int32 pname, Int32* param);
        [Slot(471)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glScissor(Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(472)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glScissorArrayv(UInt32 first, Int32 count, Int32* v);
        [Slot(473)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glScissorIndexed(UInt32 index, Int32 left, Int32 bottom, Int32 width, Int32 height);
        [Slot(474)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glScissorIndexedv(UInt32 index, Int32* v);
        [Slot(475)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSecondaryColorP3ui(System.Int32 type, UInt32 color);
        [Slot(476)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glSecondaryColorP3uiv(System.Int32 type, UInt32* color);
        [Slot(477)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glSeparableFilter2D(System.Int32 target, System.Int32 internalformat, Int32 width, Int32 height, System.Int32 format, System.Int32 type, IntPtr row, IntPtr column);
        [Slot(478)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glShaderBinary(Int32 count, UInt32* shaders, System.Int32 binaryformat, IntPtr binary, Int32 length);
        [Slot(479)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glShaderSource(UInt32 shader, Int32 count, IntPtr @string, Int32* length);
        [Slot(480)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glShaderStorageBlockBinding(UInt32 program, UInt32 storageBlockIndex, UInt32 storageBlockBinding);
        [Slot(481)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilFunc(System.Int32 func, Int32 @ref, UInt32 mask);
        [Slot(482)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilFuncSeparate(System.Int32 face, System.Int32 func, Int32 @ref, UInt32 mask);
        [Slot(483)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilMask(UInt32 mask);
        [Slot(484)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilMaskSeparate(System.Int32 face, UInt32 mask);
        [Slot(485)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilOp(System.Int32 fail, System.Int32 zfail, System.Int32 zpass);
        [Slot(486)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glStencilOpSeparate(System.Int32 face, System.Int32 sfail, System.Int32 dpfail, System.Int32 dppass);
        [Slot(487)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexBuffer(System.Int32 target, System.Int32 internalformat, UInt32 buffer);
        [Slot(488)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexBufferRange(System.Int32 target, System.Int32 internalformat, UInt32 buffer, IntPtr offset, IntPtr size);
        [Slot(489)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexCoordP1ui(System.Int32 type, UInt32 coords);
        [Slot(490)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexCoordP1uiv(System.Int32 type, UInt32* coords);
        [Slot(491)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexCoordP2ui(System.Int32 type, UInt32 coords);
        [Slot(492)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexCoordP2uiv(System.Int32 type, UInt32* coords);
        [Slot(493)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexCoordP3ui(System.Int32 type, UInt32 coords);
        [Slot(494)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexCoordP3uiv(System.Int32 type, UInt32* coords);
        [Slot(495)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexCoordP4ui(System.Int32 type, UInt32 coords);
        [Slot(496)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexCoordP4uiv(System.Int32 type, UInt32* coords);
        [Slot(497)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexImage1D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 border, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(498)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexImage2D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 height, Int32 border, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(499)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexImage2DMultisample(System.Int32 target, Int32 samples, System.Int32 internalformat, Int32 width, Int32 height, bool fixedsamplelocations);
        [Slot(500)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexImage3D(System.Int32 target, Int32 level, System.Int32 internalformat, Int32 width, Int32 height, Int32 depth, Int32 border, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(501)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexImage3DMultisample(System.Int32 target, Int32 samples, System.Int32 internalformat, Int32 width, Int32 height, Int32 depth, bool fixedsamplelocations);
        [Slot(503)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexParameterf(System.Int32 target, System.Int32 pname, Single param);
        [Slot(504)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexParameterfv(System.Int32 target, System.Int32 pname, Single* @params);
        [Slot(505)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexParameteri(System.Int32 target, System.Int32 pname, Int32 param);
        [Slot(506)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexParameterIiv(System.Int32 target, System.Int32 pname, Int32* @params);
        [Slot(507)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexParameterIuiv(System.Int32 target, System.Int32 pname, UInt32* @params);
        [Slot(508)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glTexParameteriv(System.Int32 target, System.Int32 pname, Int32* @params);
        [Slot(509)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexStorage1D(System.Int32 target, Int32 levels, System.Int32 internalformat, Int32 width);
        [Slot(510)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexStorage2D(System.Int32 target, Int32 levels, System.Int32 internalformat, Int32 width, Int32 height);
        [Slot(511)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexStorage2DMultisample(System.Int32 target, Int32 samples, System.Int32 internalformat, Int32 width, Int32 height, bool fixedsamplelocations);
        [Slot(512)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexStorage3D(System.Int32 target, Int32 levels, System.Int32 internalformat, Int32 width, Int32 height, Int32 depth);
        [Slot(513)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexStorage3DMultisample(System.Int32 target, Int32 samples, System.Int32 internalformat, Int32 width, Int32 height, Int32 depth, bool fixedsamplelocations);
        [Slot(514)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexSubImage1D(System.Int32 target, Int32 level, Int32 xoffset, Int32 width, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(515)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexSubImage2D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 width, Int32 height, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(516)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTexSubImage3D(System.Int32 target, Int32 level, Int32 xoffset, Int32 yoffset, Int32 zoffset, Int32 width, Int32 height, Int32 depth, System.Int32 format, System.Int32 type, IntPtr pixels);
        [Slot(517)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTextureView(UInt32 texture, System.Int32 target, UInt32 origtexture, System.Int32 internalformat, UInt32 minlevel, UInt32 numlevels, UInt32 minlayer, UInt32 numlayers);
        [Slot(518)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glTransformFeedbackVaryings(UInt32 program, Int32 count, IntPtr varyings, System.Int32 bufferMode);
        [Slot(519)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform1d(Int32 location, Double x);
        [Slot(520)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform1dv(Int32 location, Int32 count, Double* value);
        [Slot(521)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform1f(Int32 location, Single v0);
        [Slot(522)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform1fv(Int32 location, Int32 count, Single* value);
        [Slot(523)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform1i(Int32 location, Int32 v0);
        [Slot(524)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform1iv(Int32 location, Int32 count, Int32* value);
        [Slot(525)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform1ui(Int32 location, UInt32 v0);
        [Slot(526)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform1uiv(Int32 location, Int32 count, UInt32* value);
        [Slot(527)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform2d(Int32 location, Double x, Double y);
        [Slot(528)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform2dv(Int32 location, Int32 count, Double* value);
        [Slot(529)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform2f(Int32 location, Single v0, Single v1);
        [Slot(530)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform2fv(Int32 location, Int32 count, Single* value);
        [Slot(531)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform2i(Int32 location, Int32 v0, Int32 v1);
        [Slot(532)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform2iv(Int32 location, Int32 count, Int32* value);
        [Slot(533)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform2ui(Int32 location, UInt32 v0, UInt32 v1);
        [Slot(534)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform2uiv(Int32 location, Int32 count, UInt32* value);
        [Slot(535)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform3d(Int32 location, Double x, Double y, Double z);
        [Slot(536)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform3dv(Int32 location, Int32 count, Double* value);
        [Slot(537)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform3f(Int32 location, Single v0, Single v1, Single v2);
        [Slot(538)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform3fv(Int32 location, Int32 count, Single* value);
        [Slot(539)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform3i(Int32 location, Int32 v0, Int32 v1, Int32 v2);
        [Slot(540)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform3iv(Int32 location, Int32 count, Int32* value);
        [Slot(541)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform3ui(Int32 location, UInt32 v0, UInt32 v1, UInt32 v2);
        [Slot(542)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform3uiv(Int32 location, Int32 count, UInt32* value);
        [Slot(543)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform4d(Int32 location, Double x, Double y, Double z, Double w);
        [Slot(544)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform4dv(Int32 location, Int32 count, Double* value);
        [Slot(545)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform4f(Int32 location, Single v0, Single v1, Single v2, Single v3);
        [Slot(546)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform4fv(Int32 location, Int32 count, Single* value);
        [Slot(547)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform4i(Int32 location, Int32 v0, Int32 v1, Int32 v2, Int32 v3);
        [Slot(548)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform4iv(Int32 location, Int32 count, Int32* value);
        [Slot(549)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniform4ui(Int32 location, UInt32 v0, UInt32 v1, UInt32 v2, UInt32 v3);
        [Slot(550)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniform4uiv(Int32 location, Int32 count, UInt32* value);
        [Slot(551)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUniformBlockBinding(UInt32 program, UInt32 uniformBlockIndex, UInt32 uniformBlockBinding);
        [Slot(554)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(555)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(556)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2x3dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(557)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2x3fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(558)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2x4dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(559)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix2x4fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(560)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(561)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(562)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3x2dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(563)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3x2fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(564)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3x4dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(565)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix3x4fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(566)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(567)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(568)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4x2dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(569)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4x2fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(570)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4x3dv(Int32 location, Int32 count, bool transpose, Double* value);
        [Slot(571)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformMatrix4x3fv(Int32 location, Int32 count, bool transpose, Single* value);
        [Slot(572)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glUniformSubroutinesuiv(System.Int32 shadertype, Int32 count, UInt32* indices);
        [Slot(573)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern byte glUnmapBuffer(System.Int32 target);
        [Slot(574)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUseProgram(UInt32 program);
        [Slot(575)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glUseProgramStages(UInt32 pipeline, System.Int32 stages, UInt32 program);
        [Slot(576)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glValidateProgram(UInt32 program);
        [Slot(577)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glValidateProgramPipeline(UInt32 pipeline);
        [Slot(578)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib1d(UInt32 index, Double x);
        [Slot(579)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib1dv(UInt32 index, Double* v);
        [Slot(580)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib1f(UInt32 index, Single x);
        [Slot(581)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib1fv(UInt32 index, Single* v);
        [Slot(582)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib1s(UInt32 index, Int16 x);
        [Slot(583)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib1sv(UInt32 index, Int16* v);
        [Slot(584)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib2d(UInt32 index, Double x, Double y);
        [Slot(585)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib2dv(UInt32 index, Double* v);
        [Slot(586)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib2f(UInt32 index, Single x, Single y);
        [Slot(587)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib2fv(UInt32 index, Single* v);
        [Slot(588)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib2s(UInt32 index, Int16 x, Int16 y);
        [Slot(589)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib2sv(UInt32 index, Int16* v);
        [Slot(590)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib3d(UInt32 index, Double x, Double y, Double z);
        [Slot(591)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib3dv(UInt32 index, Double* v);
        [Slot(592)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib3f(UInt32 index, Single x, Single y, Single z);
        [Slot(593)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib3fv(UInt32 index, Single* v);
        [Slot(594)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib3s(UInt32 index, Int16 x, Int16 y, Int16 z);
        [Slot(595)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib3sv(UInt32 index, Int16* v);
        [Slot(596)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4bv(UInt32 index, SByte* v);
        [Slot(597)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib4d(UInt32 index, Double x, Double y, Double z, Double w);
        [Slot(598)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4dv(UInt32 index, Double* v);
        [Slot(599)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib4f(UInt32 index, Single x, Single y, Single z, Single w);
        [Slot(600)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4fv(UInt32 index, Single* v);
        [Slot(601)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4iv(UInt32 index, Int32* v);
        [Slot(602)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Nbv(UInt32 index, SByte* v);
        [Slot(603)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Niv(UInt32 index, Int32* v);
        [Slot(604)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Nsv(UInt32 index, Int16* v);
        [Slot(605)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib4Nub(UInt32 index, Byte x, Byte y, Byte z, Byte w);
        [Slot(606)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Nubv(UInt32 index, Byte* v);
        [Slot(607)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Nuiv(UInt32 index, UInt32* v);
        [Slot(608)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4Nusv(UInt32 index, UInt16* v);
        [Slot(609)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttrib4s(UInt32 index, Int16 x, Int16 y, Int16 z, Int16 w);
        [Slot(610)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4sv(UInt32 index, Int16* v);
        [Slot(611)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4ubv(UInt32 index, Byte* v);
        [Slot(612)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4uiv(UInt32 index, UInt32* v);
        [Slot(613)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttrib4usv(UInt32 index, UInt16* v);
        [Slot(614)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribBinding(UInt32 attribindex, UInt32 bindingindex);
        [Slot(615)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribDivisor(UInt32 index, UInt32 divisor);
        [Slot(616)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribFormat(UInt32 attribindex, Int32 size, System.Int32 type, bool normalized, UInt32 relativeoffset);
        [Slot(617)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI1i(UInt32 index, Int32 x);
        [Slot(618)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI1iv(UInt32 index, Int32* v);
        [Slot(619)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI1ui(UInt32 index, UInt32 x);
        [Slot(620)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI1uiv(UInt32 index, UInt32* v);
        [Slot(621)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI2i(UInt32 index, Int32 x, Int32 y);
        [Slot(622)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI2iv(UInt32 index, Int32* v);
        [Slot(623)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI2ui(UInt32 index, UInt32 x, UInt32 y);
        [Slot(624)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI2uiv(UInt32 index, UInt32* v);
        [Slot(625)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI3i(UInt32 index, Int32 x, Int32 y, Int32 z);
        [Slot(626)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI3iv(UInt32 index, Int32* v);
        [Slot(627)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI3ui(UInt32 index, UInt32 x, UInt32 y, UInt32 z);
        [Slot(628)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI3uiv(UInt32 index, UInt32* v);
        [Slot(629)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4bv(UInt32 index, SByte* v);
        [Slot(630)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI4i(UInt32 index, Int32 x, Int32 y, Int32 z, Int32 w);
        [Slot(631)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4iv(UInt32 index, Int32* v);
        [Slot(632)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4sv(UInt32 index, Int16* v);
        [Slot(633)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4ubv(UInt32 index, Byte* v);
        [Slot(634)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribI4ui(UInt32 index, UInt32 x, UInt32 y, UInt32 z, UInt32 w);
        [Slot(635)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4uiv(UInt32 index, UInt32* v);
        [Slot(636)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribI4usv(UInt32 index, UInt16* v);
        [Slot(637)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribIFormat(UInt32 attribindex, Int32 size, System.Int32 type, UInt32 relativeoffset);
        [Slot(638)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribIPointer(UInt32 index, Int32 size, System.Int32 type, Int32 stride, IntPtr pointer);
        [Slot(639)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribL1d(UInt32 index, Double x);
        [Slot(640)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribL1dv(UInt32 index, Double* v);
        [Slot(643)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribL2d(UInt32 index, Double x, Double y);
        [Slot(644)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribL2dv(UInt32 index, Double* v);
        [Slot(645)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribL3d(UInt32 index, Double x, Double y, Double z);
        [Slot(646)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribL3dv(UInt32 index, Double* v);
        [Slot(647)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribL4d(UInt32 index, Double x, Double y, Double z, Double w);
        [Slot(648)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribL4dv(UInt32 index, Double* v);
        [Slot(649)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribLFormat(UInt32 attribindex, Int32 size, System.Int32 type, UInt32 relativeoffset);
        [Slot(650)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribLPointer(UInt32 index, Int32 size, System.Int32 type, Int32 stride, IntPtr pointer);
        [Slot(651)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribP1ui(UInt32 index, System.Int32 type, bool normalized, UInt32 value);
        [Slot(652)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribP1uiv(UInt32 index, System.Int32 type, bool normalized, UInt32* value);
        [Slot(653)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribP2ui(UInt32 index, System.Int32 type, bool normalized, UInt32 value);
        [Slot(654)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribP2uiv(UInt32 index, System.Int32 type, bool normalized, UInt32* value);
        [Slot(655)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribP3ui(UInt32 index, System.Int32 type, bool normalized, UInt32 value);
        [Slot(656)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribP3uiv(UInt32 index, System.Int32 type, bool normalized, UInt32* value);
        [Slot(657)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribP4ui(UInt32 index, System.Int32 type, bool normalized, UInt32 value);
        [Slot(658)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexAttribP4uiv(UInt32 index, System.Int32 type, bool normalized, UInt32* value);
        [Slot(659)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexAttribPointer(UInt32 index, Int32 size, System.Int32 type, bool normalized, Int32 stride, IntPtr pointer);
        [Slot(660)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexBindingDivisor(UInt32 bindingindex, UInt32 divisor);
        [Slot(661)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexP2ui(System.Int32 type, UInt32 value);
        [Slot(662)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexP2uiv(System.Int32 type, UInt32* value);
        [Slot(663)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexP3ui(System.Int32 type, UInt32 value);
        [Slot(664)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexP3uiv(System.Int32 type, UInt32* value);
        [Slot(665)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glVertexP4ui(System.Int32 type, UInt32 value);
        [Slot(666)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glVertexP4uiv(System.Int32 type, UInt32* value);
        [Slot(667)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glViewport(Int32 x, Int32 y, Int32 width, Int32 height);
        [Slot(668)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glViewportArrayv(UInt32 first, Int32 count, Single* v);
        [Slot(669)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glViewportIndexedf(UInt32 index, Single x, Single y, Single w, Single h);
        [Slot(670)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glViewportIndexedfv(UInt32 index, Single* v);
        [Slot(671)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern System.Int32 glWaitSync(IntPtr sync, System.Int32 flags, UInt64 timeout);
        [Slot(103)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageCallbackKHR(DebugProcKhr callback, IntPtr userParam);
        [Slot(106)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glDebugMessageControlKHR(System.Int32 source, System.Int32 type, System.Int32 severity, Int32 count, UInt32* ids, bool enabled);
        [Slot(109)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glDebugMessageInsertKHR(System.Int32 source, System.Int32 type, UInt32 id, System.Int32 severity, Int32 length, IntPtr buf);
        [Slot(211)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe Int32 glGetDebugMessageLogKHR(UInt32 count, Int32 bufSize, [OutAttribute] System.Int32* sources, [OutAttribute] System.Int32* types, [OutAttribute] UInt32* ids, [OutAttribute] System.Int32* severities, [OutAttribute] Int32* lengths, [OutAttribute] IntPtr messageLog);
        [Slot(257)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetObjectLabelKHR(System.Int32 identifier, UInt32 name, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr label);
        [Slot(259)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern unsafe void glGetObjectPtrLabelKHR(IntPtr ptr, Int32 bufSize, [OutAttribute] Int32* length, [OutAttribute] IntPtr label);
        [Slot(261)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glGetPointervKHR(System.Int32 pname, [OutAttribute] IntPtr @params);
        [Slot(378)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glObjectLabelKHR(System.Int32 identifier, UInt32 name, Int32 length, IntPtr label);
        [Slot(380)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glObjectPtrLabelKHR(IntPtr ptr, Int32 length, IntPtr label);
        [Slot(394)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPopDebugGroupKHR();
        [Slot(452)]
        [DllImport(Library, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
        static extern void glPushDebugGroupKHR(System.Int32 source, UInt32 id, Int32 length, IntPtr message);
    }
}
