1use crate::shared::structs::*;
2use crate::shared::enums::KeyboardKey;
3
4pub type __gnuc_va_list = __builtin_va_list;
5pub type va_list = __builtin_va_list;
6pub type __builtin_va_list = [__va_list_tag; 1usize];
7#[repr(C)]
8#[derive(Debug, Copy, Clone)]
9pub struct __va_list_tag {
10 pub gp_offset: ::std::os::raw::c_uint,
11 pub fp_offset: ::std::os::raw::c_uint,
12 pub overflow_arg_area: *mut ::std::os::raw::c_void,
13 pub reg_save_area: *mut ::std::os::raw::c_void,
14}
15pub type TraceLogCallback = ::std::option::Option<
16 unsafe extern "C" fn(
17 logLevel: ::std::os::raw::c_int,
18 text: *const ::std::os::raw::c_char,
19 args: *mut __va_list_tag,
20 ),
21>;
22pub type LoadFileDataCallback = ::std::option::Option<
23 unsafe extern "C" fn(
24 fileName: *const ::std::os::raw::c_char,
25 dataSize: *mut ::std::os::raw::c_int,
26 ) -> *mut ::std::os::raw::c_uchar,
27>;
28pub type SaveFileDataCallback = ::std::option::Option<
29 unsafe extern "C" fn(
30 fileName: *const ::std::os::raw::c_char,
31 data: *mut ::std::os::raw::c_void,
32 dataSize: ::std::os::raw::c_int,
33 ) -> bool,
34>;
35pub type LoadFileTextCallback = ::std::option::Option<
36 unsafe extern "C" fn(fileName: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char,
37>;
38pub type SaveFileTextCallback = ::std::option::Option<
39 unsafe extern "C" fn(
40 fileName: *const ::std::os::raw::c_char,
41 text: *mut ::std::os::raw::c_char,
42 ) -> bool,
43>;
44extern "C" {
45 pub fn InitWindow(
46 width: ::std::os::raw::c_int,
47 height: ::std::os::raw::c_int,
48 title: *const ::std::os::raw::c_char,
49 );
50}
51extern "C" {
52 pub fn CloseWindow();
53}
54extern "C" {
55 pub fn WindowShouldClose() -> bool;
56}
57extern "C" {
58 pub fn IsWindowReady() -> bool;
59}
60extern "C" {
61 pub fn IsWindowFullscreen() -> bool;
62}
63extern "C" {
64 pub fn IsWindowHidden() -> bool;
65}
66extern "C" {
67 pub fn IsWindowMinimized() -> bool;
68}
69extern "C" {
70 pub fn IsWindowMaximized() -> bool;
71}
72extern "C" {
73 pub fn IsWindowFocused() -> bool;
74}
75extern "C" {
76 pub fn IsWindowResized() -> bool;
77}
78extern "C" {
79 pub fn IsWindowState(flag: ::std::os::raw::c_uint) -> bool;
80}
81extern "C" {
82 pub fn SetWindowState(flags: ::std::os::raw::c_uint);
83}
84extern "C" {
85 pub fn ClearWindowState(flags: ::std::os::raw::c_uint);
86}
87extern "C" {
88 pub fn ToggleFullscreen();
89}
90extern "C" {
91 pub fn ToggleBorderlessWindowed();
92}
93extern "C" {
94 pub fn MaximizeWindow();
95}
96extern "C" {
97 pub fn MinimizeWindow();
98}
99extern "C" {
100 pub fn RestoreWindow();
101}
102extern "C" {
103 pub fn SetWindowIcon(image: Image);
104}
105extern "C" {
106 pub fn SetWindowIcons(images: *mut Image, count: ::std::os::raw::c_int);
107}
108extern "C" {
109 pub fn SetWindowTitle(title: *const ::std::os::raw::c_char);
110}
111extern "C" {
112 pub fn SetWindowPosition(x: ::std::os::raw::c_int, y: ::std::os::raw::c_int);
113}
114extern "C" {
115 pub fn SetWindowMonitor(monitor: ::std::os::raw::c_int);
116}
117extern "C" {
118 pub fn SetWindowMinSize(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
119}
120extern "C" {
121 pub fn SetWindowMaxSize(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
122}
123extern "C" {
124 pub fn SetWindowSize(width: ::std::os::raw::c_int, height: ::std::os::raw::c_int);
125}
126extern "C" {
127 pub fn SetWindowOpacity(opacity: f32);
128}
129extern "C" {
130 pub fn SetWindowFocused();
131}
132extern "C" {
133 pub fn GetWindowHandle() -> *mut ::std::os::raw::c_void;
134}
135extern "C" {
136 pub fn GetScreenWidth() -> ::std::os::raw::c_int;
137}
138extern "C" {
139 pub fn GetScreenHeight() -> ::std::os::raw::c_int;
140}
141extern "C" {
142 pub fn GetRenderWidth() -> ::std::os::raw::c_int;
143}
144extern "C" {
145 pub fn GetRenderHeight() -> ::std::os::raw::c_int;
146}
147extern "C" {
148 pub fn GetMonitorCount() -> ::std::os::raw::c_int;
149}
150extern "C" {
151 pub fn GetCurrentMonitor() -> ::std::os::raw::c_int;
152}
153extern "C" {
154 pub fn GetMonitorPosition(monitor: ::std::os::raw::c_int) -> Vector2;
155}
156extern "C" {
157 pub fn GetMonitorWidth(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
158}
159extern "C" {
160 pub fn GetMonitorHeight(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
161}
162extern "C" {
163 pub fn GetMonitorPhysicalWidth(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
164}
165extern "C" {
166 pub fn GetMonitorPhysicalHeight(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
167}
168extern "C" {
169 pub fn GetMonitorRefreshRate(monitor: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
170}
171extern "C" {
172 pub fn GetWindowPosition() -> Vector2;
173}
174extern "C" {
175 pub fn GetWindowScaleDPI() -> Vector2;
176}
177extern "C" {
178 pub fn GetMonitorName(monitor: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
179}
180extern "C" {
181 pub fn SetClipboardText(text: *const ::std::os::raw::c_char);
182}
183extern "C" {
184 pub fn GetClipboardText() -> *const ::std::os::raw::c_char;
185}
186extern "C" {
187 pub fn EnableEventWaiting();
188}
189extern "C" {
190 pub fn DisableEventWaiting();
191}
192extern "C" {
193 pub fn ShowCursor();
194}
195extern "C" {
196 pub fn HideCursor();
197}
198extern "C" {
199 pub fn IsCursorHidden() -> bool;
200}
201extern "C" {
202 pub fn EnableCursor();
203}
204extern "C" {
205 pub fn DisableCursor();
206}
207extern "C" {
208 pub fn IsCursorOnScreen() -> bool;
209}
210extern "C" {
211 pub fn ClearBackground(color: Color);
212}
213extern "C" {
214 pub fn BeginDrawing();
215}
216extern "C" {
217 pub fn EndDrawing();
218}
219extern "C" {
220 pub fn BeginMode2D(camera: Camera2D);
221}
222extern "C" {
223 pub fn EndMode2D();
224}
225extern "C" {
226 pub fn BeginMode3D(camera: Camera3D);
227}
228extern "C" {
229 pub fn EndMode3D();
230}
231extern "C" {
232 pub fn BeginTextureMode(target: RenderTexture2D);
233}
234extern "C" {
235 pub fn EndTextureMode();
236}
237extern "C" {
238 pub fn BeginShaderMode(shader: Shader);
239}
240extern "C" {
241 pub fn EndShaderMode();
242}
243extern "C" {
244 pub fn BeginBlendMode(mode: ::std::os::raw::c_int);
245}
246extern "C" {
247 pub fn EndBlendMode();
248}
249extern "C" {
250 pub fn BeginScissorMode(
251 x: ::std::os::raw::c_int,
252 y: ::std::os::raw::c_int,
253 width: ::std::os::raw::c_int,
254 height: ::std::os::raw::c_int,
255 );
256}
257extern "C" {
258 pub fn EndScissorMode();
259}
260extern "C" {
261 pub fn BeginVrStereoMode(config: VrStereoConfig);
262}
263extern "C" {
264 pub fn EndVrStereoMode();
265}
266extern "C" {
267 pub fn LoadVrStereoConfig(device: VrDeviceInfo) -> VrStereoConfig;
268}
269extern "C" {
270 pub fn UnloadVrStereoConfig(config: VrStereoConfig);
271}
272extern "C" {
273 pub fn LoadShader(
274 vsFileName: *const ::std::os::raw::c_char,
275 fsFileName: *const ::std::os::raw::c_char,
276 ) -> Shader;
277}
278extern "C" {
279 pub fn LoadShaderFromMemory(
280 vsCode: *const ::std::os::raw::c_char,
281 fsCode: *const ::std::os::raw::c_char,
282 ) -> Shader;
283}
284extern "C" {
285 pub fn IsShaderReady(shader: Shader) -> bool;
286}
287extern "C" {
288 pub fn GetShaderLocation(
289 shader: Shader,
290 uniformName: *const ::std::os::raw::c_char,
291 ) -> ::std::os::raw::c_int;
292}
293extern "C" {
294 pub fn GetShaderLocationAttrib(
295 shader: Shader,
296 attribName: *const ::std::os::raw::c_char,
297 ) -> ::std::os::raw::c_int;
298}
299extern "C" {
300 pub fn SetShaderValue(
301 shader: Shader,
302 locIndex: ::std::os::raw::c_int,
303 value: *const ::std::os::raw::c_void,
304 uniformType: ::std::os::raw::c_int,
305 );
306}
307extern "C" {
308 pub fn SetShaderValueV(
309 shader: Shader,
310 locIndex: ::std::os::raw::c_int,
311 value: *const ::std::os::raw::c_void,
312 uniformType: ::std::os::raw::c_int,
313 count: ::std::os::raw::c_int,
314 );
315}
316extern "C" {
317 pub fn SetShaderValueMatrix(shader: Shader, locIndex: ::std::os::raw::c_int, mat: Matrix);
318}
319extern "C" {
320 pub fn SetShaderValueTexture(
321 shader: Shader,
322 locIndex: ::std::os::raw::c_int,
323 texture: Texture2D,
324 );
325}
326extern "C" {
327 pub fn UnloadShader(shader: Shader);
328}
329extern "C" {
330 pub fn GetMouseRay(mousePosition: Vector2, camera: Camera) -> Ray;
331}
332extern "C" {
333 pub fn GetCameraMatrix(camera: Camera) -> Matrix;
334}
335extern "C" {
336 pub fn GetCameraMatrix2D(camera: Camera2D) -> Matrix;
337}
338extern "C" {
339 pub fn GetWorldToScreen(position: Vector3, camera: Camera) -> Vector2;
340}
341extern "C" {
342 pub fn GetScreenToWorld2D(position: Vector2, camera: Camera2D) -> Vector2;
343}
344extern "C" {
345 pub fn GetWorldToScreenEx(
346 position: Vector3,
347 camera: Camera,
348 width: ::std::os::raw::c_int,
349 height: ::std::os::raw::c_int,
350 ) -> Vector2;
351}
352extern "C" {
353 pub fn GetWorldToScreen2D(position: Vector2, camera: Camera2D) -> Vector2;
354}
355extern "C" {
356 pub fn SetTargetFPS(fps: ::std::os::raw::c_int);
357}
358extern "C" {
359 pub fn GetFrameTime() -> f32;
360}
361extern "C" {
362 pub fn GetTime() -> f64;
363}
364extern "C" {
365 pub fn GetFPS() -> ::std::os::raw::c_int;
366}
367extern "C" {
368 pub fn SwapScreenBuffer();
369}
370extern "C" {
371 pub fn PollInputEvents();
372}
373extern "C" {
374 pub fn WaitTime(seconds: f64);
375}
376extern "C" {
377 pub fn SetRandomSeed(seed: ::std::os::raw::c_uint);
378}
379extern "C" {
380 pub fn GetRandomValue(
381 min: ::std::os::raw::c_int,
382 max: ::std::os::raw::c_int,
383 ) -> ::std::os::raw::c_int;
384}
385extern "C" {
386 pub fn LoadRandomSequence(
387 count: ::std::os::raw::c_uint,
388 min: ::std::os::raw::c_int,
389 max: ::std::os::raw::c_int,
390 ) -> *mut ::std::os::raw::c_int;
391}
392extern "C" {
393 pub fn UnloadRandomSequence(sequence: *mut ::std::os::raw::c_int);
394}
395extern "C" {
396 pub fn TakeScreenshot(fileName: *const ::std::os::raw::c_char);
397}
398extern "C" {
399 pub fn SetConfigFlags(flags: ::std::os::raw::c_uint);
400}
401extern "C" {
402 pub fn OpenURL(url: *const ::std::os::raw::c_char);
403}
404extern "C" {
405 pub fn TraceLog(logLevel: ::std::os::raw::c_int, text: *const ::std::os::raw::c_char, ...);
406}
407extern "C" {
408 pub fn SetTraceLogLevel(logLevel: ::std::os::raw::c_int);
409}
410extern "C" {
411 pub fn MemAlloc(size: ::std::os::raw::c_uint) -> *mut ::std::os::raw::c_void;
412}
413extern "C" {
414 pub fn MemRealloc(
415 ptr: *mut ::std::os::raw::c_void,
416 size: ::std::os::raw::c_uint,
417 ) -> *mut ::std::os::raw::c_void;
418}
419extern "C" {
420 pub fn MemFree(ptr: *mut ::std::os::raw::c_void);
421}
422extern "C" {
423 pub fn SetTraceLogCallback(callback: TraceLogCallback);
424}
425extern "C" {
426 pub fn SetLoadFileDataCallback(callback: LoadFileDataCallback);
427}
428extern "C" {
429 pub fn SetSaveFileDataCallback(callback: SaveFileDataCallback);
430}
431extern "C" {
432 pub fn SetLoadFileTextCallback(callback: LoadFileTextCallback);
433}
434extern "C" {
435 pub fn SetSaveFileTextCallback(callback: SaveFileTextCallback);
436}
437extern "C" {
438 pub fn LoadFileData(
439 fileName: *const ::std::os::raw::c_char,
440 dataSize: *mut ::std::os::raw::c_int,
441 ) -> *mut ::std::os::raw::c_uchar;
442}
443extern "C" {
444 pub fn UnloadFileData(data: *mut ::std::os::raw::c_uchar);
445}
446extern "C" {
447 pub fn SaveFileData(
448 fileName: *const ::std::os::raw::c_char,
449 data: *mut ::std::os::raw::c_void,
450 dataSize: ::std::os::raw::c_int,
451 ) -> bool;
452}
453extern "C" {
454 pub fn ExportDataAsCode(
455 data: *const ::std::os::raw::c_uchar,
456 dataSize: ::std::os::raw::c_int,
457 fileName: *const ::std::os::raw::c_char,
458 ) -> bool;
459}
460extern "C" {
461 pub fn LoadFileText(fileName: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
462}
463extern "C" {
464 pub fn UnloadFileText(text: *mut ::std::os::raw::c_char);
465}
466extern "C" {
467 pub fn SaveFileText(
468 fileName: *const ::std::os::raw::c_char,
469 text: *mut ::std::os::raw::c_char,
470 ) -> bool;
471}
472extern "C" {
473 pub fn FileExists(fileName: *const ::std::os::raw::c_char) -> bool;
474}
475extern "C" {
476 pub fn DirectoryExists(dirPath: *const ::std::os::raw::c_char) -> bool;
477}
478extern "C" {
479 pub fn IsFileExtension(
480 fileName: *const ::std::os::raw::c_char,
481 ext: *const ::std::os::raw::c_char,
482 ) -> bool;
483}
484extern "C" {
485 pub fn GetFileLength(fileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
486}
487extern "C" {
488 pub fn GetFileExtension(
489 fileName: *const ::std::os::raw::c_char,
490 ) -> *const ::std::os::raw::c_char;
491}
492extern "C" {
493 pub fn GetFileName(filePath: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
494}
495extern "C" {
496 pub fn GetFileNameWithoutExt(
497 filePath: *const ::std::os::raw::c_char,
498 ) -> *const ::std::os::raw::c_char;
499}
500extern "C" {
501 pub fn GetDirectoryPath(
502 filePath: *const ::std::os::raw::c_char,
503 ) -> *const ::std::os::raw::c_char;
504}
505extern "C" {
506 pub fn GetPrevDirectoryPath(
507 dirPath: *const ::std::os::raw::c_char,
508 ) -> *const ::std::os::raw::c_char;
509}
510extern "C" {
511 pub fn GetWorkingDirectory() -> *const ::std::os::raw::c_char;
512}
513extern "C" {
514 pub fn GetApplicationDirectory() -> *const ::std::os::raw::c_char;
515}
516extern "C" {
517 pub fn ChangeDirectory(dir: *const ::std::os::raw::c_char) -> bool;
518}
519extern "C" {
520 pub fn IsPathFile(path: *const ::std::os::raw::c_char) -> bool;
521}
522extern "C" {
523 pub fn LoadDirectoryFiles(dirPath: *const ::std::os::raw::c_char) -> FilePathList;
524}
525extern "C" {
526 pub fn LoadDirectoryFilesEx(
527 basePath: *const ::std::os::raw::c_char,
528 filter: *const ::std::os::raw::c_char,
529 scanSubdirs: bool,
530 ) -> FilePathList;
531}
532extern "C" {
533 pub fn UnloadDirectoryFiles(files: FilePathList);
534}
535extern "C" {
536 pub fn IsFileDropped() -> bool;
537}
538extern "C" {
539 pub fn LoadDroppedFiles() -> FilePathList;
540}
541extern "C" {
542 pub fn UnloadDroppedFiles(files: FilePathList);
543}
544extern "C" {
545 pub fn GetFileModTime(fileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
546}
547extern "C" {
548 pub fn CompressData(
549 data: *const ::std::os::raw::c_uchar,
550 dataSize: ::std::os::raw::c_int,
551 compDataSize: *mut ::std::os::raw::c_int,
552 ) -> *mut ::std::os::raw::c_uchar;
553}
554extern "C" {
555 pub fn DecompressData(
556 compData: *const ::std::os::raw::c_uchar,
557 compDataSize: ::std::os::raw::c_int,
558 dataSize: *mut ::std::os::raw::c_int,
559 ) -> *mut ::std::os::raw::c_uchar;
560}
561extern "C" {
562 pub fn EncodeDataBase64(
563 data: *const ::std::os::raw::c_uchar,
564 dataSize: ::std::os::raw::c_int,
565 outputSize: *mut ::std::os::raw::c_int,
566 ) -> *mut ::std::os::raw::c_char;
567}
568extern "C" {
569 pub fn DecodeDataBase64(
570 data: *const ::std::os::raw::c_uchar,
571 outputSize: *mut ::std::os::raw::c_int,
572 ) -> *mut ::std::os::raw::c_uchar;
573}
574extern "C" {
575 pub fn LoadAutomationEventList(fileName: *const ::std::os::raw::c_char) -> AutomationEventList;
576}
577extern "C" {
578 pub fn UnloadAutomationEventList(list: *mut AutomationEventList);
579}
580extern "C" {
581 pub fn ExportAutomationEventList(
582 list: AutomationEventList,
583 fileName: *const ::std::os::raw::c_char,
584 ) -> bool;
585}
586extern "C" {
587 pub fn SetAutomationEventList(list: *mut AutomationEventList);
588}
589extern "C" {
590 pub fn SetAutomationEventBaseFrame(frame: ::std::os::raw::c_int);
591}
592extern "C" {
593 pub fn StartAutomationEventRecording();
594}
595extern "C" {
596 pub fn StopAutomationEventRecording();
597}
598extern "C" {
599 pub fn PlayAutomationEvent(event: AutomationEvent);
600}
601
602extern "C" {
603 pub fn IsKeyPressed(key: KeyboardKey) -> bool;
604}
605extern "C" {
606 pub fn IsKeyPressedRepeat(key: KeyboardKey) -> bool;
607}
608extern "C" {
609 pub fn IsKeyDown(key: KeyboardKey) -> bool;
610}
611extern "C" {
612 pub fn IsKeyReleased(key: KeyboardKey) -> bool;
613}
614extern "C" {
615 pub fn IsKeyUp(key: KeyboardKey) -> bool;
616}
617extern "C" {
618 pub fn GetKeyPressed() -> KeyboardKey;
619}
620extern "C" {
621 pub fn GetCharPressed() -> KeyboardKey;
622}
623extern "C" {
624 pub fn SetExitKey(key: KeyboardKey);
625}
626
627extern "C" {
628 pub fn IsGamepadAvailable(gamepad: ::std::os::raw::c_int) -> bool;
629}
630extern "C" {
631 pub fn GetGamepadName(gamepad: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
632}
633extern "C" {
634 pub fn IsGamepadButtonPressed(
635 gamepad: ::std::os::raw::c_int,
636 button: ::std::os::raw::c_int,
637 ) -> bool;
638}
639extern "C" {
640 pub fn IsGamepadButtonDown(
641 gamepad: ::std::os::raw::c_int,
642 button: ::std::os::raw::c_int,
643 ) -> bool;
644}
645extern "C" {
646 pub fn IsGamepadButtonReleased(
647 gamepad: ::std::os::raw::c_int,
648 button: ::std::os::raw::c_int,
649 ) -> bool;
650}
651extern "C" {
652 pub fn IsGamepadButtonUp(gamepad: ::std::os::raw::c_int, button: ::std::os::raw::c_int)
653 -> bool;
654}
655extern "C" {
656 pub fn GetGamepadButtonPressed() -> ::std::os::raw::c_int;
657}
658extern "C" {
659 pub fn GetGamepadAxisCount(gamepad: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
660}
661extern "C" {
662 pub fn GetGamepadAxisMovement(
663 gamepad: ::std::os::raw::c_int,
664 axis: ::std::os::raw::c_int,
665 ) -> f32;
666}
667extern "C" {
668 pub fn SetGamepadMappings(mappings: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
669}
670extern "C" {
671 pub fn IsMouseButtonPressed(button: ::std::os::raw::c_int) -> bool;
672}
673extern "C" {
674 pub fn IsMouseButtonDown(button: ::std::os::raw::c_int) -> bool;
675}
676extern "C" {
677 pub fn IsMouseButtonReleased(button: ::std::os::raw::c_int) -> bool;
678}
679extern "C" {
680 pub fn IsMouseButtonUp(button: ::std::os::raw::c_int) -> bool;
681}
682extern "C" {
683 pub fn GetMouseX() -> ::std::os::raw::c_int;
684}
685extern "C" {
686 pub fn GetMouseY() -> ::std::os::raw::c_int;
687}
688extern "C" {
689 pub fn GetMousePosition() -> Vector2;
690}
691extern "C" {
692 pub fn GetMouseDelta() -> Vector2;
693}
694extern "C" {
695 pub fn SetMousePosition(x: ::std::os::raw::c_int, y: ::std::os::raw::c_int);
696}
697extern "C" {
698 pub fn SetMouseOffset(offsetX: ::std::os::raw::c_int, offsetY: ::std::os::raw::c_int);
699}
700extern "C" {
701 pub fn SetMouseScale(scaleX: f32, scaleY: f32);
702}
703extern "C" {
704 pub fn GetMouseWheelMove() -> f32;
705}
706extern "C" {
707 pub fn GetMouseWheelMoveV() -> Vector2;
708}
709extern "C" {
710 pub fn SetMouseCursor(cursor: ::std::os::raw::c_int);
711}
712extern "C" {
713 pub fn GetTouchX() -> ::std::os::raw::c_int;
714}
715extern "C" {
716 pub fn GetTouchY() -> ::std::os::raw::c_int;
717}
718extern "C" {
719 pub fn GetTouchPosition(index: ::std::os::raw::c_int) -> Vector2;
720}
721extern "C" {
722 pub fn GetTouchPointId(index: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
723}
724extern "C" {
725 pub fn GetTouchPointCount() -> ::std::os::raw::c_int;
726}
727extern "C" {
728 pub fn SetGesturesEnabled(flags: ::std::os::raw::c_uint);
729}
730extern "C" {
731 pub fn IsGestureDetected(gesture: ::std::os::raw::c_uint) -> bool;
732}
733extern "C" {
734 pub fn GetGestureDetected() -> ::std::os::raw::c_int;
735}
736extern "C" {
737 pub fn GetGestureHoldDuration() -> f32;
738}
739extern "C" {
740 pub fn GetGestureDragVector() -> Vector2;
741}
742extern "C" {
743 pub fn GetGestureDragAngle() -> f32;
744}
745extern "C" {
746 pub fn GetGesturePinchVector() -> Vector2;
747}
748extern "C" {
749 pub fn GetGesturePinchAngle() -> f32;
750}
751extern "C" {
752 pub fn UpdateCamera(camera: *mut Camera, mode: ::std::os::raw::c_int);
753}
754extern "C" {
755 pub fn UpdateCameraPro(camera: *mut Camera, movement: Vector3, rotation: Vector3, zoom: f32);
756}
757extern "C" {
758 pub fn SetShapesTexture(texture: Texture2D, source: Rectangle);
759}
760extern "C" {
761 pub fn DrawPixel(posX: ::std::os::raw::c_int, posY: ::std::os::raw::c_int, color: Color);
762}
763extern "C" {
764 pub fn DrawPixelV(position: Vector2, color: Color);
765}
766extern "C" {
767 pub fn DrawLine(
768 startPosX: ::std::os::raw::c_int,
769 startPosY: ::std::os::raw::c_int,
770 endPosX: ::std::os::raw::c_int,
771 endPosY: ::std::os::raw::c_int,
772 color: Color,
773 );
774}
775extern "C" {
776 pub fn DrawLineV(startPos: Vector2, endPos: Vector2, color: Color);
777}
778extern "C" {
779 pub fn DrawLineEx(startPos: Vector2, endPos: Vector2, thick: f32, color: Color);
780}
781extern "C" {
782 pub fn DrawLineStrip(points: *mut Vector2, pointCount: ::std::os::raw::c_int, color: Color);
783}
784extern "C" {
785 pub fn DrawLineBezier(startPos: Vector2, endPos: Vector2, thick: f32, color: Color);
786}
787extern "C" {
788 pub fn DrawCircle(
789 centerX: ::std::os::raw::c_int,
790 centerY: ::std::os::raw::c_int,
791 radius: f32,
792 color: Color,
793 );
794}
795extern "C" {
796 pub fn DrawCircleSector(
797 center: Vector2,
798 radius: f32,
799 startAngle: f32,
800 endAngle: f32,
801 segments: ::std::os::raw::c_int,
802 color: Color,
803 );
804}
805extern "C" {
806 pub fn DrawCircleSectorLines(
807 center: Vector2,
808 radius: f32,
809 startAngle: f32,
810 endAngle: f32,
811 segments: ::std::os::raw::c_int,
812 color: Color,
813 );
814}
815extern "C" {
816 pub fn DrawCircleGradient(
817 centerX: ::std::os::raw::c_int,
818 centerY: ::std::os::raw::c_int,
819 radius: f32,
820 color1: Color,
821 color2: Color,
822 );
823}
824extern "C" {
825 pub fn DrawCircleV(center: Vector2, radius: f32, color: Color);
826}
827extern "C" {
828 pub fn DrawCircleLines(
829 centerX: ::std::os::raw::c_int,
830 centerY: ::std::os::raw::c_int,
831 radius: f32,
832 color: Color,
833 );
834}
835extern "C" {
836 pub fn DrawCircleLinesV(center: Vector2, radius: f32, color: Color);
837}
838extern "C" {
839 pub fn DrawEllipse(
840 centerX: ::std::os::raw::c_int,
841 centerY: ::std::os::raw::c_int,
842 radiusH: f32,
843 radiusV: f32,
844 color: Color,
845 );
846}
847extern "C" {
848 pub fn DrawEllipseLines(
849 centerX: ::std::os::raw::c_int,
850 centerY: ::std::os::raw::c_int,
851 radiusH: f32,
852 radiusV: f32,
853 color: Color,
854 );
855}
856extern "C" {
857 pub fn DrawRing(
858 center: Vector2,
859 innerRadius: f32,
860 outerRadius: f32,
861 startAngle: f32,
862 endAngle: f32,
863 segments: ::std::os::raw::c_int,
864 color: Color,
865 );
866}
867extern "C" {
868 pub fn DrawRingLines(
869 center: Vector2,
870 innerRadius: f32,
871 outerRadius: f32,
872 startAngle: f32,
873 endAngle: f32,
874 segments: ::std::os::raw::c_int,
875 color: Color,
876 );
877}
878extern "C" {
879 pub fn DrawRectangle(
880 posX: ::std::os::raw::c_int,
881 posY: ::std::os::raw::c_int,
882 width: ::std::os::raw::c_int,
883 height: ::std::os::raw::c_int,
884 color: Color,
885 );
886}
887extern "C" {
888 pub fn DrawRectangleV(position: Vector2, size: Vector2, color: Color);
889}
890extern "C" {
891 pub fn DrawRectangleRec(rec: Rectangle, color: Color);
892}
893extern "C" {
894 pub fn DrawRectanglePro(rec: Rectangle, origin: Vector2, rotation: f32, color: Color);
895}
896extern "C" {
897 pub fn DrawRectangleGradientV(
898 posX: ::std::os::raw::c_int,
899 posY: ::std::os::raw::c_int,
900 width: ::std::os::raw::c_int,
901 height: ::std::os::raw::c_int,
902 color1: Color,
903 color2: Color,
904 );
905}
906extern "C" {
907 pub fn DrawRectangleGradientH(
908 posX: ::std::os::raw::c_int,
909 posY: ::std::os::raw::c_int,
910 width: ::std::os::raw::c_int,
911 height: ::std::os::raw::c_int,
912 color1: Color,
913 color2: Color,
914 );
915}
916extern "C" {
917 pub fn DrawRectangleGradientEx(
918 rec: Rectangle,
919 col1: Color,
920 col2: Color,
921 col3: Color,
922 col4: Color,
923 );
924}
925extern "C" {
926 pub fn DrawRectangleLines(
927 posX: ::std::os::raw::c_int,
928 posY: ::std::os::raw::c_int,
929 width: ::std::os::raw::c_int,
930 height: ::std::os::raw::c_int,
931 color: Color,
932 );
933}
934extern "C" {
935 pub fn DrawRectangleLinesEx(rec: Rectangle, lineThick: f32, color: Color);
936}
937extern "C" {
938 pub fn DrawRectangleRounded(
939 rec: Rectangle,
940 roundness: f32,
941 segments: ::std::os::raw::c_int,
942 color: Color,
943 );
944}
945extern "C" {
946 pub fn DrawRectangleRoundedLines(
947 rec: Rectangle,
948 roundness: f32,
949 segments: ::std::os::raw::c_int,
950 lineThick: f32,
951 color: Color,
952 );
953}
954extern "C" {
955 pub fn DrawTriangle(v1: Vector2, v2: Vector2, v3: Vector2, color: Color);
956}
957extern "C" {
958 pub fn DrawTriangleLines(v1: Vector2, v2: Vector2, v3: Vector2, color: Color);
959}
960extern "C" {
961 pub fn DrawTriangleFan(points: *mut Vector2, pointCount: ::std::os::raw::c_int, color: Color);
962}
963extern "C" {
964 pub fn DrawTriangleStrip(points: *mut Vector2, pointCount: ::std::os::raw::c_int, color: Color);
965}
966extern "C" {
967 pub fn DrawPoly(
968 center: Vector2,
969 sides: ::std::os::raw::c_int,
970 radius: f32,
971 rotation: f32,
972 color: Color,
973 );
974}
975extern "C" {
976 pub fn DrawPolyLines(
977 center: Vector2,
978 sides: ::std::os::raw::c_int,
979 radius: f32,
980 rotation: f32,
981 color: Color,
982 );
983}
984extern "C" {
985 pub fn DrawPolyLinesEx(
986 center: Vector2,
987 sides: ::std::os::raw::c_int,
988 radius: f32,
989 rotation: f32,
990 lineThick: f32,
991 color: Color,
992 );
993}
994extern "C" {
995 pub fn DrawSplineLinear(
996 points: *mut Vector2,
997 pointCount: ::std::os::raw::c_int,
998 thick: f32,
999 color: Color,
1000 );
1001}
1002extern "C" {
1003 pub fn DrawSplineBasis(
1004 points: *mut Vector2,
1005 pointCount: ::std::os::raw::c_int,
1006 thick: f32,
1007 color: Color,
1008 );
1009}
1010extern "C" {
1011 pub fn DrawSplineCatmullRom(
1012 points: *mut Vector2,
1013 pointCount: ::std::os::raw::c_int,
1014 thick: f32,
1015 color: Color,
1016 );
1017}
1018extern "C" {
1019 pub fn DrawSplineBezierQuadratic(
1020 points: *mut Vector2,
1021 pointCount: ::std::os::raw::c_int,
1022 thick: f32,
1023 color: Color,
1024 );
1025}
1026extern "C" {
1027 pub fn DrawSplineBezierCubic(
1028 points: *mut Vector2,
1029 pointCount: ::std::os::raw::c_int,
1030 thick: f32,
1031 color: Color,
1032 );
1033}
1034extern "C" {
1035 pub fn DrawSplineSegmentLinear(p1: Vector2, p2: Vector2, thick: f32, color: Color);
1036}
1037extern "C" {
1038 pub fn DrawSplineSegmentBasis(
1039 p1: Vector2,
1040 p2: Vector2,
1041 p3: Vector2,
1042 p4: Vector2,
1043 thick: f32,
1044 color: Color,
1045 );
1046}
1047extern "C" {
1048 pub fn DrawSplineSegmentCatmullRom(
1049 p1: Vector2,
1050 p2: Vector2,
1051 p3: Vector2,
1052 p4: Vector2,
1053 thick: f32,
1054 color: Color,
1055 );
1056}
1057extern "C" {
1058 pub fn DrawSplineSegmentBezierQuadratic(
1059 p1: Vector2,
1060 c2: Vector2,
1061 p3: Vector2,
1062 thick: f32,
1063 color: Color,
1064 );
1065}
1066extern "C" {
1067 pub fn DrawSplineSegmentBezierCubic(
1068 p1: Vector2,
1069 c2: Vector2,
1070 c3: Vector2,
1071 p4: Vector2,
1072 thick: f32,
1073 color: Color,
1074 );
1075}
1076extern "C" {
1077 pub fn GetSplinePointLinear(startPos: Vector2, endPos: Vector2, t: f32) -> Vector2;
1078}
1079extern "C" {
1080 pub fn GetSplinePointBasis(
1081 p1: Vector2,
1082 p2: Vector2,
1083 p3: Vector2,
1084 p4: Vector2,
1085 t: f32,
1086 ) -> Vector2;
1087}
1088extern "C" {
1089 pub fn GetSplinePointCatmullRom(
1090 p1: Vector2,
1091 p2: Vector2,
1092 p3: Vector2,
1093 p4: Vector2,
1094 t: f32,
1095 ) -> Vector2;
1096}
1097extern "C" {
1098 pub fn GetSplinePointBezierQuad(p1: Vector2, c2: Vector2, p3: Vector2, t: f32) -> Vector2;
1099}
1100extern "C" {
1101 pub fn GetSplinePointBezierCubic(
1102 p1: Vector2,
1103 c2: Vector2,
1104 c3: Vector2,
1105 p4: Vector2,
1106 t: f32,
1107 ) -> Vector2;
1108}
1109extern "C" {
1110 pub fn CheckCollisionRecs(rec1: Rectangle, rec2: Rectangle) -> bool;
1111}
1112extern "C" {
1113 pub fn CheckCollisionCircles(
1114 center1: Vector2,
1115 radius1: f32,
1116 center2: Vector2,
1117 radius2: f32,
1118 ) -> bool;
1119}
1120extern "C" {
1121 pub fn CheckCollisionCircleRec(center: Vector2, radius: f32, rec: Rectangle) -> bool;
1122}
1123extern "C" {
1124 pub fn CheckCollisionPointRec(point: Vector2, rec: Rectangle) -> bool;
1125}
1126extern "C" {
1127 pub fn CheckCollisionPointCircle(point: Vector2, center: Vector2, radius: f32) -> bool;
1128}
1129extern "C" {
1130 pub fn CheckCollisionPointTriangle(
1131 point: Vector2,
1132 p1: Vector2,
1133 p2: Vector2,
1134 p3: Vector2,
1135 ) -> bool;
1136}
1137extern "C" {
1138 pub fn CheckCollisionPointPoly(
1139 point: Vector2,
1140 points: *mut Vector2,
1141 pointCount: ::std::os::raw::c_int,
1142 ) -> bool;
1143}
1144extern "C" {
1145 pub fn CheckCollisionLines(
1146 startPos1: Vector2,
1147 endPos1: Vector2,
1148 startPos2: Vector2,
1149 endPos2: Vector2,
1150 collisionPoint: *mut Vector2,
1151 ) -> bool;
1152}
1153extern "C" {
1154 pub fn CheckCollisionPointLine(
1155 point: Vector2,
1156 p1: Vector2,
1157 p2: Vector2,
1158 threshold: ::std::os::raw::c_int,
1159 ) -> bool;
1160}
1161extern "C" {
1162 pub fn GetCollisionRec(rec1: Rectangle, rec2: Rectangle) -> Rectangle;
1163}
1164extern "C" {
1165 pub fn LoadImage(fileName: *const ::std::os::raw::c_char) -> Image;
1166}
1167extern "C" {
1168 pub fn LoadImageRaw(
1169 fileName: *const ::std::os::raw::c_char,
1170 width: ::std::os::raw::c_int,
1171 height: ::std::os::raw::c_int,
1172 format: ::std::os::raw::c_int,
1173 headerSize: ::std::os::raw::c_int,
1174 ) -> Image;
1175}
1176extern "C" {
1177 pub fn LoadImageSvg(
1178 fileNameOrString: *const ::std::os::raw::c_char,
1179 width: ::std::os::raw::c_int,
1180 height: ::std::os::raw::c_int,
1181 ) -> Image;
1182}
1183extern "C" {
1184 pub fn LoadImageAnim(
1185 fileName: *const ::std::os::raw::c_char,
1186 frames: *mut ::std::os::raw::c_int,
1187 ) -> Image;
1188}
1189extern "C" {
1190 pub fn LoadImageFromMemory(
1191 fileType: *const ::std::os::raw::c_char,
1192 fileData: *const ::std::os::raw::c_uchar,
1193 dataSize: ::std::os::raw::c_int,
1194 ) -> Image;
1195}
1196extern "C" {
1197 pub fn LoadImageFromTexture(texture: Texture2D) -> Image;
1198}
1199extern "C" {
1200 pub fn LoadImageFromScreen() -> Image;
1201}
1202extern "C" {
1203 pub fn IsImageReady(image: Image) -> bool;
1204}
1205extern "C" {
1206 pub fn UnloadImage(image: Image);
1207}
1208extern "C" {
1209 pub fn ExportImage(image: Image, fileName: *const ::std::os::raw::c_char) -> bool;
1210}
1211extern "C" {
1212 pub fn ExportImageToMemory(
1213 image: Image,
1214 fileType: *const ::std::os::raw::c_char,
1215 fileSize: *mut ::std::os::raw::c_int,
1216 ) -> *mut ::std::os::raw::c_uchar;
1217}
1218extern "C" {
1219 pub fn ExportImageAsCode(image: Image, fileName: *const ::std::os::raw::c_char) -> bool;
1220}
1221extern "C" {
1222 pub fn GenImageColor(
1223 width: ::std::os::raw::c_int,
1224 height: ::std::os::raw::c_int,
1225 color: Color,
1226 ) -> Image;
1227}
1228extern "C" {
1229 pub fn GenImageGradientLinear(
1230 width: ::std::os::raw::c_int,
1231 height: ::std::os::raw::c_int,
1232 direction: ::std::os::raw::c_int,
1233 start: Color,
1234 end: Color,
1235 ) -> Image;
1236}
1237extern "C" {
1238 pub fn GenImageGradientRadial(
1239 width: ::std::os::raw::c_int,
1240 height: ::std::os::raw::c_int,
1241 density: f32,
1242 inner: Color,
1243 outer: Color,
1244 ) -> Image;
1245}
1246extern "C" {
1247 pub fn GenImageGradientSquare(
1248 width: ::std::os::raw::c_int,
1249 height: ::std::os::raw::c_int,
1250 density: f32,
1251 inner: Color,
1252 outer: Color,
1253 ) -> Image;
1254}
1255extern "C" {
1256 pub fn GenImageChecked(
1257 width: ::std::os::raw::c_int,
1258 height: ::std::os::raw::c_int,
1259 checksX: ::std::os::raw::c_int,
1260 checksY: ::std::os::raw::c_int,
1261 col1: Color,
1262 col2: Color,
1263 ) -> Image;
1264}
1265extern "C" {
1266 pub fn GenImageWhiteNoise(
1267 width: ::std::os::raw::c_int,
1268 height: ::std::os::raw::c_int,
1269 factor: f32,
1270 ) -> Image;
1271}
1272extern "C" {
1273 pub fn GenImagePerlinNoise(
1274 width: ::std::os::raw::c_int,
1275 height: ::std::os::raw::c_int,
1276 offsetX: ::std::os::raw::c_int,
1277 offsetY: ::std::os::raw::c_int,
1278 scale: f32,
1279 ) -> Image;
1280}
1281extern "C" {
1282 pub fn GenImageCellular(
1283 width: ::std::os::raw::c_int,
1284 height: ::std::os::raw::c_int,
1285 tileSize: ::std::os::raw::c_int,
1286 ) -> Image;
1287}
1288extern "C" {
1289 pub fn GenImageText(
1290 width: ::std::os::raw::c_int,
1291 height: ::std::os::raw::c_int,
1292 text: *const ::std::os::raw::c_char,
1293 ) -> Image;
1294}
1295extern "C" {
1296 pub fn ImageCopy(image: Image) -> Image;
1297}
1298extern "C" {
1299 pub fn ImageFromImage(image: Image, rec: Rectangle) -> Image;
1300}
1301extern "C" {
1302 pub fn ImageText(
1303 text: *const ::std::os::raw::c_char,
1304 fontSize: ::std::os::raw::c_int,
1305 color: Color,
1306 ) -> Image;
1307}
1308extern "C" {
1309 pub fn ImageTextEx(
1310 font: Font,
1311 text: *const ::std::os::raw::c_char,
1312 fontSize: f32,
1313 spacing: f32,
1314 tint: Color,
1315 ) -> Image;
1316}
1317extern "C" {
1318 pub fn ImageFormat(image: *mut Image, newFormat: ::std::os::raw::c_int);
1319}
1320extern "C" {
1321 pub fn ImageToPOT(image: *mut Image, fill: Color);
1322}
1323extern "C" {
1324 pub fn ImageCrop(image: *mut Image, crop: Rectangle);
1325}
1326extern "C" {
1327 pub fn ImageAlphaCrop(image: *mut Image, threshold: f32);
1328}
1329extern "C" {
1330 pub fn ImageAlphaClear(image: *mut Image, color: Color, threshold: f32);
1331}
1332extern "C" {
1333 pub fn ImageAlphaMask(image: *mut Image, alphaMask: Image);
1334}
1335extern "C" {
1336 pub fn ImageAlphaPremultiply(image: *mut Image);
1337}
1338extern "C" {
1339 pub fn ImageBlurGaussian(image: *mut Image, blurSize: ::std::os::raw::c_int);
1340}
1341extern "C" {
1342 pub fn ImageResize(
1343 image: *mut Image,
1344 newWidth: ::std::os::raw::c_int,
1345 newHeight: ::std::os::raw::c_int,
1346 );
1347}
1348extern "C" {
1349 pub fn ImageResizeNN(
1350 image: *mut Image,
1351 newWidth: ::std::os::raw::c_int,
1352 newHeight: ::std::os::raw::c_int,
1353 );
1354}
1355extern "C" {
1356 pub fn ImageResizeCanvas(
1357 image: *mut Image,
1358 newWidth: ::std::os::raw::c_int,
1359 newHeight: ::std::os::raw::c_int,
1360 offsetX: ::std::os::raw::c_int,
1361 offsetY: ::std::os::raw::c_int,
1362 fill: Color,
1363 );
1364}
1365extern "C" {
1366 pub fn ImageMipmaps(image: *mut Image);
1367}
1368extern "C" {
1369 pub fn ImageDither(
1370 image: *mut Image,
1371 rBpp: ::std::os::raw::c_int,
1372 gBpp: ::std::os::raw::c_int,
1373 bBpp: ::std::os::raw::c_int,
1374 aBpp: ::std::os::raw::c_int,
1375 );
1376}
1377extern "C" {
1378 pub fn ImageFlipVertical(image: *mut Image);
1379}
1380extern "C" {
1381 pub fn ImageFlipHorizontal(image: *mut Image);
1382}
1383extern "C" {
1384 pub fn ImageRotate(image: *mut Image, degrees: ::std::os::raw::c_int);
1385}
1386extern "C" {
1387 pub fn ImageRotateCW(image: *mut Image);
1388}
1389extern "C" {
1390 pub fn ImageRotateCCW(image: *mut Image);
1391}
1392extern "C" {
1393 pub fn ImageColorTint(image: *mut Image, color: Color);
1394}
1395extern "C" {
1396 pub fn ImageColorInvert(image: *mut Image);
1397}
1398extern "C" {
1399 pub fn ImageColorGrayscale(image: *mut Image);
1400}
1401extern "C" {
1402 pub fn ImageColorContrast(image: *mut Image, contrast: f32);
1403}
1404extern "C" {
1405 pub fn ImageColorBrightness(image: *mut Image, brightness: ::std::os::raw::c_int);
1406}
1407extern "C" {
1408 pub fn ImageColorReplace(image: *mut Image, color: Color, replace: Color);
1409}
1410extern "C" {
1411 pub fn LoadImageColors(image: Image) -> *mut Color;
1412}
1413extern "C" {
1414 pub fn LoadImagePalette(
1415 image: Image,
1416 maxPaletteSize: ::std::os::raw::c_int,
1417 colorCount: *mut ::std::os::raw::c_int,
1418 ) -> *mut Color;
1419}
1420extern "C" {
1421 pub fn UnloadImageColors(colors: *mut Color);
1422}
1423extern "C" {
1424 pub fn UnloadImagePalette(colors: *mut Color);
1425}
1426extern "C" {
1427 pub fn GetImageAlphaBorder(image: Image, threshold: f32) -> Rectangle;
1428}
1429extern "C" {
1430 pub fn GetImageColor(image: Image, x: ::std::os::raw::c_int, y: ::std::os::raw::c_int)
1431 -> Color;
1432}
1433extern "C" {
1434 pub fn ImageClearBackground(dst: *mut Image, color: Color);
1435}
1436extern "C" {
1437 pub fn ImageDrawPixel(
1438 dst: *mut Image,
1439 posX: ::std::os::raw::c_int,
1440 posY: ::std::os::raw::c_int,
1441 color: Color,
1442 );
1443}
1444extern "C" {
1445 pub fn ImageDrawPixelV(dst: *mut Image, position: Vector2, color: Color);
1446}
1447extern "C" {
1448 pub fn ImageDrawLine(
1449 dst: *mut Image,
1450 startPosX: ::std::os::raw::c_int,
1451 startPosY: ::std::os::raw::c_int,
1452 endPosX: ::std::os::raw::c_int,
1453 endPosY: ::std::os::raw::c_int,
1454 color: Color,
1455 );
1456}
1457extern "C" {
1458 pub fn ImageDrawLineV(dst: *mut Image, start: Vector2, end: Vector2, color: Color);
1459}
1460extern "C" {
1461 pub fn ImageDrawCircle(
1462 dst: *mut Image,
1463 centerX: ::std::os::raw::c_int,
1464 centerY: ::std::os::raw::c_int,
1465 radius: ::std::os::raw::c_int,
1466 color: Color,
1467 );
1468}
1469extern "C" {
1470 pub fn ImageDrawCircleV(
1471 dst: *mut Image,
1472 center: Vector2,
1473 radius: ::std::os::raw::c_int,
1474 color: Color,
1475 );
1476}
1477extern "C" {
1478 pub fn ImageDrawCircleLines(
1479 dst: *mut Image,
1480 centerX: ::std::os::raw::c_int,
1481 centerY: ::std::os::raw::c_int,
1482 radius: ::std::os::raw::c_int,
1483 color: Color,
1484 );
1485}
1486extern "C" {
1487 pub fn ImageDrawCircleLinesV(
1488 dst: *mut Image,
1489 center: Vector2,
1490 radius: ::std::os::raw::c_int,
1491 color: Color,
1492 );
1493}
1494extern "C" {
1495 pub fn ImageDrawRectangle(
1496 dst: *mut Image,
1497 posX: ::std::os::raw::c_int,
1498 posY: ::std::os::raw::c_int,
1499 width: ::std::os::raw::c_int,
1500 height: ::std::os::raw::c_int,
1501 color: Color,
1502 );
1503}
1504extern "C" {
1505 pub fn ImageDrawRectangleV(dst: *mut Image, position: Vector2, size: Vector2, color: Color);
1506}
1507extern "C" {
1508 pub fn ImageDrawRectangleRec(dst: *mut Image, rec: Rectangle, color: Color);
1509}
1510extern "C" {
1511 pub fn ImageDrawRectangleLines(
1512 dst: *mut Image,
1513 rec: Rectangle,
1514 thick: ::std::os::raw::c_int,
1515 color: Color,
1516 );
1517}
1518extern "C" {
1519 pub fn ImageDraw(
1520 dst: *mut Image,
1521 src: Image,
1522 srcRec: Rectangle,
1523 dstRec: Rectangle,
1524 tint: Color,
1525 );
1526}
1527extern "C" {
1528 pub fn ImageDrawText(
1529 dst: *mut Image,
1530 text: *const ::std::os::raw::c_char,
1531 posX: ::std::os::raw::c_int,
1532 posY: ::std::os::raw::c_int,
1533 fontSize: ::std::os::raw::c_int,
1534 color: Color,
1535 );
1536}
1537extern "C" {
1538 pub fn ImageDrawTextEx(
1539 dst: *mut Image,
1540 font: Font,
1541 text: *const ::std::os::raw::c_char,
1542 position: Vector2,
1543 fontSize: f32,
1544 spacing: f32,
1545 tint: Color,
1546 );
1547}
1548extern "C" {
1549 pub fn LoadTexture(fileName: *const ::std::os::raw::c_char) -> Texture2D;
1550}
1551extern "C" {
1552 pub fn LoadTextureFromImage(image: Image) -> Texture2D;
1553}
1554extern "C" {
1555 pub fn LoadTextureCubemap(image: Image, layout: ::std::os::raw::c_int) -> TextureCubemap;
1556}
1557extern "C" {
1558 pub fn LoadRenderTexture(
1559 width: ::std::os::raw::c_int,
1560 height: ::std::os::raw::c_int,
1561 ) -> RenderTexture2D;
1562}
1563extern "C" {
1564 pub fn IsTextureReady(texture: Texture2D) -> bool;
1565}
1566extern "C" {
1567 pub fn UnloadTexture(texture: Texture2D);
1568}
1569extern "C" {
1570 pub fn IsRenderTextureReady(target: RenderTexture2D) -> bool;
1571}
1572extern "C" {
1573 pub fn UnloadRenderTexture(target: RenderTexture2D);
1574}
1575extern "C" {
1576 pub fn UpdateTexture(texture: Texture2D, pixels: *const ::std::os::raw::c_void);
1577}
1578extern "C" {
1579 pub fn UpdateTextureRec(
1580 texture: Texture2D,
1581 rec: Rectangle,
1582 pixels: *const ::std::os::raw::c_void,
1583 );
1584}
1585extern "C" {
1586 pub fn GenTextureMipmaps(texture: *mut Texture2D);
1587}
1588extern "C" {
1589 pub fn SetTextureFilter(texture: Texture2D, filter: ::std::os::raw::c_int);
1590}
1591extern "C" {
1592 pub fn SetTextureWrap(texture: Texture2D, wrap: ::std::os::raw::c_int);
1593}
1594extern "C" {
1595 pub fn DrawTexture(
1596 texture: Texture2D,
1597 posX: ::std::os::raw::c_int,
1598 posY: ::std::os::raw::c_int,
1599 tint: Color,
1600 );
1601}
1602extern "C" {
1603 pub fn DrawTextureV(texture: Texture2D, position: Vector2, tint: Color);
1604}
1605extern "C" {
1606 pub fn DrawTextureEx(
1607 texture: Texture2D,
1608 position: Vector2,
1609 rotation: f32,
1610 scale: f32,
1611 tint: Color,
1612 );
1613}
1614extern "C" {
1615 pub fn DrawTextureRec(texture: Texture2D, source: Rectangle, position: Vector2, tint: Color);
1616}
1617extern "C" {
1618 pub fn DrawTexturePro(
1619 texture: Texture2D,
1620 source: Rectangle,
1621 dest: Rectangle,
1622 origin: Vector2,
1623 rotation: f32,
1624 tint: Color,
1625 );
1626}
1627extern "C" {
1628 pub fn DrawTextureNPatch(
1629 texture: Texture2D,
1630 nPatchInfo: NPatchInfo,
1631 dest: Rectangle,
1632 origin: Vector2,
1633 rotation: f32,
1634 tint: Color,
1635 );
1636}
1637extern "C" {
1638 pub fn Fade(color: Color, alpha: f32) -> Color;
1639}
1640extern "C" {
1641 pub fn ColorToInt(color: Color) -> ::std::os::raw::c_int;
1642}
1643extern "C" {
1644 pub fn ColorNormalize(color: Color) -> Vector4;
1645}
1646extern "C" {
1647 pub fn ColorFromNormalized(normalized: Vector4) -> Color;
1648}
1649extern "C" {
1650 pub fn ColorToHSV(color: Color) -> Vector3;
1651}
1652extern "C" {
1653 pub fn ColorFromHSV(hue: f32, saturation: f32, value: f32) -> Color;
1654}
1655extern "C" {
1656 pub fn ColorTint(color: Color, tint: Color) -> Color;
1657}
1658extern "C" {
1659 pub fn ColorBrightness(color: Color, factor: f32) -> Color;
1660}
1661extern "C" {
1662 pub fn ColorContrast(color: Color, contrast: f32) -> Color;
1663}
1664extern "C" {
1665 pub fn ColorAlpha(color: Color, alpha: f32) -> Color;
1666}
1667extern "C" {
1668 pub fn ColorAlphaBlend(dst: Color, src: Color, tint: Color) -> Color;
1669}
1670extern "C" {
1671 pub fn GetColor(hexValue: ::std::os::raw::c_uint) -> Color;
1672}
1673extern "C" {
1674 pub fn GetPixelColor(
1675 srcPtr: *mut ::std::os::raw::c_void,
1676 format: ::std::os::raw::c_int,
1677 ) -> Color;
1678}
1679extern "C" {
1680 pub fn SetPixelColor(
1681 dstPtr: *mut ::std::os::raw::c_void,
1682 color: Color,
1683 format: ::std::os::raw::c_int,
1684 );
1685}
1686extern "C" {
1687 pub fn GetPixelDataSize(
1688 width: ::std::os::raw::c_int,
1689 height: ::std::os::raw::c_int,
1690 format: ::std::os::raw::c_int,
1691 ) -> ::std::os::raw::c_int;
1692}
1693extern "C" {
1694 pub fn GetFontDefault() -> Font;
1695}
1696extern "C" {
1697 pub fn LoadFont(fileName: *const ::std::os::raw::c_char) -> Font;
1698}
1699extern "C" {
1700 pub fn LoadFontEx(
1701 fileName: *const ::std::os::raw::c_char,
1702 fontSize: ::std::os::raw::c_int,
1703 codepoints: *mut ::std::os::raw::c_int,
1704 codepointCount: ::std::os::raw::c_int,
1705 ) -> Font;
1706}
1707extern "C" {
1708 pub fn LoadFontFromImage(image: Image, key: Color, firstChar: ::std::os::raw::c_int) -> Font;
1709}
1710extern "C" {
1711 pub fn LoadFontFromMemory(
1712 fileType: *const ::std::os::raw::c_char,
1713 fileData: *const ::std::os::raw::c_uchar,
1714 dataSize: ::std::os::raw::c_int,
1715 fontSize: ::std::os::raw::c_int,
1716 codepoints: *mut ::std::os::raw::c_int,
1717 codepointCount: ::std::os::raw::c_int,
1718 ) -> Font;
1719}
1720extern "C" {
1721 pub fn IsFontReady(font: Font) -> bool;
1722}
1723extern "C" {
1724 pub fn LoadFontData(
1725 fileData: *const ::std::os::raw::c_uchar,
1726 dataSize: ::std::os::raw::c_int,
1727 fontSize: ::std::os::raw::c_int,
1728 codepoints: *mut ::std::os::raw::c_int,
1729 codepointCount: ::std::os::raw::c_int,
1730 type_: ::std::os::raw::c_int,
1731 ) -> *mut GlyphInfo;
1732}
1733extern "C" {
1734 pub fn GenImageFontAtlas(
1735 glyphs: *const GlyphInfo,
1736 glyphRecs: *mut *mut Rectangle,
1737 glyphCount: ::std::os::raw::c_int,
1738 fontSize: ::std::os::raw::c_int,
1739 padding: ::std::os::raw::c_int,
1740 packMethod: ::std::os::raw::c_int,
1741 ) -> Image;
1742}
1743extern "C" {
1744 pub fn UnloadFontData(glyphs: *mut GlyphInfo, glyphCount: ::std::os::raw::c_int);
1745}
1746extern "C" {
1747 pub fn UnloadFont(font: Font);
1748}
1749extern "C" {
1750 pub fn ExportFontAsCode(font: Font, fileName: *const ::std::os::raw::c_char) -> bool;
1751}
1752extern "C" {
1753 pub fn DrawFPS(posX: ::std::os::raw::c_int, posY: ::std::os::raw::c_int);
1754}
1755extern "C" {
1756 pub fn DrawText(
1757 text: *const ::std::os::raw::c_char,
1758 posX: ::std::os::raw::c_int,
1759 posY: ::std::os::raw::c_int,
1760 fontSize: ::std::os::raw::c_int,
1761 color: Color,
1762 );
1763}
1764extern "C" {
1765 pub fn DrawTextEx(
1766 font: Font,
1767 text: *const ::std::os::raw::c_char,
1768 position: Vector2,
1769 fontSize: f32,
1770 spacing: f32,
1771 tint: Color,
1772 );
1773}
1774extern "C" {
1775 pub fn DrawTextPro(
1776 font: Font,
1777 text: *const ::std::os::raw::c_char,
1778 position: Vector2,
1779 origin: Vector2,
1780 rotation: f32,
1781 fontSize: f32,
1782 spacing: f32,
1783 tint: Color,
1784 );
1785}
1786extern "C" {
1787 pub fn DrawTextCodepoint(
1788 font: Font,
1789 codepoint: ::std::os::raw::c_int,
1790 position: Vector2,
1791 fontSize: f32,
1792 tint: Color,
1793 );
1794}
1795extern "C" {
1796 pub fn DrawTextCodepoints(
1797 font: Font,
1798 codepoints: *const ::std::os::raw::c_int,
1799 codepointCount: ::std::os::raw::c_int,
1800 position: Vector2,
1801 fontSize: f32,
1802 spacing: f32,
1803 tint: Color,
1804 );
1805}
1806extern "C" {
1807 pub fn SetTextLineSpacing(spacing: ::std::os::raw::c_int);
1808}
1809extern "C" {
1810 pub fn MeasureText(
1811 text: *const ::std::os::raw::c_char,
1812 fontSize: ::std::os::raw::c_int,
1813 ) -> ::std::os::raw::c_int;
1814}
1815extern "C" {
1816 pub fn MeasureTextEx(
1817 font: Font,
1818 text: *const ::std::os::raw::c_char,
1819 fontSize: f32,
1820 spacing: f32,
1821 ) -> Vector2;
1822}
1823extern "C" {
1824 pub fn GetGlyphIndex(font: Font, codepoint: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1825}
1826extern "C" {
1827 pub fn GetGlyphInfo(font: Font, codepoint: ::std::os::raw::c_int) -> GlyphInfo;
1828}
1829extern "C" {
1830 pub fn GetGlyphAtlasRec(font: Font, codepoint: ::std::os::raw::c_int) -> Rectangle;
1831}
1832extern "C" {
1833 pub fn LoadUTF8(
1834 codepoints: *const ::std::os::raw::c_int,
1835 length: ::std::os::raw::c_int,
1836 ) -> *mut ::std::os::raw::c_char;
1837}
1838extern "C" {
1839 pub fn UnloadUTF8(text: *mut ::std::os::raw::c_char);
1840}
1841extern "C" {
1842 pub fn LoadCodepoints(
1843 text: *const ::std::os::raw::c_char,
1844 count: *mut ::std::os::raw::c_int,
1845 ) -> *mut ::std::os::raw::c_int;
1846}
1847extern "C" {
1848 pub fn UnloadCodepoints(codepoints: *mut ::std::os::raw::c_int);
1849}
1850extern "C" {
1851 pub fn GetCodepointCount(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1852}
1853extern "C" {
1854 pub fn GetCodepoint(
1855 text: *const ::std::os::raw::c_char,
1856 codepointSize: *mut ::std::os::raw::c_int,
1857 ) -> ::std::os::raw::c_int;
1858}
1859extern "C" {
1860 pub fn GetCodepointNext(
1861 text: *const ::std::os::raw::c_char,
1862 codepointSize: *mut ::std::os::raw::c_int,
1863 ) -> ::std::os::raw::c_int;
1864}
1865extern "C" {
1866 pub fn GetCodepointPrevious(
1867 text: *const ::std::os::raw::c_char,
1868 codepointSize: *mut ::std::os::raw::c_int,
1869 ) -> ::std::os::raw::c_int;
1870}
1871extern "C" {
1872 pub fn CodepointToUTF8(
1873 codepoint: ::std::os::raw::c_int,
1874 utf8Size: *mut ::std::os::raw::c_int,
1875 ) -> *const ::std::os::raw::c_char;
1876}
1877extern "C" {
1878 pub fn TextCopy(
1879 dst: *mut ::std::os::raw::c_char,
1880 src: *const ::std::os::raw::c_char,
1881 ) -> ::std::os::raw::c_int;
1882}
1883extern "C" {
1884 pub fn TextIsEqual(
1885 text1: *const ::std::os::raw::c_char,
1886 text2: *const ::std::os::raw::c_char,
1887 ) -> bool;
1888}
1889extern "C" {
1890 pub fn TextLength(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_uint;
1891}
1892extern "C" {
1893 pub fn TextFormat(text: *const ::std::os::raw::c_char, ...) -> *const ::std::os::raw::c_char;
1894}
1895extern "C" {
1896 pub fn TextSubtext(
1897 text: *const ::std::os::raw::c_char,
1898 position: ::std::os::raw::c_int,
1899 length: ::std::os::raw::c_int,
1900 ) -> *const ::std::os::raw::c_char;
1901}
1902extern "C" {
1903 pub fn TextReplace(
1904 text: *mut ::std::os::raw::c_char,
1905 replace: *const ::std::os::raw::c_char,
1906 by: *const ::std::os::raw::c_char,
1907 ) -> *mut ::std::os::raw::c_char;
1908}
1909extern "C" {
1910 pub fn TextInsert(
1911 text: *const ::std::os::raw::c_char,
1912 insert: *const ::std::os::raw::c_char,
1913 position: ::std::os::raw::c_int,
1914 ) -> *mut ::std::os::raw::c_char;
1915}
1916extern "C" {
1917 pub fn TextJoin(
1918 textList: *mut *const ::std::os::raw::c_char,
1919 count: ::std::os::raw::c_int,
1920 delimiter: *const ::std::os::raw::c_char,
1921 ) -> *const ::std::os::raw::c_char;
1922}
1923extern "C" {
1924 pub fn TextSplit(
1925 text: *const ::std::os::raw::c_char,
1926 delimiter: ::std::os::raw::c_char,
1927 count: *mut ::std::os::raw::c_int,
1928 ) -> *mut *const ::std::os::raw::c_char;
1929}
1930extern "C" {
1931 pub fn TextAppend(
1932 text: *mut ::std::os::raw::c_char,
1933 append: *const ::std::os::raw::c_char,
1934 position: *mut ::std::os::raw::c_int,
1935 );
1936}
1937extern "C" {
1938 pub fn TextFindIndex(
1939 text: *const ::std::os::raw::c_char,
1940 find: *const ::std::os::raw::c_char,
1941 ) -> ::std::os::raw::c_int;
1942}
1943extern "C" {
1944 pub fn TextToUpper(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
1945}
1946extern "C" {
1947 pub fn TextToLower(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
1948}
1949extern "C" {
1950 pub fn TextToPascal(text: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char;
1951}
1952extern "C" {
1953 pub fn TextToInteger(text: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1954}
1955extern "C" {
1956 pub fn DrawLine3D(startPos: Vector3, endPos: Vector3, color: Color);
1957}
1958extern "C" {
1959 pub fn DrawPoint3D(position: Vector3, color: Color);
1960}
1961extern "C" {
1962 pub fn DrawCircle3D(
1963 center: Vector3,
1964 radius: f32,
1965 rotationAxis: Vector3,
1966 rotationAngle: f32,
1967 color: Color,
1968 );
1969}
1970extern "C" {
1971 pub fn DrawTriangle3D(v1: Vector3, v2: Vector3, v3: Vector3, color: Color);
1972}
1973extern "C" {
1974 pub fn DrawTriangleStrip3D(
1975 points: *mut Vector3,
1976 pointCount: ::std::os::raw::c_int,
1977 color: Color,
1978 );
1979}
1980extern "C" {
1981 pub fn DrawCube(position: Vector3, width: f32, height: f32, length: f32, color: Color);
1982}
1983extern "C" {
1984 pub fn DrawCubeV(position: Vector3, size: Vector3, color: Color);
1985}
1986extern "C" {
1987 pub fn DrawCubeWires(position: Vector3, width: f32, height: f32, length: f32, color: Color);
1988}
1989extern "C" {
1990 pub fn DrawCubeWiresV(position: Vector3, size: Vector3, color: Color);
1991}
1992extern "C" {
1993 pub fn DrawSphere(centerPos: Vector3, radius: f32, color: Color);
1994}
1995extern "C" {
1996 pub fn DrawSphereEx(
1997 centerPos: Vector3,
1998 radius: f32,
1999 rings: ::std::os::raw::c_int,
2000 slices: ::std::os::raw::c_int,
2001 color: Color,
2002 );
2003}
2004extern "C" {
2005 pub fn DrawSphereWires(
2006 centerPos: Vector3,
2007 radius: f32,
2008 rings: ::std::os::raw::c_int,
2009 slices: ::std::os::raw::c_int,
2010 color: Color,
2011 );
2012}
2013extern "C" {
2014 pub fn DrawCylinder(
2015 position: Vector3,
2016 radiusTop: f32,
2017 radiusBottom: f32,
2018 height: f32,
2019 slices: ::std::os::raw::c_int,
2020 color: Color,
2021 );
2022}
2023extern "C" {
2024 pub fn DrawCylinderEx(
2025 startPos: Vector3,
2026 endPos: Vector3,
2027 startRadius: f32,
2028 endRadius: f32,
2029 sides: ::std::os::raw::c_int,
2030 color: Color,
2031 );
2032}
2033extern "C" {
2034 pub fn DrawCylinderWires(
2035 position: Vector3,
2036 radiusTop: f32,
2037 radiusBottom: f32,
2038 height: f32,
2039 slices: ::std::os::raw::c_int,
2040 color: Color,
2041 );
2042}
2043extern "C" {
2044 pub fn DrawCylinderWiresEx(
2045 startPos: Vector3,
2046 endPos: Vector3,
2047 startRadius: f32,
2048 endRadius: f32,
2049 sides: ::std::os::raw::c_int,
2050 color: Color,
2051 );
2052}
2053extern "C" {
2054 pub fn DrawCapsule(
2055 startPos: Vector3,
2056 endPos: Vector3,
2057 radius: f32,
2058 slices: ::std::os::raw::c_int,
2059 rings: ::std::os::raw::c_int,
2060 color: Color,
2061 );
2062}
2063extern "C" {
2064 pub fn DrawCapsuleWires(
2065 startPos: Vector3,
2066 endPos: Vector3,
2067 radius: f32,
2068 slices: ::std::os::raw::c_int,
2069 rings: ::std::os::raw::c_int,
2070 color: Color,
2071 );
2072}
2073extern "C" {
2074 pub fn DrawPlane(centerPos: Vector3, size: Vector2, color: Color);
2075}
2076extern "C" {
2077 pub fn DrawRay(ray: Ray, color: Color);
2078}
2079extern "C" {
2080 pub fn DrawGrid(slices: ::std::os::raw::c_int, spacing: f32);
2081}
2082extern "C" {
2083 pub fn LoadModel(fileName: *const ::std::os::raw::c_char) -> Model;
2084}
2085extern "C" {
2086 pub fn LoadModelFromMesh(mesh: Mesh) -> Model;
2087}
2088extern "C" {
2089 pub fn IsModelReady(model: Model) -> bool;
2090}
2091extern "C" {
2092 pub fn UnloadModel(model: Model);
2093}
2094extern "C" {
2095 pub fn GetModelBoundingBox(model: Model) -> BoundingBox;
2096}
2097extern "C" {
2098 pub fn DrawModel(model: Model, position: Vector3, scale: f32, tint: Color);
2099}
2100extern "C" {
2101 pub fn DrawModelEx(
2102 model: Model,
2103 position: Vector3,
2104 rotationAxis: Vector3,
2105 rotationAngle: f32,
2106 scale: Vector3,
2107 tint: Color,
2108 );
2109}
2110extern "C" {
2111 pub fn DrawModelWires(model: Model, position: Vector3, scale: f32, tint: Color);
2112}
2113extern "C" {
2114 pub fn DrawModelWiresEx(
2115 model: Model,
2116 position: Vector3,
2117 rotationAxis: Vector3,
2118 rotationAngle: f32,
2119 scale: Vector3,
2120 tint: Color,
2121 );
2122}
2123extern "C" {
2124 pub fn DrawBoundingBox(box_: BoundingBox, color: Color);
2125}
2126extern "C" {
2127 pub fn DrawBillboard(
2128 camera: Camera,
2129 texture: Texture2D,
2130 position: Vector3,
2131 size: f32,
2132 tint: Color,
2133 );
2134}
2135extern "C" {
2136 pub fn DrawBillboardRec(
2137 camera: Camera,
2138 texture: Texture2D,
2139 source: Rectangle,
2140 position: Vector3,
2141 size: Vector2,
2142 tint: Color,
2143 );
2144}
2145extern "C" {
2146 pub fn DrawBillboardPro(
2147 camera: Camera,
2148 texture: Texture2D,
2149 source: Rectangle,
2150 position: Vector3,
2151 up: Vector3,
2152 size: Vector2,
2153 origin: Vector2,
2154 rotation: f32,
2155 tint: Color,
2156 );
2157}
2158extern "C" {
2159 pub fn UploadMesh(mesh: *mut Mesh, dynamic: bool);
2160}
2161extern "C" {
2162 pub fn UpdateMeshBuffer(
2163 mesh: Mesh,
2164 index: ::std::os::raw::c_int,
2165 data: *const ::std::os::raw::c_void,
2166 dataSize: ::std::os::raw::c_int,
2167 offset: ::std::os::raw::c_int,
2168 );
2169}
2170extern "C" {
2171 pub fn UnloadMesh(mesh: Mesh);
2172}
2173extern "C" {
2174 pub fn DrawMesh(mesh: Mesh, material: Material, transform: Matrix);
2175}
2176extern "C" {
2177 pub fn DrawMeshInstanced(
2178 mesh: Mesh,
2179 material: Material,
2180 transforms: *const Matrix,
2181 instances: ::std::os::raw::c_int,
2182 );
2183}
2184extern "C" {
2185 pub fn ExportMesh(mesh: Mesh, fileName: *const ::std::os::raw::c_char) -> bool;
2186}
2187extern "C" {
2188 pub fn GetMeshBoundingBox(mesh: Mesh) -> BoundingBox;
2189}
2190extern "C" {
2191 pub fn GenMeshTangents(mesh: *mut Mesh);
2192}
2193extern "C" {
2194 pub fn GenMeshPoly(sides: ::std::os::raw::c_int, radius: f32) -> Mesh;
2195}
2196extern "C" {
2197 pub fn GenMeshPlane(
2198 width: f32,
2199 length: f32,
2200 resX: ::std::os::raw::c_int,
2201 resZ: ::std::os::raw::c_int,
2202 ) -> Mesh;
2203}
2204extern "C" {
2205 pub fn GenMeshCube(width: f32, height: f32, length: f32) -> Mesh;
2206}
2207extern "C" {
2208 pub fn GenMeshSphere(
2209 radius: f32,
2210 rings: ::std::os::raw::c_int,
2211 slices: ::std::os::raw::c_int,
2212 ) -> Mesh;
2213}
2214extern "C" {
2215 pub fn GenMeshHemiSphere(
2216 radius: f32,
2217 rings: ::std::os::raw::c_int,
2218 slices: ::std::os::raw::c_int,
2219 ) -> Mesh;
2220}
2221extern "C" {
2222 pub fn GenMeshCylinder(radius: f32, height: f32, slices: ::std::os::raw::c_int) -> Mesh;
2223}
2224extern "C" {
2225 pub fn GenMeshCone(radius: f32, height: f32, slices: ::std::os::raw::c_int) -> Mesh;
2226}
2227extern "C" {
2228 pub fn GenMeshTorus(
2229 radius: f32,
2230 size: f32,
2231 radSeg: ::std::os::raw::c_int,
2232 sides: ::std::os::raw::c_int,
2233 ) -> Mesh;
2234}
2235extern "C" {
2236 pub fn GenMeshKnot(
2237 radius: f32,
2238 size: f32,
2239 radSeg: ::std::os::raw::c_int,
2240 sides: ::std::os::raw::c_int,
2241 ) -> Mesh;
2242}
2243extern "C" {
2244 pub fn GenMeshHeightmap(heightmap: Image, size: Vector3) -> Mesh;
2245}
2246extern "C" {
2247 pub fn GenMeshCubicmap(cubicmap: Image, cubeSize: Vector3) -> Mesh;
2248}
2249extern "C" {
2250 pub fn LoadMaterials(
2251 fileName: *const ::std::os::raw::c_char,
2252 materialCount: *mut ::std::os::raw::c_int,
2253 ) -> *mut Material;
2254}
2255extern "C" {
2256 pub fn LoadMaterialDefault() -> Material;
2257}
2258extern "C" {
2259 pub fn IsMaterialReady(material: Material) -> bool;
2260}
2261extern "C" {
2262 pub fn UnloadMaterial(material: Material);
2263}
2264extern "C" {
2265 pub fn SetMaterialTexture(
2266 material: *mut Material,
2267 mapType: ::std::os::raw::c_int,
2268 texture: Texture2D,
2269 );
2270}
2271extern "C" {
2272 pub fn SetModelMeshMaterial(
2273 model: *mut Model,
2274 meshId: ::std::os::raw::c_int,
2275 materialId: ::std::os::raw::c_int,
2276 );
2277}
2278extern "C" {
2279 pub fn LoadModelAnimations(
2280 fileName: *const ::std::os::raw::c_char,
2281 animCount: *mut ::std::os::raw::c_int,
2282 ) -> *mut ModelAnimation;
2283}
2284extern "C" {
2285 pub fn UpdateModelAnimation(model: Model, anim: ModelAnimation, frame: ::std::os::raw::c_int);
2286}
2287extern "C" {
2288 pub fn UnloadModelAnimation(anim: ModelAnimation);
2289}
2290extern "C" {
2291 pub fn UnloadModelAnimations(animations: *mut ModelAnimation, animCount: ::std::os::raw::c_int);
2292}
2293extern "C" {
2294 pub fn IsModelAnimationValid(model: Model, anim: ModelAnimation) -> bool;
2295}
2296extern "C" {
2297 pub fn CheckCollisionSpheres(
2298 center1: Vector3,
2299 radius1: f32,
2300 center2: Vector3,
2301 radius2: f32,
2302 ) -> bool;
2303}
2304extern "C" {
2305 pub fn CheckCollisionBoxes(box1: BoundingBox, box2: BoundingBox) -> bool;
2306}
2307extern "C" {
2308 pub fn CheckCollisionBoxSphere(box_: BoundingBox, center: Vector3, radius: f32) -> bool;
2309}
2310extern "C" {
2311 pub fn GetRayCollisionSphere(ray: Ray, center: Vector3, radius: f32) -> RayCollision;
2312}
2313extern "C" {
2314 pub fn GetRayCollisionBox(ray: Ray, box_: BoundingBox) -> RayCollision;
2315}
2316extern "C" {
2317 pub fn GetRayCollisionMesh(ray: Ray, mesh: Mesh, transform: Matrix) -> RayCollision;
2318}
2319extern "C" {
2320 pub fn GetRayCollisionTriangle(ray: Ray, p1: Vector3, p2: Vector3, p3: Vector3)
2321 -> RayCollision;
2322}
2323extern "C" {
2324 pub fn GetRayCollisionQuad(
2325 ray: Ray,
2326 p1: Vector3,
2327 p2: Vector3,
2328 p3: Vector3,
2329 p4: Vector3,
2330 ) -> RayCollision;
2331}
2332pub type AudioCallback = ::std::option::Option<
2333 unsafe extern "C" fn(bufferData: *mut ::std::os::raw::c_void, frames: ::std::os::raw::c_uint),
2334>;
2335extern "C" {
2336 pub fn InitAudioDevice();
2337}
2338extern "C" {
2339 pub fn CloseAudioDevice();
2340}
2341extern "C" {
2342 pub fn IsAudioDeviceReady() -> bool;
2343}
2344extern "C" {
2345 pub fn SetMasterVolume(volume: f32);
2346}
2347extern "C" {
2348 pub fn GetMasterVolume() -> f32;
2349}
2350extern "C" {
2351 pub fn LoadWave(fileName: *const ::std::os::raw::c_char) -> Wave;
2352}
2353extern "C" {
2354 pub fn LoadWaveFromMemory(
2355 fileType: *const ::std::os::raw::c_char,
2356 fileData: *const ::std::os::raw::c_uchar,
2357 dataSize: ::std::os::raw::c_int,
2358 ) -> Wave;
2359}
2360extern "C" {
2361 pub fn IsWaveReady(wave: Wave) -> bool;
2362}
2363extern "C" {
2364 pub fn LoadSound(fileName: *const ::std::os::raw::c_char) -> Sound;
2365}
2366extern "C" {
2367 pub fn LoadSoundFromWave(wave: Wave) -> Sound;
2368}
2369extern "C" {
2370 pub fn LoadSoundAlias(source: Sound) -> Sound;
2371}
2372extern "C" {
2373 pub fn IsSoundReady(sound: Sound) -> bool;
2374}
2375extern "C" {
2376 pub fn UpdateSound(
2377 sound: Sound,
2378 data: *const ::std::os::raw::c_void,
2379 sampleCount: ::std::os::raw::c_int,
2380 );
2381}
2382extern "C" {
2383 pub fn UnloadWave(wave: Wave);
2384}
2385extern "C" {
2386 pub fn UnloadSound(sound: Sound);
2387}
2388extern "C" {
2389 pub fn UnloadSoundAlias(alias: Sound);
2390}
2391extern "C" {
2392 pub fn ExportWave(wave: Wave, fileName: *const ::std::os::raw::c_char) -> bool;
2393}
2394extern "C" {
2395 pub fn ExportWaveAsCode(wave: Wave, fileName: *const ::std::os::raw::c_char) -> bool;
2396}
2397extern "C" {
2398 pub fn PlaySound(sound: Sound);
2399}
2400extern "C" {
2401 pub fn StopSound(sound: Sound);
2402}
2403extern "C" {
2404 pub fn PauseSound(sound: Sound);
2405}
2406extern "C" {
2407 pub fn ResumeSound(sound: Sound);
2408}
2409extern "C" {
2410 pub fn IsSoundPlaying(sound: Sound) -> bool;
2411}
2412extern "C" {
2413 pub fn SetSoundVolume(sound: Sound, volume: f32);
2414}
2415extern "C" {
2416 pub fn SetSoundPitch(sound: Sound, pitch: f32);
2417}
2418extern "C" {
2419 pub fn SetSoundPan(sound: Sound, pan: f32);
2420}
2421extern "C" {
2422 pub fn WaveCopy(wave: Wave) -> Wave;
2423}
2424extern "C" {
2425 pub fn WaveCrop(
2426 wave: *mut Wave,
2427 initSample: ::std::os::raw::c_int,
2428 finalSample: ::std::os::raw::c_int,
2429 );
2430}
2431extern "C" {
2432 pub fn WaveFormat(
2433 wave: *mut Wave,
2434 sampleRate: ::std::os::raw::c_int,
2435 sampleSize: ::std::os::raw::c_int,
2436 channels: ::std::os::raw::c_int,
2437 );
2438}
2439extern "C" {
2440 pub fn LoadWaveSamples(wave: Wave) -> *mut f32;
2441}
2442extern "C" {
2443 pub fn UnloadWaveSamples(samples: *mut f32);
2444}
2445extern "C" {
2446 pub fn LoadMusicStream(fileName: *const ::std::os::raw::c_char) -> Music;
2447}
2448extern "C" {
2449 pub fn LoadMusicStreamFromMemory(
2450 fileType: *const ::std::os::raw::c_char,
2451 data: *const ::std::os::raw::c_uchar,
2452 dataSize: ::std::os::raw::c_int,
2453 ) -> Music;
2454}
2455extern "C" {
2456 pub fn IsMusicReady(music: Music) -> bool;
2457}
2458extern "C" {
2459 pub fn UnloadMusicStream(music: Music);
2460}
2461extern "C" {
2462 pub fn PlayMusicStream(music: Music);
2463}
2464extern "C" {
2465 pub fn IsMusicStreamPlaying(music: Music) -> bool;
2466}
2467extern "C" {
2468 pub fn UpdateMusicStream(music: Music);
2469}
2470extern "C" {
2471 pub fn StopMusicStream(music: Music);
2472}
2473extern "C" {
2474 pub fn PauseMusicStream(music: Music);
2475}
2476extern "C" {
2477 pub fn ResumeMusicStream(music: Music);
2478}
2479extern "C" {
2480 pub fn SeekMusicStream(music: Music, position: f32);
2481}
2482extern "C" {
2483 pub fn SetMusicVolume(music: Music, volume: f32);
2484}
2485extern "C" {
2486 pub fn SetMusicPitch(music: Music, pitch: f32);
2487}
2488extern "C" {
2489 pub fn SetMusicPan(music: Music, pan: f32);
2490}
2491extern "C" {
2492 pub fn GetMusicTimeLength(music: Music) -> f32;
2493}
2494extern "C" {
2495 pub fn GetMusicTimePlayed(music: Music) -> f32;
2496}
2497extern "C" {
2498 pub fn LoadAudioStream(
2499 sampleRate: ::std::os::raw::c_uint,
2500 sampleSize: ::std::os::raw::c_uint,
2501 channels: ::std::os::raw::c_uint,
2502 ) -> AudioStream;
2503}
2504extern "C" {
2505 pub fn IsAudioStreamReady(stream: AudioStream) -> bool;
2506}
2507extern "C" {
2508 pub fn UnloadAudioStream(stream: AudioStream);
2509}
2510extern "C" {
2511 pub fn UpdateAudioStream(
2512 stream: AudioStream,
2513 data: *const ::std::os::raw::c_void,
2514 frameCount: ::std::os::raw::c_int,
2515 );
2516}
2517extern "C" {
2518 pub fn IsAudioStreamProcessed(stream: AudioStream) -> bool;
2519}
2520extern "C" {
2521 pub fn PlayAudioStream(stream: AudioStream);
2522}
2523extern "C" {
2524 pub fn PauseAudioStream(stream: AudioStream);
2525}
2526extern "C" {
2527 pub fn ResumeAudioStream(stream: AudioStream);
2528}
2529extern "C" {
2530 pub fn IsAudioStreamPlaying(stream: AudioStream) -> bool;
2531}
2532extern "C" {
2533 pub fn StopAudioStream(stream: AudioStream);
2534}
2535extern "C" {
2536 pub fn SetAudioStreamVolume(stream: AudioStream, volume: f32);
2537}
2538extern "C" {
2539 pub fn SetAudioStreamPitch(stream: AudioStream, pitch: f32);
2540}
2541extern "C" {
2542 pub fn SetAudioStreamPan(stream: AudioStream, pan: f32);
2543}
2544extern "C" {
2545 pub fn SetAudioStreamBufferSizeDefault(size: ::std::os::raw::c_int);
2546}
2547extern "C" {
2548 pub fn SetAudioStreamCallback(stream: AudioStream, callback: AudioCallback);
2549}
2550extern "C" {
2551 pub fn AttachAudioStreamProcessor(stream: AudioStream, processor: AudioCallback);
2552}
2553extern "C" {
2554 pub fn DetachAudioStreamProcessor(stream: AudioStream, processor: AudioCallback);
2555}
2556extern "C" {
2557 pub fn AttachAudioMixedProcessor(processor: AudioCallback);
2558}
2559extern "C" {
2560 pub fn DetachAudioMixedProcessor(processor: AudioCallback);
2561}
2562