pub const __GNUC_VA_LIST: u32 = 1;
pub const PI: f64 = 3.141592653589793;
pub const DEG2RAD: f64 = 0.017453292519943295;
pub const RAD2DEG: f64 = 57.29577951308232;
pub const MAX_TOUCH_POINTS: u32 = 10;
pub const MAX_SHADER_LOCATIONS: u32 = 32;
pub const MAX_MATERIAL_MAPS: u32 = 12;
pub const true_: u32 = 1;
pub const false_: u32 = 0;
pub const __bool_true_false_are_defined: u32 = 1;
pub type va_list = __builtin_va_list;
pub type __gnuc_va_list = __builtin_va_list;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Vector2 {
pub x: f32,
pub y: f32,
}
#[test]
fn bindgen_test_layout_Vector2() {
assert_eq!(
::std::mem::size_of::<Vector2>(),
8usize,
concat!("Size of: ", stringify!(Vector2))
);
assert_eq!(
::std::mem::align_of::<Vector2>(),
4usize,
concat!("Alignment of ", stringify!(Vector2))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector2>())).x as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Vector2),
"::",
stringify!(x)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector2>())).y as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Vector2),
"::",
stringify!(y)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Vector3 {
pub x: f32,
pub y: f32,
pub z: f32,
}
#[test]
fn bindgen_test_layout_Vector3() {
assert_eq!(
::std::mem::size_of::<Vector3>(),
12usize,
concat!("Size of: ", stringify!(Vector3))
);
assert_eq!(
::std::mem::align_of::<Vector3>(),
4usize,
concat!("Alignment of ", stringify!(Vector3))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector3>())).x as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Vector3),
"::",
stringify!(x)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector3>())).y as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Vector3),
"::",
stringify!(y)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector3>())).z as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Vector3),
"::",
stringify!(z)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Vector4 {
pub x: f32,
pub y: f32,
pub z: f32,
pub w: f32,
}
#[test]
fn bindgen_test_layout_Vector4() {
assert_eq!(
::std::mem::size_of::<Vector4>(),
16usize,
concat!("Size of: ", stringify!(Vector4))
);
assert_eq!(
::std::mem::align_of::<Vector4>(),
4usize,
concat!("Alignment of ", stringify!(Vector4))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector4>())).x as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Vector4),
"::",
stringify!(x)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector4>())).y as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Vector4),
"::",
stringify!(y)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector4>())).z as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Vector4),
"::",
stringify!(z)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Vector4>())).w as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Vector4),
"::",
stringify!(w)
)
);
}
pub type Quaternion = Vector4;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Matrix {
pub m0: f32,
pub m4: f32,
pub m8: f32,
pub m12: f32,
pub m1: f32,
pub m5: f32,
pub m9: f32,
pub m13: f32,
pub m2: f32,
pub m6: f32,
pub m10: f32,
pub m14: f32,
pub m3: f32,
pub m7: f32,
pub m11: f32,
pub m15: f32,
}
#[test]
fn bindgen_test_layout_Matrix() {
assert_eq!(
::std::mem::size_of::<Matrix>(),
64usize,
concat!("Size of: ", stringify!(Matrix))
);
assert_eq!(
::std::mem::align_of::<Matrix>(),
4usize,
concat!("Alignment of ", stringify!(Matrix))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m0 as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m0)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m4 as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m4)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m8 as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m8)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m12 as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m12)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m1 as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m1)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m5 as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m5)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m9 as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m9)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m13 as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m13)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m2 as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m2)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m6 as *const _ as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m6)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m10 as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m10)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m14 as *const _ as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m14)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m3 as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m3)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m7 as *const _ as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m7)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m11 as *const _ as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m11)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Matrix>())).m15 as *const _ as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(Matrix),
"::",
stringify!(m15)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Color {
pub r: ::std::os::raw::c_uchar,
pub g: ::std::os::raw::c_uchar,
pub b: ::std::os::raw::c_uchar,
pub a: ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout_Color() {
assert_eq!(
::std::mem::size_of::<Color>(),
4usize,
concat!("Size of: ", stringify!(Color))
);
assert_eq!(
::std::mem::align_of::<Color>(),
1usize,
concat!("Alignment of ", stringify!(Color))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Color>())).r as *const _ as usize },
0usize,
concat!("Offset of field: ", stringify!(Color), "::", stringify!(r))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Color>())).g as *const _ as usize },
1usize,
concat!("Offset of field: ", stringify!(Color), "::", stringify!(g))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Color>())).b as *const _ as usize },
2usize,
concat!("Offset of field: ", stringify!(Color), "::", stringify!(b))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Color>())).a as *const _ as usize },
3usize,
concat!("Offset of field: ", stringify!(Color), "::", stringify!(a))
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rectangle {
pub x: f32,
pub y: f32,
pub width: f32,
pub height: f32,
}
#[test]
fn bindgen_test_layout_Rectangle() {
assert_eq!(
::std::mem::size_of::<Rectangle>(),
16usize,
concat!("Size of: ", stringify!(Rectangle))
);
assert_eq!(
::std::mem::align_of::<Rectangle>(),
4usize,
concat!("Alignment of ", stringify!(Rectangle))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Rectangle>())).x as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Rectangle),
"::",
stringify!(x)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Rectangle>())).y as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Rectangle),
"::",
stringify!(y)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Rectangle>())).width as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Rectangle),
"::",
stringify!(width)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Rectangle>())).height as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Rectangle),
"::",
stringify!(height)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Image {
pub data: *mut ::std::os::raw::c_void,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub mipmaps: ::std::os::raw::c_int,
pub format: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_Image() {
assert_eq!(
::std::mem::size_of::<Image>(),
24usize,
concat!("Size of: ", stringify!(Image))
);
assert_eq!(
::std::mem::align_of::<Image>(),
8usize,
concat!("Alignment of ", stringify!(Image))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Image>())).data as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Image),
"::",
stringify!(data)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Image>())).width as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Image),
"::",
stringify!(width)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Image>())).height as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Image),
"::",
stringify!(height)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Image>())).mipmaps as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Image),
"::",
stringify!(mipmaps)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Image>())).format as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(Image),
"::",
stringify!(format)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Texture2D {
pub id: ::std::os::raw::c_uint,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub mipmaps: ::std::os::raw::c_int,
pub format: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_Texture2D() {
assert_eq!(
::std::mem::size_of::<Texture2D>(),
20usize,
concat!("Size of: ", stringify!(Texture2D))
);
assert_eq!(
::std::mem::align_of::<Texture2D>(),
4usize,
concat!("Alignment of ", stringify!(Texture2D))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Texture2D>())).id as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Texture2D),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Texture2D>())).width as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Texture2D),
"::",
stringify!(width)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Texture2D>())).height as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Texture2D),
"::",
stringify!(height)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Texture2D>())).mipmaps as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Texture2D),
"::",
stringify!(mipmaps)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Texture2D>())).format as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Texture2D),
"::",
stringify!(format)
)
);
}
pub type Texture = Texture2D;
pub type TextureCubemap = Texture2D;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RenderTexture2D {
pub id: ::std::os::raw::c_uint,
pub texture: Texture2D,
pub depth: Texture2D,
pub depthTexture: bool,
}
#[test]
fn bindgen_test_layout_RenderTexture2D() {
assert_eq!(
::std::mem::size_of::<RenderTexture2D>(),
48usize,
concat!("Size of: ", stringify!(RenderTexture2D))
);
assert_eq!(
::std::mem::align_of::<RenderTexture2D>(),
4usize,
concat!("Alignment of ", stringify!(RenderTexture2D))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RenderTexture2D>())).id as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(RenderTexture2D),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RenderTexture2D>())).texture as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(RenderTexture2D),
"::",
stringify!(texture)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RenderTexture2D>())).depth as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(RenderTexture2D),
"::",
stringify!(depth)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RenderTexture2D>())).depthTexture as *const _ as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(RenderTexture2D),
"::",
stringify!(depthTexture)
)
);
}
pub type RenderTexture = RenderTexture2D;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct NPatchInfo {
pub sourceRec: Rectangle,
pub left: ::std::os::raw::c_int,
pub top: ::std::os::raw::c_int,
pub right: ::std::os::raw::c_int,
pub bottom: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_NPatchInfo() {
assert_eq!(
::std::mem::size_of::<NPatchInfo>(),
36usize,
concat!("Size of: ", stringify!(NPatchInfo))
);
assert_eq!(
::std::mem::align_of::<NPatchInfo>(),
4usize,
concat!("Alignment of ", stringify!(NPatchInfo))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).sourceRec as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(sourceRec)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).left as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(left)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).top as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).right as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(right)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).bottom as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(bottom)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<NPatchInfo>())).type_ as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(NPatchInfo),
"::",
stringify!(type_)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct CharInfo {
pub value: ::std::os::raw::c_int,
pub rec: Rectangle,
pub offsetX: ::std::os::raw::c_int,
pub offsetY: ::std::os::raw::c_int,
pub advanceX: ::std::os::raw::c_int,
pub data: *mut ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout_CharInfo() {
assert_eq!(
::std::mem::size_of::<CharInfo>(),
40usize,
concat!("Size of: ", stringify!(CharInfo))
);
assert_eq!(
::std::mem::align_of::<CharInfo>(),
8usize,
concat!("Alignment of ", stringify!(CharInfo))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).value as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).rec as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(rec)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).offsetX as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(offsetX)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).offsetY as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(offsetY)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).advanceX as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(advanceX)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<CharInfo>())).data as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(CharInfo),
"::",
stringify!(data)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Font {
pub texture: Texture2D,
pub baseSize: ::std::os::raw::c_int,
pub charsCount: ::std::os::raw::c_int,
pub chars: *mut CharInfo,
}
#[test]
fn bindgen_test_layout_Font() {
assert_eq!(
::std::mem::size_of::<Font>(),
40usize,
concat!("Size of: ", stringify!(Font))
);
assert_eq!(
::std::mem::align_of::<Font>(),
8usize,
concat!("Alignment of ", stringify!(Font))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Font>())).texture as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Font),
"::",
stringify!(texture)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Font>())).baseSize as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(Font),
"::",
stringify!(baseSize)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Font>())).charsCount as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(Font),
"::",
stringify!(charsCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Font>())).chars as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(Font),
"::",
stringify!(chars)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Camera3D {
pub position: Vector3,
pub target: Vector3,
pub up: Vector3,
pub fovy: f32,
pub type_: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_Camera3D() {
assert_eq!(
::std::mem::size_of::<Camera3D>(),
44usize,
concat!("Size of: ", stringify!(Camera3D))
);
assert_eq!(
::std::mem::align_of::<Camera3D>(),
4usize,
concat!("Alignment of ", stringify!(Camera3D))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera3D>())).position as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Camera3D),
"::",
stringify!(position)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera3D>())).target as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Camera3D),
"::",
stringify!(target)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera3D>())).up as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(Camera3D),
"::",
stringify!(up)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera3D>())).fovy as *const _ as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(Camera3D),
"::",
stringify!(fovy)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera3D>())).type_ as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(Camera3D),
"::",
stringify!(type_)
)
);
}
pub type Camera = Camera3D;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Camera2D {
pub offset: Vector2,
pub target: Vector2,
pub rotation: f32,
pub zoom: f32,
}
#[test]
fn bindgen_test_layout_Camera2D() {
assert_eq!(
::std::mem::size_of::<Camera2D>(),
24usize,
concat!("Size of: ", stringify!(Camera2D))
);
assert_eq!(
::std::mem::align_of::<Camera2D>(),
4usize,
concat!("Alignment of ", stringify!(Camera2D))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera2D>())).offset as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Camera2D),
"::",
stringify!(offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera2D>())).target as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Camera2D),
"::",
stringify!(target)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera2D>())).rotation as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Camera2D),
"::",
stringify!(rotation)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Camera2D>())).zoom as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(Camera2D),
"::",
stringify!(zoom)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Mesh {
pub vertexCount: ::std::os::raw::c_int,
pub triangleCount: ::std::os::raw::c_int,
pub vertices: *mut f32,
pub texcoords: *mut f32,
pub texcoords2: *mut f32,
pub normals: *mut f32,
pub tangents: *mut f32,
pub colors: *mut ::std::os::raw::c_uchar,
pub indices: *mut ::std::os::raw::c_ushort,
pub animVertices: *mut f32,
pub animNormals: *mut f32,
pub boneIds: *mut ::std::os::raw::c_int,
pub boneWeights: *mut f32,
pub vaoId: ::std::os::raw::c_uint,
pub vboId: [::std::os::raw::c_uint; 7usize],
}
#[test]
fn bindgen_test_layout_Mesh() {
assert_eq!(
::std::mem::size_of::<Mesh>(),
128usize,
concat!("Size of: ", stringify!(Mesh))
);
assert_eq!(
::std::mem::align_of::<Mesh>(),
8usize,
concat!("Alignment of ", stringify!(Mesh))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).vertexCount as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(vertexCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).triangleCount as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(triangleCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).vertices as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(vertices)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).texcoords as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(texcoords)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).texcoords2 as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(texcoords2)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).normals as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(normals)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).tangents as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(tangents)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).colors as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(colors)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).indices as *const _ as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(indices)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).animVertices as *const _ as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(animVertices)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).animNormals as *const _ as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(animNormals)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).boneIds as *const _ as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(boneIds)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).boneWeights as *const _ as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(boneWeights)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).vaoId as *const _ as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(vaoId)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Mesh>())).vboId as *const _ as usize },
100usize,
concat!(
"Offset of field: ",
stringify!(Mesh),
"::",
stringify!(vboId)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Shader {
pub id: ::std::os::raw::c_uint,
pub locs: [::std::os::raw::c_int; 32usize],
}
#[test]
fn bindgen_test_layout_Shader() {
assert_eq!(
::std::mem::size_of::<Shader>(),
132usize,
concat!("Size of: ", stringify!(Shader))
);
assert_eq!(
::std::mem::align_of::<Shader>(),
4usize,
concat!("Alignment of ", stringify!(Shader))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Shader>())).id as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Shader),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Shader>())).locs as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Shader),
"::",
stringify!(locs)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct MaterialMap {
pub texture: Texture2D,
pub color: Color,
pub value: f32,
}
#[test]
fn bindgen_test_layout_MaterialMap() {
assert_eq!(
::std::mem::size_of::<MaterialMap>(),
28usize,
concat!("Size of: ", stringify!(MaterialMap))
);
assert_eq!(
::std::mem::align_of::<MaterialMap>(),
4usize,
concat!("Alignment of ", stringify!(MaterialMap))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<MaterialMap>())).texture as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(MaterialMap),
"::",
stringify!(texture)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<MaterialMap>())).color as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(MaterialMap),
"::",
stringify!(color)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<MaterialMap>())).value as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(MaterialMap),
"::",
stringify!(value)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Material {
pub shader: Shader,
pub maps: [MaterialMap; 12usize],
pub params: *mut f32,
}
#[test]
fn bindgen_test_layout_Material() {
assert_eq!(
::std::mem::size_of::<Material>(),
480usize,
concat!("Size of: ", stringify!(Material))
);
assert_eq!(
::std::mem::align_of::<Material>(),
8usize,
concat!("Alignment of ", stringify!(Material))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Material>())).shader as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Material),
"::",
stringify!(shader)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Material>())).maps as *const _ as usize },
132usize,
concat!(
"Offset of field: ",
stringify!(Material),
"::",
stringify!(maps)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Material>())).params as *const _ as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(Material),
"::",
stringify!(params)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Transform {
pub translation: Vector3,
pub rotation: Quaternion,
pub scale: Vector3,
}
#[test]
fn bindgen_test_layout_Transform() {
assert_eq!(
::std::mem::size_of::<Transform>(),
40usize,
concat!("Size of: ", stringify!(Transform))
);
assert_eq!(
::std::mem::align_of::<Transform>(),
4usize,
concat!("Alignment of ", stringify!(Transform))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Transform>())).translation as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Transform),
"::",
stringify!(translation)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Transform>())).rotation as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Transform),
"::",
stringify!(rotation)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Transform>())).scale as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(Transform),
"::",
stringify!(scale)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct BoneInfo {
pub name: [::std::os::raw::c_char; 32usize],
pub parent: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_BoneInfo() {
assert_eq!(
::std::mem::size_of::<BoneInfo>(),
36usize,
concat!("Size of: ", stringify!(BoneInfo))
);
assert_eq!(
::std::mem::align_of::<BoneInfo>(),
4usize,
concat!("Alignment of ", stringify!(BoneInfo))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<BoneInfo>())).name as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(BoneInfo),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<BoneInfo>())).parent as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(BoneInfo),
"::",
stringify!(parent)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Model {
pub transform: Matrix,
pub meshCount: ::std::os::raw::c_int,
pub meshes: *mut Mesh,
pub materialCount: ::std::os::raw::c_int,
pub materials: *mut Material,
pub meshMaterial: *mut ::std::os::raw::c_int,
pub boneCount: ::std::os::raw::c_int,
pub bones: *mut BoneInfo,
pub bindPose: *mut Transform,
}
#[test]
fn bindgen_test_layout_Model() {
assert_eq!(
::std::mem::size_of::<Model>(),
128usize,
concat!("Size of: ", stringify!(Model))
);
assert_eq!(
::std::mem::align_of::<Model>(),
8usize,
concat!("Alignment of ", stringify!(Model))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).transform as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(transform)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).meshCount as *const _ as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(meshCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).meshes as *const _ as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(meshes)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).materialCount as *const _ as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(materialCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).materials as *const _ as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(materials)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).meshMaterial as *const _ as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(meshMaterial)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).boneCount as *const _ as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(boneCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).bones as *const _ as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(bones)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Model>())).bindPose as *const _ as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(Model),
"::",
stringify!(bindPose)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ModelAnimation {
pub boneCount: ::std::os::raw::c_int,
pub bones: *mut BoneInfo,
pub frameCount: ::std::os::raw::c_int,
pub framePoses: *mut *mut Transform,
}
#[test]
fn bindgen_test_layout_ModelAnimation() {
assert_eq!(
::std::mem::size_of::<ModelAnimation>(),
32usize,
concat!("Size of: ", stringify!(ModelAnimation))
);
assert_eq!(
::std::mem::align_of::<ModelAnimation>(),
8usize,
concat!("Alignment of ", stringify!(ModelAnimation))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ModelAnimation>())).boneCount as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ModelAnimation),
"::",
stringify!(boneCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ModelAnimation>())).bones as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ModelAnimation),
"::",
stringify!(bones)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ModelAnimation>())).frameCount as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(ModelAnimation),
"::",
stringify!(frameCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ModelAnimation>())).framePoses as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(ModelAnimation),
"::",
stringify!(framePoses)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Ray {
pub position: Vector3,
pub direction: Vector3,
}
#[test]
fn bindgen_test_layout_Ray() {
assert_eq!(
::std::mem::size_of::<Ray>(),
24usize,
concat!("Size of: ", stringify!(Ray))
);
assert_eq!(
::std::mem::align_of::<Ray>(),
4usize,
concat!("Alignment of ", stringify!(Ray))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Ray>())).position as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Ray),
"::",
stringify!(position)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Ray>())).direction as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Ray),
"::",
stringify!(direction)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RayHitInfo {
pub hit: bool,
pub distance: f32,
pub position: Vector3,
pub normal: Vector3,
}
#[test]
fn bindgen_test_layout_RayHitInfo() {
assert_eq!(
::std::mem::size_of::<RayHitInfo>(),
32usize,
concat!("Size of: ", stringify!(RayHitInfo))
);
assert_eq!(
::std::mem::align_of::<RayHitInfo>(),
4usize,
concat!("Alignment of ", stringify!(RayHitInfo))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RayHitInfo>())).hit as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(RayHitInfo),
"::",
stringify!(hit)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RayHitInfo>())).distance as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(RayHitInfo),
"::",
stringify!(distance)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RayHitInfo>())).position as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(RayHitInfo),
"::",
stringify!(position)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<RayHitInfo>())).normal as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(RayHitInfo),
"::",
stringify!(normal)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct BoundingBox {
pub min: Vector3,
pub max: Vector3,
}
#[test]
fn bindgen_test_layout_BoundingBox() {
assert_eq!(
::std::mem::size_of::<BoundingBox>(),
24usize,
concat!("Size of: ", stringify!(BoundingBox))
);
assert_eq!(
::std::mem::align_of::<BoundingBox>(),
4usize,
concat!("Alignment of ", stringify!(BoundingBox))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<BoundingBox>())).min as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(BoundingBox),
"::",
stringify!(min)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<BoundingBox>())).max as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(BoundingBox),
"::",
stringify!(max)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Wave {
pub sampleCount: ::std::os::raw::c_uint,
pub sampleRate: ::std::os::raw::c_uint,
pub sampleSize: ::std::os::raw::c_uint,
pub channels: ::std::os::raw::c_uint,
pub data: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_Wave() {
assert_eq!(
::std::mem::size_of::<Wave>(),
24usize,
concat!("Size of: ", stringify!(Wave))
);
assert_eq!(
::std::mem::align_of::<Wave>(),
8usize,
concat!("Alignment of ", stringify!(Wave))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Wave>())).sampleCount as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Wave),
"::",
stringify!(sampleCount)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Wave>())).sampleRate as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(Wave),
"::",
stringify!(sampleRate)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Wave>())).sampleSize as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Wave),
"::",
stringify!(sampleSize)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Wave>())).channels as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Wave),
"::",
stringify!(channels)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Wave>())).data as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Wave),
"::",
stringify!(data)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Sound {
pub audioBuffer: *mut ::std::os::raw::c_void,
pub source: ::std::os::raw::c_uint,
pub buffer: ::std::os::raw::c_uint,
pub format: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_Sound() {
assert_eq!(
::std::mem::size_of::<Sound>(),
24usize,
concat!("Size of: ", stringify!(Sound))
);
assert_eq!(
::std::mem::align_of::<Sound>(),
8usize,
concat!("Alignment of ", stringify!(Sound))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Sound>())).audioBuffer as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(Sound),
"::",
stringify!(audioBuffer)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Sound>())).source as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(Sound),
"::",
stringify!(source)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Sound>())).buffer as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(Sound),
"::",
stringify!(buffer)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<Sound>())).format as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(Sound),
"::",
stringify!(format)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct MusicData {
_unused: [u8; 0],
}
pub type Music = *mut MusicData;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct AudioStream {
pub sampleRate: ::std::os::raw::c_uint,
pub sampleSize: ::std::os::raw::c_uint,
pub channels: ::std::os::raw::c_uint,
pub audioBuffer: *mut ::std::os::raw::c_void,
pub format: ::std::os::raw::c_int,
pub source: ::std::os::raw::c_uint,
pub buffers: [::std::os::raw::c_uint; 2usize],
}
#[test]
fn bindgen_test_layout_AudioStream() {
assert_eq!(
::std::mem::size_of::<AudioStream>(),
40usize,
concat!("Size of: ", stringify!(AudioStream))
);
assert_eq!(
::std::mem::align_of::<AudioStream>(),
8usize,
concat!("Alignment of ", stringify!(AudioStream))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).sampleRate as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(sampleRate)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).sampleSize as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(sampleSize)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).channels as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(channels)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).audioBuffer as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(audioBuffer)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).format as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(format)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).source as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(source)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<AudioStream>())).buffers as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(AudioStream),
"::",
stringify!(buffers)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VrDeviceInfo {
pub hResolution: ::std::os::raw::c_int,
pub vResolution: ::std::os::raw::c_int,
pub hScreenSize: f32,
pub vScreenSize: f32,
pub vScreenCenter: f32,
pub eyeToScreenDistance: f32,
pub lensSeparationDistance: f32,
pub interpupillaryDistance: f32,
pub lensDistortionValues: [f32; 4usize],
pub chromaAbCorrection: [f32; 4usize],
}
#[test]
fn bindgen_test_layout_VrDeviceInfo() {
assert_eq!(
::std::mem::size_of::<VrDeviceInfo>(),
64usize,
concat!("Size of: ", stringify!(VrDeviceInfo))
);
assert_eq!(
::std::mem::align_of::<VrDeviceInfo>(),
4usize,
concat!("Alignment of ", stringify!(VrDeviceInfo))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).hResolution as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(hResolution)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).vResolution as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(vResolution)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).hScreenSize as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(hScreenSize)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).vScreenSize as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(vScreenSize)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).vScreenCenter as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(vScreenCenter)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<VrDeviceInfo>())).eyeToScreenDistance as *const _ as usize
},
20usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(eyeToScreenDistance)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<VrDeviceInfo>())).lensSeparationDistance as *const _ as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(lensSeparationDistance)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<VrDeviceInfo>())).interpupillaryDistance as *const _ as usize
},
28usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(interpupillaryDistance)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<VrDeviceInfo>())).lensDistortionValues as *const _ as usize
},
32usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(lensDistortionValues)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<VrDeviceInfo>())).chromaAbCorrection as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(VrDeviceInfo),
"::",
stringify!(chromaAbCorrection)
)
);
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum ConfigFlag {
FLAG_SHOW_LOGO = 1,
FLAG_FULLSCREEN_MODE = 2,
FLAG_WINDOW_RESIZABLE = 4,
FLAG_WINDOW_UNDECORATED = 8,
FLAG_WINDOW_TRANSPARENT = 16,
FLAG_WINDOW_HIDDEN = 128,
FLAG_MSAA_4X_HINT = 32,
FLAG_VSYNC_HINT = 64,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum TraceLogType {
LOG_ALL = 0,
LOG_TRACE = 1,
LOG_DEBUG = 2,
LOG_INFO = 3,
LOG_WARNING = 4,
LOG_ERROR = 5,
LOG_FATAL = 6,
LOG_NONE = 7,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum KeyboardKey {
KEY_APOSTROPHE = 39,
KEY_COMMA = 44,
KEY_MINUS = 45,
KEY_PERIOD = 46,
KEY_SLASH = 47,
KEY_ZERO = 48,
KEY_ONE = 49,
KEY_TWO = 50,
KEY_THREE = 51,
KEY_FOUR = 52,
KEY_FIVE = 53,
KEY_SIX = 54,
KEY_SEVEN = 55,
KEY_EIGHT = 56,
KEY_NINE = 57,
KEY_SEMICOLON = 59,
KEY_EQUAL = 61,
KEY_A = 65,
KEY_B = 66,
KEY_C = 67,
KEY_D = 68,
KEY_E = 69,
KEY_F = 70,
KEY_G = 71,
KEY_H = 72,
KEY_I = 73,
KEY_J = 74,
KEY_K = 75,
KEY_L = 76,
KEY_M = 77,
KEY_N = 78,
KEY_O = 79,
KEY_P = 80,
KEY_Q = 81,
KEY_R = 82,
KEY_S = 83,
KEY_T = 84,
KEY_U = 85,
KEY_V = 86,
KEY_W = 87,
KEY_X = 88,
KEY_Y = 89,
KEY_Z = 90,
KEY_SPACE = 32,
KEY_ESCAPE = 256,
KEY_ENTER = 257,
KEY_TAB = 258,
KEY_BACKSPACE = 259,
KEY_INSERT = 260,
KEY_DELETE = 261,
KEY_RIGHT = 262,
KEY_LEFT = 263,
KEY_DOWN = 264,
KEY_UP = 265,
KEY_PAGE_UP = 266,
KEY_PAGE_DOWN = 267,
KEY_HOME = 268,
KEY_END = 269,
KEY_CAPS_LOCK = 280,
KEY_SCROLL_LOCK = 281,
KEY_NUM_LOCK = 282,
KEY_PRINT_SCREEN = 283,
KEY_PAUSE = 284,
KEY_F1 = 290,
KEY_F2 = 291,
KEY_F3 = 292,
KEY_F4 = 293,
KEY_F5 = 294,
KEY_F6 = 295,
KEY_F7 = 296,
KEY_F8 = 297,
KEY_F9 = 298,
KEY_F10 = 299,
KEY_F11 = 300,
KEY_F12 = 301,
KEY_LEFT_SHIFT = 340,
KEY_LEFT_CONTROL = 341,
KEY_LEFT_ALT = 342,
KEY_LEFT_SUPER = 343,
KEY_RIGHT_SHIFT = 344,
KEY_RIGHT_CONTROL = 345,
KEY_RIGHT_ALT = 346,
KEY_RIGHT_SUPER = 347,
KEY_KB_MENU = 348,
KEY_LEFT_BRACKET = 91,
KEY_BACKSLASH = 92,
KEY_RIGHT_BRACKET = 93,
KEY_GRAVE = 96,
KEY_KP_0 = 320,
KEY_KP_1 = 321,
KEY_KP_2 = 322,
KEY_KP_3 = 323,
KEY_KP_4 = 324,
KEY_KP_5 = 325,
KEY_KP_6 = 326,
KEY_KP_7 = 327,
KEY_KP_8 = 328,
KEY_KP_9 = 329,
KEY_KP_DECIMAL = 330,
KEY_KP_DIVIDE = 331,
KEY_KP_MULTIPLY = 332,
KEY_KP_SUBTRACT = 333,
KEY_KP_ADD = 334,
KEY_KP_ENTER = 335,
KEY_KP_EQUAL = 336,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum AndroidButton {
KEY_BACK = 4,
KEY_MENU = 82,
KEY_VOLUME_UP = 24,
KEY_VOLUME_DOWN = 25,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum MouseButton {
MOUSE_LEFT_BUTTON = 0,
MOUSE_RIGHT_BUTTON = 1,
MOUSE_MIDDLE_BUTTON = 2,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GamepadNumber {
GAMEPAD_PLAYER1 = 0,
GAMEPAD_PLAYER2 = 1,
GAMEPAD_PLAYER3 = 2,
GAMEPAD_PLAYER4 = 3,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GamepadButton {
GAMEPAD_BUTTON_UNKNOWN = 0,
GAMEPAD_BUTTON_LEFT_FACE_UP = 1,
GAMEPAD_BUTTON_LEFT_FACE_RIGHT = 2,
GAMEPAD_BUTTON_LEFT_FACE_DOWN = 3,
GAMEPAD_BUTTON_LEFT_FACE_LEFT = 4,
GAMEPAD_BUTTON_RIGHT_FACE_UP = 5,
GAMEPAD_BUTTON_RIGHT_FACE_RIGHT = 6,
GAMEPAD_BUTTON_RIGHT_FACE_DOWN = 7,
GAMEPAD_BUTTON_RIGHT_FACE_LEFT = 8,
GAMEPAD_BUTTON_LEFT_TRIGGER_1 = 9,
GAMEPAD_BUTTON_LEFT_TRIGGER_2 = 10,
GAMEPAD_BUTTON_RIGHT_TRIGGER_1 = 11,
GAMEPAD_BUTTON_RIGHT_TRIGGER_2 = 12,
GAMEPAD_BUTTON_MIDDLE_LEFT = 13,
GAMEPAD_BUTTON_MIDDLE = 14,
GAMEPAD_BUTTON_MIDDLE_RIGHT = 15,
GAMEPAD_BUTTON_LEFT_THUMB = 16,
GAMEPAD_BUTTON_RIGHT_THUMB = 17,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GamepadAxis {
GAMEPAD_AXIS_UNKNOWN = 0,
GAMEPAD_AXIS_LEFT_X = 1,
GAMEPAD_AXIS_LEFT_Y = 2,
GAMEPAD_AXIS_RIGHT_X = 3,
GAMEPAD_AXIS_RIGHT_Y = 4,
GAMEPAD_AXIS_LEFT_TRIGGER = 5,
GAMEPAD_AXIS_RIGHT_TRIGGER = 6,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum ShaderLocationIndex {
LOC_VERTEX_POSITION = 0,
LOC_VERTEX_TEXCOORD01 = 1,
LOC_VERTEX_TEXCOORD02 = 2,
LOC_VERTEX_NORMAL = 3,
LOC_VERTEX_TANGENT = 4,
LOC_VERTEX_COLOR = 5,
LOC_MATRIX_MVP = 6,
LOC_MATRIX_MODEL = 7,
LOC_MATRIX_VIEW = 8,
LOC_MATRIX_PROJECTION = 9,
LOC_VECTOR_VIEW = 10,
LOC_COLOR_DIFFUSE = 11,
LOC_COLOR_SPECULAR = 12,
LOC_COLOR_AMBIENT = 13,
LOC_MAP_ALBEDO = 14,
LOC_MAP_METALNESS = 15,
LOC_MAP_NORMAL = 16,
LOC_MAP_ROUGHNESS = 17,
LOC_MAP_OCCLUSION = 18,
LOC_MAP_EMISSION = 19,
LOC_MAP_HEIGHT = 20,
LOC_MAP_CUBEMAP = 21,
LOC_MAP_IRRADIANCE = 22,
LOC_MAP_PREFILTER = 23,
LOC_MAP_BRDF = 24,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum ShaderUniformDataType {
UNIFORM_FLOAT = 0,
UNIFORM_VEC2 = 1,
UNIFORM_VEC3 = 2,
UNIFORM_VEC4 = 3,
UNIFORM_INT = 4,
UNIFORM_IVEC2 = 5,
UNIFORM_IVEC3 = 6,
UNIFORM_IVEC4 = 7,
UNIFORM_SAMPLER2D = 8,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum MaterialMapType {
MAP_ALBEDO = 0,
MAP_METALNESS = 1,
MAP_NORMAL = 2,
MAP_ROUGHNESS = 3,
MAP_OCCLUSION = 4,
MAP_EMISSION = 5,
MAP_HEIGHT = 6,
MAP_CUBEMAP = 7,
MAP_IRRADIANCE = 8,
MAP_PREFILTER = 9,
MAP_BRDF = 10,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum PixelFormat {
UNCOMPRESSED_GRAYSCALE = 1,
UNCOMPRESSED_GRAY_ALPHA = 2,
UNCOMPRESSED_R5G6B5 = 3,
UNCOMPRESSED_R8G8B8 = 4,
UNCOMPRESSED_R5G5B5A1 = 5,
UNCOMPRESSED_R4G4B4A4 = 6,
UNCOMPRESSED_R8G8B8A8 = 7,
UNCOMPRESSED_R32 = 8,
UNCOMPRESSED_R32G32B32 = 9,
UNCOMPRESSED_R32G32B32A32 = 10,
COMPRESSED_DXT1_RGB = 11,
COMPRESSED_DXT1_RGBA = 12,
COMPRESSED_DXT3_RGBA = 13,
COMPRESSED_DXT5_RGBA = 14,
COMPRESSED_ETC1_RGB = 15,
COMPRESSED_ETC2_RGB = 16,
COMPRESSED_ETC2_EAC_RGBA = 17,
COMPRESSED_PVRT_RGB = 18,
COMPRESSED_PVRT_RGBA = 19,
COMPRESSED_ASTC_4x4_RGBA = 20,
COMPRESSED_ASTC_8x8_RGBA = 21,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum TextureFilterMode {
FILTER_POINT = 0,
FILTER_BILINEAR = 1,
FILTER_TRILINEAR = 2,
FILTER_ANISOTROPIC_4X = 3,
FILTER_ANISOTROPIC_8X = 4,
FILTER_ANISOTROPIC_16X = 5,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum CubemapLayoutType {
CUBEMAP_AUTO_DETECT = 0,
CUBEMAP_LINE_VERTICAL = 1,
CUBEMAP_LINE_HORIZONTAL = 2,
CUBEMAP_CROSS_THREE_BY_FOUR = 3,
CUBEMAP_CROSS_FOUR_BY_THREE = 4,
CUBEMAP_PANORAMA = 5,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum TextureWrapMode {
WRAP_REPEAT = 0,
WRAP_CLAMP = 1,
WRAP_MIRROR_REPEAT = 2,
WRAP_MIRROR_CLAMP = 3,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum FontType {
FONT_DEFAULT = 0,
FONT_BITMAP = 1,
FONT_SDF = 2,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum BlendMode {
BLEND_ALPHA = 0,
BLEND_ADDITIVE = 1,
BLEND_MULTIPLIED = 2,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GestureType {
GESTURE_NONE = 0,
GESTURE_TAP = 1,
GESTURE_DOUBLETAP = 2,
GESTURE_HOLD = 4,
GESTURE_DRAG = 8,
GESTURE_SWIPE_RIGHT = 16,
GESTURE_SWIPE_LEFT = 32,
GESTURE_SWIPE_UP = 64,
GESTURE_SWIPE_DOWN = 128,
GESTURE_PINCH_IN = 256,
GESTURE_PINCH_OUT = 512,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum CameraMode {
CAMERA_CUSTOM = 0,
CAMERA_FREE = 1,
CAMERA_ORBITAL = 2,
CAMERA_FIRST_PERSON = 3,
CAMERA_THIRD_PERSON = 4,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum CameraType {
CAMERA_PERSPECTIVE = 0,
CAMERA_ORTHOGRAPHIC = 1,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum NPatchType {
NPT_9PATCH = 0,
NPT_3PATCH_VERTICAL = 1,
NPT_3PATCH_HORIZONTAL = 2,
}
pub type TraceLogCallback = ::std::option::Option<
unsafe extern "C" fn(
logType: ::std::os::raw::c_int,
text: *const ::std::os::raw::c_char,
args: va_list,
),
>;
extern "C" {
pub fn InitWindow(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
title: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn WindowShouldClose() -> bool;
}
extern "C" {
pub fn CloseWindow();
}
extern "C" {
pub fn IsWindowReady() -> bool;
}
extern "C" {
pub fn IsWindowMinimized() -> bool;
}
extern "C" {
pub fn IsWindowResized() -> bool;
}
extern "C" {
pub fn IsWindowHidden() -> bool;
}
extern "C" {
pub fn ToggleFullscreen();
}
extern "C" {
pub fn UnhideWindow();
}
extern "C" {
pub fn HideWindow();
}
extern "C" {
pub fn SetWindowIcon(image: Image);
}
extern "C" {
pub fn SetWindowTitle(title: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn SetWindowPosition(x: ::std::os::raw::c_int, y: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetWindowMonitor(monitor: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetWindowMinSize(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetWindowSize(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
}
extern "C" {
pub fn GetWindowHandle() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn GetScreenWidth() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetScreenHeight() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorCount() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorWidth(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorHeight(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorPhysicalWidth(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorPhysicalHeight(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMonitorName(monitor: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetClipboardText() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn SetClipboardText(text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn ShowCursor();
}
extern "C" {
pub fn HideCursor();
}
extern "C" {
pub fn IsCursorHidden() -> bool;
}
extern "C" {
pub fn EnableCursor();
}
extern "C" {
pub fn DisableCursor();
}
extern "C" {
pub fn ClearBackground(color: Color);
}
extern "C" {
pub fn BeginDrawing();
}
extern "C" {
pub fn EndDrawing();
}
extern "C" {
pub fn BeginMode2D(camera: Camera2D);
}
extern "C" {
pub fn EndMode2D();
}
extern "C" {
pub fn BeginMode3D(camera: Camera3D);
}
extern "C" {
pub fn EndMode3D();
}
extern "C" {
pub fn BeginTextureMode(target: RenderTexture2D);
}
extern "C" {
pub fn EndTextureMode();
}
extern "C" {
pub fn GetMouseRay(mousePosition: Vector2, camera: Camera) -> Ray;
}
extern "C" {
pub fn GetWorldToScreen(position: Vector3, camera: Camera) -> Vector2;
}
extern "C" {
pub fn GetCameraMatrix(camera: Camera) -> Matrix;
}
extern "C" {
pub fn SetTargetFPS(fps: ::std::os::raw::c_int);
}
extern "C" {
pub fn GetFPS() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetFrameTime() -> f32;
}
extern "C" {
pub fn GetTime() -> f64;
}
extern "C" {
pub fn ColorToInt(color: Color) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ColorNormalize(color: Color) -> Vector4;
}
extern "C" {
pub fn ColorToHSV(color: Color) -> Vector3;
}
extern "C" {
pub fn ColorFromHSV(hsv: Vector3) -> Color;
}
extern "C" {
pub fn GetColor(hexValue: ::std::os::raw::c_int) -> Color;
}
extern "C" {
pub fn Fade(color: Color, alpha: f32) -> Color;
}
extern "C" {
pub fn SetConfigFlags(flags: ::std::os::raw::c_uchar);
}
extern "C" {
pub fn SetTraceLogLevel(logType: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetTraceLogExit(logType: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetTraceLogCallback(callback: TraceLogCallback);
}
extern "C" {
pub fn TraceLog(logType: ::std::os::raw::c_int, text: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn TakeScreenshot(fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GetRandomValue(
min: ::std::os::raw::c_int,
max: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn FileExists(fileName: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn IsFileExtension(
fileName: *const ::std::os::raw::c_char,
ext: *const ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn GetExtension(fileName: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetFileName(filePath: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetFileNameWithoutExt(
filePath: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetDirectoryPath(
fileName: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetWorkingDirectory() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn GetDirectoryFiles(
dirPath: *const ::std::os::raw::c_char,
count: *mut ::std::os::raw::c_int,
) -> *mut *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn ClearDirectoryFiles();
}
extern "C" {
pub fn ChangeDirectory(dir: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn IsFileDropped() -> bool;
}
extern "C" {
pub fn GetDroppedFiles(count: *mut ::std::os::raw::c_int) -> *mut *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn ClearDroppedFiles();
}
extern "C" {
pub fn GetFileModTime(fileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
}
extern "C" {
pub fn StorageSaveValue(position: ::std::os::raw::c_int, value: ::std::os::raw::c_int);
}
extern "C" {
pub fn StorageLoadValue(position: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OpenURL(url: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn IsKeyPressed(key: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsKeyDown(key: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsKeyReleased(key: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsKeyUp(key: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn GetKeyPressed() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn SetExitKey(key: ::std::os::raw::c_int);
}
extern "C" {
pub fn IsGamepadAvailable(gamepad: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsGamepadName(
gamepad: ::std::os::raw::c_int,
name: *const ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn GetGamepadName(gamepad: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn IsGamepadButtonPressed(
gamepad: ::std::os::raw::c_int,
button: ::std::os::raw::c_int,
) -> bool;
}
extern "C" {
pub fn IsGamepadButtonDown(
gamepad: ::std::os::raw::c_int,
button: ::std::os::raw::c_int,
) -> bool;
}
extern "C" {
pub fn IsGamepadButtonReleased(
gamepad: ::std::os::raw::c_int,
button: ::std::os::raw::c_int,
) -> bool;
}
extern "C" {
pub fn IsGamepadButtonUp(gamepad: ::std::os::raw::c_int, button: ::std::os::raw::c_int)
-> bool;
}
extern "C" {
pub fn GetGamepadButtonPressed() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetGamepadAxisCount(gamepad: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetGamepadAxisMovement(
gamepad: ::std::os::raw::c_int,
axis: ::std::os::raw::c_int,
) -> f32;
}
extern "C" {
pub fn IsMouseButtonPressed(button: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsMouseButtonDown(button: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsMouseButtonReleased(button: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn IsMouseButtonUp(button: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn GetMouseX() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMouseY() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetMousePosition() -> Vector2;
}
extern "C" {
pub fn SetMousePosition(x: ::std::os::raw::c_int, y: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetMouseOffset(offsetX: ::std::os::raw::c_int, offsetY: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetMouseScale(scaleX: f32, scaleY: f32);
}
extern "C" {
pub fn GetMouseWheelMove() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetTouchX() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetTouchY() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetTouchPosition(index: ::std::os::raw::c_int) -> Vector2;
}
extern "C" {
pub fn SetGesturesEnabled(gestureFlags: ::std::os::raw::c_uint);
}
extern "C" {
pub fn IsGestureDetected(gesture: ::std::os::raw::c_int) -> bool;
}
extern "C" {
pub fn GetGestureDetected() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetTouchPointsCount() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetGestureHoldDuration() -> f32;
}
extern "C" {
pub fn GetGestureDragVector() -> Vector2;
}
extern "C" {
pub fn GetGestureDragAngle() -> f32;
}
extern "C" {
pub fn GetGesturePinchVector() -> Vector2;
}
extern "C" {
pub fn GetGesturePinchAngle() -> f32;
}
extern "C" {
pub fn SetCameraMode(camera: Camera, mode: ::std::os::raw::c_int);
}
extern "C" {
pub fn UpdateCamera(camera: *mut Camera);
}
extern "C" {
pub fn SetCameraPanControl(panKey: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetCameraAltControl(altKey: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetCameraSmoothZoomControl(szKey: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetCameraMoveControls(
frontKey: ::std::os::raw::c_int,
backKey: ::std::os::raw::c_int,
rightKey: ::std::os::raw::c_int,
leftKey: ::std::os::raw::c_int,
upKey: ::std::os::raw::c_int,
downKey: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn DrawPixel(posX: ::std::os::raw::c_int, posY: ::std::os::raw::c_int, color: Color);
}
extern "C" {
pub fn DrawPixelV(position: Vector2, color: Color);
}
extern "C" {
pub fn DrawLine(
startPosX: ::std::os::raw::c_int,
startPosY: ::std::os::raw::c_int,
endPosX: ::std::os::raw::c_int,
endPosY: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawLineV(startPos: Vector2, endPos: Vector2, color: Color);
}
extern "C" {
pub fn DrawLineEx(startPos: Vector2, endPos: Vector2, thick: f32, color: Color);
}
extern "C" {
pub fn DrawLineBezier(startPos: Vector2, endPos: Vector2, thick: f32, color: Color);
}
extern "C" {
pub fn DrawLineStrip(points: *mut Vector2, numPoints: ::std::os::raw::c_int, color: Color);
}
extern "C" {
pub fn DrawCircle(
centerX: ::std::os::raw::c_int,
centerY: ::std::os::raw::c_int,
radius: f32,
color: Color,
);
}
extern "C" {
pub fn DrawCircleSector(
center: Vector2,
radius: f32,
startAngle: ::std::os::raw::c_int,
endAngle: ::std::os::raw::c_int,
segments: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawCircleSectorLines(
center: Vector2,
radius: f32,
startAngle: ::std::os::raw::c_int,
endAngle: ::std::os::raw::c_int,
segments: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawCircleGradient(
centerX: ::std::os::raw::c_int,
centerY: ::std::os::raw::c_int,
radius: f32,
color1: Color,
color2: Color,
);
}
extern "C" {
pub fn DrawCircleV(center: Vector2, radius: f32, color: Color);
}
extern "C" {
pub fn DrawCircleLines(
centerX: ::std::os::raw::c_int,
centerY: ::std::os::raw::c_int,
radius: f32,
color: Color,
);
}
extern "C" {
pub fn DrawRing(
center: Vector2,
innerRadius: f32,
outerRadius: f32,
startAngle: ::std::os::raw::c_int,
endAngle: ::std::os::raw::c_int,
segments: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawRingLines(
center: Vector2,
innerRadius: f32,
outerRadius: f32,
startAngle: ::std::os::raw::c_int,
endAngle: ::std::os::raw::c_int,
segments: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawRectangle(
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawRectangleV(position: Vector2, size: Vector2, color: Color);
}
extern "C" {
pub fn DrawRectangleRec(rec: Rectangle, color: Color);
}
extern "C" {
pub fn DrawRectanglePro(rec: Rectangle, origin: Vector2, rotation: f32, color: Color);
}
extern "C" {
pub fn DrawRectangleGradientV(
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
color1: Color,
color2: Color,
);
}
extern "C" {
pub fn DrawRectangleGradientH(
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
color1: Color,
color2: Color,
);
}
extern "C" {
pub fn DrawRectangleGradientEx(
rec: Rectangle,
col1: Color,
col2: Color,
col3: Color,
col4: Color,
);
}
extern "C" {
pub fn DrawRectangleLines(
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawRectangleLinesEx(rec: Rectangle, lineThick: ::std::os::raw::c_int, color: Color);
}
extern "C" {
pub fn DrawRectangleRounded(
rec: Rectangle,
roundness: f32,
segments: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawRectangleRoundedLines(
rec: Rectangle,
roundness: f32,
segments: ::std::os::raw::c_int,
lineThick: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawTriangle(v1: Vector2, v2: Vector2, v3: Vector2, color: Color);
}
extern "C" {
pub fn DrawTriangleLines(v1: Vector2, v2: Vector2, v3: Vector2, color: Color);
}
extern "C" {
pub fn DrawTriangleFan(points: *mut Vector2, numPoints: ::std::os::raw::c_int, color: Color);
}
extern "C" {
pub fn DrawPoly(
center: Vector2,
sides: ::std::os::raw::c_int,
radius: f32,
rotation: f32,
color: Color,
);
}
extern "C" {
pub fn SetShapesTexture(texture: Texture2D, source: Rectangle);
}
extern "C" {
pub fn CheckCollisionRecs(rec1: Rectangle, rec2: Rectangle) -> bool;
}
extern "C" {
pub fn CheckCollisionCircles(
center1: Vector2,
radius1: f32,
center2: Vector2,
radius2: f32,
) -> bool;
}
extern "C" {
pub fn CheckCollisionCircleRec(center: Vector2, radius: f32, rec: Rectangle) -> bool;
}
extern "C" {
pub fn GetCollisionRec(rec1: Rectangle, rec2: Rectangle) -> Rectangle;
}
extern "C" {
pub fn CheckCollisionPointRec(point: Vector2, rec: Rectangle) -> bool;
}
extern "C" {
pub fn CheckCollisionPointCircle(point: Vector2, center: Vector2, radius: f32) -> bool;
}
extern "C" {
pub fn CheckCollisionPointTriangle(
point: Vector2,
p1: Vector2,
p2: Vector2,
p3: Vector2,
) -> bool;
}
extern "C" {
pub fn LoadImage(fileName: *const ::std::os::raw::c_char) -> Image;
}
extern "C" {
pub fn LoadImageEx(
pixels: *mut Color,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
) -> Image;
}
extern "C" {
pub fn LoadImagePro(
data: *mut ::std::os::raw::c_void,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
format: ::std::os::raw::c_int,
) -> Image;
}
extern "C" {
pub fn LoadImageRaw(
fileName: *const ::std::os::raw::c_char,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
format: ::std::os::raw::c_int,
headerSize: ::std::os::raw::c_int,
) -> Image;
}
extern "C" {
pub fn ExportImage(image: Image, fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn ExportImageAsCode(image: Image, fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn LoadTexture(fileName: *const ::std::os::raw::c_char) -> Texture2D;
}
extern "C" {
pub fn LoadTextureFromImage(image: Image) -> Texture2D;
}
extern "C" {
pub fn LoadTextureCubemap(image: Image, layoutType: ::std::os::raw::c_int) -> TextureCubemap;
}
extern "C" {
pub fn LoadRenderTexture(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
) -> RenderTexture2D;
}
extern "C" {
pub fn UnloadImage(image: Image);
}
extern "C" {
pub fn UnloadTexture(texture: Texture2D);
}
extern "C" {
pub fn UnloadRenderTexture(target: RenderTexture2D);
}
extern "C" {
pub fn GetImageData(image: Image) -> *mut Color;
}
extern "C" {
pub fn GetImageDataNormalized(image: Image) -> *mut Vector4;
}
extern "C" {
pub fn GetPixelDataSize(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
format: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetTextureData(texture: Texture2D) -> Image;
}
extern "C" {
pub fn GetScreenData() -> Image;
}
extern "C" {
pub fn UpdateTexture(texture: Texture2D, pixels: *const ::std::os::raw::c_void);
}
extern "C" {
pub fn ImageCopy(image: Image) -> Image;
}
extern "C" {
pub fn ImageToPOT(image: *mut Image, fillColor: Color);
}
extern "C" {
pub fn ImageFormat(image: *mut Image, newFormat: ::std::os::raw::c_int);
}
extern "C" {
pub fn ImageAlphaMask(image: *mut Image, alphaMask: Image);
}
extern "C" {
pub fn ImageAlphaClear(image: *mut Image, color: Color, threshold: f32);
}
extern "C" {
pub fn ImageAlphaCrop(image: *mut Image, threshold: f32);
}
extern "C" {
pub fn ImageAlphaPremultiply(image: *mut Image);
}
extern "C" {
pub fn ImageCrop(image: *mut Image, crop: Rectangle);
}
extern "C" {
pub fn ImageResize(
image: *mut Image,
newWidth: ::std::os::raw::c_int,
newHeight: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn ImageResizeNN(
image: *mut Image,
newWidth: ::std::os::raw::c_int,
newHeight: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn ImageResizeCanvas(
image: *mut Image,
newWidth: ::std::os::raw::c_int,
newHeight: ::std::os::raw::c_int,
offsetX: ::std::os::raw::c_int,
offsetY: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn ImageMipmaps(image: *mut Image);
}
extern "C" {
pub fn ImageDither(
image: *mut Image,
rBpp: ::std::os::raw::c_int,
gBpp: ::std::os::raw::c_int,
bBpp: ::std::os::raw::c_int,
aBpp: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn ImageExtractPalette(
image: Image,
maxPaletteSize: ::std::os::raw::c_int,
extractCount: *mut ::std::os::raw::c_int,
) -> *mut Color;
}
extern "C" {
pub fn ImageText(
text: *const ::std::os::raw::c_char,
fontSize: ::std::os::raw::c_int,
color: Color,
) -> Image;
}
extern "C" {
pub fn ImageTextEx(
font: Font,
text: *const ::std::os::raw::c_char,
fontSize: f32,
spacing: f32,
tint: Color,
) -> Image;
}
extern "C" {
pub fn ImageDraw(dst: *mut Image, src: Image, srcRec: Rectangle, dstRec: Rectangle);
}
extern "C" {
pub fn ImageDrawRectangle(dst: *mut Image, rec: Rectangle, color: Color);
}
extern "C" {
pub fn ImageDrawRectangleLines(
dst: *mut Image,
rec: Rectangle,
thick: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn ImageDrawText(
dst: *mut Image,
position: Vector2,
text: *const ::std::os::raw::c_char,
fontSize: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn ImageDrawTextEx(
dst: *mut Image,
position: Vector2,
font: Font,
text: *const ::std::os::raw::c_char,
fontSize: f32,
spacing: f32,
color: Color,
);
}
extern "C" {
pub fn ImageFlipVertical(image: *mut Image);
}
extern "C" {
pub fn ImageFlipHorizontal(image: *mut Image);
}
extern "C" {
pub fn ImageRotateCW(image: *mut Image);
}
extern "C" {
pub fn ImageRotateCCW(image: *mut Image);
}
extern "C" {
pub fn ImageColorTint(image: *mut Image, color: Color);
}
extern "C" {
pub fn ImageColorInvert(image: *mut Image);
}
extern "C" {
pub fn ImageColorGrayscale(image: *mut Image);
}
extern "C" {
pub fn ImageColorContrast(image: *mut Image, contrast: f32);
}
extern "C" {
pub fn ImageColorBrightness(image: *mut Image, brightness: ::std::os::raw::c_int);
}
extern "C" {
pub fn ImageColorReplace(image: *mut Image, color: Color, replace: Color);
}
extern "C" {
pub fn GenImageColor(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
color: Color,
) -> Image;
}
extern "C" {
pub fn GenImageGradientV(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
top: Color,
bottom: Color,
) -> Image;
}
extern "C" {
pub fn GenImageGradientH(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
left: Color,
right: Color,
) -> Image;
}
extern "C" {
pub fn GenImageGradientRadial(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
density: f32,
inner: Color,
outer: Color,
) -> Image;
}
extern "C" {
pub fn GenImageChecked(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
checksX: ::std::os::raw::c_int,
checksY: ::std::os::raw::c_int,
col1: Color,
col2: Color,
) -> Image;
}
extern "C" {
pub fn GenImageWhiteNoise(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
factor: f32,
) -> Image;
}
extern "C" {
pub fn GenImagePerlinNoise(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
offsetX: ::std::os::raw::c_int,
offsetY: ::std::os::raw::c_int,
scale: f32,
) -> Image;
}
extern "C" {
pub fn GenImageCellular(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
tileSize: ::std::os::raw::c_int,
) -> Image;
}
extern "C" {
pub fn GenTextureMipmaps(texture: *mut Texture2D);
}
extern "C" {
pub fn SetTextureFilter(texture: Texture2D, filterMode: ::std::os::raw::c_int);
}
extern "C" {
pub fn SetTextureWrap(texture: Texture2D, wrapMode: ::std::os::raw::c_int);
}
extern "C" {
pub fn DrawTexture(
texture: Texture2D,
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
tint: Color,
);
}
extern "C" {
pub fn DrawTextureV(texture: Texture2D, position: Vector2, tint: Color);
}
extern "C" {
pub fn DrawTextureEx(
texture: Texture2D,
position: Vector2,
rotation: f32,
scale: f32,
tint: Color,
);
}
extern "C" {
pub fn DrawTextureRec(texture: Texture2D, sourceRec: Rectangle, position: Vector2, tint: Color);
}
extern "C" {
pub fn DrawTextureQuad(
texture: Texture2D,
tiling: Vector2,
offset: Vector2,
quad: Rectangle,
tint: Color,
);
}
extern "C" {
pub fn DrawTexturePro(
texture: Texture2D,
sourceRec: Rectangle,
destRec: Rectangle,
origin: Vector2,
rotation: f32,
tint: Color,
);
}
extern "C" {
pub fn DrawTextureNPatch(
texture: Texture2D,
nPatchInfo: NPatchInfo,
destRec: Rectangle,
origin: Vector2,
rotation: f32,
tint: Color,
);
}
extern "C" {
pub fn GetFontDefault() -> Font;
}
extern "C" {
pub fn LoadFont(fileName: *const ::std::os::raw::c_char) -> Font;
}
extern "C" {
pub fn LoadFontEx(
fileName: *const ::std::os::raw::c_char,
fontSize: ::std::os::raw::c_int,
fontChars: *mut ::std::os::raw::c_int,
charsCount: ::std::os::raw::c_int,
) -> Font;
}
extern "C" {
pub fn LoadFontFromImage(image: Image, key: Color, firstChar: ::std::os::raw::c_int) -> Font;
}
extern "C" {
pub fn LoadFontData(
fileName: *const ::std::os::raw::c_char,
fontSize: ::std::os::raw::c_int,
fontChars: *mut ::std::os::raw::c_int,
charsCount: ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
) -> *mut CharInfo;
}
extern "C" {
pub fn GenImageFontAtlas(
chars: *mut CharInfo,
charsCount: ::std::os::raw::c_int,
fontSize: ::std::os::raw::c_int,
padding: ::std::os::raw::c_int,
packMethod: ::std::os::raw::c_int,
) -> Image;
}
extern "C" {
pub fn UnloadFont(font: Font);
}
extern "C" {
pub fn DrawFPS(posX: ::std::os::raw::c_int, posY: ::std::os::raw::c_int);
}
extern "C" {
pub fn DrawText(
text: *const ::std::os::raw::c_char,
posX: ::std::os::raw::c_int,
posY: ::std::os::raw::c_int,
fontSize: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawTextEx(
font: Font,
text: *const ::std::os::raw::c_char,
position: Vector2,
fontSize: f32,
spacing: f32,
tint: Color,
);
}
extern "C" {
pub fn DrawTextRec(
font: Font,
text: *const ::std::os::raw::c_char,
rec: Rectangle,
fontSize: f32,
spacing: f32,
wordWrap: bool,
tint: Color,
);
}
extern "C" {
pub fn DrawTextRecEx(
font: Font,
text: *const ::std::os::raw::c_char,
rec: Rectangle,
fontSize: f32,
spacing: f32,
wordWrap: bool,
tint: Color,
selectStart: ::std::os::raw::c_int,
selectLength: ::std::os::raw::c_int,
selectText: Color,
selectBack: Color,
);
}
extern "C" {
pub fn MeasureText(
text: *const ::std::os::raw::c_char,
fontSize: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn MeasureTextEx(
font: Font,
text: *const ::std::os::raw::c_char,
fontSize: f32,
spacing: f32,
) -> Vector2;
}
extern "C" {
pub fn GetGlyphIndex(font: Font, character: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetNextCodepoint(
text: *const ::std::os::raw::c_char,
count: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn TextIsEqual(
text1: *const ::std::os::raw::c_char,
text2: *const ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn TextLength(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_uint;
}
extern "C" {
pub fn TextCountCodepoints(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_uint;
}
extern "C" {
pub fn TextFormat(text: *const ::std::os::raw::c_char, ...) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextSubtext(
text: *const ::std::os::raw::c_char,
position: ::std::os::raw::c_int,
length: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextReplace(
text: *mut ::std::os::raw::c_char,
replace: *const ::std::os::raw::c_char,
by: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextInsert(
text: *const ::std::os::raw::c_char,
insert: *const ::std::os::raw::c_char,
position: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextJoin(
textList: *mut *const ::std::os::raw::c_char,
count: ::std::os::raw::c_int,
delimiter: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextSplit(
text: *const ::std::os::raw::c_char,
delimiter: ::std::os::raw::c_char,
count: *mut ::std::os::raw::c_int,
) -> *mut *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextAppend(
text: *mut ::std::os::raw::c_char,
append: *const ::std::os::raw::c_char,
position: *mut ::std::os::raw::c_int,
);
}
extern "C" {
pub fn TextFindIndex(
text: *const ::std::os::raw::c_char,
find: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn TextToUpper(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextToLower(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextToPascal(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn TextToInteger(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn DrawLine3D(startPos: Vector3, endPos: Vector3, color: Color);
}
extern "C" {
pub fn DrawCircle3D(
center: Vector3,
radius: f32,
rotationAxis: Vector3,
rotationAngle: f32,
color: Color,
);
}
extern "C" {
pub fn DrawCube(position: Vector3, width: f32, height: f32, length: f32, color: Color);
}
extern "C" {
pub fn DrawCubeV(position: Vector3, size: Vector3, color: Color);
}
extern "C" {
pub fn DrawCubeWires(position: Vector3, width: f32, height: f32, length: f32, color: Color);
}
extern "C" {
pub fn DrawCubeWiresV(position: Vector3, size: Vector3, color: Color);
}
extern "C" {
pub fn DrawCubeTexture(
texture: Texture2D,
position: Vector3,
width: f32,
height: f32,
length: f32,
color: Color,
);
}
extern "C" {
pub fn DrawSphere(centerPos: Vector3, radius: f32, color: Color);
}
extern "C" {
pub fn DrawSphereEx(
centerPos: Vector3,
radius: f32,
rings: ::std::os::raw::c_int,
slices: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawSphereWires(
centerPos: Vector3,
radius: f32,
rings: ::std::os::raw::c_int,
slices: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawCylinder(
position: Vector3,
radiusTop: f32,
radiusBottom: f32,
height: f32,
slices: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawCylinderWires(
position: Vector3,
radiusTop: f32,
radiusBottom: f32,
height: f32,
slices: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub fn DrawPlane(centerPos: Vector3, size: Vector2, color: Color);
}
extern "C" {
pub fn DrawRay(ray: Ray, color: Color);
}
extern "C" {
pub fn DrawGrid(slices: ::std::os::raw::c_int, spacing: f32);
}
extern "C" {
pub fn DrawGizmo(position: Vector3);
}
extern "C" {
pub fn LoadModel(fileName: *const ::std::os::raw::c_char) -> Model;
}
extern "C" {
pub fn LoadModelFromMesh(mesh: Mesh) -> Model;
}
extern "C" {
pub fn UnloadModel(model: Model);
}
extern "C" {
pub fn LoadMeshes(
fileName: *const ::std::os::raw::c_char,
meshCount: *mut ::std::os::raw::c_int,
) -> *mut Mesh;
}
extern "C" {
pub fn ExportMesh(mesh: Mesh, fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn UnloadMesh(mesh: *mut Mesh);
}
extern "C" {
pub fn LoadMaterials(
fileName: *const ::std::os::raw::c_char,
materialCount: *mut ::std::os::raw::c_int,
) -> *mut Material;
}
extern "C" {
pub fn LoadMaterialDefault() -> Material;
}
extern "C" {
pub fn UnloadMaterial(material: Material);
}
extern "C" {
pub fn SetMaterialTexture(
material: *mut Material,
mapType: ::std::os::raw::c_int,
texture: Texture2D,
);
}
extern "C" {
pub fn SetModelMeshMaterial(
model: *mut Model,
meshId: ::std::os::raw::c_int,
materialId: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn LoadModelAnimations(
fileName: *const ::std::os::raw::c_char,
animsCount: *mut ::std::os::raw::c_int,
) -> *mut ModelAnimation;
}
extern "C" {
pub fn UpdateModelAnimation(model: Model, anim: ModelAnimation, frame: ::std::os::raw::c_int);
}
extern "C" {
pub fn UnloadModelAnimation(anim: ModelAnimation);
}
extern "C" {
pub fn IsModelAnimationValid(model: Model, anim: ModelAnimation) -> bool;
}
extern "C" {
pub fn GenMeshPoly(sides: ::std::os::raw::c_int, radius: f32) -> Mesh;
}
extern "C" {
pub fn GenMeshPlane(
width: f32,
length: f32,
resX: ::std::os::raw::c_int,
resZ: ::std::os::raw::c_int,
) -> Mesh;
}
extern "C" {
pub fn GenMeshCube(width: f32, height: f32, length: f32) -> Mesh;
}
extern "C" {
pub fn GenMeshSphere(
radius: f32,
rings: ::std::os::raw::c_int,
slices: ::std::os::raw::c_int,
) -> Mesh;
}
extern "C" {
pub fn GenMeshHemiSphere(
radius: f32,
rings: ::std::os::raw::c_int,
slices: ::std::os::raw::c_int,
) -> Mesh;
}
extern "C" {
pub fn GenMeshCylinder(radius: f32, height: f32, slices: ::std::os::raw::c_int) -> Mesh;
}
extern "C" {
pub fn GenMeshTorus(
radius: f32,
size: f32,
radSeg: ::std::os::raw::c_int,
sides: ::std::os::raw::c_int,
) -> Mesh;
}
extern "C" {
pub fn GenMeshKnot(
radius: f32,
size: f32,
radSeg: ::std::os::raw::c_int,
sides: ::std::os::raw::c_int,
) -> Mesh;
}
extern "C" {
pub fn GenMeshHeightmap(heightmap: Image, size: Vector3) -> Mesh;
}
extern "C" {
pub fn GenMeshCubicmap(cubicmap: Image, cubeSize: Vector3) -> Mesh;
}
extern "C" {
pub fn MeshBoundingBox(mesh: Mesh) -> BoundingBox;
}
extern "C" {
pub fn MeshTangents(mesh: *mut Mesh);
}
extern "C" {
pub fn MeshBinormals(mesh: *mut Mesh);
}
extern "C" {
pub fn DrawModel(model: Model, position: Vector3, scale: f32, tint: Color);
}
extern "C" {
pub fn DrawModelEx(
model: Model,
position: Vector3,
rotationAxis: Vector3,
rotationAngle: f32,
scale: Vector3,
tint: Color,
);
}
extern "C" {
pub fn DrawModelWires(model: Model, position: Vector3, scale: f32, tint: Color);
}
extern "C" {
pub fn DrawModelWiresEx(
model: Model,
position: Vector3,
rotationAxis: Vector3,
rotationAngle: f32,
scale: Vector3,
tint: Color,
);
}
extern "C" {
pub fn DrawBoundingBox(box_: BoundingBox, color: Color);
}
extern "C" {
pub fn DrawBillboard(
camera: Camera,
texture: Texture2D,
center: Vector3,
size: f32,
tint: Color,
);
}
extern "C" {
pub fn DrawBillboardRec(
camera: Camera,
texture: Texture2D,
sourceRec: Rectangle,
center: Vector3,
size: f32,
tint: Color,
);
}
extern "C" {
pub fn CheckCollisionSpheres(
centerA: Vector3,
radiusA: f32,
centerB: Vector3,
radiusB: f32,
) -> bool;
}
extern "C" {
pub fn CheckCollisionBoxes(box1: BoundingBox, box2: BoundingBox) -> bool;
}
extern "C" {
pub fn CheckCollisionBoxSphere(
box_: BoundingBox,
centerSphere: Vector3,
radiusSphere: f32,
) -> bool;
}
extern "C" {
pub fn CheckCollisionRaySphere(ray: Ray, spherePosition: Vector3, sphereRadius: f32) -> bool;
}
extern "C" {
pub fn CheckCollisionRaySphereEx(
ray: Ray,
spherePosition: Vector3,
sphereRadius: f32,
collisionPoint: *mut Vector3,
) -> bool;
}
extern "C" {
pub fn CheckCollisionRayBox(ray: Ray, box_: BoundingBox) -> bool;
}
extern "C" {
pub fn GetCollisionRayModel(ray: Ray, model: *mut Model) -> RayHitInfo;
}
extern "C" {
pub fn GetCollisionRayTriangle(ray: Ray, p1: Vector3, p2: Vector3, p3: Vector3) -> RayHitInfo;
}
extern "C" {
pub fn GetCollisionRayGround(ray: Ray, groundHeight: f32) -> RayHitInfo;
}
extern "C" {
pub fn LoadText(fileName: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn LoadShader(
vsFileName: *const ::std::os::raw::c_char,
fsFileName: *const ::std::os::raw::c_char,
) -> Shader;
}
extern "C" {
pub fn LoadShaderCode(
vsCode: *mut ::std::os::raw::c_char,
fsCode: *mut ::std::os::raw::c_char,
) -> Shader;
}
extern "C" {
pub fn UnloadShader(shader: Shader);
}
extern "C" {
pub fn GetShaderDefault() -> Shader;
}
extern "C" {
pub fn GetTextureDefault() -> Texture2D;
}
extern "C" {
pub fn GetShaderLocation(
shader: Shader,
uniformName: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn SetShaderValue(
shader: Shader,
uniformLoc: ::std::os::raw::c_int,
value: *const ::std::os::raw::c_void,
uniformType: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn SetShaderValueV(
shader: Shader,
uniformLoc: ::std::os::raw::c_int,
value: *const ::std::os::raw::c_void,
uniformType: ::std::os::raw::c_int,
count: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn SetShaderValueMatrix(shader: Shader, uniformLoc: ::std::os::raw::c_int, mat: Matrix);
}
extern "C" {
pub fn SetShaderValueTexture(
shader: Shader,
uniformLoc: ::std::os::raw::c_int,
texture: Texture2D,
);
}
extern "C" {
pub fn SetMatrixProjection(proj: Matrix);
}
extern "C" {
pub fn SetMatrixModelview(view: Matrix);
}
extern "C" {
pub fn GetMatrixModelview() -> Matrix;
}
extern "C" {
pub fn GenTextureCubemap(
shader: Shader,
skyHDR: Texture2D,
size: ::std::os::raw::c_int,
) -> Texture2D;
}
extern "C" {
pub fn GenTextureIrradiance(
shader: Shader,
cubemap: Texture2D,
size: ::std::os::raw::c_int,
) -> Texture2D;
}
extern "C" {
pub fn GenTexturePrefilter(
shader: Shader,
cubemap: Texture2D,
size: ::std::os::raw::c_int,
) -> Texture2D;
}
extern "C" {
pub fn GenTextureBRDF(shader: Shader, size: ::std::os::raw::c_int) -> Texture2D;
}
extern "C" {
pub fn BeginShaderMode(shader: Shader);
}
extern "C" {
pub fn EndShaderMode();
}
extern "C" {
pub fn BeginBlendMode(mode: ::std::os::raw::c_int);
}
extern "C" {
pub fn EndBlendMode();
}
extern "C" {
pub fn BeginScissorMode(
x: ::std::os::raw::c_int,
y: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn EndScissorMode();
}
extern "C" {
pub fn InitVrSimulator();
}
extern "C" {
pub fn CloseVrSimulator();
}
extern "C" {
pub fn UpdateVrTracking(camera: *mut Camera);
}
extern "C" {
pub fn SetVrConfiguration(info: VrDeviceInfo, distortion: Shader);
}
extern "C" {
pub fn IsVrSimulatorReady() -> bool;
}
extern "C" {
pub fn ToggleVrMode();
}
extern "C" {
pub fn BeginVrDrawing();
}
extern "C" {
pub fn EndVrDrawing();
}
extern "C" {
pub fn InitAudioDevice();
}
extern "C" {
pub fn CloseAudioDevice();
}
extern "C" {
pub fn IsAudioDeviceReady() -> bool;
}
extern "C" {
pub fn SetMasterVolume(volume: f32);
}
extern "C" {
pub fn LoadWave(fileName: *const ::std::os::raw::c_char) -> Wave;
}
extern "C" {
pub fn LoadWaveEx(
data: *mut ::std::os::raw::c_void,
sampleCount: ::std::os::raw::c_int,
sampleRate: ::std::os::raw::c_int,
sampleSize: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
) -> Wave;
}
extern "C" {
pub fn LoadSound(fileName: *const ::std::os::raw::c_char) -> Sound;
}
extern "C" {
pub fn LoadSoundFromWave(wave: Wave) -> Sound;
}
extern "C" {
pub fn UpdateSound(
sound: Sound,
data: *const ::std::os::raw::c_void,
samplesCount: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn UnloadWave(wave: Wave);
}
extern "C" {
pub fn UnloadSound(sound: Sound);
}
extern "C" {
pub fn ExportWave(wave: Wave, fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn ExportWaveAsCode(wave: Wave, fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn PlaySound(sound: Sound);
}
extern "C" {
pub fn PauseSound(sound: Sound);
}
extern "C" {
pub fn ResumeSound(sound: Sound);
}
extern "C" {
pub fn StopSound(sound: Sound);
}
extern "C" {
pub fn IsSoundPlaying(sound: Sound) -> bool;
}
extern "C" {
pub fn SetSoundVolume(sound: Sound, volume: f32);
}
extern "C" {
pub fn SetSoundPitch(sound: Sound, pitch: f32);
}
extern "C" {
pub fn WaveFormat(
wave: *mut Wave,
sampleRate: ::std::os::raw::c_int,
sampleSize: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn WaveCopy(wave: Wave) -> Wave;
}
extern "C" {
pub fn WaveCrop(
wave: *mut Wave,
initSample: ::std::os::raw::c_int,
finalSample: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn GetWaveData(wave: Wave) -> *mut f32;
}
extern "C" {
pub fn LoadMusicStream(fileName: *const ::std::os::raw::c_char) -> Music;
}
extern "C" {
pub fn UnloadMusicStream(music: Music);
}
extern "C" {
pub fn PlayMusicStream(music: Music);
}
extern "C" {
pub fn UpdateMusicStream(music: Music);
}
extern "C" {
pub fn StopMusicStream(music: Music);
}
extern "C" {
pub fn PauseMusicStream(music: Music);
}
extern "C" {
pub fn ResumeMusicStream(music: Music);
}
extern "C" {
pub fn IsMusicPlaying(music: Music) -> bool;
}
extern "C" {
pub fn SetMusicVolume(music: Music, volume: f32);
}
extern "C" {
pub fn SetMusicPitch(music: Music, pitch: f32);
}
extern "C" {
pub fn SetMusicLoopCount(music: Music, count: ::std::os::raw::c_int);
}
extern "C" {
pub fn GetMusicTimeLength(music: Music) -> f32;
}
extern "C" {
pub fn GetMusicTimePlayed(music: Music) -> f32;
}
extern "C" {
pub fn InitAudioStream(
sampleRate: ::std::os::raw::c_uint,
sampleSize: ::std::os::raw::c_uint,
channels: ::std::os::raw::c_uint,
) -> AudioStream;
}
extern "C" {
pub fn UpdateAudioStream(
stream: AudioStream,
data: *const ::std::os::raw::c_void,
samplesCount: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn CloseAudioStream(stream: AudioStream);
}
extern "C" {
pub fn IsAudioBufferProcessed(stream: AudioStream) -> bool;
}
extern "C" {
pub fn PlayAudioStream(stream: AudioStream);
}
extern "C" {
pub fn PauseAudioStream(stream: AudioStream);
}
extern "C" {
pub fn ResumeAudioStream(stream: AudioStream);
}
extern "C" {
pub fn IsAudioStreamPlaying(stream: AudioStream) -> bool;
}
extern "C" {
pub fn StopAudioStream(stream: AudioStream);
}
extern "C" {
pub fn SetAudioStreamVolume(stream: AudioStream, volume: f32);
}
extern "C" {
pub fn SetAudioStreamPitch(stream: AudioStream, pitch: f32);
}
pub type __builtin_va_list = *mut ::std::os::raw::c_char;
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiControlState {
GUI_STATE_NORMAL = 0,
GUI_STATE_FOCUSED = 1,
GUI_STATE_PRESSED = 2,
GUI_STATE_DISABLED = 3,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiTextAlignment {
GUI_TEXT_ALIGN_LEFT = 0,
GUI_TEXT_ALIGN_CENTER = 1,
GUI_TEXT_ALIGN_RIGHT = 2,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiControl {
DEFAULT = 0,
LABEL = 1,
BUTTON = 2,
TOGGLE = 3,
SLIDER = 4,
PROGRESSBAR = 5,
CHECKBOX = 6,
COMBOBOX = 7,
DROPDOWNBOX = 8,
TEXTBOX = 9,
VALUEBOX = 10,
SPINNER = 11,
LISTVIEW = 12,
COLORPICKER = 13,
SCROLLBAR = 14,
RESERVED = 15,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiControlProperty {
BORDER_COLOR_NORMAL = 0,
BASE_COLOR_NORMAL = 1,
TEXT_COLOR_NORMAL = 2,
BORDER_COLOR_FOCUSED = 3,
BASE_COLOR_FOCUSED = 4,
TEXT_COLOR_FOCUSED = 5,
BORDER_COLOR_PRESSED = 6,
BASE_COLOR_PRESSED = 7,
TEXT_COLOR_PRESSED = 8,
BORDER_COLOR_DISABLED = 9,
BASE_COLOR_DISABLED = 10,
TEXT_COLOR_DISABLED = 11,
BORDER_WIDTH = 12,
INNER_PADDING = 13,
TEXT_ALIGNMENT = 14,
RESERVED02 = 15,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiDefaultProperty {
TEXT_SIZE = 16,
TEXT_SPACING = 17,
LINE_COLOR = 18,
BACKGROUND_COLOR = 19,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiToggleProperty {
GROUP_PADDING = 16,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiSliderProperty {
SLIDER_WIDTH = 16,
TEXT_PADDING = 17,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiCheckBoxProperty {
CHECK_TEXT_PADDING = 16,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiComboBoxProperty {
SELECTOR_WIDTH = 16,
SELECTOR_PADDING = 17,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiDropdownBoxProperty {
ARROW_RIGHT_PADDING = 16,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiTextBoxProperty {
MULTILINE_PADDING = 16,
COLOR_SELECTED_FG = 17,
COLOR_SELECTED_BG = 18,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiSpinnerProperty {
SELECT_BUTTON_WIDTH = 16,
SELECT_BUTTON_PADDING = 17,
SELECT_BUTTON_BORDER_WIDTH = 18,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiScrollBarProperty {
ARROWS_SIZE = 16,
SLIDER_PADDING = 17,
SLIDER_SIZE = 18,
SCROLL_SPEED = 19,
SHOW_SPINNER_BUTTONS = 20,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiScrollBarSide {
SCROLLBAR_LEFT_SIDE = 0,
SCROLLBAR_RIGHT_SIDE = 1,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiListViewProperty {
ELEMENTS_HEIGHT = 16,
ELEMENTS_PADDING = 17,
SCROLLBAR_WIDTH = 18,
SCROLLBAR_SIDE = 19,
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiColorPickerProperty {
COLOR_SELECTOR_SIZE = 16,
BAR_WIDTH = 17,
BAR_PADDING = 18,
BAR_SELECTOR_HEIGHT = 19,
BAR_SELECTOR_PADDING = 20,
}
extern "C" {
pub fn GuiEnable();
}
extern "C" {
pub fn GuiDisable();
}
extern "C" {
pub fn GuiLock();
}
extern "C" {
pub fn GuiUnlock();
}
extern "C" {
pub fn GuiState(state: ::std::os::raw::c_int);
}
extern "C" {
pub fn GuiFont(font: Font);
}
extern "C" {
pub fn GuiFade(alpha: f32);
}
extern "C" {
pub fn GuiSetStyle(
control: ::std::os::raw::c_int,
property: ::std::os::raw::c_int,
value: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn GuiGetStyle(
control: ::std::os::raw::c_int,
property: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiWindowBox(bounds: Rectangle, text: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn GuiGroupBox(bounds: Rectangle, text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiLine(bounds: Rectangle, text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiPanel(bounds: Rectangle);
}
extern "C" {
pub fn GuiScrollPanel(bounds: Rectangle, content: Rectangle, scroll: *mut Vector2)
-> Rectangle;
}
extern "C" {
pub fn GuiLabel(bounds: Rectangle, text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiButton(bounds: Rectangle, text: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn GuiLabelButton(bounds: Rectangle, text: *const ::std::os::raw::c_char) -> bool;
}
extern "C" {
pub fn GuiImageButton(bounds: Rectangle, texture: Texture2D) -> bool;
}
extern "C" {
pub fn GuiImageButtonEx(
bounds: Rectangle,
texture: Texture2D,
texSource: Rectangle,
text: *const ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn GuiToggle(bounds: Rectangle, text: *const ::std::os::raw::c_char, active: bool) -> bool;
}
extern "C" {
pub fn GuiToggleGroup(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
active: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiCheckBox(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
checked: bool,
) -> bool;
}
extern "C" {
pub fn GuiComboBox(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
active: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiDropdownBox(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
active: *mut ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiSpinner(
bounds: Rectangle,
value: *mut ::std::os::raw::c_int,
minValue: ::std::os::raw::c_int,
maxValue: ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiValueBox(
bounds: Rectangle,
value: *mut ::std::os::raw::c_int,
minValue: ::std::os::raw::c_int,
maxValue: ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiTextBox(
bounds: Rectangle,
text: *mut ::std::os::raw::c_char,
textSize: ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiTextBoxMulti(
bounds: Rectangle,
text: *mut ::std::os::raw::c_char,
textSize: ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiSlider(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
value: f32,
minValue: f32,
maxValue: f32,
showValue: bool,
) -> f32;
}
extern "C" {
pub fn GuiSliderBar(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
value: f32,
minValue: f32,
maxValue: f32,
showValue: bool,
) -> f32;
}
extern "C" {
pub fn GuiProgressBar(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
value: f32,
minValue: f32,
maxValue: f32,
showValue: bool,
) -> f32;
}
extern "C" {
pub fn GuiStatusBar(bounds: Rectangle, text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiDummyRec(bounds: Rectangle, text: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiScrollBar(
bounds: Rectangle,
value: ::std::os::raw::c_int,
minValue: ::std::os::raw::c_int,
maxValue: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiGrid(bounds: Rectangle, spacing: f32, subdivs: ::std::os::raw::c_int) -> Vector2;
}
extern "C" {
pub fn GuiListView(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
active: *mut ::std::os::raw::c_int,
scrollIndex: *mut ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiListViewEx(
bounds: Rectangle,
text: *mut *const ::std::os::raw::c_char,
count: ::std::os::raw::c_int,
enabled: *mut ::std::os::raw::c_int,
active: *mut ::std::os::raw::c_int,
focus: *mut ::std::os::raw::c_int,
scrollIndex: *mut ::std::os::raw::c_int,
editMode: bool,
) -> bool;
}
extern "C" {
pub fn GuiMessageBox(
bounds: Rectangle,
windowTitle: *const ::std::os::raw::c_char,
message: *const ::std::os::raw::c_char,
buttons: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiTextInputBox(
bounds: Rectangle,
windowTitle: *const ::std::os::raw::c_char,
message: *const ::std::os::raw::c_char,
text: *mut ::std::os::raw::c_char,
buttons: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GuiColorPicker(bounds: Rectangle, color: Color) -> Color;
}
extern "C" {
pub fn GuiLoadStyle(fileName: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn GuiLoadStyleProps(props: *const ::std::os::raw::c_int, count: ::std::os::raw::c_int);
}
extern "C" {
pub fn GuiLoadStyleDefault();
}
extern "C" {
pub fn GuiUpdateStyleComplete();
}
extern "C" {
pub fn GuiIconText(
iconId: ::std::os::raw::c_int,
text: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum rIconDescription {
RICON_NONE = 0,
RICON_FOLDER_FILE_OPEN = 1,
RICON_FILE_SAVE_CLASSIC = 2,
RICON_FOLDER_OPEN = 3,
RICON_FOLDER_SAVE = 4,
RICON_FILE_OPEN = 5,
RICON_FILE_SAVE = 6,
RICON_FILE_EXPORT = 7,
RICON_FILE_NEW = 8,
RICON_FILE_DELETE = 9,
RICON_FILETYPE_TEXT = 10,
RICON_FILETYPE_AUDIO = 11,
RICON_FILETYPE_IMAGE = 12,
RICON_FILETYPE_PLAY = 13,
RICON_FILETYPE_VIDEO = 14,
RICON_FILETYPE_INFO = 15,
RICON_FILE_COPY = 16,
RICON_FILE_CUT = 17,
RICON_FILE_PASTE = 18,
RICON_CURSOR_HAND = 19,
RICON_CURSOR_POINTER = 20,
RICON_CURSOR_CLASSIC = 21,
RICON_PENCIL = 22,
RICON_PENCIL_BIG = 23,
RICON_BRUSH_CLASSIC = 24,
RICON_BRUSH_PAINTER = 25,
RICON_WATER_DROP = 26,
RICON_COLOR_PICKER = 27,
RICON_RUBBER = 28,
RICON_COLOR_BUCKET = 29,
RICON_TEXT_T = 30,
RICON_TEXT_A = 31,
RICON_SCALE = 32,
RICON_RESIZE = 33,
RICON_FILTER_POINT = 34,
RICON_FILTER_BILINEAR = 35,
RICON_CROP = 36,
RICON_CROP_ALPHA = 37,
RICON_SQUARE_TOGGLE = 38,
RICON_SIMMETRY = 39,
RICON_SIMMETRY_HORIZONTAL = 40,
RICON_SIMMETRY_VERTICAL = 41,
RICON_LENS = 42,
RICON_LENS_BIG = 43,
RICON_EYE_ON = 44,
RICON_EYE_OFF = 45,
RICON_FILTER_TOP = 46,
RICON_FILTER = 47,
RICON_TARGET_POINT = 48,
RICON_TARGET_SMALL = 49,
RICON_TARGET_BIG = 50,
RICON_TARGET_MOVE = 51,
RICON_CURSOR_MOVE = 52,
RICON_CURSOR_SCALE = 53,
RICON_CURSOR_SCALE_RIGHT = 54,
RICON_CURSOR_SCALE_LEFT = 55,
RICON_UNDO = 56,
RICON_REDO = 57,
RICON_REREDO = 58,
RICON_MUTATE = 59,
RICON_ROTATE = 60,
RICON_REPEAT = 61,
RICON_SHUFFLE = 62,
RICON_EMPTYBOX = 63,
RICON_TARGET = 64,
RICON_TARGET_SMALL_FILL = 65,
RICON_TARGET_BIG_FILL = 66,
RICON_TARGET_MOVE_FILL = 67,
RICON_CURSOR_MOVE_FILL = 68,
RICON_CURSOR_SCALE_FILL = 69,
RICON_CURSOR_SCALE_RIGHT_FILL = 70,
RICON_CURSOR_SCALE_LEFT_FILL = 71,
RICON_UNDO_FILL = 72,
RICON_REDO_FILL = 73,
RICON_REREDO_FILL = 74,
RICON_MUTATE_FILL = 75,
RICON_ROTATE_FILL = 76,
RICON_REPEAT_FILL = 77,
RICON_SHUFFLE_FILL = 78,
RICON_EMPTYBOX_SMALL = 79,
RICON_BOX = 80,
RICON_BOX_TOP = 81,
RICON_BOX_TOP_RIGHT = 82,
RICON_BOX_RIGHT = 83,
RICON_BOX_BOTTOM_RIGHT = 84,
RICON_BOX_BOTTOM = 85,
RICON_BOX_BOTTOM_LEFT = 86,
RICON_BOX_LEFT = 87,
RICON_BOX_TOP_LEFT = 88,
RICON_BOX_CENTER = 89,
RICON_BOX_CIRCLE_MASK = 90,
RICON_POT = 91,
RICON_ALPHA_MULTIPLY = 92,
RICON_ALPHA_CLEAR = 93,
RICON_DITHERING = 94,
RICON_MIPMAPS = 95,
RICON_BOX_GRID = 96,
RICON_GRID = 97,
RICON_BOX_CORNERS_SMALL = 98,
RICON_BOX_CORNERS_BIG = 99,
RICON_FOUR_BOXES = 100,
RICON_GRID_FILL = 101,
RICON_BOX_MULTISIZE = 102,
RICON_ZOOM_SMALL = 103,
RICON_ZOOM_MEDIUM = 104,
RICON_ZOOM_BIG = 105,
RICON_ZOOM_ALL = 106,
RICON_ZOOM_CENTER = 107,
RICON_BOX_DOTS_SMALL = 108,
RICON_BOX_DOTS_BIG = 109,
RICON_BOX_CONCENTRIC = 110,
RICON_BOX_GRID_BIG = 111,
RICON_OK_TICK = 112,
RICON_CROSS = 113,
RICON_ARROW_LEFT = 114,
RICON_ARROW_RIGHT = 115,
RICON_ARROW_BOTTOM = 116,
RICON_ARROW_TOP = 117,
RICON_ARROW_LEFT_FILL = 118,
RICON_ARROW_RIGHT_FILL = 119,
RICON_ARROW_BOTTOM_FILL = 120,
RICON_ARROW_TOP_FILL = 121,
RICON_AUDIO = 122,
RICON_FX = 123,
RICON_WAVE = 124,
RICON_WAVE_SINUS = 125,
RICON_WAVE_SQUARE = 126,
RICON_WAVE_TRIANGULAR = 127,
RICON_CROSS_SMALL = 128,
RICON_PLAYER_PREVIOUS = 129,
RICON_PLAYER_PLAY_BACK = 130,
RICON_PLAYER_PLAY = 131,
RICON_PLAYER_PAUSE = 132,
RICON_PLAYER_STOP = 133,
RICON_PLAYER_NEXT = 134,
RICON_PLAYER_RECORD = 135,
RICON_MAGNET = 136,
RICON_LOCK_CLOSE = 137,
RICON_LOCK_OPEN = 138,
RICON_CLOCK = 139,
RICON_TOOLS = 140,
RICON_GEAR = 141,
RICON_GEAR_BIG = 142,
RICON_BIN = 143,
RICON_HAND_POINTER = 144,
RICON_LASER = 145,
RICON_COIN = 146,
RICON_EXPLOSION = 147,
RICON_1UP = 148,
RICON_PLAYER = 149,
RICON_PLAYER_JUMP = 150,
RICON_KEY = 151,
RICON_DEMON = 152,
RICON_TEXT_POPUP = 153,
RICON_GEAR_EX = 154,
RICON_CRACK = 155,
RICON_CRACK_POINTS = 156,
RICON_STAR = 157,
RICON_DOOR = 158,
RICON_EXIT = 159,
RICON_MODE_2D = 160,
RICON_MODE_3D = 161,
RICON_CUBE = 162,
RICON_CUBE_FACE_TOP = 163,
RICON_CUBE_FACE_LEFT = 164,
RICON_CUBE_FACE_FRONT = 165,
RICON_CUBE_FACE_BOTTOM = 166,
RICON_CUBE_FACE_RIGHT = 167,
RICON_CUBE_FACE_BACK = 168,
RICON_CAMERA = 169,
RICON_SPECIAL = 170,
RICON_LINK_NET = 171,
RICON_LINK_BOXES = 172,
RICON_LINK_MULTI = 173,
RICON_LINK = 174,
RICON_LINK_BROKE = 175,
RICON_TEXT_NOTES = 176,
RICON_NOTEBOOK = 177,
RICON_SUITCASE = 178,
RICON_SUITCASE_ZIP = 179,
RICON_MAILBOX = 180,
RICON_MONITOR = 181,
RICON_PRINTER = 182,
RICON_PHOTO_CAMERA = 183,
RICON_PHOTO_CAMERA_FLASH = 184,
RICON_HOUSE = 185,
RICON_HEART = 186,
RICON_CORNER = 187,
RICON_VERTICAL_BARS = 188,
RICON_VERTICAL_BARS_FILL = 189,
RICON_LIFE_BARS = 190,
RICON_INFO = 191,
RICON_CROSSLINE = 192,
RICON_HELP = 193,
RICON_FILETYPE_ALPHA = 194,
RICON_FILETYPE_HOME = 195,
RICON_LAYERS_VISIBLE = 196,
RICON_LAYERS = 197,
RICON_WINDOW = 198,
}
extern "C" {
pub fn DrawIcon(
iconId: ::std::os::raw::c_int,
position: Vector2,
pixelSize: ::std::os::raw::c_int,
color: Color,
);
}
extern "C" {
pub static mut RICONS: [::std::os::raw::c_uint; 1592usize];
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum GuiPropertyElement {
BORDER = 0,
BASE = 1,
TEXT = 2,
OTHER = 3,
}
extern "C" {
pub static mut guiState: GuiControlState;
}
extern "C" {
pub static mut guiFont: Font;
}
pub const guiLocked: bool = false;
pub const guiAlpha: f32 = 1.0;
extern "C" {
pub static mut guiStyle: [::std::os::raw::c_uint; 384usize];
}
pub const guiStyleLoaded: bool = false;
extern "C" {
pub fn GuiSliderPro(
bounds: Rectangle,
text: *const ::std::os::raw::c_char,
value: f32,
minValue: f32,
maxValue: f32,
sliderWidth: ::std::os::raw::c_int,
showValue: bool,
) -> f32;
}
extern "C" {
pub fn GuiColorPanel(bounds: Rectangle, color: Color) -> Color;
}
extern "C" {
pub fn GuiColorBarAlpha(bounds: Rectangle, alpha: f32) -> f32;
}
extern "C" {
pub fn GuiColorBarHue(bounds: Rectangle, hue: f32) -> f32;
}