glSpecializeShaderArb function opengl_glext

void glSpecializeShaderArb(
  1. int shader,
  2. String pEntryPoint,
  3. int numSpecializationConstants,
  4. Pointer<Uint32> pConstantIndex,
  5. Pointer<Uint32> pConstantValue,
)
GLAPI void APIENTRY glSpecializeShaderARB (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue)

Implementation

void glSpecializeShaderArb(
  int shader,
  String pEntryPoint,
  int numSpecializationConstants,
  Pointer<Uint32> pConstantIndex,
  Pointer<Uint32> pConstantValue,
) {
  final glSpecializeShaderArbAsFunction = _glSpecializeShaderArb
      .cast<
        NativeFunction<
          Void Function(
            Uint32 shader,
            Pointer<Utf8> pEntryPoint,
            Uint32 numSpecializationConstants,
            Pointer<Uint32> pConstantIndex,
            Pointer<Uint32> pConstantValue,
          )
        >
      >()
      .asFunction<
        void Function(
          int shader,
          Pointer<Utf8> pEntryPoint,
          int numSpecializationConstants,
          Pointer<Uint32> pConstantIndex,
          Pointer<Uint32> pConstantValue,
        )
      >();
  final pEntryPointPointer = pEntryPoint.toNativeUtf8();
  final result = glSpecializeShaderArbAsFunction(
    shader,
    pEntryPointPointer,
    numSpecializationConstants,
    pConstantIndex,
    pConstantValue,
  );
  calloc.free(pEntryPointPointer);
  return result;
}