objc2-gl-kit 0.3.2

Bindings to the GLKit framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT

use crate::*;

extern "C" {
    /// [Apple's documentation](https://developer.apple.com/documentation/glkit/glkmatrix4identity?language=objc)
    #[cfg(feature = "GLKMathTypes")]
    pub static GLKMatrix4Identity: GLKMatrix4;
}

// TODO: pub fn GLKMatrix4Make(m00: c_float,m01: c_float,m02: c_float,m03: c_float,m10: c_float,m11: c_float,m12: c_float,m13: c_float,m20: c_float,m21: c_float,m22: c_float,m23: c_float,m30: c_float,m31: c_float,m32: c_float,m33: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeAndTranspose(m00: c_float,m01: c_float,m02: c_float,m03: c_float,m10: c_float,m11: c_float,m12: c_float,m13: c_float,m20: c_float,m21: c_float,m22: c_float,m23: c_float,m30: c_float,m31: c_float,m32: c_float,m33: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithArray(values: ArrayUnknownABI<[c_float; 16]>,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithArrayAndTranspose(values: ArrayUnknownABI<[c_float; 16]>,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithRows(row0: GLKVector4,row1: GLKVector4,row2: GLKVector4,row3: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithColumns(column0: GLKVector4,column1: GLKVector4,column2: GLKVector4,column3: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithQuaternion(quaternion: GLKQuaternion,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeTranslation(tx: c_float,ty: c_float,tz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeScale(sx: c_float,sy: c_float,sz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeRotation(radians: c_float,x: c_float,y: c_float,z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeXRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeYRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeZRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakePerspective(fovy_radians: c_float,aspect: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeFrustum(left: c_float,right: c_float,bottom: c_float,top: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeOrtho(left: c_float,right: c_float,bottom: c_float,top: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeLookAt(eye_x: c_float,eye_y: c_float,eye_z: c_float,center_x: c_float,center_y: c_float,center_z: c_float,up_x: c_float,up_y: c_float,up_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4GetMatrix3(matrix: GLKMatrix4,) -> GLKMatrix3;

// TODO: pub fn GLKMatrix4GetMatrix2(matrix: GLKMatrix4,) -> GLKMatrix2;

// TODO: pub fn GLKMatrix4GetRow(matrix: GLKMatrix4,row: c_int,) -> GLKVector4;

// TODO: pub fn GLKMatrix4GetColumn(matrix: GLKMatrix4,column: c_int,) -> GLKVector4;

// TODO: pub fn GLKMatrix4SetRow(matrix: GLKMatrix4,row: c_int,vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4SetColumn(matrix: GLKMatrix4,column: c_int,vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Transpose(matrix: GLKMatrix4,) -> GLKMatrix4;

extern "C-unwind" {
    /// # Safety
    ///
    /// `is_invertible` must be a valid pointer or null.
    #[cfg(feature = "GLKMathTypes")]
    pub fn GLKMatrix4Invert(matrix: GLKMatrix4, is_invertible: *mut bool) -> GLKMatrix4;
}

extern "C-unwind" {
    /// # Safety
    ///
    /// `is_invertible` must be a valid pointer or null.
    #[cfg(feature = "GLKMathTypes")]
    pub fn GLKMatrix4InvertAndTranspose(matrix: GLKMatrix4, is_invertible: *mut bool)
        -> GLKMatrix4;
}

// TODO: pub fn GLKMatrix4Multiply(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Add(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Subtract(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Translate(matrix: GLKMatrix4,tx: c_float,ty: c_float,tz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4TranslateWithVector3(matrix: GLKMatrix4,translation_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4TranslateWithVector4(matrix: GLKMatrix4,translation_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Scale(matrix: GLKMatrix4,sx: c_float,sy: c_float,sz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4ScaleWithVector3(matrix: GLKMatrix4,scale_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4ScaleWithVector4(matrix: GLKMatrix4,scale_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Rotate(matrix: GLKMatrix4,radians: c_float,x: c_float,y: c_float,z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateWithVector3(matrix: GLKMatrix4,radians: c_float,axis_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateWithVector4(matrix: GLKMatrix4,radians: c_float,axis_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateX(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateY(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateZ(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MultiplyVector3(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyVector3WithTranslation(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyAndProjectVector3(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyVector3Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyVector3ArrayWithTranslation(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyAndProjectVector3Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyVector4(matrix_left: GLKMatrix4,vector_right: GLKVector4,) -> GLKVector4;

// TODO: pub fn GLKMatrix4MultiplyVector4Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector4>,vector_count: usize,);

// TODO: pub fn GLKMatrix4Make(m00: c_float,m01: c_float,m02: c_float,m03: c_float,m10: c_float,m11: c_float,m12: c_float,m13: c_float,m20: c_float,m21: c_float,m22: c_float,m23: c_float,m30: c_float,m31: c_float,m32: c_float,m33: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeAndTranspose(m00: c_float,m01: c_float,m02: c_float,m03: c_float,m10: c_float,m11: c_float,m12: c_float,m13: c_float,m20: c_float,m21: c_float,m22: c_float,m23: c_float,m30: c_float,m31: c_float,m32: c_float,m33: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithArray(values: ArrayUnknownABI<[c_float; 16]>,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithArrayAndTranspose(values: ArrayUnknownABI<[c_float; 16]>,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithRows(row0: GLKVector4,row1: GLKVector4,row2: GLKVector4,row3: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithColumns(column0: GLKVector4,column1: GLKVector4,column2: GLKVector4,column3: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeWithQuaternion(quaternion: GLKQuaternion,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeTranslation(tx: c_float,ty: c_float,tz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeScale(sx: c_float,sy: c_float,sz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeRotation(radians: c_float,x: c_float,y: c_float,z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeXRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeYRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeZRotation(radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakePerspective(fovy_radians: c_float,aspect: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeFrustum(left: c_float,right: c_float,bottom: c_float,top: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeOrtho(left: c_float,right: c_float,bottom: c_float,top: c_float,near_z: c_float,far_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MakeLookAt(eye_x: c_float,eye_y: c_float,eye_z: c_float,center_x: c_float,center_y: c_float,center_z: c_float,up_x: c_float,up_y: c_float,up_z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4GetMatrix3(matrix: GLKMatrix4,) -> GLKMatrix3;

// TODO: pub fn GLKMatrix4GetMatrix2(matrix: GLKMatrix4,) -> GLKMatrix2;

// TODO: pub fn GLKMatrix4GetRow(matrix: GLKMatrix4,row: c_int,) -> GLKVector4;

// TODO: pub fn GLKMatrix4GetColumn(matrix: GLKMatrix4,column: c_int,) -> GLKVector4;

// TODO: pub fn GLKMatrix4SetRow(matrix: GLKMatrix4,row: c_int,vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4SetColumn(matrix: GLKMatrix4,column: c_int,vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Transpose(matrix: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Multiply(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Add(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Subtract(matrix_left: GLKMatrix4,matrix_right: GLKMatrix4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Translate(matrix: GLKMatrix4,tx: c_float,ty: c_float,tz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4TranslateWithVector3(matrix: GLKMatrix4,translation_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4TranslateWithVector4(matrix: GLKMatrix4,translation_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Scale(matrix: GLKMatrix4,sx: c_float,sy: c_float,sz: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4ScaleWithVector3(matrix: GLKMatrix4,scale_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4ScaleWithVector4(matrix: GLKMatrix4,scale_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4Rotate(matrix: GLKMatrix4,radians: c_float,x: c_float,y: c_float,z: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateWithVector3(matrix: GLKMatrix4,radians: c_float,axis_vector: GLKVector3,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateWithVector4(matrix: GLKMatrix4,radians: c_float,axis_vector: GLKVector4,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateX(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateY(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4RotateZ(matrix: GLKMatrix4,radians: c_float,) -> GLKMatrix4;

// TODO: pub fn GLKMatrix4MultiplyVector3(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyVector3WithTranslation(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyAndProjectVector3(matrix_left: GLKMatrix4,vector_right: GLKVector3,) -> GLKVector3;

// TODO: pub fn GLKMatrix4MultiplyVector3Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyVector3ArrayWithTranslation(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyAndProjectVector3Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector3>,vector_count: usize,);

// TODO: pub fn GLKMatrix4MultiplyVector4(matrix_left: GLKMatrix4,vector_right: GLKVector4,) -> GLKVector4;

// TODO: pub fn GLKMatrix4MultiplyVector4Array(matrix: GLKMatrix4,vectors: NonNull<GLKVector4>,vector_count: usize,);