Created
June 23, 2014 12:00
-
-
Save tomaka/a98e0ddcb81e16b3a913 to your computer and use it in GitHub Desktop.
Rust FFI for Chipmunk2D
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* automatically generated by rust-bindgen */ | |
#![crate_id = "chipmunk-rs"] | |
#![crate_type = "lib"] | |
extern crate libc; | |
pub type size_t = ::libc::c_ulong; | |
pub type wchar_t = ::libc::c_int; | |
pub type idtype_t = ::libc::c_uint; | |
pub static P_ALL: ::libc::c_uint = 0; | |
pub static P_PID: ::libc::c_uint = 1; | |
pub static P_PGID: ::libc::c_uint = 2; | |
pub type __u_char = ::libc::c_uchar; | |
pub type __u_short = ::libc::c_ushort; | |
pub type __u_int = ::libc::c_uint; | |
pub type __u_long = ::libc::c_ulong; | |
pub type __int8_t = ::libc::c_char; | |
pub type __uint8_t = ::libc::c_uchar; | |
pub type __int16_t = ::libc::c_short; | |
pub type __uint16_t = ::libc::c_ushort; | |
pub type __int32_t = ::libc::c_int; | |
pub type __uint32_t = ::libc::c_uint; | |
pub type __int64_t = ::libc::c_long; | |
pub type __uint64_t = ::libc::c_ulong; | |
pub type __quad_t = ::libc::c_long; | |
pub type __u_quad_t = ::libc::c_ulong; | |
pub type __dev_t = ::libc::c_ulong; | |
pub type __uid_t = ::libc::c_uint; | |
pub type __gid_t = ::libc::c_uint; | |
pub type __ino_t = ::libc::c_ulong; | |
pub type __ino64_t = ::libc::c_ulong; | |
pub type __mode_t = ::libc::c_uint; | |
pub type __nlink_t = ::libc::c_ulong; | |
pub type __off_t = ::libc::c_long; | |
pub type __off64_t = ::libc::c_long; | |
pub type __pid_t = ::libc::c_int; | |
pub struct __fsid_t { | |
pub __val: [::libc::c_int, ..2u], | |
} | |
pub type __clock_t = ::libc::c_long; | |
pub type __rlim_t = ::libc::c_ulong; | |
pub type __rlim64_t = ::libc::c_ulong; | |
pub type __id_t = ::libc::c_uint; | |
pub type __time_t = ::libc::c_long; | |
pub type __useconds_t = ::libc::c_uint; | |
pub type __suseconds_t = ::libc::c_long; | |
pub type __daddr_t = ::libc::c_int; | |
pub type __key_t = ::libc::c_int; | |
pub type __clockid_t = ::libc::c_int; | |
pub type __timer_t = *mut ::libc::c_void; | |
pub type __blksize_t = ::libc::c_long; | |
pub type __blkcnt_t = ::libc::c_long; | |
pub type __blkcnt64_t = ::libc::c_long; | |
pub type __fsblkcnt_t = ::libc::c_ulong; | |
pub type __fsblkcnt64_t = ::libc::c_ulong; | |
pub type __fsfilcnt_t = ::libc::c_ulong; | |
pub type __fsfilcnt64_t = ::libc::c_ulong; | |
pub type __fsword_t = ::libc::c_long; | |
pub type __ssize_t = ::libc::c_long; | |
pub type __syscall_slong_t = ::libc::c_long; | |
pub type __syscall_ulong_t = ::libc::c_ulong; | |
pub type __loff_t = __off64_t; | |
pub type __qaddr_t = *mut __quad_t; | |
pub type __caddr_t = *mut ::libc::c_char; | |
pub type __intptr_t = ::libc::c_long; | |
pub type __socklen_t = ::libc::c_uint; | |
pub struct Union_wait { | |
pub data: [u32, ..1u], | |
} | |
impl Union_wait { | |
pub fn w_status(&mut self) -> *mut ::libc::c_int { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __wait_terminated(&mut self) -> *mut Struct_Unnamed1 { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __wait_stopped(&mut self) -> *mut Struct_Unnamed2 { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct Struct_Unnamed1 { | |
pub __w_termsig: ::libc::c_uint, | |
pub __w_coredump: ::libc::c_uint, | |
pub __w_retcode: ::libc::c_uint, | |
pub unnamed_field1: ::libc::c_uint, | |
} | |
pub struct Struct_Unnamed2 { | |
pub __w_stopval: ::libc::c_uint, | |
pub __w_stopsig: ::libc::c_uint, | |
pub unnamed_field1: ::libc::c_uint, | |
} | |
pub struct __WAIT_STATUS { | |
pub data: [u64, ..1u], | |
} | |
impl __WAIT_STATUS { | |
pub fn __uptr(&mut self) -> *mut *mut Union_wait { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __iptr(&mut self) -> *mut *mut ::libc::c_int { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct div_t { | |
pub quot: ::libc::c_int, | |
pub rem: ::libc::c_int, | |
} | |
pub struct ldiv_t { | |
pub quot: ::libc::c_long, | |
pub rem: ::libc::c_long, | |
} | |
pub struct lldiv_t { | |
pub quot: ::libc::c_longlong, | |
pub rem: ::libc::c_longlong, | |
} | |
pub type u_char = __u_char; | |
pub type u_short = __u_short; | |
pub type u_int = __u_int; | |
pub type u_long = __u_long; | |
pub type quad_t = __quad_t; | |
pub type u_quad_t = __u_quad_t; | |
pub type fsid_t = __fsid_t; | |
pub type loff_t = __loff_t; | |
pub type ino_t = __ino_t; | |
pub type dev_t = __dev_t; | |
pub type gid_t = __gid_t; | |
pub type mode_t = __mode_t; | |
pub type nlink_t = __nlink_t; | |
pub type uid_t = __uid_t; | |
pub type off_t = __off_t; | |
pub type pid_t = __pid_t; | |
pub type id_t = __id_t; | |
pub type ssize_t = __ssize_t; | |
pub type daddr_t = __daddr_t; | |
pub type caddr_t = __caddr_t; | |
pub type key_t = __key_t; | |
pub type clock_t = __clock_t; | |
pub type time_t = __time_t; | |
pub type clockid_t = __clockid_t; | |
pub type timer_t = __timer_t; | |
pub type ulong = ::libc::c_ulong; | |
pub type ushort = ::libc::c_ushort; | |
pub type _uint = ::libc::c_uint; | |
pub type int8_t = ::libc::c_char; | |
pub type int16_t = ::libc::c_short; | |
pub type int32_t = ::libc::c_int; | |
pub type int64_t = ::libc::c_long; | |
pub type u_int8_t = ::libc::c_uchar; | |
pub type u_int16_t = ::libc::c_ushort; | |
pub type u_int32_t = ::libc::c_uint; | |
pub type u_int64_t = ::libc::c_ulong; | |
pub type register_t = ::libc::c_long; | |
pub type __sig_atomic_t = ::libc::c_int; | |
pub struct __sigset_t { | |
pub __val: [::libc::c_ulong, ..16u], | |
} | |
pub type sigset_t = __sigset_t; | |
pub struct Struct_timespec { | |
pub tv_sec: __time_t, | |
pub tv_nsec: __syscall_slong_t, | |
} | |
pub struct Struct_timeval { | |
pub tv_sec: __time_t, | |
pub tv_usec: __suseconds_t, | |
} | |
pub type suseconds_t = __suseconds_t; | |
pub type __fd_mask = ::libc::c_long; | |
pub struct fd_set { | |
pub __fds_bits: [__fd_mask, ..16u], | |
} | |
pub type fd_mask = __fd_mask; | |
pub type blksize_t = __blksize_t; | |
pub type blkcnt_t = __blkcnt_t; | |
pub type fsblkcnt_t = __fsblkcnt_t; | |
pub type fsfilcnt_t = __fsfilcnt_t; | |
pub type pthread_t = ::libc::c_ulong; | |
pub struct Union_pthread_attr_t { | |
pub data: [u64, ..7u], | |
} | |
impl Union_pthread_attr_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..56u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_long { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub type pthread_attr_t = Union_pthread_attr_t; | |
pub struct Struct___pthread_internal_list { | |
pub __prev: *mut Struct___pthread_internal_list, | |
pub __next: *mut Struct___pthread_internal_list, | |
} | |
pub type __pthread_list_t = Struct___pthread_internal_list; | |
pub struct Struct___pthread_mutex_s { | |
pub __lock: ::libc::c_int, | |
pub __count: ::libc::c_uint, | |
pub __owner: ::libc::c_int, | |
pub __nusers: ::libc::c_uint, | |
pub __kind: ::libc::c_int, | |
pub __spins: ::libc::c_short, | |
pub __elision: ::libc::c_short, | |
pub __list: __pthread_list_t, | |
} | |
pub struct pthread_mutex_t { | |
pub data: [u64, ..5u], | |
} | |
impl pthread_mutex_t { | |
pub fn __data(&mut self) -> *mut Struct___pthread_mutex_s { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..40u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_long { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct pthread_mutexattr_t { | |
pub data: [u32, ..1u], | |
} | |
impl pthread_mutexattr_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..4u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_int { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct Struct_Unnamed3 { | |
pub __lock: ::libc::c_int, | |
pub __futex: ::libc::c_uint, | |
pub __total_seq: ::libc::c_ulonglong, | |
pub __wakeup_seq: ::libc::c_ulonglong, | |
pub __woken_seq: ::libc::c_ulonglong, | |
pub __mutex: *mut ::libc::c_void, | |
pub __nwaiters: ::libc::c_uint, | |
pub __broadcast_seq: ::libc::c_uint, | |
} | |
pub struct pthread_cond_t { | |
pub data: [u64, ..6u], | |
} | |
impl pthread_cond_t { | |
pub fn __data(&mut self) -> *mut Struct_Unnamed3 { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..48u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_longlong { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct pthread_condattr_t { | |
pub data: [u32, ..1u], | |
} | |
impl pthread_condattr_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..4u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_int { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub type pthread_key_t = ::libc::c_uint; | |
pub type pthread_once_t = ::libc::c_int; | |
pub struct Struct_Unnamed4 { | |
pub __lock: ::libc::c_int, | |
pub __nr_readers: ::libc::c_uint, | |
pub __readers_wakeup: ::libc::c_uint, | |
pub __writer_wakeup: ::libc::c_uint, | |
pub __nr_readers_queued: ::libc::c_uint, | |
pub __nr_writers_queued: ::libc::c_uint, | |
pub __writer: ::libc::c_int, | |
pub __shared: ::libc::c_int, | |
pub __pad1: ::libc::c_ulong, | |
pub __pad2: ::libc::c_ulong, | |
pub __flags: ::libc::c_uint, | |
} | |
pub struct pthread_rwlock_t { | |
pub data: [u64, ..7u], | |
} | |
impl pthread_rwlock_t { | |
pub fn __data(&mut self) -> *mut Struct_Unnamed4 { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..56u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_long { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct pthread_rwlockattr_t { | |
pub data: [u64, ..1u], | |
} | |
impl pthread_rwlockattr_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..8u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_long { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub type pthread_spinlock_t = ::libc::c_int; | |
pub struct pthread_barrier_t { | |
pub data: [u64, ..4u], | |
} | |
impl pthread_barrier_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..32u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_long { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct pthread_barrierattr_t { | |
pub data: [u32, ..1u], | |
} | |
impl pthread_barrierattr_t { | |
pub fn __size(&mut self) -> *mut [::libc::c_char, ..4u] { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
pub fn __align(&mut self) -> *mut ::libc::c_int { | |
unsafe { ::std::mem::transmute(self) } | |
} | |
} | |
pub struct Struct_random_data { | |
pub fptr: *mut int32_t, | |
pub rptr: *mut int32_t, | |
pub state: *mut int32_t, | |
pub rand_type: ::libc::c_int, | |
pub rand_deg: ::libc::c_int, | |
pub rand_sep: ::libc::c_int, | |
pub end_ptr: *mut int32_t, | |
} | |
pub struct Struct_drand48_data { | |
pub __x: [::libc::c_ushort, ..3u], | |
pub __old_x: [::libc::c_ushort, ..3u], | |
pub __c: ::libc::c_ushort, | |
pub __init: ::libc::c_ushort, | |
pub __a: ::libc::c_ulonglong, | |
} | |
pub type __compar_fn_t = | |
::std::option::Option<extern "C" fn | |
(arg1: *::libc::c_void, arg2: *::libc::c_void) | |
-> ::libc::c_int>; | |
pub type float_t = ::libc::c_float; | |
pub type double_t = ::libc::c_double; | |
pub type Enum_Unnamed5 = ::libc::c_uint; | |
pub static FP_NAN: ::libc::c_uint = 0; | |
pub static FP_INFINITE: ::libc::c_uint = 1; | |
pub static FP_ZERO: ::libc::c_uint = 2; | |
pub static FP_SUBNORMAL: ::libc::c_uint = 3; | |
pub static FP_NORMAL: ::libc::c_uint = 4; | |
pub type _LIB_VERSION_TYPE = ::libc::c_int; | |
pub static _IEEE_: ::libc::c_int = -1; | |
pub static _SVID_: ::libc::c_int = 0; | |
pub static _XOPEN_: ::libc::c_int = 1; | |
pub static _POSIX_: ::libc::c_int = 2; | |
pub static _ISOC_: ::libc::c_int = 3; | |
pub struct Struct_exception { | |
pub _type: ::libc::c_int, | |
pub name: *mut ::libc::c_char, | |
pub arg1: ::libc::c_double, | |
pub arg2: ::libc::c_double, | |
pub retval: ::libc::c_double, | |
} | |
pub type uint8_t = ::libc::c_uchar; | |
pub type uint16_t = ::libc::c_ushort; | |
pub type uint32_t = ::libc::c_uint; | |
pub type uint64_t = ::libc::c_ulong; | |
pub type int_least8_t = ::libc::c_char; | |
pub type int_least16_t = ::libc::c_short; | |
pub type int_least32_t = ::libc::c_int; | |
pub type int_least64_t = ::libc::c_long; | |
pub type uint_least8_t = ::libc::c_uchar; | |
pub type uint_least16_t = ::libc::c_ushort; | |
pub type uint_least32_t = ::libc::c_uint; | |
pub type uint_least64_t = ::libc::c_ulong; | |
pub type int_fast8_t = ::libc::c_char; | |
pub type int_fast16_t = ::libc::c_long; | |
pub type int_fast32_t = ::libc::c_long; | |
pub type int_fast64_t = ::libc::c_long; | |
pub type uint_fast8_t = ::libc::c_uchar; | |
pub type uint_fast16_t = ::libc::c_ulong; | |
pub type uint_fast32_t = ::libc::c_ulong; | |
pub type uint_fast64_t = ::libc::c_ulong; | |
pub type intptr_t = ::libc::c_long; | |
pub type uintptr_t = ::libc::c_ulong; | |
pub type intmax_t = ::libc::c_long; | |
pub type uintmax_t = ::libc::c_ulong; | |
pub type cpFloat = ::libc::c_double; | |
pub type cpHashValue = uintptr_t; | |
pub type cpCollisionID = uint32_t; | |
pub type cpBool = ::libc::c_uchar; | |
pub type cpDataPointer = *mut ::libc::c_void; | |
pub type cpCollisionType = uintptr_t; | |
pub type cpGroup = uintptr_t; | |
pub type cpBitmask = ::libc::c_uint; | |
pub type cpTimestamp = ::libc::c_uint; | |
pub struct Struct_cpVect { | |
pub x: cpFloat, | |
pub y: cpFloat, | |
} | |
pub type cpVect = Struct_cpVect; | |
pub struct Struct_cpTransform { | |
pub a: cpFloat, | |
pub b: cpFloat, | |
pub c: cpFloat, | |
pub d: cpFloat, | |
pub tx: cpFloat, | |
pub ty: cpFloat, | |
} | |
pub type cpTransform = Struct_cpTransform; | |
pub struct Struct_cpMat2x2 { | |
pub a: cpFloat, | |
pub b: cpFloat, | |
pub c: cpFloat, | |
pub d: cpFloat, | |
} | |
pub type cpMat2x2 = Struct_cpMat2x2; | |
pub enum Struct_cpArray { } | |
pub type cpArray = Struct_cpArray; | |
pub enum Struct_cpHashSet { } | |
pub type cpHashSet = Struct_cpHashSet; | |
pub enum Struct_cpBody { } | |
pub type cpBody = Struct_cpBody; | |
pub enum Struct_cpShape { } | |
pub type cpShape = Struct_cpShape; | |
pub enum Struct_cpCircleShape { } | |
pub type cpCircleShape = Struct_cpCircleShape; | |
pub enum Struct_cpSegmentShape { } | |
pub type cpSegmentShape = Struct_cpSegmentShape; | |
pub enum Struct_cpPolyShape { } | |
pub type cpPolyShape = Struct_cpPolyShape; | |
pub enum Struct_cpConstraint { } | |
pub type cpConstraint = Struct_cpConstraint; | |
pub enum Struct_cpPinJoint { } | |
pub type cpPinJoint = Struct_cpPinJoint; | |
pub enum Struct_cpSlideJoint { } | |
pub type cpSlideJoint = Struct_cpSlideJoint; | |
pub enum Struct_cpPivotJoint { } | |
pub type cpPivotJoint = Struct_cpPivotJoint; | |
pub enum Struct_cpGrooveJoint { } | |
pub type cpGrooveJoint = Struct_cpGrooveJoint; | |
pub enum Struct_cpDampedSpring { } | |
pub type cpDampedSpring = Struct_cpDampedSpring; | |
pub enum Struct_cpDampedRotarySpring { } | |
pub type cpDampedRotarySpring = Struct_cpDampedRotarySpring; | |
pub enum Struct_cpRotaryLimitJoint { } | |
pub type cpRotaryLimitJoint = Struct_cpRotaryLimitJoint; | |
pub enum Struct_cpRatchetJoint { } | |
pub type cpRatchetJoint = Struct_cpRatchetJoint; | |
pub enum Struct_cpGearJoint { } | |
pub type cpGearJoint = Struct_cpGearJoint; | |
pub enum Struct_cpSimpleMotorJoint { } | |
pub type cpSimpleMotorJoint = Struct_cpSimpleMotorJoint; | |
pub type cpCollisionHandler = Struct_cpCollisionHandler; | |
pub type cpContactPointSet = Struct_cpContactPointSet; | |
pub enum Struct_cpArbiter { } | |
pub type cpArbiter = Struct_cpArbiter; | |
pub enum Struct_cpSpace { } | |
pub type cpSpace = Struct_cpSpace; | |
pub struct Struct_cpBB { | |
pub l: cpFloat, | |
pub b: cpFloat, | |
pub r: cpFloat, | |
pub t: cpFloat, | |
} | |
pub type cpBB = Struct_cpBB; | |
pub type cpSpatialIndexBBFunc = | |
::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void) -> cpBB>; | |
pub type cpSpatialIndexIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut ::libc::c_void, | |
arg2: *mut ::libc::c_void)>; | |
pub type cpSpatialIndexQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut ::libc::c_void, | |
arg2: *mut ::libc::c_void, arg3: cpCollisionID, | |
arg4: *mut ::libc::c_void) -> cpCollisionID>; | |
pub type cpSpatialIndexSegmentQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut ::libc::c_void, | |
arg2: *mut ::libc::c_void, | |
arg3: *mut ::libc::c_void) -> cpFloat>; | |
pub type cpSpatialIndexClass = Struct_cpSpatialIndexClass; | |
pub type cpSpatialIndex = Struct_cpSpatialIndex; | |
pub struct Struct_cpSpatialIndex { | |
pub klass: *mut cpSpatialIndexClass, | |
pub bbfunc: cpSpatialIndexBBFunc, | |
pub staticIndex: *mut cpSpatialIndex, | |
pub dynamicIndex: *mut cpSpatialIndex, | |
} | |
pub enum Struct_cpSpaceHash { } | |
pub type cpSpaceHash = Struct_cpSpaceHash; | |
pub enum Struct_cpBBTree { } | |
pub type cpBBTree = Struct_cpBBTree; | |
pub type cpBBTreeVelocityFunc = | |
::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void) -> cpVect>; | |
pub enum Struct_cpSweep1D { } | |
pub type cpSweep1D = Struct_cpSweep1D; | |
pub type cpSpatialIndexDestroyImpl = | |
::std::option::Option<extern "C" fn(arg1: *mut cpSpatialIndex)>; | |
pub type cpSpatialIndexCountImpl = | |
::std::option::Option<extern "C" fn(arg1: *mut cpSpatialIndex) | |
-> ::libc::c_int>; | |
pub type cpSpatialIndexEachImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: cpSpatialIndexIteratorFunc, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpSpatialIndexContainsImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpHashValue) | |
-> cpBool>; | |
pub type cpSpatialIndexInsertImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpHashValue)>; | |
pub type cpSpatialIndexRemoveImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpHashValue)>; | |
pub type cpSpatialIndexReindexImpl = | |
::std::option::Option<extern "C" fn(arg1: *mut cpSpatialIndex)>; | |
pub type cpSpatialIndexReindexObjectImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpHashValue)>; | |
pub type cpSpatialIndexReindexQueryImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: cpSpatialIndexQueryFunc, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpSpatialIndexQueryImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpBB, | |
arg4: cpSpatialIndexQueryFunc, | |
arg5: *mut ::libc::c_void)>; | |
pub type cpSpatialIndexSegmentQueryImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpatialIndex, | |
arg2: *mut ::libc::c_void, arg3: cpVect, | |
arg4: cpVect, arg5: cpFloat, | |
arg6: cpSpatialIndexSegmentQueryFunc, | |
arg7: *mut ::libc::c_void)>; | |
pub struct Struct_cpSpatialIndexClass { | |
pub destroy: cpSpatialIndexDestroyImpl, | |
pub count: cpSpatialIndexCountImpl, | |
pub each: cpSpatialIndexEachImpl, | |
pub contains: cpSpatialIndexContainsImpl, | |
pub insert: cpSpatialIndexInsertImpl, | |
pub remove: cpSpatialIndexRemoveImpl, | |
pub reindex: cpSpatialIndexReindexImpl, | |
pub reindexObject: cpSpatialIndexReindexObjectImpl, | |
pub reindexQuery: cpSpatialIndexReindexQueryImpl, | |
pub query: cpSpatialIndexQueryImpl, | |
pub segmentQuery: cpSpatialIndexSegmentQueryImpl, | |
} | |
pub struct Struct_cpContactPointSet { | |
pub count: ::libc::c_int, | |
pub normal: cpVect, | |
pub points: [Struct_Unnamed6, ..2u], | |
} | |
pub struct Struct_Unnamed6 { | |
pub pointA: cpVect, | |
pub pointB: cpVect, | |
pub distance: cpFloat, | |
} | |
pub type Enum_cpBodyType = ::libc::c_uint; | |
pub static CP_BODY_TYPE_DYNAMIC: ::libc::c_uint = 0; | |
pub static CP_BODY_TYPE_KINEMATIC: ::libc::c_uint = 1; | |
pub static CP_BODY_TYPE_STATIC: ::libc::c_uint = 2; | |
pub type cpBodyType = Enum_cpBodyType; | |
pub type cpBodyVelocityFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpBody, arg2: cpVect, arg3: cpFloat, | |
arg4: cpFloat)>; | |
pub type cpBodyPositionFunc = | |
::std::option::Option<extern "C" fn(arg1: *mut cpBody, arg2: cpFloat)>; | |
pub type cpBodyShapeIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpBody, arg2: *mut cpShape, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpBodyConstraintIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpBody, arg2: *mut cpConstraint, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpBodyArbiterIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpBody, arg2: *mut cpArbiter, | |
arg3: *mut ::libc::c_void)>; | |
pub struct Struct_cpPointQueryInfo { | |
pub shape: *cpShape, | |
pub point: cpVect, | |
pub distance: cpFloat, | |
pub gradient: cpVect, | |
} | |
pub type cpPointQueryInfo = Struct_cpPointQueryInfo; | |
pub struct Struct_cpSegmentQueryInfo { | |
pub shape: *cpShape, | |
pub point: cpVect, | |
pub normal: cpVect, | |
pub alpha: cpFloat, | |
} | |
pub type cpSegmentQueryInfo = Struct_cpSegmentQueryInfo; | |
pub struct Struct_cpShapeFilter { | |
pub group: cpGroup, | |
pub categories: cpBitmask, | |
pub mask: cpBitmask, | |
} | |
pub type cpShapeFilter = Struct_cpShapeFilter; | |
pub type cpConstraintPreSolveFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpConstraint, arg2: *mut cpSpace)>; | |
pub type cpConstraintPostSolveFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpConstraint, arg2: *mut cpSpace)>; | |
pub type cpDampedSpringForceFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpConstraint, arg2: cpFloat) | |
-> cpFloat>; | |
pub type cpDampedRotarySpringTorqueFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut Struct_cpConstraint, arg2: cpFloat) | |
-> cpFloat>; | |
pub enum Struct_cpSimpleMotor { } | |
pub type cpSimpleMotor = Struct_cpSimpleMotor; | |
pub enum Struct_cpContactBufferHeader { } | |
pub type cpContactBufferHeader = Struct_cpContactBufferHeader; | |
pub type cpSpaceArbiterApplyImpulseFunc = | |
::std::option::Option<extern "C" fn(arg1: *mut cpArbiter)>; | |
pub type cpCollisionBeginFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpArbiter, arg2: *mut cpSpace, | |
arg3: cpDataPointer) -> cpBool>; | |
pub type cpCollisionPreSolveFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpArbiter, arg2: *mut cpSpace, | |
arg3: cpDataPointer) -> cpBool>; | |
pub type cpCollisionPostSolveFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpArbiter, arg2: *mut cpSpace, | |
arg3: cpDataPointer)>; | |
pub type cpCollisionSeparateFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpArbiter, arg2: *mut cpSpace, | |
arg3: cpDataPointer)>; | |
pub struct Struct_cpCollisionHandler { | |
pub typeA: cpCollisionType, | |
pub typeB: cpCollisionType, | |
pub beginFunc: cpCollisionBeginFunc, | |
pub preSolveFunc: cpCollisionPreSolveFunc, | |
pub postSolveFunc: cpCollisionPostSolveFunc, | |
pub separateFunc: cpCollisionSeparateFunc, | |
pub userData: cpDataPointer, | |
} | |
pub type cpPostStepFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpSpace, arg2: *mut ::libc::c_void, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpSpacePointQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, arg2: cpVect, | |
arg3: cpFloat, arg4: cpVect, | |
arg5: *mut ::libc::c_void)>; | |
pub type cpSpaceSegmentQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, arg2: cpVect, arg3: cpVect, | |
arg4: cpFloat, arg5: *mut ::libc::c_void)>; | |
pub type cpSpaceBBQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, | |
arg2: *mut ::libc::c_void)>; | |
pub type cpSpaceShapeQueryFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, | |
arg2: *mut cpContactPointSet, | |
arg3: *mut ::libc::c_void)>; | |
pub type cpSpaceBodyIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpBody, arg2: *mut ::libc::c_void)>; | |
pub type cpSpaceShapeIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, | |
arg2: *mut ::libc::c_void)>; | |
pub type cpSpaceConstraintIteratorFunc = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpConstraint, | |
arg2: *mut ::libc::c_void)>; | |
pub struct Struct_cpSpaceDebugColor { | |
pub r: ::libc::c_float, | |
pub g: ::libc::c_float, | |
pub b: ::libc::c_float, | |
pub a: ::libc::c_float, | |
} | |
pub type cpSpaceDebugColor = Struct_cpSpaceDebugColor; | |
pub type cpSpaceDebugDrawCircleImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: cpVect, arg2: cpFloat, arg3: cpFloat, | |
arg4: cpSpaceDebugColor, | |
arg5: cpSpaceDebugColor, | |
arg6: *mut cpDataPointer)>; | |
pub type cpSpaceDebugDrawSegmentImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: cpVect, arg2: cpVect, | |
arg3: cpSpaceDebugColor, | |
arg4: *mut cpDataPointer)>; | |
pub type cpSpaceDebugDrawFatSegmentImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: cpVect, arg2: cpVect, arg3: cpFloat, | |
arg4: cpSpaceDebugColor, | |
arg5: cpSpaceDebugColor, | |
arg6: *mut cpDataPointer)>; | |
pub type cpSpaceDebugDrawPolygonImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: ::libc::c_int, arg2: *cpVect, | |
arg3: cpFloat, arg4: cpSpaceDebugColor, | |
arg5: cpSpaceDebugColor, | |
arg6: *mut cpDataPointer)>; | |
pub type cpSpaceDebugDrawDotImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: cpFloat, arg2: cpVect, | |
arg3: cpSpaceDebugColor, | |
arg4: *mut cpDataPointer)>; | |
pub type cpSpaceDebugDrawColorForShapeImpl = | |
::std::option::Option<extern "C" fn | |
(arg1: *mut cpShape, arg2: *mut cpDataPointer) | |
-> cpSpaceDebugColor>; | |
pub type Enum_cpSpaceDebugDrawFlags = ::libc::c_uint; | |
pub static CP_SPACE_DEBUG_DRAW_SHAPES: ::libc::c_uint = 1; | |
pub static CP_SPACE_DEBUG_DRAW_CONSTRAINTS: ::libc::c_uint = 2; | |
pub static CP_SPACE_DEBUG_DRAW_COLLISION_POINTS: ::libc::c_uint = 4; | |
pub type cpSpaceDebugDrawFlags = Enum_cpSpaceDebugDrawFlags; | |
pub struct Struct_cpSpaceDebugDrawOptions { | |
pub drawCircle: cpSpaceDebugDrawCircleImpl, | |
pub drawSegment: cpSpaceDebugDrawSegmentImpl, | |
pub drawFatSegment: cpSpaceDebugDrawFatSegmentImpl, | |
pub drawPolygon: cpSpaceDebugDrawPolygonImpl, | |
pub drawDot: cpSpaceDebugDrawDotImpl, | |
pub flags: cpSpaceDebugDrawFlags, | |
pub shapeOutlineColor: cpSpaceDebugColor, | |
pub colorForShape: cpSpaceDebugDrawColorForShapeImpl, | |
pub constraintColor: cpSpaceDebugColor, | |
pub collisionPointColor: cpSpaceDebugColor, | |
pub data: cpDataPointer, | |
} | |
pub type cpSpaceDebugDrawOptions = Struct_cpSpaceDebugDrawOptions; | |
extern "C" { | |
pub static mut signgam: ::libc::c_int; | |
pub static mut _LIB_VERSION: _LIB_VERSION_TYPE; | |
pub static mut cpVersionString: *::libc::c_char; | |
pub fn __ctype_get_mb_cur_max() -> size_t; | |
pub fn atof(__nptr: *::libc::c_char) -> ::libc::c_double; | |
pub fn atoi(__nptr: *::libc::c_char) -> ::libc::c_int; | |
pub fn atol(__nptr: *::libc::c_char) -> ::libc::c_long; | |
pub fn atoll(__nptr: *::libc::c_char) -> ::libc::c_longlong; | |
pub fn strtod(__nptr: *::libc::c_char, __endptr: *mut *mut ::libc::c_char) | |
-> ::libc::c_double; | |
pub fn strtof(__nptr: *::libc::c_char, __endptr: *mut *mut ::libc::c_char) | |
-> ::libc::c_float; | |
pub fn strtold(__nptr: *::libc::c_char, | |
__endptr: *mut *mut ::libc::c_char) -> ::libc::c_double; | |
pub fn strtol(__nptr: *::libc::c_char, __endptr: *mut *mut ::libc::c_char, | |
__base: ::libc::c_int) -> ::libc::c_long; | |
pub fn strtoul(__nptr: *::libc::c_char, | |
__endptr: *mut *mut ::libc::c_char, __base: ::libc::c_int) | |
-> ::libc::c_ulong; | |
pub fn strtoq(__nptr: *::libc::c_char, __endptr: *mut *mut ::libc::c_char, | |
__base: ::libc::c_int) -> ::libc::c_longlong; | |
pub fn strtouq(__nptr: *::libc::c_char, | |
__endptr: *mut *mut ::libc::c_char, __base: ::libc::c_int) | |
-> ::libc::c_ulonglong; | |
pub fn strtoll(__nptr: *::libc::c_char, | |
__endptr: *mut *mut ::libc::c_char, __base: ::libc::c_int) | |
-> ::libc::c_longlong; | |
pub fn strtoull(__nptr: *::libc::c_char, | |
__endptr: *mut *mut ::libc::c_char, __base: ::libc::c_int) | |
-> ::libc::c_ulonglong; | |
pub fn l64a(__n: ::libc::c_long) -> *mut ::libc::c_char; | |
pub fn a64l(__s: *::libc::c_char) -> ::libc::c_long; | |
pub fn select(__nfds: ::libc::c_int, __readfds: *mut fd_set, | |
__writefds: *mut fd_set, __exceptfds: *mut fd_set, | |
__timeout: *mut Struct_timeval) -> ::libc::c_int; | |
pub fn pselect(__nfds: ::libc::c_int, __readfds: *mut fd_set, | |
__writefds: *mut fd_set, __exceptfds: *mut fd_set, | |
__timeout: *Struct_timespec, __sigmask: *__sigset_t) -> | |
::libc::c_int; | |
pub fn gnu_dev_major(__dev: ::libc::c_ulonglong) -> ::libc::c_uint; | |
pub fn gnu_dev_minor(__dev: ::libc::c_ulonglong) -> ::libc::c_uint; | |
pub fn gnu_dev_makedev(__major: ::libc::c_uint, __minor: ::libc::c_uint) | |
-> ::libc::c_ulonglong; | |
pub fn random() -> ::libc::c_long; | |
pub fn srandom(__seed: ::libc::c_uint); | |
pub fn initstate(__seed: ::libc::c_uint, __statebuf: *mut ::libc::c_char, | |
__statelen: size_t) -> *mut ::libc::c_char; | |
pub fn setstate(__statebuf: *mut ::libc::c_char) -> *mut ::libc::c_char; | |
pub fn random_r(__buf: *mut Struct_random_data, __result: *mut int32_t) -> | |
::libc::c_int; | |
pub fn srandom_r(__seed: ::libc::c_uint, __buf: *mut Struct_random_data) | |
-> ::libc::c_int; | |
pub fn initstate_r(__seed: ::libc::c_uint, | |
__statebuf: *mut ::libc::c_char, __statelen: size_t, | |
__buf: *mut Struct_random_data) -> ::libc::c_int; | |
pub fn setstate_r(__statebuf: *mut ::libc::c_char, | |
__buf: *mut Struct_random_data) -> ::libc::c_int; | |
pub fn rand() -> ::libc::c_int; | |
pub fn srand(__seed: ::libc::c_uint); | |
pub fn rand_r(__seed: *mut ::libc::c_uint) -> ::libc::c_int; | |
pub fn drand48() -> ::libc::c_double; | |
pub fn erand48(__xsubi: [::libc::c_ushort, ..3u]) -> ::libc::c_double; | |
pub fn lrand48() -> ::libc::c_long; | |
pub fn nrand48(__xsubi: [::libc::c_ushort, ..3u]) -> ::libc::c_long; | |
pub fn mrand48() -> ::libc::c_long; | |
pub fn jrand48(__xsubi: [::libc::c_ushort, ..3u]) -> ::libc::c_long; | |
pub fn srand48(__seedval: ::libc::c_long); | |
pub fn seed48(__seed16v: [::libc::c_ushort, ..3u]) -> | |
*mut ::libc::c_ushort; | |
pub fn lcong48(__param: [::libc::c_ushort, ..7u]); | |
pub fn drand48_r(__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_double) -> ::libc::c_int; | |
pub fn erand48_r(__xsubi: [::libc::c_ushort, ..3u], | |
__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_double) -> ::libc::c_int; | |
pub fn lrand48_r(__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_long) -> ::libc::c_int; | |
pub fn nrand48_r(__xsubi: [::libc::c_ushort, ..3u], | |
__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_long) -> ::libc::c_int; | |
pub fn mrand48_r(__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_long) -> ::libc::c_int; | |
pub fn jrand48_r(__xsubi: [::libc::c_ushort, ..3u], | |
__buffer: *mut Struct_drand48_data, | |
__result: *mut ::libc::c_long) -> ::libc::c_int; | |
pub fn srand48_r(__seedval: ::libc::c_long, | |
__buffer: *mut Struct_drand48_data) -> ::libc::c_int; | |
pub fn seed48_r(__seed16v: [::libc::c_ushort, ..3u], | |
__buffer: *mut Struct_drand48_data) -> ::libc::c_int; | |
pub fn lcong48_r(__param: [::libc::c_ushort, ..7u], | |
__buffer: *mut Struct_drand48_data) -> ::libc::c_int; | |
pub fn malloc(__size: size_t) -> *mut ::libc::c_void; | |
pub fn calloc(__nmemb: size_t, __size: size_t) -> *mut ::libc::c_void; | |
pub fn realloc(__ptr: *mut ::libc::c_void, __size: size_t) -> | |
*mut ::libc::c_void; | |
pub fn free(__ptr: *mut ::libc::c_void); | |
pub fn cfree(__ptr: *mut ::libc::c_void); | |
pub fn alloca(__size: size_t) -> *mut ::libc::c_void; | |
pub fn valloc(__size: size_t) -> *mut ::libc::c_void; | |
pub fn posix_memalign(__memptr: *mut *mut ::libc::c_void, | |
__alignment: size_t, __size: size_t) -> | |
::libc::c_int; | |
pub fn abort(); | |
pub fn atexit(__func: ::std::option::Option<extern "C" fn()>) -> | |
::libc::c_int; | |
pub fn on_exit(__func: | |
::std::option::Option<extern "C" fn | |
(arg1: ::libc::c_int, | |
arg2: *mut ::libc::c_void)>, | |
__arg: *mut ::libc::c_void) -> ::libc::c_int; | |
pub fn exit(__status: ::libc::c_int); | |
pub fn _Exit(__status: ::libc::c_int); | |
pub fn getenv(__name: *::libc::c_char) -> *mut ::libc::c_char; | |
pub fn putenv(__string: *mut ::libc::c_char) -> ::libc::c_int; | |
pub fn setenv(__name: *::libc::c_char, __value: *::libc::c_char, | |
__replace: ::libc::c_int) -> ::libc::c_int; | |
pub fn unsetenv(__name: *::libc::c_char) -> ::libc::c_int; | |
pub fn clearenv() -> ::libc::c_int; | |
pub fn mktemp(__template: *mut ::libc::c_char) -> *mut ::libc::c_char; | |
pub fn mkstemp(__template: *mut ::libc::c_char) -> ::libc::c_int; | |
pub fn mkstemps(__template: *mut ::libc::c_char, | |
__suffixlen: ::libc::c_int) -> ::libc::c_int; | |
pub fn mkdtemp(__template: *mut ::libc::c_char) -> *mut ::libc::c_char; | |
pub fn system(__command: *::libc::c_char) -> ::libc::c_int; | |
pub fn realpath(__name: *::libc::c_char, __resolved: *mut ::libc::c_char) | |
-> *mut ::libc::c_char; | |
pub fn bsearch(__key: *::libc::c_void, __base: *::libc::c_void, | |
__nmemb: size_t, __size: size_t, __compar: __compar_fn_t) | |
-> *mut ::libc::c_void; | |
pub fn qsort(__base: *mut ::libc::c_void, __nmemb: size_t, __size: size_t, | |
__compar: __compar_fn_t); | |
pub fn abs(__x: ::libc::c_int) -> ::libc::c_int; | |
pub fn labs(__x: ::libc::c_long) -> ::libc::c_long; | |
pub fn llabs(__x: ::libc::c_longlong) -> ::libc::c_longlong; | |
pub fn div(__numer: ::libc::c_int, __denom: ::libc::c_int) -> div_t; | |
pub fn ldiv(__numer: ::libc::c_long, __denom: ::libc::c_long) -> ldiv_t; | |
pub fn lldiv(__numer: ::libc::c_longlong, __denom: ::libc::c_longlong) -> | |
lldiv_t; | |
pub fn ecvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int) -> | |
*mut ::libc::c_char; | |
pub fn fcvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int) -> | |
*mut ::libc::c_char; | |
pub fn gcvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__buf: *mut ::libc::c_char) -> *mut ::libc::c_char; | |
pub fn qecvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int) -> | |
*mut ::libc::c_char; | |
pub fn qfcvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int) -> | |
*mut ::libc::c_char; | |
pub fn qgcvt(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__buf: *mut ::libc::c_char) -> *mut ::libc::c_char; | |
pub fn ecvt_r(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int, | |
__buf: *mut ::libc::c_char, __len: size_t) -> ::libc::c_int; | |
pub fn fcvt_r(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int, | |
__buf: *mut ::libc::c_char, __len: size_t) -> ::libc::c_int; | |
pub fn qecvt_r(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int, | |
__buf: *mut ::libc::c_char, __len: size_t) -> | |
::libc::c_int; | |
pub fn qfcvt_r(__value: ::libc::c_double, __ndigit: ::libc::c_int, | |
__decpt: *mut ::libc::c_int, __sign: *mut ::libc::c_int, | |
__buf: *mut ::libc::c_char, __len: size_t) -> | |
::libc::c_int; | |
pub fn mblen(__s: *::libc::c_char, __n: size_t) -> ::libc::c_int; | |
pub fn mbtowc(__pwc: *mut wchar_t, __s: *::libc::c_char, __n: size_t) -> | |
::libc::c_int; | |
pub fn wctomb(__s: *mut ::libc::c_char, __wchar: wchar_t) -> | |
::libc::c_int; | |
pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *::libc::c_char, __n: size_t) | |
-> size_t; | |
pub fn wcstombs(__s: *mut ::libc::c_char, __pwcs: *wchar_t, __n: size_t) | |
-> size_t; | |
pub fn rpmatch(__response: *::libc::c_char) -> ::libc::c_int; | |
pub fn getsubopt(__optionp: *mut *mut ::libc::c_char, | |
__tokens: **mut ::libc::c_char, | |
__valuep: *mut *mut ::libc::c_char) -> ::libc::c_int; | |
pub fn getloadavg(__loadavg: *mut ::libc::c_double, | |
__nelem: ::libc::c_int) -> ::libc::c_int; | |
pub fn acos(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __acos(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn asin(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __asin(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atan(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __atan(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atan2(__y: ::libc::c_double, __x: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __atan2(__y: ::libc::c_double, __x: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn cos(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __cos(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn sin(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sin(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn tan(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tan(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn cosh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __cosh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn sinh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sinh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn tanh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tanh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn acosh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __acosh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn asinh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __asinh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atanh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __atanh(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn exp(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __exp(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn frexp(__x: ::libc::c_double, __exponent: *mut ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __frexp(__x: ::libc::c_double, __exponent: *mut ::libc::c_int) -> | |
::libc::c_double; | |
pub fn ldexp(__x: ::libc::c_double, __exponent: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __ldexp(__x: ::libc::c_double, __exponent: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn log(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log10(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log10(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn modf(__x: ::libc::c_double, __iptr: *mut ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __modf(__x: ::libc::c_double, __iptr: *mut ::libc::c_double) -> | |
::libc::c_double; | |
pub fn expm1(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __expm1(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log1p(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log1p(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn logb(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __logb(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn exp2(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __exp2(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log2(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log2(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn pow(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __pow(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn sqrt(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sqrt(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn hypot(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __hypot(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn cbrt(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __cbrt(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn ceil(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __ceil(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn fabs(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __fabs(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn floor(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __floor(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn fmod(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fmod(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __isinf(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn __finite(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn isinf(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn finite(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn drem(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __drem(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn significand(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __significand(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn copysign(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __copysign(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn nan(__tagb: *::libc::c_char) -> ::libc::c_double; | |
pub fn __nan(__tagb: *::libc::c_char) -> ::libc::c_double; | |
pub fn __isnan(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn isnan(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn j0(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __j0(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn j1(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __j1(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn jn(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __jn(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn y0(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __y0(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn y1(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __y1(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn yn(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __yn(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn erf(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __erf(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn erfc(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __erfc(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn lgamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __lgamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn tgamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tgamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn gamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __gamma(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn lgamma_r(arg1: ::libc::c_double, __signgamp: *mut ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __lgamma_r(arg1: ::libc::c_double, __signgamp: *mut ::libc::c_int) | |
-> ::libc::c_double; | |
pub fn rint(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __rint(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn nextafter(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __nextafter(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn nexttoward(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __nexttoward(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn remainder(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __remainder(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn scalbn(__x: ::libc::c_double, __n: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __scalbn(__x: ::libc::c_double, __n: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn ilogb(__x: ::libc::c_double) -> ::libc::c_int; | |
pub fn __ilogb(__x: ::libc::c_double) -> ::libc::c_int; | |
pub fn scalbln(__x: ::libc::c_double, __n: ::libc::c_long) -> | |
::libc::c_double; | |
pub fn __scalbln(__x: ::libc::c_double, __n: ::libc::c_long) -> | |
::libc::c_double; | |
pub fn nearbyint(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __nearbyint(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn round(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __round(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn trunc(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __trunc(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn remquo(__x: ::libc::c_double, __y: ::libc::c_double, | |
__quo: *mut ::libc::c_int) -> ::libc::c_double; | |
pub fn __remquo(__x: ::libc::c_double, __y: ::libc::c_double, | |
__quo: *mut ::libc::c_int) -> ::libc::c_double; | |
pub fn lrint(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn __lrint(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn llrint(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn __llrint(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn lround(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn __lround(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn llround(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn __llround(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn fdim(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fdim(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn fmax(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fmax(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn fmin(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fmin(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fpclassify(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn __signbit(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn fma(__x: ::libc::c_double, __y: ::libc::c_double, | |
__z: ::libc::c_double) -> ::libc::c_double; | |
pub fn __fma(__x: ::libc::c_double, __y: ::libc::c_double, | |
__z: ::libc::c_double) -> ::libc::c_double; | |
pub fn scalb(__x: ::libc::c_double, __n: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __scalb(__x: ::libc::c_double, __n: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn acosf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __acosf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn asinf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __asinf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn atanf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __atanf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn atan2f(__y: ::libc::c_float, __x: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __atan2f(__y: ::libc::c_float, __x: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn cosf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __cosf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn sinf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __sinf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn tanf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __tanf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn coshf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __coshf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn sinhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __sinhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn tanhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __tanhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn acoshf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __acoshf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn asinhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __asinhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn atanhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __atanhf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn expf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __expf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn frexpf(__x: ::libc::c_float, __exponent: *mut ::libc::c_int) -> | |
::libc::c_float; | |
pub fn __frexpf(__x: ::libc::c_float, __exponent: *mut ::libc::c_int) -> | |
::libc::c_float; | |
pub fn ldexpf(__x: ::libc::c_float, __exponent: ::libc::c_int) -> | |
::libc::c_float; | |
pub fn __ldexpf(__x: ::libc::c_float, __exponent: ::libc::c_int) -> | |
::libc::c_float; | |
pub fn logf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __logf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn log10f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __log10f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn modff(__x: ::libc::c_float, __iptr: *mut ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __modff(__x: ::libc::c_float, __iptr: *mut ::libc::c_float) -> | |
::libc::c_float; | |
pub fn expm1f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __expm1f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn log1pf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __log1pf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn logbf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __logbf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn exp2f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __exp2f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn log2f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __log2f(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn powf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __powf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn sqrtf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __sqrtf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn hypotf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __hypotf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn cbrtf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __cbrtf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn ceilf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __ceilf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn fabsf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __fabsf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn floorf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __floorf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn fmodf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __fmodf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __isinff(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn __finitef(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn isinff(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn finitef(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn dremf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __dremf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn significandf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __significandf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn copysignf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __copysignf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn nanf(__tagb: *::libc::c_char) -> ::libc::c_float; | |
pub fn __nanf(__tagb: *::libc::c_char) -> ::libc::c_float; | |
pub fn __isnanf(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn isnanf(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn j0f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __j0f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn j1f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __j1f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn jnf(arg1: ::libc::c_int, arg2: ::libc::c_float) -> ::libc::c_float; | |
pub fn __jnf(arg1: ::libc::c_int, arg2: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn y0f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __y0f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn y1f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __y1f(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn ynf(arg1: ::libc::c_int, arg2: ::libc::c_float) -> ::libc::c_float; | |
pub fn __ynf(arg1: ::libc::c_int, arg2: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn erff(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __erff(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn erfcf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __erfcf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn lgammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __lgammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn tgammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __tgammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn gammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn __gammaf(arg1: ::libc::c_float) -> ::libc::c_float; | |
pub fn lgammaf_r(arg1: ::libc::c_float, __signgamp: *mut ::libc::c_int) -> | |
::libc::c_float; | |
pub fn __lgammaf_r(arg1: ::libc::c_float, __signgamp: *mut ::libc::c_int) | |
-> ::libc::c_float; | |
pub fn rintf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __rintf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn nextafterf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __nextafterf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn nexttowardf(__x: ::libc::c_float, __y: ::libc::c_double) -> | |
::libc::c_float; | |
pub fn __nexttowardf(__x: ::libc::c_float, __y: ::libc::c_double) -> | |
::libc::c_float; | |
pub fn remainderf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __remainderf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn scalbnf(__x: ::libc::c_float, __n: ::libc::c_int) -> | |
::libc::c_float; | |
pub fn __scalbnf(__x: ::libc::c_float, __n: ::libc::c_int) -> | |
::libc::c_float; | |
pub fn ilogbf(__x: ::libc::c_float) -> ::libc::c_int; | |
pub fn __ilogbf(__x: ::libc::c_float) -> ::libc::c_int; | |
pub fn scalblnf(__x: ::libc::c_float, __n: ::libc::c_long) -> | |
::libc::c_float; | |
pub fn __scalblnf(__x: ::libc::c_float, __n: ::libc::c_long) -> | |
::libc::c_float; | |
pub fn nearbyintf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __nearbyintf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn roundf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __roundf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn truncf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn __truncf(__x: ::libc::c_float) -> ::libc::c_float; | |
pub fn remquof(__x: ::libc::c_float, __y: ::libc::c_float, | |
__quo: *mut ::libc::c_int) -> ::libc::c_float; | |
pub fn __remquof(__x: ::libc::c_float, __y: ::libc::c_float, | |
__quo: *mut ::libc::c_int) -> ::libc::c_float; | |
pub fn lrintf(__x: ::libc::c_float) -> ::libc::c_long; | |
pub fn __lrintf(__x: ::libc::c_float) -> ::libc::c_long; | |
pub fn llrintf(__x: ::libc::c_float) -> ::libc::c_longlong; | |
pub fn __llrintf(__x: ::libc::c_float) -> ::libc::c_longlong; | |
pub fn lroundf(__x: ::libc::c_float) -> ::libc::c_long; | |
pub fn __lroundf(__x: ::libc::c_float) -> ::libc::c_long; | |
pub fn llroundf(__x: ::libc::c_float) -> ::libc::c_longlong; | |
pub fn __llroundf(__x: ::libc::c_float) -> ::libc::c_longlong; | |
pub fn fdimf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __fdimf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn fmaxf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __fmaxf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn fminf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __fminf(__x: ::libc::c_float, __y: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __fpclassifyf(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn __signbitf(__value: ::libc::c_float) -> ::libc::c_int; | |
pub fn fmaf(__x: ::libc::c_float, __y: ::libc::c_float, | |
__z: ::libc::c_float) -> ::libc::c_float; | |
pub fn __fmaf(__x: ::libc::c_float, __y: ::libc::c_float, | |
__z: ::libc::c_float) -> ::libc::c_float; | |
pub fn scalbf(__x: ::libc::c_float, __n: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn __scalbf(__x: ::libc::c_float, __n: ::libc::c_float) -> | |
::libc::c_float; | |
pub fn acosl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __acosl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn asinl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __asinl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atanl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __atanl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atan2l(__y: ::libc::c_double, __x: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __atan2l(__y: ::libc::c_double, __x: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn cosl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __cosl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn sinl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sinl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn tanl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tanl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn coshl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __coshl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn sinhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sinhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn tanhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tanhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn acoshl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __acoshl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn asinhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __asinhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn atanhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __atanhl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn expl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __expl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn frexpl(__x: ::libc::c_double, __exponent: *mut ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __frexpl(__x: ::libc::c_double, __exponent: *mut ::libc::c_int) -> | |
::libc::c_double; | |
pub fn ldexpl(__x: ::libc::c_double, __exponent: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __ldexpl(__x: ::libc::c_double, __exponent: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn logl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __logl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log10l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log10l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn modfl(__x: ::libc::c_double, __iptr: *mut ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __modfl(__x: ::libc::c_double, __iptr: *mut ::libc::c_double) -> | |
::libc::c_double; | |
pub fn expm1l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __expm1l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log1pl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log1pl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn logbl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __logbl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn exp2l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __exp2l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn log2l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __log2l(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn powl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __powl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn sqrtl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __sqrtl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn hypotl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __hypotl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn cbrtl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __cbrtl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn ceill(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __ceill(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn fabsl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __fabsl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn floorl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __floorl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn fmodl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fmodl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __isinfl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn __finitel(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn isinfl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn finitel(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn dreml(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __dreml(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn significandl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __significandl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn copysignl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __copysignl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn nanl(__tagb: *::libc::c_char) -> ::libc::c_double; | |
pub fn __nanl(__tagb: *::libc::c_char) -> ::libc::c_double; | |
pub fn __isnanl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn isnanl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn j0l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __j0l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn j1l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __j1l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn jnl(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __jnl(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn y0l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __y0l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn y1l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __y1l(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn ynl(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __ynl(arg1: ::libc::c_int, arg2: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn erfl(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __erfl(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn erfcl(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __erfcl(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn lgammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __lgammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn tgammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __tgammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn gammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn __gammal(arg1: ::libc::c_double) -> ::libc::c_double; | |
pub fn lgammal_r(arg1: ::libc::c_double, __signgamp: *mut ::libc::c_int) | |
-> ::libc::c_double; | |
pub fn __lgammal_r(arg1: ::libc::c_double, __signgamp: *mut ::libc::c_int) | |
-> ::libc::c_double; | |
pub fn rintl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __rintl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn nextafterl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __nextafterl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn nexttowardl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __nexttowardl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn remainderl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __remainderl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn scalbnl(__x: ::libc::c_double, __n: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn __scalbnl(__x: ::libc::c_double, __n: ::libc::c_int) -> | |
::libc::c_double; | |
pub fn ilogbl(__x: ::libc::c_double) -> ::libc::c_int; | |
pub fn __ilogbl(__x: ::libc::c_double) -> ::libc::c_int; | |
pub fn scalblnl(__x: ::libc::c_double, __n: ::libc::c_long) -> | |
::libc::c_double; | |
pub fn __scalblnl(__x: ::libc::c_double, __n: ::libc::c_long) -> | |
::libc::c_double; | |
pub fn nearbyintl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __nearbyintl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn roundl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __roundl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn truncl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn __truncl(__x: ::libc::c_double) -> ::libc::c_double; | |
pub fn remquol(__x: ::libc::c_double, __y: ::libc::c_double, | |
__quo: *mut ::libc::c_int) -> ::libc::c_double; | |
pub fn __remquol(__x: ::libc::c_double, __y: ::libc::c_double, | |
__quo: *mut ::libc::c_int) -> ::libc::c_double; | |
pub fn lrintl(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn __lrintl(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn llrintl(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn __llrintl(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn lroundl(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn __lroundl(__x: ::libc::c_double) -> ::libc::c_long; | |
pub fn llroundl(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn __llroundl(__x: ::libc::c_double) -> ::libc::c_longlong; | |
pub fn fdiml(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fdiml(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn fmaxl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fmaxl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn fminl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fminl(__x: ::libc::c_double, __y: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __fpclassifyl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn __signbitl(__value: ::libc::c_double) -> ::libc::c_int; | |
pub fn fmal(__x: ::libc::c_double, __y: ::libc::c_double, | |
__z: ::libc::c_double) -> ::libc::c_double; | |
pub fn __fmal(__x: ::libc::c_double, __y: ::libc::c_double, | |
__z: ::libc::c_double) -> ::libc::c_double; | |
pub fn scalbl(__x: ::libc::c_double, __n: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn __scalbl(__x: ::libc::c_double, __n: ::libc::c_double) -> | |
::libc::c_double; | |
pub fn matherr(__exc: *mut Struct_exception) -> ::libc::c_int; | |
pub fn cpMessage(condition: *::libc::c_char, file: *::libc::c_char, | |
line: ::libc::c_int, isError: ::libc::c_int, | |
isHardError: ::libc::c_int, | |
message: *::libc::c_char, ...); | |
pub fn cpSpaceHashAlloc() -> *mut cpSpaceHash; | |
pub fn cpSpaceHashInit(hash: *mut cpSpaceHash, celldim: cpFloat, | |
numcells: ::libc::c_int, | |
bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpSpaceHashNew(celldim: cpFloat, cells: ::libc::c_int, | |
bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpSpaceHashResize(hash: *mut cpSpaceHash, celldim: cpFloat, | |
numcells: ::libc::c_int); | |
pub fn cpBBTreeAlloc() -> *mut cpBBTree; | |
pub fn cpBBTreeInit(tree: *mut cpBBTree, bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpBBTreeNew(bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpBBTreeOptimize(index: *mut cpSpatialIndex); | |
pub fn cpBBTreeSetVelocityFunc(index: *mut cpSpatialIndex, | |
func: cpBBTreeVelocityFunc); | |
pub fn cpSweep1DAlloc() -> *mut cpSweep1D; | |
pub fn cpSweep1DInit(sweep: *mut cpSweep1D, bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpSweep1DNew(bbfunc: cpSpatialIndexBBFunc, | |
staticIndex: *mut cpSpatialIndex) -> | |
*mut cpSpatialIndex; | |
pub fn cpSpatialIndexFree(index: *mut cpSpatialIndex); | |
pub fn cpSpatialIndexCollideStatic(dynamicIndex: *mut cpSpatialIndex, | |
staticIndex: *mut cpSpatialIndex, | |
func: cpSpatialIndexQueryFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpArbiterGetRestitution(arb: *cpArbiter) -> cpFloat; | |
pub fn cpArbiterSetRestitution(arb: *mut cpArbiter, restitution: cpFloat); | |
pub fn cpArbiterGetFriction(arb: *cpArbiter) -> cpFloat; | |
pub fn cpArbiterSetFriction(arb: *mut cpArbiter, friction: cpFloat); | |
pub fn cpArbiterGetSurfaceVelocity(arb: *mut cpArbiter) -> cpVect; | |
pub fn cpArbiterSetSurfaceVelocity(arb: *mut cpArbiter, vr: cpVect); | |
pub fn cpArbiterGetUserData(arb: *cpArbiter) -> cpDataPointer; | |
pub fn cpArbiterSetUserData(arb: *mut cpArbiter, userData: cpDataPointer); | |
pub fn cpArbiterTotalImpulse(arb: *cpArbiter) -> cpVect; | |
pub fn cpArbiterTotalKE(arb: *cpArbiter) -> cpFloat; | |
pub fn cpArbiterIgnore(arb: *mut cpArbiter) -> cpBool; | |
pub fn cpArbiterGetShapes(arb: *cpArbiter, a: *mut *mut cpShape, | |
b: *mut *mut cpShape); | |
pub fn cpArbiterGetBodies(arb: *cpArbiter, a: *mut *mut cpBody, | |
b: *mut *mut cpBody); | |
pub fn cpArbiterGetContactPointSet(arb: *cpArbiter) -> cpContactPointSet; | |
pub fn cpArbiterSetContactPointSet(arb: *mut cpArbiter, | |
set: *mut cpContactPointSet); | |
pub fn cpArbiterIsFirstContact(arb: *cpArbiter) -> cpBool; | |
pub fn cpArbiterIsRemoval(arb: *cpArbiter) -> cpBool; | |
pub fn cpArbiterGetCount(arb: *cpArbiter) -> ::libc::c_int; | |
pub fn cpArbiterGetNormal(arb: *cpArbiter) -> cpVect; | |
pub fn cpArbiterGetPointA(arb: *cpArbiter, i: ::libc::c_int) -> cpVect; | |
pub fn cpArbiterGetPointB(arb: *cpArbiter, i: ::libc::c_int) -> cpVect; | |
pub fn cpArbiterGetDepth(arb: *cpArbiter, i: ::libc::c_int) -> cpFloat; | |
pub fn cpArbiterCallWildcardBeginA(arb: *mut cpArbiter, | |
space: *mut cpSpace) -> cpBool; | |
pub fn cpArbiterCallWildcardBeginB(arb: *mut cpArbiter, | |
space: *mut cpSpace) -> cpBool; | |
pub fn cpArbiterCallWildcardPreSolveA(arb: *mut cpArbiter, | |
space: *mut cpSpace) -> cpBool; | |
pub fn cpArbiterCallWildcardPreSolveB(arb: *mut cpArbiter, | |
space: *mut cpSpace) -> cpBool; | |
pub fn cpArbiterCallWildcardPostSolveA(arb: *mut cpArbiter, | |
space: *mut cpSpace); | |
pub fn cpArbiterCallWildcardPostSolveB(arb: *mut cpArbiter, | |
space: *mut cpSpace); | |
pub fn cpArbiterCallWildcardSeparateA(arb: *mut cpArbiter, | |
space: *mut cpSpace); | |
pub fn cpArbiterCallWildcardSeparateB(arb: *mut cpArbiter, | |
space: *mut cpSpace); | |
pub fn cpBodyAlloc() -> *mut cpBody; | |
pub fn cpBodyInit(body: *mut cpBody, mass: cpFloat, moment: cpFloat) -> | |
*mut cpBody; | |
pub fn cpBodyNew(mass: cpFloat, moment: cpFloat) -> *mut cpBody; | |
pub fn cpBodyNewKinematic() -> *mut cpBody; | |
pub fn cpBodyNewStatic() -> *mut cpBody; | |
pub fn cpBodyDestroy(body: *mut cpBody); | |
pub fn cpBodyFree(body: *mut cpBody); | |
pub fn cpBodyActivate(body: *mut cpBody); | |
pub fn cpBodyActivateStatic(body: *mut cpBody, filter: *mut cpShape); | |
pub fn cpBodySleep(body: *mut cpBody); | |
pub fn cpBodySleepWithGroup(body: *mut cpBody, group: *mut cpBody); | |
pub fn cpBodyIsSleeping(body: *cpBody) -> cpBool; | |
pub fn cpBodyGetType(body: *mut cpBody) -> cpBodyType; | |
pub fn cpBodySetType(body: *mut cpBody, _type: cpBodyType); | |
pub fn cpBodyGetSpace(body: *cpBody) -> *mut cpSpace; | |
pub fn cpBodyGetMass(body: *cpBody) -> cpFloat; | |
pub fn cpBodySetMass(body: *mut cpBody, m: cpFloat); | |
pub fn cpBodyGetMoment(body: *cpBody) -> cpFloat; | |
pub fn cpBodySetMoment(body: *mut cpBody, i: cpFloat); | |
pub fn cpBodyGetPosition(body: *cpBody) -> cpVect; | |
pub fn cpBodySetPosition(body: *mut cpBody, pos: cpVect); | |
pub fn cpBodyGetCenterOfGravity(body: *cpBody) -> cpVect; | |
pub fn cpBodySetCenterOfGravity(body: *mut cpBody, cog: cpVect); | |
pub fn cpBodyGetVelocity(body: *cpBody) -> cpVect; | |
pub fn cpBodySetVelocity(body: *mut cpBody, velocity: cpVect); | |
pub fn cpBodyGetForce(body: *cpBody) -> cpVect; | |
pub fn cpBodySetForce(body: *mut cpBody, force: cpVect); | |
pub fn cpBodyGetAngle(body: *cpBody) -> cpFloat; | |
pub fn cpBodySetAngle(body: *mut cpBody, a: cpFloat); | |
pub fn cpBodyGetAngularVelocity(body: *cpBody) -> cpFloat; | |
pub fn cpBodySetAngularVelocity(body: *mut cpBody, | |
angularVelocity: cpFloat); | |
pub fn cpBodyGetTorque(body: *cpBody) -> cpFloat; | |
pub fn cpBodySetTorque(body: *mut cpBody, torque: cpFloat); | |
pub fn cpBodyGetRotation(body: *cpBody) -> cpVect; | |
pub fn cpBodyGetUserData(body: *cpBody) -> cpDataPointer; | |
pub fn cpBodySetUserData(body: *mut cpBody, userData: cpDataPointer); | |
pub fn cpBodySetVelocityUpdateFunc(body: *mut cpBody, | |
velocityFunc: cpBodyVelocityFunc); | |
pub fn cpBodySetPositionUpdateFunc(body: *mut cpBody, | |
positionFunc: cpBodyPositionFunc); | |
pub fn cpBodyUpdateVelocity(body: *mut cpBody, gravity: cpVect, | |
damping: cpFloat, dt: cpFloat); | |
pub fn cpBodyUpdatePosition(body: *mut cpBody, dt: cpFloat); | |
pub fn cpBodyLocalToWorld(body: *cpBody, point: cpVect) -> cpVect; | |
pub fn cpBodyWorldToLocal(body: *cpBody, point: cpVect) -> cpVect; | |
pub fn cpBodyApplyForceAtWorldPoint(body: *mut cpBody, force: cpVect, | |
point: cpVect); | |
pub fn cpBodyApplyForceAtLocalPoint(body: *mut cpBody, force: cpVect, | |
point: cpVect); | |
pub fn cpBodyApplyImpulseAtWorldPoint(body: *mut cpBody, impulse: cpVect, | |
point: cpVect); | |
pub fn cpBodyApplyImpulseAtLocalPoint(body: *mut cpBody, impulse: cpVect, | |
point: cpVect); | |
pub fn cpBodyGetVelocityAtWorldPoint(body: *cpBody, point: cpVect) -> | |
cpVect; | |
pub fn cpBodyGetVelocityAtLocalPoint(body: *cpBody, point: cpVect) -> | |
cpVect; | |
pub fn cpBodyKineticEnergy(body: *cpBody) -> cpFloat; | |
pub fn cpBodyEachShape(body: *mut cpBody, func: cpBodyShapeIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpBodyEachConstraint(body: *mut cpBody, | |
func: cpBodyConstraintIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpBodyEachArbiter(body: *mut cpBody, | |
func: cpBodyArbiterIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpShapeDestroy(shape: *mut cpShape); | |
pub fn cpShapeFree(shape: *mut cpShape); | |
pub fn cpShapeCacheBB(shape: *mut cpShape) -> cpBB; | |
pub fn cpShapeUpdate(shape: *mut cpShape, transform: cpTransform) -> cpBB; | |
pub fn cpShapePointQuery(shape: *cpShape, p: cpVect, | |
out: *mut cpPointQueryInfo) -> cpFloat; | |
pub fn cpShapeSegmentQuery(shape: *cpShape, a: cpVect, b: cpVect, | |
radius: cpFloat, info: *mut cpSegmentQueryInfo) | |
-> cpBool; | |
pub fn cpShapesCollide(a: *cpShape, b: *cpShape) -> cpContactPointSet; | |
pub fn cpShapeGetSpace(shape: *cpShape) -> *mut cpSpace; | |
pub fn cpShapeGetBody(shape: *cpShape) -> *mut cpBody; | |
pub fn cpShapeSetBody(shape: *mut cpShape, body: *mut cpBody); | |
pub fn cpShapeGetMass(shape: *mut cpShape) -> cpFloat; | |
pub fn cpShapeSetMass(shape: *mut cpShape, mass: cpFloat); | |
pub fn cpShapeGetDensity(shape: *mut cpShape) -> cpFloat; | |
pub fn cpShapeSetDensity(shape: *mut cpShape, density: cpFloat); | |
pub fn cpShapeGetMoment(shape: *mut cpShape) -> cpFloat; | |
pub fn cpShapeGetArea(shape: *mut cpShape) -> cpFloat; | |
pub fn cpShapeGetCenterOfGravity(shape: *mut cpShape) -> cpVect; | |
pub fn cpShapeGetBB(shape: *cpShape) -> cpBB; | |
pub fn cpShapeGetSensor(shape: *cpShape) -> cpBool; | |
pub fn cpShapeSetSensor(shape: *mut cpShape, sensor: cpBool); | |
pub fn cpShapeGetElasticity(shape: *cpShape) -> cpFloat; | |
pub fn cpShapeSetElasticity(shape: *mut cpShape, elasticity: cpFloat); | |
pub fn cpShapeGetFriction(shape: *cpShape) -> cpFloat; | |
pub fn cpShapeSetFriction(shape: *mut cpShape, friction: cpFloat); | |
pub fn cpShapeGetSurfaceVelocity(shape: *cpShape) -> cpVect; | |
pub fn cpShapeSetSurfaceVelocity(shape: *mut cpShape, | |
surfaceVelocity: cpVect); | |
pub fn cpShapeGetUserData(shape: *cpShape) -> cpDataPointer; | |
pub fn cpShapeSetUserData(shape: *mut cpShape, userData: cpDataPointer); | |
pub fn cpShapeGetCollisionType(shape: *cpShape) -> cpCollisionType; | |
pub fn cpShapeSetCollisionType(shape: *mut cpShape, | |
collisionType: cpCollisionType); | |
pub fn cpShapeGetFilter(shape: *cpShape) -> cpShapeFilter; | |
pub fn cpShapeSetFilter(shape: *mut cpShape, filter: cpShapeFilter); | |
pub fn cpCircleShapeAlloc() -> *mut cpCircleShape; | |
pub fn cpCircleShapeInit(circle: *mut cpCircleShape, body: *mut cpBody, | |
radius: cpFloat, offset: cpVect) -> | |
*mut cpCircleShape; | |
pub fn cpCircleShapeNew(body: *mut cpBody, radius: cpFloat, | |
offset: cpVect) -> *mut cpShape; | |
pub fn cpCircleShapeGetOffset(shape: *cpShape) -> cpVect; | |
pub fn cpCircleShapeGetRadius(shape: *cpShape) -> cpFloat; | |
pub fn cpSegmentShapeAlloc() -> *mut cpSegmentShape; | |
pub fn cpSegmentShapeInit(seg: *mut cpSegmentShape, body: *mut cpBody, | |
a: cpVect, b: cpVect, radius: cpFloat) -> | |
*mut cpSegmentShape; | |
pub fn cpSegmentShapeNew(body: *mut cpBody, a: cpVect, b: cpVect, | |
radius: cpFloat) -> *mut cpShape; | |
pub fn cpSegmentShapeSetNeighbors(shape: *mut cpShape, prev: cpVect, | |
next: cpVect); | |
pub fn cpSegmentShapeGetA(shape: *cpShape) -> cpVect; | |
pub fn cpSegmentShapeGetB(shape: *cpShape) -> cpVect; | |
pub fn cpSegmentShapeGetNormal(shape: *cpShape) -> cpVect; | |
pub fn cpSegmentShapeGetRadius(shape: *cpShape) -> cpFloat; | |
pub fn cpPolyShapeAlloc() -> *mut cpPolyShape; | |
pub fn cpPolyShapeInit(poly: *mut cpPolyShape, body: *mut cpBody, | |
count: ::libc::c_int, verts: *cpVect, | |
transform: cpTransform, radius: cpFloat) -> | |
*mut cpPolyShape; | |
pub fn cpPolyShapeInitRaw(poly: *mut cpPolyShape, body: *mut cpBody, | |
count: ::libc::c_int, verts: *cpVect, | |
radius: cpFloat) -> *mut cpPolyShape; | |
pub fn cpPolyShapeNew(body: *mut cpBody, count: ::libc::c_int, | |
verts: *cpVect, transform: cpTransform, | |
radius: cpFloat) -> *mut cpShape; | |
pub fn cpPolyShapeNewRaw(body: *mut cpBody, count: ::libc::c_int, | |
verts: *cpVect, radius: cpFloat) -> *mut cpShape; | |
pub fn cpBoxShapeInit(poly: *mut cpPolyShape, body: *mut cpBody, | |
width: cpFloat, height: cpFloat, radius: cpFloat) -> | |
*mut cpPolyShape; | |
pub fn cpBoxShapeInit2(poly: *mut cpPolyShape, body: *mut cpBody, | |
_box: cpBB, radius: cpFloat) -> *mut cpPolyShape; | |
pub fn cpBoxShapeNew(body: *mut cpBody, width: cpFloat, height: cpFloat, | |
radius: cpFloat) -> *mut cpShape; | |
pub fn cpBoxShapeNew2(body: *mut cpBody, _box: cpBB, radius: cpFloat) -> | |
*mut cpShape; | |
pub fn cpPolyShapeGetCount(shape: *cpShape) -> ::libc::c_int; | |
pub fn cpPolyShapeGetVert(shape: *cpShape, index: ::libc::c_int) -> | |
cpVect; | |
pub fn cpPolyShapeGetRadius(shape: *cpShape) -> cpFloat; | |
pub fn cpConstraintDestroy(constraint: *mut cpConstraint); | |
pub fn cpConstraintFree(constraint: *mut cpConstraint); | |
pub fn cpConstraintGetSpace(constraint: *cpConstraint) -> *mut cpSpace; | |
pub fn cpConstraintGetBodyA(constraint: *cpConstraint) -> *mut cpBody; | |
pub fn cpConstraintGetBodyB(constraint: *cpConstraint) -> *mut cpBody; | |
pub fn cpConstraintGetMaxForce(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpConstraintSetMaxForce(constraint: *mut cpConstraint, | |
maxForce: cpFloat); | |
pub fn cpConstraintGetErrorBias(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpConstraintSetErrorBias(constraint: *mut cpConstraint, | |
errorBias: cpFloat); | |
pub fn cpConstraintGetMaxBias(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpConstraintSetMaxBias(constraint: *mut cpConstraint, | |
maxBias: cpFloat); | |
pub fn cpConstraintGetCollideBodies(constraint: *cpConstraint) -> cpBool; | |
pub fn cpConstraintSetCollideBodies(constraint: *mut cpConstraint, | |
collideBodies: cpBool); | |
pub fn cpConstraintGetPreSolveFunc(constraint: *cpConstraint) -> | |
cpConstraintPreSolveFunc; | |
pub fn cpConstraintSetPreSolveFunc(constraint: *mut cpConstraint, | |
preSolveFunc: | |
cpConstraintPreSolveFunc); | |
pub fn cpConstraintGetPostSolveFunc(constraint: *cpConstraint) -> | |
cpConstraintPostSolveFunc; | |
pub fn cpConstraintSetPostSolveFunc(constraint: *mut cpConstraint, | |
postSolveFunc: | |
cpConstraintPostSolveFunc); | |
pub fn cpConstraintGetUserData(constraint: *cpConstraint) -> | |
cpDataPointer; | |
pub fn cpConstraintSetUserData(constraint: *mut cpConstraint, | |
userData: cpDataPointer); | |
pub fn cpConstraintGetImpulse(constraint: *mut cpConstraint) -> cpFloat; | |
pub fn cpConstraintIsPinJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpPinJointAlloc() -> *mut cpPinJoint; | |
pub fn cpPinJointInit(joint: *mut cpPinJoint, a: *mut cpBody, | |
b: *mut cpBody, anchorA: cpVect, anchorB: cpVect) -> | |
*mut cpPinJoint; | |
pub fn cpPinJointNew(a: *mut cpBody, b: *mut cpBody, anchorA: cpVect, | |
anchorB: cpVect) -> *mut cpConstraint; | |
pub fn cpPinJointGetAnchorA(constraint: *cpConstraint) -> cpVect; | |
pub fn cpPinJointSetAnchorA(constraint: *mut cpConstraint, | |
anchorA: cpVect); | |
pub fn cpPinJointGetAnchorB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpPinJointSetAnchorB(constraint: *mut cpConstraint, | |
anchorB: cpVect); | |
pub fn cpPinJointGetDist(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpPinJointSetDist(constraint: *mut cpConstraint, dist: cpFloat); | |
pub fn cpConstraintIsSlideJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpSlideJointAlloc() -> *mut cpSlideJoint; | |
pub fn cpSlideJointInit(joint: *mut cpSlideJoint, a: *mut cpBody, | |
b: *mut cpBody, anchorA: cpVect, anchorB: cpVect, | |
min: cpFloat, max: cpFloat) -> *mut cpSlideJoint; | |
pub fn cpSlideJointNew(a: *mut cpBody, b: *mut cpBody, anchorA: cpVect, | |
anchorB: cpVect, min: cpFloat, max: cpFloat) -> | |
*mut cpConstraint; | |
pub fn cpSlideJointGetAnchorA(constraint: *cpConstraint) -> cpVect; | |
pub fn cpSlideJointSetAnchorA(constraint: *mut cpConstraint, | |
anchorA: cpVect); | |
pub fn cpSlideJointGetAnchorB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpSlideJointSetAnchorB(constraint: *mut cpConstraint, | |
anchorB: cpVect); | |
pub fn cpSlideJointGetMin(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpSlideJointSetMin(constraint: *mut cpConstraint, min: cpFloat); | |
pub fn cpSlideJointGetMax(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpSlideJointSetMax(constraint: *mut cpConstraint, max: cpFloat); | |
pub fn cpConstraintIsPivotJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpPivotJointAlloc() -> *mut cpPivotJoint; | |
pub fn cpPivotJointInit(joint: *mut cpPivotJoint, a: *mut cpBody, | |
b: *mut cpBody, anchorA: cpVect, anchorB: cpVect) | |
-> *mut cpPivotJoint; | |
pub fn cpPivotJointNew(a: *mut cpBody, b: *mut cpBody, pivot: cpVect) -> | |
*mut cpConstraint; | |
pub fn cpPivotJointNew2(a: *mut cpBody, b: *mut cpBody, anchorA: cpVect, | |
anchorB: cpVect) -> *mut cpConstraint; | |
pub fn cpPivotJointGetAnchorA(constraint: *cpConstraint) -> cpVect; | |
pub fn cpPivotJointSetAnchorA(constraint: *mut cpConstraint, | |
anchorA: cpVect); | |
pub fn cpPivotJointGetAnchorB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpPivotJointSetAnchorB(constraint: *mut cpConstraint, | |
anchorB: cpVect); | |
pub fn cpConstraintIsGrooveJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpGrooveJointAlloc() -> *mut cpGrooveJoint; | |
pub fn cpGrooveJointInit(joint: *mut cpGrooveJoint, a: *mut cpBody, | |
b: *mut cpBody, groove_a: cpVect, | |
groove_b: cpVect, anchorB: cpVect) -> | |
*mut cpGrooveJoint; | |
pub fn cpGrooveJointNew(a: *mut cpBody, b: *mut cpBody, groove_a: cpVect, | |
groove_b: cpVect, anchorB: cpVect) -> | |
*mut cpConstraint; | |
pub fn cpGrooveJointGetGrooveA(constraint: *cpConstraint) -> cpVect; | |
pub fn cpGrooveJointSetGrooveA(constraint: *mut cpConstraint, | |
grooveA: cpVect); | |
pub fn cpGrooveJointGetGrooveB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpGrooveJointSetGrooveB(constraint: *mut cpConstraint, | |
grooveB: cpVect); | |
pub fn cpGrooveJointGetAnchorB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpGrooveJointSetAnchorB(constraint: *mut cpConstraint, | |
anchorB: cpVect); | |
pub fn cpConstraintIsDampedSpring(constraint: *cpConstraint) -> cpBool; | |
pub fn cpDampedSpringAlloc() -> *mut cpDampedSpring; | |
pub fn cpDampedSpringInit(joint: *mut cpDampedSpring, a: *mut cpBody, | |
b: *mut cpBody, anchorA: cpVect, | |
anchorB: cpVect, restLength: cpFloat, | |
stiffness: cpFloat, damping: cpFloat) -> | |
*mut cpDampedSpring; | |
pub fn cpDampedSpringNew(a: *mut cpBody, b: *mut cpBody, anchorA: cpVect, | |
anchorB: cpVect, restLength: cpFloat, | |
stiffness: cpFloat, damping: cpFloat) -> | |
*mut cpConstraint; | |
pub fn cpDampedSpringGetAnchorA(constraint: *cpConstraint) -> cpVect; | |
pub fn cpDampedSpringSetAnchorA(constraint: *mut cpConstraint, | |
anchorA: cpVect); | |
pub fn cpDampedSpringGetAnchorB(constraint: *cpConstraint) -> cpVect; | |
pub fn cpDampedSpringSetAnchorB(constraint: *mut cpConstraint, | |
anchorB: cpVect); | |
pub fn cpDampedSpringGetRestLength(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpDampedSpringSetRestLength(constraint: *mut cpConstraint, | |
restLength: cpFloat); | |
pub fn cpDampedSpringGetStiffness(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpDampedSpringSetStiffness(constraint: *mut cpConstraint, | |
stiffness: cpFloat); | |
pub fn cpDampedSpringGetDamping(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpDampedSpringSetDamping(constraint: *mut cpConstraint, | |
damping: cpFloat); | |
pub fn cpDampedSpringGetSpringForceFunc(constraint: *cpConstraint) -> | |
cpDampedSpringForceFunc; | |
pub fn cpDampedSpringSetSpringForceFunc(constraint: *mut cpConstraint, | |
springForceFunc: | |
cpDampedSpringForceFunc); | |
pub fn cpConstraintIsDampedRotarySpring(constraint: *cpConstraint) -> | |
cpBool; | |
pub fn cpDampedRotarySpringAlloc() -> *mut cpDampedRotarySpring; | |
pub fn cpDampedRotarySpringInit(joint: *mut cpDampedRotarySpring, | |
a: *mut cpBody, b: *mut cpBody, | |
restAngle: cpFloat, stiffness: cpFloat, | |
damping: cpFloat) -> | |
*mut cpDampedRotarySpring; | |
pub fn cpDampedRotarySpringNew(a: *mut cpBody, b: *mut cpBody, | |
restAngle: cpFloat, stiffness: cpFloat, | |
damping: cpFloat) -> *mut cpConstraint; | |
pub fn cpDampedRotarySpringGetRestAngle(constraint: *cpConstraint) -> | |
cpFloat; | |
pub fn cpDampedRotarySpringSetRestAngle(constraint: *mut cpConstraint, | |
restAngle: cpFloat); | |
pub fn cpDampedRotarySpringGetStiffness(constraint: *cpConstraint) -> | |
cpFloat; | |
pub fn cpDampedRotarySpringSetStiffness(constraint: *mut cpConstraint, | |
stiffness: cpFloat); | |
pub fn cpDampedRotarySpringGetDamping(constraint: *cpConstraint) -> | |
cpFloat; | |
pub fn cpDampedRotarySpringSetDamping(constraint: *mut cpConstraint, | |
damping: cpFloat); | |
pub fn cpDampedRotarySpringGetSpringTorqueFunc(constraint: *cpConstraint) | |
-> cpDampedRotarySpringTorqueFunc; | |
pub fn cpDampedRotarySpringSetSpringTorqueFunc(constraint: | |
*mut cpConstraint, | |
springTorqueFunc: | |
cpDampedRotarySpringTorqueFunc); | |
pub fn cpConstraintIsRotaryLimitJoint(constraint: *cpConstraint) -> | |
cpBool; | |
pub fn cpRotaryLimitJointAlloc() -> *mut cpRotaryLimitJoint; | |
pub fn cpRotaryLimitJointInit(joint: *mut cpRotaryLimitJoint, | |
a: *mut cpBody, b: *mut cpBody, | |
min: cpFloat, max: cpFloat) -> | |
*mut cpRotaryLimitJoint; | |
pub fn cpRotaryLimitJointNew(a: *mut cpBody, b: *mut cpBody, min: cpFloat, | |
max: cpFloat) -> *mut cpConstraint; | |
pub fn cpRotaryLimitJointGetMin(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpRotaryLimitJointSetMin(constraint: *mut cpConstraint, | |
min: cpFloat); | |
pub fn cpRotaryLimitJointGetMax(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpRotaryLimitJointSetMax(constraint: *mut cpConstraint, | |
max: cpFloat); | |
pub fn cpConstraintIsRatchetJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpRatchetJointAlloc() -> *mut cpRatchetJoint; | |
pub fn cpRatchetJointInit(joint: *mut cpRatchetJoint, a: *mut cpBody, | |
b: *mut cpBody, phase: cpFloat, | |
ratchet: cpFloat) -> *mut cpRatchetJoint; | |
pub fn cpRatchetJointNew(a: *mut cpBody, b: *mut cpBody, phase: cpFloat, | |
ratchet: cpFloat) -> *mut cpConstraint; | |
pub fn cpRatchetJointGetAngle(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpRatchetJointSetAngle(constraint: *mut cpConstraint, | |
angle: cpFloat); | |
pub fn cpRatchetJointGetPhase(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpRatchetJointSetPhase(constraint: *mut cpConstraint, | |
phase: cpFloat); | |
pub fn cpRatchetJointGetRatchet(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpRatchetJointSetRatchet(constraint: *mut cpConstraint, | |
ratchet: cpFloat); | |
pub fn cpConstraintIsGearJoint(constraint: *cpConstraint) -> cpBool; | |
pub fn cpGearJointAlloc() -> *mut cpGearJoint; | |
pub fn cpGearJointInit(joint: *mut cpGearJoint, a: *mut cpBody, | |
b: *mut cpBody, phase: cpFloat, ratio: cpFloat) -> | |
*mut cpGearJoint; | |
pub fn cpGearJointNew(a: *mut cpBody, b: *mut cpBody, phase: cpFloat, | |
ratio: cpFloat) -> *mut cpConstraint; | |
pub fn cpGearJointGetPhase(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpGearJointSetPhase(constraint: *mut cpConstraint, phase: cpFloat); | |
pub fn cpGearJointGetRatio(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpGearJointSetRatio(constraint: *mut cpConstraint, ratio: cpFloat); | |
pub fn cpConstraintIsSimpleMotor(constraint: *cpConstraint) -> cpBool; | |
pub fn cpSimpleMotorAlloc() -> *mut cpSimpleMotor; | |
pub fn cpSimpleMotorInit(joint: *mut cpSimpleMotor, a: *mut cpBody, | |
b: *mut cpBody, rate: cpFloat) -> | |
*mut cpSimpleMotor; | |
pub fn cpSimpleMotorNew(a: *mut cpBody, b: *mut cpBody, rate: cpFloat) -> | |
*mut cpConstraint; | |
pub fn cpSimpleMotorGetRate(constraint: *cpConstraint) -> cpFloat; | |
pub fn cpSimpleMotorSetRate(constraint: *mut cpConstraint, rate: cpFloat); | |
pub fn cpSpaceAlloc() -> *mut cpSpace; | |
pub fn cpSpaceInit(space: *mut cpSpace) -> *mut cpSpace; | |
pub fn cpSpaceNew() -> *mut cpSpace; | |
pub fn cpSpaceDestroy(space: *mut cpSpace); | |
pub fn cpSpaceFree(space: *mut cpSpace); | |
pub fn cpSpaceGetIterations(space: *cpSpace) -> ::libc::c_int; | |
pub fn cpSpaceSetIterations(space: *mut cpSpace, | |
iterations: ::libc::c_int); | |
pub fn cpSpaceGetGravity(space: *cpSpace) -> cpVect; | |
pub fn cpSpaceSetGravity(space: *mut cpSpace, gravity: cpVect); | |
pub fn cpSpaceGetDamping(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceSetDamping(space: *mut cpSpace, damping: cpFloat); | |
pub fn cpSpaceGetIdleSpeedThreshold(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceSetIdleSpeedThreshold(space: *mut cpSpace, | |
idleSpeedThreshold: cpFloat); | |
pub fn cpSpaceGetSleepTimeThreshold(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceSetSleepTimeThreshold(space: *mut cpSpace, | |
sleepTimeThreshold: cpFloat); | |
pub fn cpSpaceGetCollisionSlop(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceSetCollisionSlop(space: *mut cpSpace, | |
collisionSlop: cpFloat); | |
pub fn cpSpaceGetCollisionBias(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceSetCollisionBias(space: *mut cpSpace, | |
collisionBias: cpFloat); | |
pub fn cpSpaceGetCollisionPersistence(space: *cpSpace) -> cpTimestamp; | |
pub fn cpSpaceSetCollisionPersistence(space: *mut cpSpace, | |
collisionPersistence: cpTimestamp); | |
pub fn cpSpaceGetUserData(space: *cpSpace) -> cpDataPointer; | |
pub fn cpSpaceSetUserData(space: *mut cpSpace, userData: cpDataPointer); | |
pub fn cpSpaceGetStaticBody(space: *cpSpace) -> *mut cpBody; | |
pub fn cpSpaceGetCurrentTimeStep(space: *cpSpace) -> cpFloat; | |
pub fn cpSpaceIsLocked(space: *mut cpSpace) -> cpBool; | |
pub fn cpSpaceAddDefaultCollisionHandler(space: *mut cpSpace) -> | |
*mut cpCollisionHandler; | |
pub fn cpSpaceAddCollisionHandler(space: *mut cpSpace, a: cpCollisionType, | |
b: cpCollisionType) -> | |
*mut cpCollisionHandler; | |
pub fn cpSpaceAddWildcardHandler(space: *mut cpSpace, | |
_type: cpCollisionType) -> | |
*mut cpCollisionHandler; | |
pub fn cpSpaceAddShape(space: *mut cpSpace, shape: *mut cpShape) -> | |
*mut cpShape; | |
pub fn cpSpaceAddBody(space: *mut cpSpace, body: *mut cpBody) -> | |
*mut cpBody; | |
pub fn cpSpaceAddConstraint(space: *mut cpSpace, | |
constraint: *mut cpConstraint) -> | |
*mut cpConstraint; | |
pub fn cpSpaceRemoveShape(space: *mut cpSpace, shape: *mut cpShape); | |
pub fn cpSpaceRemoveBody(space: *mut cpSpace, body: *mut cpBody); | |
pub fn cpSpaceRemoveConstraint(space: *mut cpSpace, | |
constraint: *mut cpConstraint); | |
pub fn cpSpaceContainsShape(space: *mut cpSpace, shape: *mut cpShape) -> | |
cpBool; | |
pub fn cpSpaceContainsBody(space: *mut cpSpace, body: *mut cpBody) -> | |
cpBool; | |
pub fn cpSpaceContainsConstraint(space: *mut cpSpace, | |
constraint: *mut cpConstraint) -> cpBool; | |
pub fn cpSpaceAddPostStepCallback(space: *mut cpSpace, | |
func: cpPostStepFunc, | |
key: *mut ::libc::c_void, | |
data: *mut ::libc::c_void) -> cpBool; | |
pub fn cpSpacePointQuery(space: *mut cpSpace, point: cpVect, | |
maxDistance: cpFloat, filter: cpShapeFilter, | |
func: cpSpacePointQueryFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpacePointQueryNearest(space: *mut cpSpace, point: cpVect, | |
maxDistance: cpFloat, | |
filter: cpShapeFilter, | |
out: *mut cpPointQueryInfo) -> | |
*mut cpShape; | |
pub fn cpSpaceSegmentQuery(space: *mut cpSpace, start: cpVect, | |
end: cpVect, radius: cpFloat, | |
filter: cpShapeFilter, | |
func: cpSpaceSegmentQueryFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpaceSegmentQueryFirst(space: *mut cpSpace, start: cpVect, | |
end: cpVect, radius: cpFloat, | |
filter: cpShapeFilter, | |
out: *mut cpSegmentQueryInfo) -> | |
*mut cpShape; | |
pub fn cpSpaceBBQuery(space: *mut cpSpace, bb: cpBB, | |
filter: cpShapeFilter, func: cpSpaceBBQueryFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpaceShapeQuery(space: *mut cpSpace, shape: *mut cpShape, | |
func: cpSpaceShapeQueryFunc, | |
data: *mut ::libc::c_void) -> cpBool; | |
pub fn cpSpaceEachBody(space: *mut cpSpace, func: cpSpaceBodyIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpaceEachShape(space: *mut cpSpace, | |
func: cpSpaceShapeIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpaceEachConstraint(space: *mut cpSpace, | |
func: cpSpaceConstraintIteratorFunc, | |
data: *mut ::libc::c_void); | |
pub fn cpSpaceReindexStatic(space: *mut cpSpace); | |
pub fn cpSpaceReindexShape(space: *mut cpSpace, shape: *mut cpShape); | |
pub fn cpSpaceReindexShapesForBody(space: *mut cpSpace, | |
body: *mut cpBody); | |
pub fn cpSpaceUseSpatialHash(space: *mut cpSpace, dim: cpFloat, | |
count: ::libc::c_int); | |
pub fn cpSpaceStep(space: *mut cpSpace, dt: cpFloat); | |
pub fn cpSpaceDebugDraw(space: *mut cpSpace, | |
options: *mut cpSpaceDebugDrawOptions); | |
pub fn cpMomentForCircle(m: cpFloat, r1: cpFloat, r2: cpFloat, | |
offset: cpVect) -> cpFloat; | |
pub fn cpAreaForCircle(r1: cpFloat, r2: cpFloat) -> cpFloat; | |
pub fn cpMomentForSegment(m: cpFloat, a: cpVect, b: cpVect, | |
radius: cpFloat) -> cpFloat; | |
pub fn cpAreaForSegment(a: cpVect, b: cpVect, radius: cpFloat) -> cpFloat; | |
pub fn cpMomentForPoly(m: cpFloat, count: ::libc::c_int, verts: *cpVect, | |
offset: cpVect, radius: cpFloat) -> cpFloat; | |
pub fn cpAreaForPoly(count: ::libc::c_int, verts: *cpVect, | |
radius: cpFloat) -> cpFloat; | |
pub fn cpCentroidForPoly(count: ::libc::c_int, verts: *cpVect) -> cpVect; | |
pub fn cpMomentForBox(m: cpFloat, width: cpFloat, height: cpFloat) -> | |
cpFloat; | |
pub fn cpMomentForBox2(m: cpFloat, _box: cpBB) -> cpFloat; | |
pub fn cpConvexHull(count: ::libc::c_int, verts: *cpVect, | |
result: *mut cpVect, first: *mut ::libc::c_int, | |
tol: cpFloat) -> ::libc::c_int; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment