1 module bindbc.raylib.binddynamic;
2 
3 version (BindBC_Static) {
4 } else version (BindRaylib_Static) {
5 } else {
6    version = BindRaylib_Dynamic;
7 }
8 
9 version (BindRaylib_Dynamic):
10 
11 import bindbc.loader;
12 import bindbc.raylib.types;
13 
14 extern (C) @nogc nothrow {
15    alias pInitWindow = void function(int width, int height, const(char)* title);
16    alias pCloseWindow = void function();
17    alias pWindowShouldClose = bool function();
18    alias pIsWindowReady = bool function();
19    alias pIsWindowFullscreen = bool function();
20    alias pIsWindowHidden = bool function();
21    alias pIsWindowMinimized = bool function();
22    alias pIsWindowMaximized = bool function();
23    alias pIsWindowFocused = bool function();
24    alias pIsWindowResized = bool function();
25    alias pIsWindowState = bool function(uint flag);
26    alias pSetWindowState = void function(uint flags);
27    alias pClearWindowState = void function(uint flags);
28    alias pToggleFullscreen = void function();
29    alias pToggleBorderlessWindowed = void function();
30    alias pMaximizeWindow = void function();
31    alias pMinimizeWindow = void function();
32    alias pRestoreWindow = void function();
33    alias pSetWindowIcon = void function(Image image);
34    alias pSetWindowIcons = void function(Image* images, int count);
35    alias pSetWindowTitle = void function(const(char)* title);
36    alias pSetWindowPosition = void function(int x, int y);
37    alias pSetWindowMonitor = void function(int monitor);
38    alias pSetWindowMinSize = void function(int width, int height);
39    alias pSetWindowMaxSize = void function(int width, int height);
40    alias pSetWindowSize = void function(int width, int height);
41    alias pSetWindowOpacity = void function(float opacity);
42    alias pSetWindowFocused = void function();
43    alias pGetWindowHandle = void* function();
44    alias pGetScreenWidth = int function();
45    alias pGetScreenHeight = int function();
46    alias pGetRenderWidth = int function();
47    alias pGetRenderHeight = int function();
48    alias pGetMonitorCount = int function();
49    alias pGetCurrentMonitor = int function();
50    alias pGetMonitorPosition = Vector2 function(int monitor);
51    alias pGetMonitorWidth = int function(int monitor);
52    alias pGetMonitorHeight = int function(int monitor);
53    alias pGetMonitorPhysicalWidth = int function(int monitor);
54    alias pGetMonitorPhysicalHeight = int function(int monitor);
55    alias pGetMonitorRefreshRate = int function(int monitor);
56    alias pGetWindowPosition = Vector2 function();
57    alias pGetWindowScaleDPI = Vector2 function();
58    alias pGetMonitorName = const(char)* function(int monitor);
59    alias pSetClipboardText = void function(const(char)* text);
60    alias pGetClipboardText = const(char)* function();
61    alias pEnableEventWaiting = void function();
62    alias pDisableEventWaiting = void function();
63    alias pShowCursor = void function();
64    alias pHideCursor = void function();
65    alias pIsCursorHidden = bool function();
66    alias pEnableCursor = void function();
67    alias pDisableCursor = void function();
68    alias pIsCursorOnScreen = bool function();
69    alias pClearBackground = void function(Color color);
70    alias pBeginDrawing = void function();
71    alias pEndDrawing = void function();
72    alias pBeginMode2D = void function(Camera2D camera);
73    alias pEndMode2D = void function();
74    alias pBeginMode3D = void function(Camera3D camera);
75    alias pEndMode3D = void function();
76    alias pBeginTextureMode = void function(RenderTexture2D target);
77    alias pEndTextureMode = void function();
78    alias pBeginShaderMode = void function(Shader shader);
79    alias pEndShaderMode = void function();
80    alias pBeginBlendMode = void function(int mode);
81    alias pEndBlendMode = void function();
82    alias pBeginScissorMode = void function(int x, int y, int width, int height);
83    alias pEndScissorMode = void function();
84    alias pBeginVrStereoMode = void function(VrStereoConfig config);
85    alias pEndVrStereoMode = void function();
86    alias pLoadVrStereoConfig = VrStereoConfig function(VrDeviceInfo device);
87    alias pUnloadVrStereoConfig = void function(VrStereoConfig config);
88    alias pLoadShader = Shader function(const(char)* vsFileName, const(char)* fsFileName);
89    alias pLoadShaderFromMemory = Shader function(const(char)* vsCode, const(char)* fsCode);
90    alias pIsShaderReady = bool function(Shader shader);
91    alias pGetShaderLocation = int function(Shader shader, const(char)* uniformName);
92    alias pGetShaderLocationAttrib = int function(Shader shader, const(char)* attribName);
93    alias pSetShaderValue = void function(Shader shader, int locIndex, const(void)* value, int uniformType);
94    alias pSetShaderValueV = void function(Shader shader, int locIndex, const(void)* value, int uniformType, int count);
95    alias pSetShaderValueMatrix = void function(Shader shader, int locIndex, Matrix mat);
96    alias pSetShaderValueTexture = void function(Shader shader, int locIndex, Texture2D texture);
97    alias pUnloadShader = void function(Shader shader);
98    alias pGetMouseRay = Ray function(Vector2 mousePosition, Camera camera);
99    alias pGetCameraMatrix = Matrix function(Camera camera);
100    alias pGetCameraMatrix2D = Matrix function(Camera2D camera);
101    alias pGetWorldToScreen = Vector2 function(Vector3 position, Camera camera);
102    alias pGetScreenToWorld2D = Vector2 function(Vector2 position, Camera2D camera);
103    alias pGetWorldToScreenEx = Vector2 function(Vector3 position, Camera camera, int width, int height);
104    alias pGetWorldToScreen2D = Vector2 function(Vector2 position, Camera2D camera);
105    alias pSetTargetFPS = void function(int fps);
106    alias pGetFrameTime = float function();
107    alias pGetTime = double function();
108    alias pGetFPS = int function();
109    alias pSwapScreenBuffer = void function();
110    alias pPollInputEvents = void function();
111    alias pWaitTime = void function(double seconds);
112    alias pSetRandomSeed = void function(uint seed);
113    alias pGetRandomValue = int function(int min, int max);
114    alias pLoadRandomSequence = int* function(uint count, int min, int max);
115    alias pUnloadRandomSequence = void function(int* sequence);
116    alias pTakeScreenshot = void function(const(char)* fileName);
117    alias pSetConfigFlags = void function(uint flags);
118    alias pOpenURL = void function(const(char)* url);
119    alias pSetTraceLogLevel = void function(int logLevel);
120    alias pMemAlloc = void* function(uint size);
121    alias pMemRealloc = void* function(void* ptr, uint size);
122    alias pMemFree = void function(void* ptr);
123    alias pLoadFileData = ubyte* function(const(char)* fileName, int* dataSize);
124    alias pUnloadFileData = void function(ubyte* data);
125    alias pSaveFileData = bool function(const(char)* fileName, void* data, int dataSize);
126    alias pExportDataAsCode = bool function(const(ubyte)* data, int dataSize, const(char)* fileName);
127    alias pLoadFileText = char* function(const(char)* fileName);
128    alias pUnloadFileText = void function(char* text);
129    alias pSaveFileText = bool function(const(char)* fileName, char* text);
130    alias pFileExists = bool function(const(char)* fileName);
131    alias pDirectoryExists = bool function(const(char)* dirPath);
132    alias pIsFileExtension = bool function(const(char)* fileName, const(char)* ext);
133    alias pGetFileLength = int function(const(char)* fileName);
134    alias pGetFileExtension = const(char)* function(const(char)* fileName);
135    alias pGetFileName = const(char)* function(const(char)* filePath);
136    alias pGetFileNameWithoutExt = const(char)* function(const(char)* filePath);
137    alias pGetDirectoryPath = const(char)* function(const(char)* filePath);
138    alias pGetPrevDirectoryPath = const(char)* function(const(char)* dirPath);
139    alias pGetWorkingDirectory = const(char)* function();
140    alias pGetApplicationDirectory = const(char)* function();
141    alias pChangeDirectory = bool function(const(char)* dir);
142    alias pIsPathFile = bool function(const(char)* path);
143    alias pLoadDirectoryFiles = FilePathList function(const(char)* dirPath);
144    alias pLoadDirectoryFilesEx = FilePathList function(const(char)* basePath, const(char)* filter, bool scanSubdirs);
145    alias pUnloadDirectoryFiles = void function(FilePathList files);
146    alias pIsFileDropped = bool function();
147    alias pLoadDroppedFiles = FilePathList function();
148    alias pUnloadDroppedFiles = void function(FilePathList files);
149    alias pGetFileModTime = long function(const(char)* fileName);
150    alias pCompressData = ubyte* function(const(ubyte)* data, int dataSize, int* compDataSize);
151    alias pDecompressData = ubyte* function(const(ubyte)* compData, int compDataSize, int* dataSize);
152    alias pEncodeDataBase64 = char* function(const(ubyte)* data, int dataSize, int* outputSize);
153    alias pDecodeDataBase64 = ubyte* function(const(ubyte)* data, int* outputSize);
154    alias pLoadAutomationEventList = AutomationEventList function(const(char)* fileName);
155    alias pUnloadAutomationEventList = void function(AutomationEventList* list);
156    alias pExportAutomationEventList = bool function(AutomationEventList list, const(char)* fileName);
157    alias pSetAutomationEventList = void function(AutomationEventList* list);
158    alias pSetAutomationEventBaseFrame = void function(int frame);
159    alias pStartAutomationEventRecording = void function();
160    alias pStopAutomationEventRecording = void function();
161    alias pPlayAutomationEvent = void function(AutomationEvent event);
162    alias pIsKeyPressed = bool function(int key);
163    alias pIsKeyPressedRepeat = bool function(int key);
164    alias pIsKeyDown = bool function(int key);
165    alias pIsKeyReleased = bool function(int key);
166    alias pIsKeyUp = bool function(int key);
167    alias pGetKeyPressed = int function();
168    alias pGetCharPressed = int function();
169    alias pSetExitKey = void function(int key);
170    alias pIsGamepadAvailable = bool function(int gamepad);
171    alias pGetGamepadName = const(char)* function(int gamepad);
172    alias pIsGamepadButtonPressed = bool function(int gamepad, int button);
173    alias pIsGamepadButtonDown = bool function(int gamepad, int button);
174    alias pIsGamepadButtonReleased = bool function(int gamepad, int button);
175    alias pIsGamepadButtonUp = bool function(int gamepad, int button);
176    alias pGetGamepadButtonPressed = int function();
177    alias pGetGamepadAxisCount = int function(int gamepad);
178    alias pGetGamepadAxisMovement = float function(int gamepad, int axis);
179    alias pSetGamepadMappings = int function(const(char)* mappings);
180    alias pIsMouseButtonPressed = bool function(int button);
181    alias pIsMouseButtonDown = bool function(int button);
182    alias pIsMouseButtonReleased = bool function(int button);
183    alias pIsMouseButtonUp = bool function(int button);
184    alias pGetMouseX = int function();
185    alias pGetMouseY = int function();
186    alias pGetMousePosition = Vector2 function();
187    alias pGetMouseDelta = Vector2 function();
188    alias pSetMousePosition = void function(int x, int y);
189    alias pSetMouseOffset = void function(int offsetX, int offsetY);
190    alias pSetMouseScale = void function(float scaleX, float scaleY);
191    alias pGetMouseWheelMove = float function();
192    alias pGetMouseWheelMoveV = Vector2 function();
193    alias pSetMouseCursor = void function(int cursor);
194    alias pGetTouchX = int function();
195    alias pGetTouchY = int function();
196    alias pGetTouchPosition = Vector2 function(int index);
197    alias pGetTouchPointId = int function(int index);
198    alias pGetTouchPointCount = int function();
199    alias pSetGesturesEnabled = void function(uint flags);
200    alias pIsGestureDetected = bool function(uint gesture);
201    alias pGetGestureDetected = int function();
202    alias pGetGestureHoldDuration = float function();
203    alias pGetGestureDragVector = Vector2 function();
204    alias pGetGestureDragAngle = float function();
205    alias pGetGesturePinchVector = Vector2 function();
206    alias pGetGesturePinchAngle = float function();
207    alias pUpdateCamera = void function(Camera* camera, int mode);
208    alias pUpdateCameraPro = void function(Camera* camera, Vector3 movement, Vector3 rotation, float zoom);
209    alias pSetShapesTexture = void function(Texture2D texture, Rectangle source);
210    alias pDrawPixel = void function(int posX, int posY, Color color);
211    alias pDrawPixelV = void function(Vector2 position, Color color);
212    alias pDrawLine = void function(int startPosX, int startPosY, int endPosX, int endPosY, Color color);
213    alias pDrawLineV = void function(Vector2 startPos, Vector2 endPos, Color color);
214    alias pDrawLineEx = void function(Vector2 startPos, Vector2 endPos, float thick, Color color);
215    alias pDrawLineStrip = void function(Vector2* points, int pointCount, Color color);
216    alias pDrawLineBezier = void function(Vector2 startPos, Vector2 endPos, float thick, Color color);
217    alias pDrawCircle = void function(int centerX, int centerY, float radius, Color color);
218    alias pDrawCircleSector = void function(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color);
219    alias pDrawCircleSectorLines = void function(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color);
220    alias pDrawCircleGradient = void function(int centerX, int centerY, float radius, Color color1, Color color2);
221    alias pDrawCircleV = void function(Vector2 center, float radius, Color color);
222    alias pDrawCircleLines = void function(int centerX, int centerY, float radius, Color color);
223    alias pDrawCircleLinesV = void function(Vector2 center, float radius, Color color);
224    alias pDrawEllipse = void function(int centerX, int centerY, float radiusH, float radiusV, Color color);
225    alias pDrawEllipseLines = void function(int centerX, int centerY, float radiusH, float radiusV, Color color);
226    alias pDrawRing = void function(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color);
227    alias pDrawRingLines = void function(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color);
228    alias pDrawRectangle = void function(int posX, int posY, int width, int height, Color color);
229    alias pDrawRectangleV = void function(Vector2 position, Vector2 size, Color color);
230    alias pDrawRectangleRec = void function(Rectangle rec, Color color);
231    alias pDrawRectanglePro = void function(Rectangle rec, Vector2 origin, float rotation, Color color);
232    alias pDrawRectangleGradientV = void function(int posX, int posY, int width, int height, Color color1, Color color2);
233    alias pDrawRectangleGradientH = void function(int posX, int posY, int width, int height, Color color1, Color color2);
234    alias pDrawRectangleGradientEx = void function(Rectangle rec, Color col1, Color col2, Color col3, Color col4);
235    alias pDrawRectangleLines = void function(int posX, int posY, int width, int height, Color color);
236    alias pDrawRectangleLinesEx = void function(Rectangle rec, float lineThick, Color color);
237    alias pDrawRectangleRounded = void function(Rectangle rec, float roundness, int segments, Color color);
238    alias pDrawRectangleRoundedLines = void function(Rectangle rec, float roundness, int segments, float lineThick, Color color);
239    alias pDrawTriangle = void function(Vector2 v1, Vector2 v2, Vector2 v3, Color color);
240    alias pDrawTriangleLines = void function(Vector2 v1, Vector2 v2, Vector2 v3, Color color);
241    alias pDrawTriangleFan = void function(Vector2* points, int pointCount, Color color);
242    alias pDrawTriangleStrip = void function(Vector2* points, int pointCount, Color color);
243    alias pDrawPoly = void function(Vector2 center, int sides, float radius, float rotation, Color color);
244    alias pDrawPolyLines = void function(Vector2 center, int sides, float radius, float rotation, Color color);
245    alias pDrawPolyLinesEx = void function(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color);
246    alias pDrawSplineLinear = void function(Vector2* points, int pointCount, float thick, Color color);
247    alias pDrawSplineBasis = void function(Vector2* points, int pointCount, float thick, Color color);
248    alias pDrawSplineCatmullRom = void function(Vector2* points, int pointCount, float thick, Color color);
249    alias pDrawSplineBezierQuadratic = void function(Vector2* points, int pointCount, float thick, Color color);
250    alias pDrawSplineBezierCubic = void function(Vector2* points, int pointCount, float thick, Color color);
251    alias pDrawSplineSegmentLinear = void function(Vector2 p1, Vector2 p2, float thick, Color color);
252    alias pDrawSplineSegmentBasis = void function(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color);
253    alias pDrawSplineSegmentCatmullRom = void function(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color);
254    alias pDrawSplineSegmentBezierQuadratic = void function(Vector2 p1, Vector2 c2, Vector2 p3, float thick, Color color);
255    alias pDrawSplineSegmentBezierCubic = void function(Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float thick, Color color);
256    alias pGetSplinePointLinear = Vector2 function(Vector2 startPos, Vector2 endPos, float t);
257    alias pGetSplinePointBasis = Vector2 function(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t);
258    alias pGetSplinePointCatmullRom = Vector2 function(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t);
259    alias pGetSplinePointBezierQuad = Vector2 function(Vector2 p1, Vector2 c2, Vector2 p3, float t);
260    alias pGetSplinePointBezierCubic = Vector2 function(Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float t);
261    alias pCheckCollisionRecs = bool function(Rectangle rec1, Rectangle rec2);
262    alias pCheckCollisionCircles = bool function(Vector2 center1, float radius1, Vector2 center2, float radius2);
263    alias pCheckCollisionCircleRec = bool function(Vector2 center, float radius, Rectangle rec);
264    alias pCheckCollisionPointRec = bool function(Vector2 point, Rectangle rec);
265    alias pCheckCollisionPointCircle = bool function(Vector2 point, Vector2 center, float radius);
266    alias pCheckCollisionPointTriangle = bool function(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3);
267    alias pCheckCollisionPointPoly = bool function(Vector2 point, Vector2* points, int pointCount);
268    alias pCheckCollisionLines = bool function(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2* collisionPoint);
269    alias pCheckCollisionPointLine = bool function(Vector2 point, Vector2 p1, Vector2 p2, int threshold);
270    alias pGetCollisionRec = Rectangle function(Rectangle rec1, Rectangle rec2);
271    alias pLoadImage = Image function(const(char)* fileName);
272    alias pLoadImageRaw = Image function(const(char)* fileName, int width, int height, int format, int headerSize);
273    alias pLoadImageSvg = Image function(const(char)* fileNameOrString, int width, int height);
274    alias pLoadImageAnim = Image function(const(char)* fileName, int* frames);
275    alias pLoadImageFromMemory = Image function(const(char)* fileType, const(ubyte)* fileData, int dataSize);
276    alias pLoadImageFromTexture = Image function(Texture2D texture);
277    alias pLoadImageFromScreen = Image function();
278    alias pIsImageReady = bool function(Image image);
279    alias pUnloadImage = void function(Image image);
280    alias pExportImage = bool function(Image image, const(char)* fileName);
281    alias pExportImageToMemory = ubyte* function(Image image, const(char)* fileType, int* fileSize);
282    alias pExportImageAsCode = bool function(Image image, const(char)* fileName);
283    alias pGenImageColor = Image function(int width, int height, Color color);
284    alias pGenImageGradientLinear = Image function(int width, int height, int direction, Color start, Color end);
285    alias pGenImageGradientRadial = Image function(int width, int height, float density, Color inner, Color outer);
286    alias pGenImageGradientSquare = Image function(int width, int height, float density, Color inner, Color outer);
287    alias pGenImageChecked = Image function(int width, int height, int checksX, int checksY, Color col1, Color col2);
288    alias pGenImageWhiteNoise = Image function(int width, int height, float factor);
289    alias pGenImagePerlinNoise = Image function(int width, int height, int offsetX, int offsetY, float scale);
290    alias pGenImageCellular = Image function(int width, int height, int tileSize);
291    alias pGenImageText = Image function(int width, int height, const(char)* text);
292    alias pImageCopy = Image function(Image image);
293    alias pImageFromImage = Image function(Image image, Rectangle rec);
294    alias pImageText = Image function(const(char)* text, int fontSize, Color color);
295    alias pImageTextEx = Image function(Font font, const(char)* text, float fontSize, float spacing, Color tint);
296    alias pImageFormat = void function(Image* image, int newFormat);
297    alias pImageToPOT = void function(Image* image, Color fill);
298    alias pImageCrop = void function(Image* image, Rectangle crop);
299    alias pImageAlphaCrop = void function(Image* image, float threshold);
300    alias pImageAlphaClear = void function(Image* image, Color color, float threshold);
301    alias pImageAlphaMask = void function(Image* image, Image alphaMask);
302    alias pImageAlphaPremultiply = void function(Image* image);
303    alias pImageBlurGaussian = void function(Image* image, int blurSize);
304    alias pImageResize = void function(Image* image, int newWidth, int newHeight);
305    alias pImageResizeNN = void function(Image* image, int newWidth, int newHeight);
306    alias pImageResizeCanvas = void function(Image* image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill);
307    alias pImageMipmaps = void function(Image* image);
308    alias pImageDither = void function(Image* image, int rBpp, int gBpp, int bBpp, int aBpp);
309    alias pImageFlipVertical = void function(Image* image);
310    alias pImageFlipHorizontal = void function(Image* image);
311    alias pImageRotate = void function(Image* image, int degrees);
312    alias pImageRotateCW = void function(Image* image);
313    alias pImageRotateCCW = void function(Image* image);
314    alias pImageColorTint = void function(Image* image, Color color);
315    alias pImageColorInvert = void function(Image* image);
316    alias pImageColorGrayscale = void function(Image* image);
317    alias pImageColorContrast = void function(Image* image, float contrast);
318    alias pImageColorBrightness = void function(Image* image, int brightness);
319    alias pImageColorReplace = void function(Image* image, Color color, Color replace);
320    alias pLoadImageColors = Color* function(Image image);
321    alias pLoadImagePalette = Color* function(Image image, int maxPaletteSize, int* colorCount);
322    alias pUnloadImageColors = void function(Color* colors);
323    alias pUnloadImagePalette = void function(Color* colors);
324    alias pGetImageAlphaBorder = Rectangle function(Image image, float threshold);
325    alias pGetImageColor = Color function(Image image, int x, int y);
326    alias pImageClearBackground = void function(Image* dst, Color color);
327    alias pImageDrawPixel = void function(Image* dst, int posX, int posY, Color color);
328    alias pImageDrawPixelV = void function(Image* dst, Vector2 position, Color color);
329    alias pImageDrawLine = void function(Image* dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color);
330    alias pImageDrawLineV = void function(Image* dst, Vector2 start, Vector2 end, Color color);
331    alias pImageDrawCircle = void function(Image* dst, int centerX, int centerY, int radius, Color color);
332    alias pImageDrawCircleV = void function(Image* dst, Vector2 center, int radius, Color color);
333    alias pImageDrawCircleLines = void function(Image* dst, int centerX, int centerY, int radius, Color color);
334    alias pImageDrawCircleLinesV = void function(Image* dst, Vector2 center, int radius, Color color);
335    alias pImageDrawRectangle = void function(Image* dst, int posX, int posY, int width, int height, Color color);
336    alias pImageDrawRectangleV = void function(Image* dst, Vector2 position, Vector2 size, Color color);
337    alias pImageDrawRectangleRec = void function(Image* dst, Rectangle rec, Color color);
338    alias pImageDrawRectangleLines = void function(Image* dst, Rectangle rec, int thick, Color color);
339    alias pImageDraw = void function(Image* dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint);
340    alias pImageDrawText = void function(Image* dst, const(char)* text, int posX, int posY, int fontSize, Color color);
341    alias pImageDrawTextEx = void function(Image* dst, Font font, const(char)* text, Vector2 position, float fontSize, float spacing, Color tint);
342    alias pLoadTexture = Texture2D function(const(char)* fileName);
343    alias pLoadTextureFromImage = Texture2D function(Image image);
344    alias pLoadTextureCubemap = TextureCubemap function(Image image, int layout);
345    alias pLoadRenderTexture = RenderTexture2D function(int width, int height);
346    alias pIsTextureReady = bool function(Texture2D texture);
347    alias pUnloadTexture = void function(Texture2D texture);
348    alias pIsRenderTextureReady = bool function(RenderTexture2D target);
349    alias pUnloadRenderTexture = void function(RenderTexture2D target);
350    alias pUpdateTexture = void function(Texture2D texture, const(void)* pixels);
351    alias pUpdateTextureRec = void function(Texture2D texture, Rectangle rec, const(void)* pixels);
352    alias pGenTextureMipmaps = void function(Texture2D* texture);
353    alias pSetTextureFilter = void function(Texture2D texture, int filter);
354    alias pSetTextureWrap = void function(Texture2D texture, int wrap);
355    alias pDrawTexture = void function(Texture2D texture, int posX, int posY, Color tint);
356    alias pDrawTextureV = void function(Texture2D texture, Vector2 position, Color tint);
357    alias pDrawTextureEx = void function(Texture2D texture, Vector2 position, float rotation, float scale, Color tint);
358    alias pDrawTextureRec = void function(Texture2D texture, Rectangle source, Vector2 position, Color tint);
359    alias pDrawTexturePro = void function(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint);
360    alias pDrawTextureNPatch = void function(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint);
361    alias pFade = Color function(Color color, float alpha);
362    alias pColorToInt = int function(Color color);
363    alias pColorNormalize = Vector4 function(Color color);
364    alias pColorFromNormalized = Color function(Vector4 normalized);
365    alias pColorToHSV = Vector3 function(Color color);
366    alias pColorFromHSV = Color function(float hue, float saturation, float value);
367    alias pColorTint = Color function(Color color, Color tint);
368    alias pColorBrightness = Color function(Color color, float factor);
369    alias pColorContrast = Color function(Color color, float contrast);
370    alias pColorAlpha = Color function(Color color, float alpha);
371    alias pColorAlphaBlend = Color function(Color dst, Color src, Color tint);
372    alias pGetColor = Color function(uint hexValue);
373    alias pGetPixelColor = Color function(void* srcPtr, int format);
374    alias pSetPixelColor = void function(void* dstPtr, Color color, int format);
375    alias pGetPixelDataSize = int function(int width, int height, int format);
376    alias pGetFontDefault = Font function();
377    alias pLoadFont = Font function(const(char)* fileName);
378    alias pLoadFontEx = Font function(const(char)* fileName, int fontSize, int* codepoints, int codepointCount);
379    alias pLoadFontFromImage = Font function(Image image, Color key, int firstChar);
380    alias pLoadFontFromMemory = Font function(const(char)* fileType, const(ubyte)* fileData, int dataSize, int fontSize, int* codepoints, int codepointCount);
381    alias pIsFontReady = bool function(Font font);
382    alias pLoadFontData = GlyphInfo* function(const(ubyte)* fileData, int dataSize, int fontSize, int* codepoints, int codepointCount, int type);
383    alias pGenImageFontAtlas = Image function(const GlyphInfo* glyphs, Rectangle** glyphRecs, int glyphCount, int fontSize, int padding, int packMethod);
384    alias pUnloadFontData = void function(GlyphInfo* glyphs, int glyphCount);
385    alias pUnloadFont = void function(Font font);
386    alias pExportFontAsCode = bool function(Font font, const(char)* fileName);
387    alias pDrawFPS = void function(int posX, int posY);
388    alias pDrawText = void function(const(char)* text, int posX, int posY, int fontSize, Color color);
389    alias pDrawTextEx = void function(Font font, const(char)* text, Vector2 position, float fontSize, float spacing, Color tint);
390    alias pDrawTextPro = void function(Font font, const(char)* text, Vector2 position, Vector2 origin, float rotation, float fontSize, float spacing, Color tint);
391    alias pDrawTextCodepoint = void function(Font font, int codepoint, Vector2 position, float fontSize, Color tint);
392    alias pDrawTextCodepoints = void function(Font font, const(int)* codepoints, int codepointCount, Vector2 position, float fontSize, float spacing, Color tint);
393    alias pSetTextLineSpacing = void function(int spacing);
394    alias pMeasureText = int function(const(char)* text, int fontSize);
395    alias pMeasureTextEx = Vector2 function(Font font, const(char)* text, float fontSize, float spacing);
396    alias pGetGlyphIndex = int function(Font font, int codepoint);
397    alias pGetGlyphInfo = GlyphInfo function(Font font, int codepoint);
398    alias pGetGlyphAtlasRec = Rectangle function(Font font, int codepoint);
399    alias pLoadUTF8 = char* function(const(int)* codepoints, int length);
400    alias pUnloadUTF8 = void function(char* text);
401    alias pLoadCodepoints = int* function(const(char)* text, int* count);
402    alias pUnloadCodepoints = void function(int* codepoints);
403    alias pGetCodepointCount = int function(const(char)* text);
404    alias pGetCodepoint = int function(const(char)* text, int* codepointSize);
405    alias pGetCodepointNext = int function(const(char)* text, int* codepointSize);
406    alias pGetCodepointPrevious = int function(const(char)* text, int* codepointSize);
407    alias pCodepointToUTF8 = const(char)* function(int codepoint, int* utf8Size);
408    alias pTextCopy = int function(char* dst, const(char)* src);
409    alias pTextIsEqual = bool function(const(char)* text1, const(char)* text2);
410    alias pTextLength = uint function(const(char)* text);
411    alias pTextSubtext = const(char)* function(const(char)* text, int position, int length);
412    alias pTextReplace = char* function(char* text, const(char)* replace, const(char)* by);
413    alias pTextInsert = char* function(const(char)* text, const(char)* insert, int position);
414    alias pTextJoin = const(char)* function(const(char*)* textList, int count, const(char)* delimiter);
415    alias pTextSplit = const(char*)* function(const(char)* text, char delimiter, int* count);
416    alias pTextAppend = void function(char* text, const(char)* append, int* position);
417    alias pTextFindIndex = int function(const(char)* text, const(char)* find);
418    alias pTextToUpper = const(char)* function(const(char)* text);
419    alias pTextToLower = const(char)* function(const(char)* text);
420    alias pTextToPascal = const(char)* function(const(char)* text);
421    alias pTextToInteger = int function(const(char)* text);
422    alias pDrawLine3D = void function(Vector3 startPos, Vector3 endPos, Color color);
423    alias pDrawPoint3D = void function(Vector3 position, Color color);
424    alias pDrawCircle3D = void function(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color);
425    alias pDrawTriangle3D = void function(Vector3 v1, Vector3 v2, Vector3 v3, Color color);
426    alias pDrawTriangleStrip3D = void function(Vector3* points, int pointCount, Color color);
427    alias pDrawCube = void function(Vector3 position, float width, float height, float length, Color color);
428    alias pDrawCubeV = void function(Vector3 position, Vector3 size, Color color);
429    alias pDrawCubeWires = void function(Vector3 position, float width, float height, float length, Color color);
430    alias pDrawCubeWiresV = void function(Vector3 position, Vector3 size, Color color);
431    alias pDrawSphere = void function(Vector3 centerPos, float radius, Color color);
432    alias pDrawSphereEx = void function(Vector3 centerPos, float radius, int rings, int slices, Color color);
433    alias pDrawSphereWires = void function(Vector3 centerPos, float radius, int rings, int slices, Color color);
434    alias pDrawCylinder = void function(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color);
435    alias pDrawCylinderEx = void function(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color);
436    alias pDrawCylinderWires = void function(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color);
437    alias pDrawCylinderWiresEx = void function(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color);
438    alias pDrawCapsule = void function(Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color);
439    alias pDrawCapsuleWires = void function(Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color);
440    alias pDrawPlane = void function(Vector3 centerPos, Vector2 size, Color color);
441    alias pDrawRay = void function(Ray ray, Color color);
442    alias pDrawGrid = void function(int slices, float spacing);
443    alias pLoadModel = Model function(const(char)* fileName);
444    alias pLoadModelFromMesh = Model function(Mesh mesh);
445    alias pIsModelReady = bool function(Model model);
446    alias pUnloadModel = void function(Model model);
447    alias pGetModelBoundingBox = BoundingBox function(Model model);
448    alias pDrawModel = void function(Model model, Vector3 position, float scale, Color tint);
449    alias pDrawModelEx = void function(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint);
450    alias pDrawModelWires = void function(Model model, Vector3 position, float scale, Color tint);
451    alias pDrawModelWiresEx = void function(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint);
452    alias pDrawBoundingBox = void function(BoundingBox box, Color color);
453    alias pDrawBillboard = void function(Camera camera, Texture2D texture, Vector3 position, float size, Color tint);
454    alias pDrawBillboardRec = void function(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint);
455    alias pDrawBillboardPro = void function(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint);
456    alias pUploadMesh = void function(Mesh* mesh, bool dynamic);
457    alias pUpdateMeshBuffer = void function(Mesh mesh, int index, const(void)* data, int dataSize, int offset);
458    alias pUnloadMesh = void function(Mesh mesh);
459    alias pDrawMesh = void function(Mesh mesh, Material material, Matrix transform);
460    alias pDrawMeshInstanced = void function(Mesh mesh, Material material, const Matrix* transforms, int instances);
461    alias pExportMesh = bool function(Mesh mesh, const(char)* fileName);
462    alias pGetMeshBoundingBox = BoundingBox function(Mesh mesh);
463    alias pGenMeshTangents = void function(Mesh* mesh);
464    alias pGenMeshPoly = Mesh function(int sides, float radius);
465    alias pGenMeshPlane = Mesh function(float width, float length, int resX, int resZ);
466    alias pGenMeshCube = Mesh function(float width, float height, float length);
467    alias pGenMeshSphere = Mesh function(float radius, int rings, int slices);
468    alias pGenMeshHemiSphere = Mesh function(float radius, int rings, int slices);
469    alias pGenMeshCylinder = Mesh function(float radius, float height, int slices);
470    alias pGenMeshCone = Mesh function(float radius, float height, int slices);
471    alias pGenMeshTorus = Mesh function(float radius, float size, int radSeg, int sides);
472    alias pGenMeshKnot = Mesh function(float radius, float size, int radSeg, int sides);
473    alias pGenMeshHeightmap = Mesh function(Image heightmap, Vector3 size);
474    alias pGenMeshCubicmap = Mesh function(Image cubicmap, Vector3 cubeSize);
475    alias pLoadMaterials = Material* function(const(char)* fileName, int* materialCount);
476    alias pLoadMaterialDefault = Material function();
477    alias pIsMaterialReady = bool function(Material material);
478    alias pUnloadMaterial = void function(Material material);
479    alias pSetMaterialTexture = void function(Material* material, int mapType, Texture2D texture);
480    alias pSetModelMeshMaterial = void function(Model* model, int meshId, int materialId);
481    alias pLoadModelAnimations = ModelAnimation* function(const(char)* fileName, int* animCount);
482    alias pUpdateModelAnimation = void function(Model model, ModelAnimation anim, int frame);
483    alias pUnloadModelAnimation = void function(ModelAnimation anim);
484    alias pUnloadModelAnimations = void function(ModelAnimation* animations, int animCount);
485    alias pIsModelAnimationValid = bool function(Model model, ModelAnimation anim);
486    alias pCheckCollisionSpheres = bool function(Vector3 center1, float radius1, Vector3 center2, float radius2);
487    alias pCheckCollisionBoxes = bool function(BoundingBox box1, BoundingBox box2);
488    alias pCheckCollisionBoxSphere = bool function(BoundingBox box, Vector3 center, float radius);
489    alias pGetRayCollisionSphere = RayCollision function(Ray ray, Vector3 center, float radius);
490    alias pGetRayCollisionBox = RayCollision function(Ray ray, BoundingBox box);
491    alias pGetRayCollisionMesh = RayCollision function(Ray ray, Mesh mesh, Matrix transform);
492    alias pGetRayCollisionTriangle = RayCollision function(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3);
493    alias pGetRayCollisionQuad = RayCollision function(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4);
494    alias pInitAudioDevice = void function();
495    alias pCloseAudioDevice = void function();
496    alias pIsAudioDeviceReady = bool function();
497    alias pSetMasterVolume = void function(float volume);
498    alias pGetMasterVolume = float function();
499    alias pLoadWave = Wave function(const(char)* fileName);
500    alias pLoadWaveFromMemory = Wave function(const(char)* fileType, const(ubyte)* fileData, int dataSize);
501    alias pIsWaveReady = bool function(Wave wave);
502    alias pLoadSound = Sound function(const(char)* fileName);
503    alias pLoadSoundFromWave = Sound function(Wave wave);
504    alias pLoadSoundAlias = Sound function(Sound source);
505    alias pIsSoundReady = bool function(Sound sound);
506    alias pUpdateSound = void function(Sound sound, const(void)* data, int sampleCount);
507    alias pUnloadWave = void function(Wave wave);
508    alias pUnloadSound = void function(Sound sound);
509    alias pUnloadSoundAlias = void function(Sound aka);
510    alias pExportWave = bool function(Wave wave, const(char)* fileName);
511    alias pExportWaveAsCode = bool function(Wave wave, const(char)* fileName);
512    alias pPlaySound = void function(Sound sound);
513    alias pStopSound = void function(Sound sound);
514    alias pPauseSound = void function(Sound sound);
515    alias pResumeSound = void function(Sound sound);
516    alias pIsSoundPlaying = bool function(Sound sound);
517    alias pSetSoundVolume = void function(Sound sound, float volume);
518    alias pSetSoundPitch = void function(Sound sound, float pitch);
519    alias pSetSoundPan = void function(Sound sound, float pan);
520    alias pWaveCopy = Wave function(Wave wave);
521    alias pWaveCrop = void function(Wave* wave, int initSample, int finalSample);
522    alias pWaveFormat = void function(Wave* wave, int sampleRate, int sampleSize, int channels);
523    alias pLoadWaveSamples = float* function(Wave wave);
524    alias pUnloadWaveSamples = void function(float* samples);
525    alias pLoadMusicStream = Music function(const(char)* fileName);
526    alias pLoadMusicStreamFromMemory = Music function(const(char)* fileType, const(ubyte)* data, int dataSize);
527    alias pIsMusicReady = bool function(Music music);
528    alias pUnloadMusicStream = void function(Music music);
529    alias pPlayMusicStream = void function(Music music);
530    alias pIsMusicStreamPlaying = bool function(Music music);
531    alias pUpdateMusicStream = void function(Music music);
532    alias pStopMusicStream = void function(Music music);
533    alias pPauseMusicStream = void function(Music music);
534    alias pResumeMusicStream = void function(Music music);
535    alias pSeekMusicStream = void function(Music music, float position);
536    alias pSetMusicVolume = void function(Music music, float volume);
537    alias pSetMusicPitch = void function(Music music, float pitch);
538    alias pSetMusicPan = void function(Music music, float pan);
539    alias pGetMusicTimeLength = float function(Music music);
540    alias pGetMusicTimePlayed = float function(Music music);
541    alias pLoadAudioStream = AudioStream function(uint sampleRate, uint sampleSize, uint channels);
542    alias pIsAudioStreamReady = bool function(AudioStream stream);
543    alias pUnloadAudioStream = void function(AudioStream stream);
544    alias pUpdateAudioStream = void function(AudioStream stream, const(void)* data, int frameCount);
545    alias pIsAudioStreamProcessed = bool function(AudioStream stream);
546    alias pPlayAudioStream = void function(AudioStream stream);
547    alias pPauseAudioStream = void function(AudioStream stream);
548    alias pResumeAudioStream = void function(AudioStream stream);
549    alias pIsAudioStreamPlaying = bool function(AudioStream stream);
550    alias pStopAudioStream = void function(AudioStream stream);
551    alias pSetAudioStreamVolume = void function(AudioStream stream, float volume);
552    alias pSetAudioStreamPitch = void function(AudioStream stream, float pitch);
553    alias pSetAudioStreamPan = void function(AudioStream stream, float pan);
554    alias pSetAudioStreamBufferSizeDefault = void function(int size);
555    alias pSetAudioStreamCallback = void function(AudioStream stream, AudioCallback callback);
556    alias pAttachAudioStreamProcessor = void function(AudioStream stream, AudioCallback processor);
557    alias pDetachAudioStreamProcessor = void function(AudioStream stream, AudioCallback processor);
558    alias pAttachAudioMixedProcessor = void function(AudioCallback processor);
559    alias pDetachAudioMixedProcessor = void function(AudioCallback processor);
560 }
561 
562 __gshared {
563    pInitWindow InitWindow;
564    pCloseWindow CloseWindow;
565    pWindowShouldClose WindowShouldClose;
566    pIsWindowReady IsWindowReady;
567    pIsWindowFullscreen IsWindowFullscreen;
568    pIsWindowHidden IsWindowHidden;
569    pIsWindowMinimized IsWindowMinimized;
570    pIsWindowMaximized IsWindowMaximized;
571    pIsWindowFocused IsWindowFocused;
572    pIsWindowResized IsWindowResized;
573    pIsWindowState IsWindowState;
574    pSetWindowState SetWindowState;
575    pClearWindowState ClearWindowState;
576    pToggleFullscreen ToggleFullscreen;
577    pToggleBorderlessWindowed ToggleBorderlessWindowed;
578    pMaximizeWindow MaximizeWindow;
579    pMinimizeWindow MinimizeWindow;
580    pRestoreWindow RestoreWindow;
581    pSetWindowIcon SetWindowIcon;
582    pSetWindowIcons SetWindowIcons;
583    pSetWindowTitle SetWindowTitle;
584    pSetWindowPosition SetWindowPosition;
585    pSetWindowMonitor SetWindowMonitor;
586    pSetWindowMinSize SetWindowMinSize;
587    pSetWindowMaxSize SetWindowMaxSize;
588    pSetWindowSize SetWindowSize;
589    pSetWindowOpacity SetWindowOpacity;
590    pSetWindowFocused SetWindowFocused;
591    pGetWindowHandle GetWindowHandle;
592    pGetScreenWidth GetScreenWidth;
593    pGetScreenHeight GetScreenHeight;
594    pGetRenderWidth GetRenderWidth;
595    pGetRenderHeight GetRenderHeight;
596    pGetMonitorCount GetMonitorCount;
597    pGetCurrentMonitor GetCurrentMonitor;
598    pGetMonitorPosition GetMonitorPosition;
599    pGetMonitorWidth GetMonitorWidth;
600    pGetMonitorHeight GetMonitorHeight;
601    pGetMonitorPhysicalWidth GetMonitorPhysicalWidth;
602    pGetMonitorPhysicalHeight GetMonitorPhysicalHeight;
603    pGetMonitorRefreshRate GetMonitorRefreshRate;
604    pGetWindowPosition GetWindowPosition;
605    pGetWindowScaleDPI GetWindowScaleDPI;
606    pGetMonitorName GetMonitorName;
607    pSetClipboardText SetClipboardText;
608    pGetClipboardText GetClipboardText;
609    pEnableEventWaiting EnableEventWaiting;
610    pDisableEventWaiting DisableEventWaiting;
611    pShowCursor ShowCursor;
612    pHideCursor HideCursor;
613    pIsCursorHidden IsCursorHidden;
614    pEnableCursor EnableCursor;
615    pDisableCursor DisableCursor;
616    pIsCursorOnScreen IsCursorOnScreen;
617    pClearBackground ClearBackground;
618    pBeginDrawing BeginDrawing;
619    pEndDrawing EndDrawing;
620    pBeginMode2D BeginMode2D;
621    pEndMode2D EndMode2D;
622    pBeginMode3D BeginMode3D;
623    pEndMode3D EndMode3D;
624    pBeginTextureMode BeginTextureMode;
625    pEndTextureMode EndTextureMode;
626    pBeginShaderMode BeginShaderMode;
627    pEndShaderMode EndShaderMode;
628    pBeginBlendMode BeginBlendMode;
629    pEndBlendMode EndBlendMode;
630    pBeginScissorMode BeginScissorMode;
631    pEndScissorMode EndScissorMode;
632    pBeginVrStereoMode BeginVrStereoMode;
633    pEndVrStereoMode EndVrStereoMode;
634    pLoadVrStereoConfig LoadVrStereoConfig;
635    pUnloadVrStereoConfig UnloadVrStereoConfig;
636    pLoadShader LoadShader;
637    pLoadShaderFromMemory LoadShaderFromMemory;
638    pIsShaderReady IsShaderReady;
639    pGetShaderLocation GetShaderLocation;
640    pGetShaderLocationAttrib GetShaderLocationAttrib;
641    pSetShaderValue SetShaderValue;
642    pSetShaderValueV SetShaderValueV;
643    pSetShaderValueMatrix SetShaderValueMatrix;
644    pSetShaderValueTexture SetShaderValueTexture;
645    pUnloadShader UnloadShader;
646    pGetMouseRay GetMouseRay;
647    pGetCameraMatrix GetCameraMatrix;
648    pGetCameraMatrix2D GetCameraMatrix2D;
649    pGetWorldToScreen GetWorldToScreen;
650    pGetScreenToWorld2D GetScreenToWorld2D;
651    pGetWorldToScreenEx GetWorldToScreenEx;
652    pGetWorldToScreen2D GetWorldToScreen2D;
653    pSetTargetFPS SetTargetFPS;
654    pGetFrameTime GetFrameTime;
655    pGetTime GetTime;
656    pGetFPS GetFPS;
657    pSwapScreenBuffer SwapScreenBuffer;
658    pPollInputEvents PollInputEvents;
659    pWaitTime WaitTime;
660    pSetRandomSeed SetRandomSeed;
661    pGetRandomValue GetRandomValue;
662    pLoadRandomSequence LoadRandomSequence;
663    pUnloadRandomSequence UnloadRandomSequence;
664    pTakeScreenshot TakeScreenshot;
665    pSetConfigFlags SetConfigFlags;
666    pOpenURL OpenURL;
667    pSetTraceLogLevel SetTraceLogLevel;
668    pMemAlloc MemAlloc;
669    pMemRealloc MemRealloc;
670    pMemFree MemFree;
671    pLoadFileData LoadFileData;
672    pUnloadFileData UnloadFileData;
673    pSaveFileData SaveFileData;
674    pExportDataAsCode ExportDataAsCode;
675    pLoadFileText LoadFileText;
676    pUnloadFileText UnloadFileText;
677    pSaveFileText SaveFileText;
678    pFileExists FileExists;
679    pDirectoryExists DirectoryExists;
680    pIsFileExtension IsFileExtension;
681    pGetFileLength GetFileLength;
682    pGetFileExtension GetFileExtension;
683    pGetFileName GetFileName;
684    pGetFileNameWithoutExt GetFileNameWithoutExt;
685    pGetDirectoryPath GetDirectoryPath;
686    pGetPrevDirectoryPath GetPrevDirectoryPath;
687    pGetWorkingDirectory GetWorkingDirectory;
688    pGetApplicationDirectory GetApplicationDirectory;
689    pChangeDirectory ChangeDirectory;
690    pIsPathFile IsPathFile;
691    pLoadDirectoryFiles LoadDirectoryFiles;
692    pLoadDirectoryFilesEx LoadDirectoryFilesEx;
693    pUnloadDirectoryFiles UnloadDirectoryFiles;
694    pIsFileDropped IsFileDropped;
695    pLoadDroppedFiles LoadDroppedFiles;
696    pUnloadDroppedFiles UnloadDroppedFiles;
697    pGetFileModTime GetFileModTime;
698    pCompressData CompressData;
699    pDecompressData DecompressData;
700    pEncodeDataBase64 EncodeDataBase64;
701    pDecodeDataBase64 DecodeDataBase64;
702    pLoadAutomationEventList LoadAutomationEventList;
703    pUnloadAutomationEventList UnloadAutomationEventList;
704    pExportAutomationEventList ExportAutomationEventList;
705    pSetAutomationEventList SetAutomationEventList;
706    pSetAutomationEventBaseFrame SetAutomationEventBaseFrame;
707    pStartAutomationEventRecording StartAutomationEventRecording;
708    pStopAutomationEventRecording StopAutomationEventRecording;
709    pPlayAutomationEvent PlayAutomationEvent;
710    pIsKeyPressed IsKeyPressed;
711    pIsKeyPressedRepeat IsKeyPressedRepeat;
712    pIsKeyDown IsKeyDown;
713    pIsKeyReleased IsKeyReleased;
714    pIsKeyUp IsKeyUp;
715    pGetKeyPressed GetKeyPressed;
716    pGetCharPressed GetCharPressed;
717    pSetExitKey SetExitKey;
718    pIsGamepadAvailable IsGamepadAvailable;
719    pGetGamepadName GetGamepadName;
720    pIsGamepadButtonPressed IsGamepadButtonPressed;
721    pIsGamepadButtonDown IsGamepadButtonDown;
722    pIsGamepadButtonReleased IsGamepadButtonReleased;
723    pIsGamepadButtonUp IsGamepadButtonUp;
724    pGetGamepadButtonPressed GetGamepadButtonPressed;
725    pGetGamepadAxisCount GetGamepadAxisCount;
726    pGetGamepadAxisMovement GetGamepadAxisMovement;
727    pSetGamepadMappings SetGamepadMappings;
728    pIsMouseButtonPressed IsMouseButtonPressed;
729    pIsMouseButtonDown IsMouseButtonDown;
730    pIsMouseButtonReleased IsMouseButtonReleased;
731    pIsMouseButtonUp IsMouseButtonUp;
732    pGetMouseX GetMouseX;
733    pGetMouseY GetMouseY;
734    pGetMousePosition GetMousePosition;
735    pGetMouseDelta GetMouseDelta;
736    pSetMousePosition SetMousePosition;
737    pSetMouseOffset SetMouseOffset;
738    pSetMouseScale SetMouseScale;
739    pGetMouseWheelMove GetMouseWheelMove;
740    pGetMouseWheelMoveV GetMouseWheelMoveV;
741    pSetMouseCursor SetMouseCursor;
742    pGetTouchX GetTouchX;
743    pGetTouchY GetTouchY;
744    pGetTouchPosition GetTouchPosition;
745    pGetTouchPointId GetTouchPointId;
746    pGetTouchPointCount GetTouchPointCount;
747    pSetGesturesEnabled SetGesturesEnabled;
748    pIsGestureDetected IsGestureDetected;
749    pGetGestureDetected GetGestureDetected;
750    pGetGestureHoldDuration GetGestureHoldDuration;
751    pGetGestureDragVector GetGestureDragVector;
752    pGetGestureDragAngle GetGestureDragAngle;
753    pGetGesturePinchVector GetGesturePinchVector;
754    pGetGesturePinchAngle GetGesturePinchAngle;
755    pUpdateCamera UpdateCamera;
756    pUpdateCameraPro UpdateCameraPro;
757    pSetShapesTexture SetShapesTexture;
758    pDrawPixel DrawPixel;
759    pDrawPixelV DrawPixelV;
760    pDrawLine DrawLine;
761    pDrawLineV DrawLineV;
762    pDrawLineEx DrawLineEx;
763    pDrawLineStrip DrawLineStrip;
764    pDrawLineBezier DrawLineBezier;
765    pDrawCircle DrawCircle;
766    pDrawCircleSector DrawCircleSector;
767    pDrawCircleSectorLines DrawCircleSectorLines;
768    pDrawCircleGradient DrawCircleGradient;
769    pDrawCircleV DrawCircleV;
770    pDrawCircleLines DrawCircleLines;
771    pDrawCircleLinesV DrawCircleLinesV;
772    pDrawEllipse DrawEllipse;
773    pDrawEllipseLines DrawEllipseLines;
774    pDrawRing DrawRing;
775    pDrawRingLines DrawRingLines;
776    pDrawRectangle DrawRectangle;
777    pDrawRectangleV DrawRectangleV;
778    pDrawRectangleRec DrawRectangleRec;
779    pDrawRectanglePro DrawRectanglePro;
780    pDrawRectangleGradientV DrawRectangleGradientV;
781    pDrawRectangleGradientH DrawRectangleGradientH;
782    pDrawRectangleGradientEx DrawRectangleGradientEx;
783    pDrawRectangleLines DrawRectangleLines;
784    pDrawRectangleLinesEx DrawRectangleLinesEx;
785    pDrawRectangleRounded DrawRectangleRounded;
786    pDrawRectangleRoundedLines DrawRectangleRoundedLines;
787    pDrawTriangle DrawTriangle;
788    pDrawTriangleLines DrawTriangleLines;
789    pDrawTriangleFan DrawTriangleFan;
790    pDrawTriangleStrip DrawTriangleStrip;
791    pDrawPoly DrawPoly;
792    pDrawPolyLines DrawPolyLines;
793    pDrawPolyLinesEx DrawPolyLinesEx;
794    pDrawSplineLinear DrawSplineLinear;
795    pDrawSplineBasis DrawSplineBasis;
796    pDrawSplineCatmullRom DrawSplineCatmullRom;
797    pDrawSplineBezierQuadratic DrawSplineBezierQuadratic;
798    pDrawSplineBezierCubic DrawSplineBezierCubic;
799    pDrawSplineSegmentLinear DrawSplineSegmentLinear;
800    pDrawSplineSegmentBasis DrawSplineSegmentBasis;
801    pDrawSplineSegmentCatmullRom DrawSplineSegmentCatmullRom;
802    pDrawSplineSegmentBezierQuadratic DrawSplineSegmentBezierQuadratic;
803    pDrawSplineSegmentBezierCubic DrawSplineSegmentBezierCubic;
804    pGetSplinePointLinear GetSplinePointLinear;
805    pGetSplinePointBasis GetSplinePointBasis;
806    pGetSplinePointCatmullRom GetSplinePointCatmullRom;
807    pGetSplinePointBezierQuad GetSplinePointBezierQuad;
808    pGetSplinePointBezierCubic GetSplinePointBezierCubic;
809    pCheckCollisionRecs CheckCollisionRecs;
810    pCheckCollisionCircles CheckCollisionCircles;
811    pCheckCollisionCircleRec CheckCollisionCircleRec;
812    pCheckCollisionPointRec CheckCollisionPointRec;
813    pCheckCollisionPointCircle CheckCollisionPointCircle;
814    pCheckCollisionPointTriangle CheckCollisionPointTriangle;
815    pCheckCollisionPointPoly CheckCollisionPointPoly;
816    pCheckCollisionLines CheckCollisionLines;
817    pCheckCollisionPointLine CheckCollisionPointLine;
818    pGetCollisionRec GetCollisionRec;
819    pLoadImage LoadImage;
820    pLoadImageRaw LoadImageRaw;
821    pLoadImageSvg LoadImageSvg;
822    pLoadImageAnim LoadImageAnim;
823    pLoadImageFromMemory LoadImageFromMemory;
824    pLoadImageFromTexture LoadImageFromTexture;
825    pLoadImageFromScreen LoadImageFromScreen;
826    pIsImageReady IsImageReady;
827    pUnloadImage UnloadImage;
828    pExportImage ExportImage;
829    pExportImageToMemory ExportImageToMemory;
830    pExportImageAsCode ExportImageAsCode;
831    pGenImageColor GenImageColor;
832    pGenImageGradientLinear GenImageGradientLinear;
833    pGenImageGradientRadial GenImageGradientRadial;
834    pGenImageGradientSquare GenImageGradientSquare;
835    pGenImageChecked GenImageChecked;
836    pGenImageWhiteNoise GenImageWhiteNoise;
837    pGenImagePerlinNoise GenImagePerlinNoise;
838    pGenImageCellular GenImageCellular;
839    pGenImageText GenImageText;
840    pImageCopy ImageCopy;
841    pImageFromImage ImageFromImage;
842    pImageText ImageText;
843    pImageTextEx ImageTextEx;
844    pImageFormat ImageFormat;
845    pImageToPOT ImageToPOT;
846    pImageCrop ImageCrop;
847    pImageAlphaCrop ImageAlphaCrop;
848    pImageAlphaClear ImageAlphaClear;
849    pImageAlphaMask ImageAlphaMask;
850    pImageAlphaPremultiply ImageAlphaPremultiply;
851    pImageBlurGaussian ImageBlurGaussian;
852    pImageResize ImageResize;
853    pImageResizeNN ImageResizeNN;
854    pImageResizeCanvas ImageResizeCanvas;
855    pImageMipmaps ImageMipmaps;
856    pImageDither ImageDither;
857    pImageFlipVertical ImageFlipVertical;
858    pImageFlipHorizontal ImageFlipHorizontal;
859    pImageRotate ImageRotate;
860    pImageRotateCW ImageRotateCW;
861    pImageRotateCCW ImageRotateCCW;
862    pImageColorTint ImageColorTint;
863    pImageColorInvert ImageColorInvert;
864    pImageColorGrayscale ImageColorGrayscale;
865    pImageColorContrast ImageColorContrast;
866    pImageColorBrightness ImageColorBrightness;
867    pImageColorReplace ImageColorReplace;
868    pLoadImageColors LoadImageColors;
869    pLoadImagePalette LoadImagePalette;
870    pUnloadImageColors UnloadImageColors;
871    pUnloadImagePalette UnloadImagePalette;
872    pGetImageAlphaBorder GetImageAlphaBorder;
873    pGetImageColor GetImageColor;
874    pImageClearBackground ImageClearBackground;
875    pImageDrawPixel ImageDrawPixel;
876    pImageDrawPixelV ImageDrawPixelV;
877    pImageDrawLine ImageDrawLine;
878    pImageDrawLineV ImageDrawLineV;
879    pImageDrawCircle ImageDrawCircle;
880    pImageDrawCircleV ImageDrawCircleV;
881    pImageDrawCircleLines ImageDrawCircleLines;
882    pImageDrawCircleLinesV ImageDrawCircleLinesV;
883    pImageDrawRectangle ImageDrawRectangle;
884    pImageDrawRectangleV ImageDrawRectangleV;
885    pImageDrawRectangleRec ImageDrawRectangleRec;
886    pImageDrawRectangleLines ImageDrawRectangleLines;
887    pImageDraw ImageDraw;
888    pImageDrawText ImageDrawText;
889    pImageDrawTextEx ImageDrawTextEx;
890    pLoadTexture LoadTexture;
891    pLoadTextureFromImage LoadTextureFromImage;
892    pLoadTextureCubemap LoadTextureCubemap;
893    pLoadRenderTexture LoadRenderTexture;
894    pIsTextureReady IsTextureReady;
895    pUnloadTexture UnloadTexture;
896    pIsRenderTextureReady IsRenderTextureReady;
897    pUnloadRenderTexture UnloadRenderTexture;
898    pUpdateTexture UpdateTexture;
899    pUpdateTextureRec UpdateTextureRec;
900    pGenTextureMipmaps GenTextureMipmaps;
901    pSetTextureFilter SetTextureFilter;
902    pSetTextureWrap SetTextureWrap;
903    pDrawTexture DrawTexture;
904    pDrawTextureV DrawTextureV;
905    pDrawTextureEx DrawTextureEx;
906    pDrawTextureRec DrawTextureRec;
907    pDrawTexturePro DrawTexturePro;
908    pDrawTextureNPatch DrawTextureNPatch;
909    pFade Fade;
910    pColorToInt ColorToInt;
911    pColorNormalize ColorNormalize;
912    pColorFromNormalized ColorFromNormalized;
913    pColorToHSV ColorToHSV;
914    pColorFromHSV ColorFromHSV;
915    pColorTint ColorTint;
916    pColorBrightness ColorBrightness;
917    pColorContrast ColorContrast;
918    pColorAlpha ColorAlpha;
919    pColorAlphaBlend ColorAlphaBlend;
920    pGetColor GetColor;
921    pGetPixelColor GetPixelColor;
922    pSetPixelColor SetPixelColor;
923    pGetPixelDataSize GetPixelDataSize;
924    pGetFontDefault GetFontDefault;
925    pLoadFont LoadFont;
926    pLoadFontEx LoadFontEx;
927    pLoadFontFromImage LoadFontFromImage;
928    pLoadFontFromMemory LoadFontFromMemory;
929    pIsFontReady IsFontReady;
930    pLoadFontData LoadFontData;
931    pGenImageFontAtlas GenImageFontAtlas;
932    pUnloadFontData UnloadFontData;
933    pUnloadFont UnloadFont;
934    pExportFontAsCode ExportFontAsCode;
935    pDrawFPS DrawFPS;
936    pDrawText DrawText;
937    pDrawTextEx DrawTextEx;
938    pDrawTextPro DrawTextPro;
939    pDrawTextCodepoint DrawTextCodepoint;
940    pDrawTextCodepoints DrawTextCodepoints;
941    pSetTextLineSpacing SetTextLineSpacing;
942    pMeasureText MeasureText;
943    pMeasureTextEx MeasureTextEx;
944    pGetGlyphIndex GetGlyphIndex;
945    pGetGlyphInfo GetGlyphInfo;
946    pGetGlyphAtlasRec GetGlyphAtlasRec;
947    pLoadUTF8 LoadUTF8;
948    pUnloadUTF8 UnloadUTF8;
949    pLoadCodepoints LoadCodepoints;
950    pUnloadCodepoints UnloadCodepoints;
951    pGetCodepointCount GetCodepointCount;
952    pGetCodepoint GetCodepoint;
953    pGetCodepointNext GetCodepointNext;
954    pGetCodepointPrevious GetCodepointPrevious;
955    pCodepointToUTF8 CodepointToUTF8;
956    pTextCopy TextCopy;
957    pTextIsEqual TextIsEqual;
958    pTextLength TextLength;
959    pTextSubtext TextSubtext;
960    pTextReplace TextReplace;
961    pTextInsert TextInsert;
962    pTextJoin TextJoin;
963    pTextSplit TextSplit;
964    pTextAppend TextAppend;
965    pTextFindIndex TextFindIndex;
966    pTextToUpper TextToUpper;
967    pTextToLower TextToLower;
968    pTextToPascal TextToPascal;
969    pTextToInteger TextToInteger;
970    pDrawLine3D DrawLine3D;
971    pDrawPoint3D DrawPoint3D;
972    pDrawCircle3D DrawCircle3D;
973    pDrawTriangle3D DrawTriangle3D;
974    pDrawTriangleStrip3D DrawTriangleStrip3D;
975    pDrawCube DrawCube;
976    pDrawCubeV DrawCubeV;
977    pDrawCubeWires DrawCubeWires;
978    pDrawCubeWiresV DrawCubeWiresV;
979    pDrawSphere DrawSphere;
980    pDrawSphereEx DrawSphereEx;
981    pDrawSphereWires DrawSphereWires;
982    pDrawCylinder DrawCylinder;
983    pDrawCylinderEx DrawCylinderEx;
984    pDrawCylinderWires DrawCylinderWires;
985    pDrawCylinderWiresEx DrawCylinderWiresEx;
986    pDrawCapsule DrawCapsule;
987    pDrawCapsuleWires DrawCapsuleWires;
988    pDrawPlane DrawPlane;
989    pDrawRay DrawRay;
990    pDrawGrid DrawGrid;
991    pLoadModel LoadModel;
992    pLoadModelFromMesh LoadModelFromMesh;
993    pIsModelReady IsModelReady;
994    pUnloadModel UnloadModel;
995    pGetModelBoundingBox GetModelBoundingBox;
996    pDrawModel DrawModel;
997    pDrawModelEx DrawModelEx;
998    pDrawModelWires DrawModelWires;
999    pDrawModelWiresEx DrawModelWiresEx;
1000    pDrawBoundingBox DrawBoundingBox;
1001    pDrawBillboard DrawBillboard;
1002    pDrawBillboardRec DrawBillboardRec;
1003    pDrawBillboardPro DrawBillboardPro;
1004    pUploadMesh UploadMesh;
1005    pUpdateMeshBuffer UpdateMeshBuffer;
1006    pUnloadMesh UnloadMesh;
1007    pDrawMesh DrawMesh;
1008    pDrawMeshInstanced DrawMeshInstanced;
1009    pExportMesh ExportMesh;
1010    pGetMeshBoundingBox GetMeshBoundingBox;
1011    pGenMeshTangents GenMeshTangents;
1012    pGenMeshPoly GenMeshPoly;
1013    pGenMeshPlane GenMeshPlane;
1014    pGenMeshCube GenMeshCube;
1015    pGenMeshSphere GenMeshSphere;
1016    pGenMeshHemiSphere GenMeshHemiSphere;
1017    pGenMeshCylinder GenMeshCylinder;
1018    pGenMeshCone GenMeshCone;
1019    pGenMeshTorus GenMeshTorus;
1020    pGenMeshKnot GenMeshKnot;
1021    pGenMeshHeightmap GenMeshHeightmap;
1022    pGenMeshCubicmap GenMeshCubicmap;
1023    pLoadMaterials LoadMaterials;
1024    pLoadMaterialDefault LoadMaterialDefault;
1025    pIsMaterialReady IsMaterialReady;
1026    pUnloadMaterial UnloadMaterial;
1027    pSetMaterialTexture SetMaterialTexture;
1028    pSetModelMeshMaterial SetModelMeshMaterial;
1029    pLoadModelAnimations LoadModelAnimations;
1030    pUpdateModelAnimation UpdateModelAnimation;
1031    pUnloadModelAnimation UnloadModelAnimation;
1032    pUnloadModelAnimations UnloadModelAnimations;
1033    pIsModelAnimationValid IsModelAnimationValid;
1034    pCheckCollisionSpheres CheckCollisionSpheres;
1035    pCheckCollisionBoxes CheckCollisionBoxes;
1036    pCheckCollisionBoxSphere CheckCollisionBoxSphere;
1037    pGetRayCollisionSphere GetRayCollisionSphere;
1038    pGetRayCollisionBox GetRayCollisionBox;
1039    pGetRayCollisionMesh GetRayCollisionMesh;
1040    pGetRayCollisionTriangle GetRayCollisionTriangle;
1041    pGetRayCollisionQuad GetRayCollisionQuad;
1042    pInitAudioDevice InitAudioDevice;
1043    pCloseAudioDevice CloseAudioDevice;
1044    pIsAudioDeviceReady IsAudioDeviceReady;
1045    pSetMasterVolume SetMasterVolume;
1046    pGetMasterVolume GetMasterVolume;
1047    pLoadWave LoadWave;
1048    pLoadWaveFromMemory LoadWaveFromMemory;
1049    pIsWaveReady IsWaveReady;
1050    pLoadSound LoadSound;
1051    pLoadSoundFromWave LoadSoundFromWave;
1052    pLoadSoundAlias LoadSoundAlias;
1053    pIsSoundReady IsSoundReady;
1054    pUpdateSound UpdateSound;
1055    pUnloadWave UnloadWave;
1056    pUnloadSound UnloadSound;
1057    pUnloadSoundAlias UnloadSoundAlias;
1058    pExportWave ExportWave;
1059    pExportWaveAsCode ExportWaveAsCode;
1060    pPlaySound PlaySound;
1061    pStopSound StopSound;
1062    pPauseSound PauseSound;
1063    pResumeSound ResumeSound;
1064    pIsSoundPlaying IsSoundPlaying;
1065    pSetSoundVolume SetSoundVolume;
1066    pSetSoundPitch SetSoundPitch;
1067    pSetSoundPan SetSoundPan;
1068    pWaveCopy WaveCopy;
1069    pWaveCrop WaveCrop;
1070    pWaveFormat WaveFormat;
1071    pLoadWaveSamples LoadWaveSamples;
1072    pUnloadWaveSamples UnloadWaveSamples;
1073    pLoadMusicStream LoadMusicStream;
1074    pLoadMusicStreamFromMemory LoadMusicStreamFromMemory;
1075    pIsMusicReady IsMusicReady;
1076    pUnloadMusicStream UnloadMusicStream;
1077    pPlayMusicStream PlayMusicStream;
1078    pIsMusicStreamPlaying IsMusicStreamPlaying;
1079    pUpdateMusicStream UpdateMusicStream;
1080    pStopMusicStream StopMusicStream;
1081    pPauseMusicStream PauseMusicStream;
1082    pResumeMusicStream ResumeMusicStream;
1083    pSeekMusicStream SeekMusicStream;
1084    pSetMusicVolume SetMusicVolume;
1085    pSetMusicPitch SetMusicPitch;
1086    pSetMusicPan SetMusicPan;
1087    pGetMusicTimeLength GetMusicTimeLength;
1088    pGetMusicTimePlayed GetMusicTimePlayed;
1089    pLoadAudioStream LoadAudioStream;
1090    pIsAudioStreamReady IsAudioStreamReady;
1091    pUnloadAudioStream UnloadAudioStream;
1092    pUpdateAudioStream UpdateAudioStream;
1093    pIsAudioStreamProcessed IsAudioStreamProcessed;
1094    pPlayAudioStream PlayAudioStream;
1095    pPauseAudioStream PauseAudioStream;
1096    pResumeAudioStream ResumeAudioStream;
1097    pIsAudioStreamPlaying IsAudioStreamPlaying;
1098    pStopAudioStream StopAudioStream;
1099    pSetAudioStreamVolume SetAudioStreamVolume;
1100    pSetAudioStreamPitch SetAudioStreamPitch;
1101    pSetAudioStreamPan SetAudioStreamPan;
1102    pSetAudioStreamBufferSizeDefault SetAudioStreamBufferSizeDefault;
1103    pSetAudioStreamCallback SetAudioStreamCallback;
1104    pAttachAudioStreamProcessor AttachAudioStreamProcessor;
1105    pDetachAudioStreamProcessor DetachAudioStreamProcessor;
1106    pAttachAudioMixedProcessor AttachAudioMixedProcessor;
1107    pDetachAudioMixedProcessor DetachAudioMixedProcessor;
1108 }
1109 /**
1110  * Raylib binding.
1111  *
1112  * Automatically generated, do not modify
1113  */
1114 private {
1115    SharedLib lib;
1116    RaylibSupport loadedVersion;
1117 }
1118 
1119 @nogc nothrow:
1120 
1121 void unloadRaylib() {
1122    if (lib != invalidHandle) {
1123       lib.unload();
1124    }
1125 }
1126 
1127 RaylibSupport loadedRaylibVersion() @safe {
1128    return loadedVersion;
1129 }
1130 
1131 bool isRaylibLoaded() @safe {
1132    return lib != invalidHandle;
1133 }
1134 
1135 RaylibSupport loadRaylib() {
1136    version (Windows) {
1137       const(char)[][1] libNames = ["raylib.dll"];
1138    } else version (Posix) {
1139       const(char)[][3] libNames = [
1140          "libraylib.so",
1141          "/usr/local/lib/libraylib.so" //make install PLATFORM=PLATFORM_DESKTOP RAYLIB_LIBTYPE=SHARED
1142          , "/usr/lib/libraylib.so"
1143       ];
1144    } else {
1145       static assert(0, "bindbc-raylib is not yet supported on this platform");
1146    }
1147 
1148    RaylibSupport ret;
1149    foreach (name; libNames) {
1150       ret = loadRaylib(name.ptr);
1151       if (ret != RaylibSupport.noLibrary) {
1152          break;
1153       }
1154    }
1155    return ret;
1156 }
1157 
1158 RaylibSupport loadRaylib(const(char)* libName) {
1159    lib = load(libName);
1160    if (lib == invalidHandle) {
1161       return RaylibSupport.noLibrary;
1162    }
1163 
1164    auto errCount = errorCount();
1165    loadedVersion = RaylibSupport.badLibrary;
1166 
1167 
1168    lib.bindSymbol(cast(void**)&InitWindow, "InitWindow");
1169    lib.bindSymbol(cast(void**)&CloseWindow, "CloseWindow");
1170    lib.bindSymbol(cast(void**)&WindowShouldClose, "WindowShouldClose");
1171    lib.bindSymbol(cast(void**)&IsWindowReady, "IsWindowReady");
1172    lib.bindSymbol(cast(void**)&IsWindowFullscreen, "IsWindowFullscreen");
1173    lib.bindSymbol(cast(void**)&IsWindowHidden, "IsWindowHidden");
1174    lib.bindSymbol(cast(void**)&IsWindowMinimized, "IsWindowMinimized");
1175    lib.bindSymbol(cast(void**)&IsWindowMaximized, "IsWindowMaximized");
1176    lib.bindSymbol(cast(void**)&IsWindowFocused, "IsWindowFocused");
1177    lib.bindSymbol(cast(void**)&IsWindowResized, "IsWindowResized");
1178    lib.bindSymbol(cast(void**)&IsWindowState, "IsWindowState");
1179    lib.bindSymbol(cast(void**)&SetWindowState, "SetWindowState");
1180    lib.bindSymbol(cast(void**)&ClearWindowState, "ClearWindowState");
1181    lib.bindSymbol(cast(void**)&ToggleFullscreen, "ToggleFullscreen");
1182    lib.bindSymbol(cast(void**)&ToggleBorderlessWindowed, "ToggleBorderlessWindowed");
1183    lib.bindSymbol(cast(void**)&MaximizeWindow, "MaximizeWindow");
1184    lib.bindSymbol(cast(void**)&MinimizeWindow, "MinimizeWindow");
1185    lib.bindSymbol(cast(void**)&RestoreWindow, "RestoreWindow");
1186    lib.bindSymbol(cast(void**)&SetWindowIcon, "SetWindowIcon");
1187    lib.bindSymbol(cast(void**)&SetWindowIcons, "SetWindowIcons");
1188    lib.bindSymbol(cast(void**)&SetWindowTitle, "SetWindowTitle");
1189    lib.bindSymbol(cast(void**)&SetWindowPosition, "SetWindowPosition");
1190    lib.bindSymbol(cast(void**)&SetWindowMonitor, "SetWindowMonitor");
1191    lib.bindSymbol(cast(void**)&SetWindowMinSize, "SetWindowMinSize");
1192    lib.bindSymbol(cast(void**)&SetWindowMaxSize, "SetWindowMaxSize");
1193    lib.bindSymbol(cast(void**)&SetWindowSize, "SetWindowSize");
1194    lib.bindSymbol(cast(void**)&SetWindowOpacity, "SetWindowOpacity");
1195    lib.bindSymbol(cast(void**)&SetWindowFocused, "SetWindowFocused");
1196    lib.bindSymbol(cast(void**)&GetWindowHandle, "GetWindowHandle");
1197    lib.bindSymbol(cast(void**)&GetScreenWidth, "GetScreenWidth");
1198    lib.bindSymbol(cast(void**)&GetScreenHeight, "GetScreenHeight");
1199    lib.bindSymbol(cast(void**)&GetRenderWidth, "GetRenderWidth");
1200    lib.bindSymbol(cast(void**)&GetRenderHeight, "GetRenderHeight");
1201    lib.bindSymbol(cast(void**)&GetMonitorCount, "GetMonitorCount");
1202    lib.bindSymbol(cast(void**)&GetCurrentMonitor, "GetCurrentMonitor");
1203    lib.bindSymbol(cast(void**)&GetMonitorPosition, "GetMonitorPosition");
1204    lib.bindSymbol(cast(void**)&GetMonitorWidth, "GetMonitorWidth");
1205    lib.bindSymbol(cast(void**)&GetMonitorHeight, "GetMonitorHeight");
1206    lib.bindSymbol(cast(void**)&GetMonitorPhysicalWidth, "GetMonitorPhysicalWidth");
1207    lib.bindSymbol(cast(void**)&GetMonitorPhysicalHeight, "GetMonitorPhysicalHeight");
1208    lib.bindSymbol(cast(void**)&GetMonitorRefreshRate, "GetMonitorRefreshRate");
1209    lib.bindSymbol(cast(void**)&GetWindowPosition, "GetWindowPosition");
1210    lib.bindSymbol(cast(void**)&GetWindowScaleDPI, "GetWindowScaleDPI");
1211    lib.bindSymbol(cast(void**)&GetMonitorName, "GetMonitorName");
1212    lib.bindSymbol(cast(void**)&SetClipboardText, "SetClipboardText");
1213    lib.bindSymbol(cast(void**)&GetClipboardText, "GetClipboardText");
1214    lib.bindSymbol(cast(void**)&EnableEventWaiting, "EnableEventWaiting");
1215    lib.bindSymbol(cast(void**)&DisableEventWaiting, "DisableEventWaiting");
1216    lib.bindSymbol(cast(void**)&ShowCursor, "ShowCursor");
1217    lib.bindSymbol(cast(void**)&HideCursor, "HideCursor");
1218    lib.bindSymbol(cast(void**)&IsCursorHidden, "IsCursorHidden");
1219    lib.bindSymbol(cast(void**)&EnableCursor, "EnableCursor");
1220    lib.bindSymbol(cast(void**)&DisableCursor, "DisableCursor");
1221    lib.bindSymbol(cast(void**)&IsCursorOnScreen, "IsCursorOnScreen");
1222    lib.bindSymbol(cast(void**)&ClearBackground, "ClearBackground");
1223    lib.bindSymbol(cast(void**)&BeginDrawing, "BeginDrawing");
1224    lib.bindSymbol(cast(void**)&EndDrawing, "EndDrawing");
1225    lib.bindSymbol(cast(void**)&BeginMode2D, "BeginMode2D");
1226    lib.bindSymbol(cast(void**)&EndMode2D, "EndMode2D");
1227    lib.bindSymbol(cast(void**)&BeginMode3D, "BeginMode3D");
1228    lib.bindSymbol(cast(void**)&EndMode3D, "EndMode3D");
1229    lib.bindSymbol(cast(void**)&BeginTextureMode, "BeginTextureMode");
1230    lib.bindSymbol(cast(void**)&EndTextureMode, "EndTextureMode");
1231    lib.bindSymbol(cast(void**)&BeginShaderMode, "BeginShaderMode");
1232    lib.bindSymbol(cast(void**)&EndShaderMode, "EndShaderMode");
1233    lib.bindSymbol(cast(void**)&BeginBlendMode, "BeginBlendMode");
1234    lib.bindSymbol(cast(void**)&EndBlendMode, "EndBlendMode");
1235    lib.bindSymbol(cast(void**)&BeginScissorMode, "BeginScissorMode");
1236    lib.bindSymbol(cast(void**)&EndScissorMode, "EndScissorMode");
1237    lib.bindSymbol(cast(void**)&BeginVrStereoMode, "BeginVrStereoMode");
1238    lib.bindSymbol(cast(void**)&EndVrStereoMode, "EndVrStereoMode");
1239    lib.bindSymbol(cast(void**)&LoadVrStereoConfig, "LoadVrStereoConfig");
1240    lib.bindSymbol(cast(void**)&UnloadVrStereoConfig, "UnloadVrStereoConfig");
1241    lib.bindSymbol(cast(void**)&LoadShader, "LoadShader");
1242    lib.bindSymbol(cast(void**)&LoadShaderFromMemory, "LoadShaderFromMemory");
1243    lib.bindSymbol(cast(void**)&IsShaderReady, "IsShaderReady");
1244    lib.bindSymbol(cast(void**)&GetShaderLocation, "GetShaderLocation");
1245    lib.bindSymbol(cast(void**)&GetShaderLocationAttrib, "GetShaderLocationAttrib");
1246    lib.bindSymbol(cast(void**)&SetShaderValue, "SetShaderValue");
1247    lib.bindSymbol(cast(void**)&SetShaderValueV, "SetShaderValueV");
1248    lib.bindSymbol(cast(void**)&SetShaderValueMatrix, "SetShaderValueMatrix");
1249    lib.bindSymbol(cast(void**)&SetShaderValueTexture, "SetShaderValueTexture");
1250    lib.bindSymbol(cast(void**)&UnloadShader, "UnloadShader");
1251    lib.bindSymbol(cast(void**)&GetMouseRay, "GetMouseRay");
1252    lib.bindSymbol(cast(void**)&GetCameraMatrix, "GetCameraMatrix");
1253    lib.bindSymbol(cast(void**)&GetCameraMatrix2D, "GetCameraMatrix2D");
1254    lib.bindSymbol(cast(void**)&GetWorldToScreen, "GetWorldToScreen");
1255    lib.bindSymbol(cast(void**)&GetScreenToWorld2D, "GetScreenToWorld2D");
1256    lib.bindSymbol(cast(void**)&GetWorldToScreenEx, "GetWorldToScreenEx");
1257    lib.bindSymbol(cast(void**)&GetWorldToScreen2D, "GetWorldToScreen2D");
1258    lib.bindSymbol(cast(void**)&SetTargetFPS, "SetTargetFPS");
1259    lib.bindSymbol(cast(void**)&GetFrameTime, "GetFrameTime");
1260    lib.bindSymbol(cast(void**)&GetTime, "GetTime");
1261    lib.bindSymbol(cast(void**)&GetFPS, "GetFPS");
1262    lib.bindSymbol(cast(void**)&SwapScreenBuffer, "SwapScreenBuffer");
1263    lib.bindSymbol(cast(void**)&PollInputEvents, "PollInputEvents");
1264    lib.bindSymbol(cast(void**)&WaitTime, "WaitTime");
1265    lib.bindSymbol(cast(void**)&SetRandomSeed, "SetRandomSeed");
1266    lib.bindSymbol(cast(void**)&GetRandomValue, "GetRandomValue");
1267    lib.bindSymbol(cast(void**)&LoadRandomSequence, "LoadRandomSequence");
1268    lib.bindSymbol(cast(void**)&UnloadRandomSequence, "UnloadRandomSequence");
1269    lib.bindSymbol(cast(void**)&TakeScreenshot, "TakeScreenshot");
1270    lib.bindSymbol(cast(void**)&SetConfigFlags, "SetConfigFlags");
1271    lib.bindSymbol(cast(void**)&OpenURL, "OpenURL");
1272    lib.bindSymbol(cast(void**)&SetTraceLogLevel, "SetTraceLogLevel");
1273    lib.bindSymbol(cast(void**)&MemAlloc, "MemAlloc");
1274    lib.bindSymbol(cast(void**)&MemRealloc, "MemRealloc");
1275    lib.bindSymbol(cast(void**)&MemFree, "MemFree");
1276    lib.bindSymbol(cast(void**)&LoadFileData, "LoadFileData");
1277    lib.bindSymbol(cast(void**)&UnloadFileData, "UnloadFileData");
1278    lib.bindSymbol(cast(void**)&SaveFileData, "SaveFileData");
1279    lib.bindSymbol(cast(void**)&ExportDataAsCode, "ExportDataAsCode");
1280    lib.bindSymbol(cast(void**)&LoadFileText, "LoadFileText");
1281    lib.bindSymbol(cast(void**)&UnloadFileText, "UnloadFileText");
1282    lib.bindSymbol(cast(void**)&SaveFileText, "SaveFileText");
1283    lib.bindSymbol(cast(void**)&FileExists, "FileExists");
1284    lib.bindSymbol(cast(void**)&DirectoryExists, "DirectoryExists");
1285    lib.bindSymbol(cast(void**)&IsFileExtension, "IsFileExtension");
1286    lib.bindSymbol(cast(void**)&GetFileLength, "GetFileLength");
1287    lib.bindSymbol(cast(void**)&GetFileExtension, "GetFileExtension");
1288    lib.bindSymbol(cast(void**)&GetFileName, "GetFileName");
1289    lib.bindSymbol(cast(void**)&GetFileNameWithoutExt, "GetFileNameWithoutExt");
1290    lib.bindSymbol(cast(void**)&GetDirectoryPath, "GetDirectoryPath");
1291    lib.bindSymbol(cast(void**)&GetPrevDirectoryPath, "GetPrevDirectoryPath");
1292    lib.bindSymbol(cast(void**)&GetWorkingDirectory, "GetWorkingDirectory");
1293    lib.bindSymbol(cast(void**)&GetApplicationDirectory, "GetApplicationDirectory");
1294    lib.bindSymbol(cast(void**)&ChangeDirectory, "ChangeDirectory");
1295    lib.bindSymbol(cast(void**)&IsPathFile, "IsPathFile");
1296    lib.bindSymbol(cast(void**)&LoadDirectoryFiles, "LoadDirectoryFiles");
1297    lib.bindSymbol(cast(void**)&LoadDirectoryFilesEx, "LoadDirectoryFilesEx");
1298    lib.bindSymbol(cast(void**)&UnloadDirectoryFiles, "UnloadDirectoryFiles");
1299    lib.bindSymbol(cast(void**)&IsFileDropped, "IsFileDropped");
1300    lib.bindSymbol(cast(void**)&LoadDroppedFiles, "LoadDroppedFiles");
1301    lib.bindSymbol(cast(void**)&UnloadDroppedFiles, "UnloadDroppedFiles");
1302    lib.bindSymbol(cast(void**)&GetFileModTime, "GetFileModTime");
1303    lib.bindSymbol(cast(void**)&CompressData, "CompressData");
1304    lib.bindSymbol(cast(void**)&DecompressData, "DecompressData");
1305    lib.bindSymbol(cast(void**)&EncodeDataBase64, "EncodeDataBase64");
1306    lib.bindSymbol(cast(void**)&DecodeDataBase64, "DecodeDataBase64");
1307    lib.bindSymbol(cast(void**)&LoadAutomationEventList, "LoadAutomationEventList");
1308    lib.bindSymbol(cast(void**)&UnloadAutomationEventList, "UnloadAutomationEventList");
1309    lib.bindSymbol(cast(void**)&ExportAutomationEventList, "ExportAutomationEventList");
1310    lib.bindSymbol(cast(void**)&SetAutomationEventList, "SetAutomationEventList");
1311    lib.bindSymbol(cast(void**)&SetAutomationEventBaseFrame, "SetAutomationEventBaseFrame");
1312    lib.bindSymbol(cast(void**)&StartAutomationEventRecording, "StartAutomationEventRecording");
1313    lib.bindSymbol(cast(void**)&StopAutomationEventRecording, "StopAutomationEventRecording");
1314    lib.bindSymbol(cast(void**)&PlayAutomationEvent, "PlayAutomationEvent");
1315    lib.bindSymbol(cast(void**)&IsKeyPressed, "IsKeyPressed");
1316    lib.bindSymbol(cast(void**)&IsKeyPressedRepeat, "IsKeyPressedRepeat");
1317    lib.bindSymbol(cast(void**)&IsKeyDown, "IsKeyDown");
1318    lib.bindSymbol(cast(void**)&IsKeyReleased, "IsKeyReleased");
1319    lib.bindSymbol(cast(void**)&IsKeyUp, "IsKeyUp");
1320    lib.bindSymbol(cast(void**)&GetKeyPressed, "GetKeyPressed");
1321    lib.bindSymbol(cast(void**)&GetCharPressed, "GetCharPressed");
1322    lib.bindSymbol(cast(void**)&SetExitKey, "SetExitKey");
1323    lib.bindSymbol(cast(void**)&IsGamepadAvailable, "IsGamepadAvailable");
1324    lib.bindSymbol(cast(void**)&GetGamepadName, "GetGamepadName");
1325    lib.bindSymbol(cast(void**)&IsGamepadButtonPressed, "IsGamepadButtonPressed");
1326    lib.bindSymbol(cast(void**)&IsGamepadButtonDown, "IsGamepadButtonDown");
1327    lib.bindSymbol(cast(void**)&IsGamepadButtonReleased, "IsGamepadButtonReleased");
1328    lib.bindSymbol(cast(void**)&IsGamepadButtonUp, "IsGamepadButtonUp");
1329    lib.bindSymbol(cast(void**)&GetGamepadButtonPressed, "GetGamepadButtonPressed");
1330    lib.bindSymbol(cast(void**)&GetGamepadAxisCount, "GetGamepadAxisCount");
1331    lib.bindSymbol(cast(void**)&GetGamepadAxisMovement, "GetGamepadAxisMovement");
1332    lib.bindSymbol(cast(void**)&SetGamepadMappings, "SetGamepadMappings");
1333    lib.bindSymbol(cast(void**)&IsMouseButtonPressed, "IsMouseButtonPressed");
1334    lib.bindSymbol(cast(void**)&IsMouseButtonDown, "IsMouseButtonDown");
1335    lib.bindSymbol(cast(void**)&IsMouseButtonReleased, "IsMouseButtonReleased");
1336    lib.bindSymbol(cast(void**)&IsMouseButtonUp, "IsMouseButtonUp");
1337    lib.bindSymbol(cast(void**)&GetMouseX, "GetMouseX");
1338    lib.bindSymbol(cast(void**)&GetMouseY, "GetMouseY");
1339    lib.bindSymbol(cast(void**)&GetMousePosition, "GetMousePosition");
1340    lib.bindSymbol(cast(void**)&GetMouseDelta, "GetMouseDelta");
1341    lib.bindSymbol(cast(void**)&SetMousePosition, "SetMousePosition");
1342    lib.bindSymbol(cast(void**)&SetMouseOffset, "SetMouseOffset");
1343    lib.bindSymbol(cast(void**)&SetMouseScale, "SetMouseScale");
1344    lib.bindSymbol(cast(void**)&GetMouseWheelMove, "GetMouseWheelMove");
1345    lib.bindSymbol(cast(void**)&GetMouseWheelMoveV, "GetMouseWheelMoveV");
1346    lib.bindSymbol(cast(void**)&SetMouseCursor, "SetMouseCursor");
1347    lib.bindSymbol(cast(void**)&GetTouchX, "GetTouchX");
1348    lib.bindSymbol(cast(void**)&GetTouchY, "GetTouchY");
1349    lib.bindSymbol(cast(void**)&GetTouchPosition, "GetTouchPosition");
1350    lib.bindSymbol(cast(void**)&GetTouchPointId, "GetTouchPointId");
1351    lib.bindSymbol(cast(void**)&GetTouchPointCount, "GetTouchPointCount");
1352    lib.bindSymbol(cast(void**)&SetGesturesEnabled, "SetGesturesEnabled");
1353    lib.bindSymbol(cast(void**)&IsGestureDetected, "IsGestureDetected");
1354    lib.bindSymbol(cast(void**)&GetGestureDetected, "GetGestureDetected");
1355    lib.bindSymbol(cast(void**)&GetGestureHoldDuration, "GetGestureHoldDuration");
1356    lib.bindSymbol(cast(void**)&GetGestureDragVector, "GetGestureDragVector");
1357    lib.bindSymbol(cast(void**)&GetGestureDragAngle, "GetGestureDragAngle");
1358    lib.bindSymbol(cast(void**)&GetGesturePinchVector, "GetGesturePinchVector");
1359    lib.bindSymbol(cast(void**)&GetGesturePinchAngle, "GetGesturePinchAngle");
1360    lib.bindSymbol(cast(void**)&UpdateCamera, "UpdateCamera");
1361    lib.bindSymbol(cast(void**)&UpdateCameraPro, "UpdateCameraPro");
1362    lib.bindSymbol(cast(void**)&SetShapesTexture, "SetShapesTexture");
1363    lib.bindSymbol(cast(void**)&DrawPixel, "DrawPixel");
1364    lib.bindSymbol(cast(void**)&DrawPixelV, "DrawPixelV");
1365    lib.bindSymbol(cast(void**)&DrawLine, "DrawLine");
1366    lib.bindSymbol(cast(void**)&DrawLineV, "DrawLineV");
1367    lib.bindSymbol(cast(void**)&DrawLineEx, "DrawLineEx");
1368    lib.bindSymbol(cast(void**)&DrawLineStrip, "DrawLineStrip");
1369    lib.bindSymbol(cast(void**)&DrawLineBezier, "DrawLineBezier");
1370    lib.bindSymbol(cast(void**)&DrawCircle, "DrawCircle");
1371    lib.bindSymbol(cast(void**)&DrawCircleSector, "DrawCircleSector");
1372    lib.bindSymbol(cast(void**)&DrawCircleSectorLines, "DrawCircleSectorLines");
1373    lib.bindSymbol(cast(void**)&DrawCircleGradient, "DrawCircleGradient");
1374    lib.bindSymbol(cast(void**)&DrawCircleV, "DrawCircleV");
1375    lib.bindSymbol(cast(void**)&DrawCircleLines, "DrawCircleLines");
1376    lib.bindSymbol(cast(void**)&DrawCircleLinesV, "DrawCircleLinesV");
1377    lib.bindSymbol(cast(void**)&DrawEllipse, "DrawEllipse");
1378    lib.bindSymbol(cast(void**)&DrawEllipseLines, "DrawEllipseLines");
1379    lib.bindSymbol(cast(void**)&DrawRing, "DrawRing");
1380    lib.bindSymbol(cast(void**)&DrawRingLines, "DrawRingLines");
1381    lib.bindSymbol(cast(void**)&DrawRectangle, "DrawRectangle");
1382    lib.bindSymbol(cast(void**)&DrawRectangleV, "DrawRectangleV");
1383    lib.bindSymbol(cast(void**)&DrawRectangleRec, "DrawRectangleRec");
1384    lib.bindSymbol(cast(void**)&DrawRectanglePro, "DrawRectanglePro");
1385    lib.bindSymbol(cast(void**)&DrawRectangleGradientV, "DrawRectangleGradientV");
1386    lib.bindSymbol(cast(void**)&DrawRectangleGradientH, "DrawRectangleGradientH");
1387    lib.bindSymbol(cast(void**)&DrawRectangleGradientEx, "DrawRectangleGradientEx");
1388    lib.bindSymbol(cast(void**)&DrawRectangleLines, "DrawRectangleLines");
1389    lib.bindSymbol(cast(void**)&DrawRectangleLinesEx, "DrawRectangleLinesEx");
1390    lib.bindSymbol(cast(void**)&DrawRectangleRounded, "DrawRectangleRounded");
1391    lib.bindSymbol(cast(void**)&DrawRectangleRoundedLines, "DrawRectangleRoundedLines");
1392    lib.bindSymbol(cast(void**)&DrawTriangle, "DrawTriangle");
1393    lib.bindSymbol(cast(void**)&DrawTriangleLines, "DrawTriangleLines");
1394    lib.bindSymbol(cast(void**)&DrawTriangleFan, "DrawTriangleFan");
1395    lib.bindSymbol(cast(void**)&DrawTriangleStrip, "DrawTriangleStrip");
1396    lib.bindSymbol(cast(void**)&DrawPoly, "DrawPoly");
1397    lib.bindSymbol(cast(void**)&DrawPolyLines, "DrawPolyLines");
1398    lib.bindSymbol(cast(void**)&DrawPolyLinesEx, "DrawPolyLinesEx");
1399    lib.bindSymbol(cast(void**)&DrawSplineLinear, "DrawSplineLinear");
1400    lib.bindSymbol(cast(void**)&DrawSplineBasis, "DrawSplineBasis");
1401    lib.bindSymbol(cast(void**)&DrawSplineCatmullRom, "DrawSplineCatmullRom");
1402    lib.bindSymbol(cast(void**)&DrawSplineBezierQuadratic, "DrawSplineBezierQuadratic");
1403    lib.bindSymbol(cast(void**)&DrawSplineBezierCubic, "DrawSplineBezierCubic");
1404    lib.bindSymbol(cast(void**)&DrawSplineSegmentLinear, "DrawSplineSegmentLinear");
1405    lib.bindSymbol(cast(void**)&DrawSplineSegmentBasis, "DrawSplineSegmentBasis");
1406    lib.bindSymbol(cast(void**)&DrawSplineSegmentCatmullRom, "DrawSplineSegmentCatmullRom");
1407    lib.bindSymbol(cast(void**)&DrawSplineSegmentBezierQuadratic, "DrawSplineSegmentBezierQuadratic");
1408    lib.bindSymbol(cast(void**)&DrawSplineSegmentBezierCubic, "DrawSplineSegmentBezierCubic");
1409    lib.bindSymbol(cast(void**)&GetSplinePointLinear, "GetSplinePointLinear");
1410    lib.bindSymbol(cast(void**)&GetSplinePointBasis, "GetSplinePointBasis");
1411    lib.bindSymbol(cast(void**)&GetSplinePointCatmullRom, "GetSplinePointCatmullRom");
1412    lib.bindSymbol(cast(void**)&GetSplinePointBezierQuad, "GetSplinePointBezierQuad");
1413    lib.bindSymbol(cast(void**)&GetSplinePointBezierCubic, "GetSplinePointBezierCubic");
1414    lib.bindSymbol(cast(void**)&CheckCollisionRecs, "CheckCollisionRecs");
1415    lib.bindSymbol(cast(void**)&CheckCollisionCircles, "CheckCollisionCircles");
1416    lib.bindSymbol(cast(void**)&CheckCollisionCircleRec, "CheckCollisionCircleRec");
1417    lib.bindSymbol(cast(void**)&CheckCollisionPointRec, "CheckCollisionPointRec");
1418    lib.bindSymbol(cast(void**)&CheckCollisionPointCircle, "CheckCollisionPointCircle");
1419    lib.bindSymbol(cast(void**)&CheckCollisionPointTriangle, "CheckCollisionPointTriangle");
1420    lib.bindSymbol(cast(void**)&CheckCollisionPointPoly, "CheckCollisionPointPoly");
1421    lib.bindSymbol(cast(void**)&CheckCollisionLines, "CheckCollisionLines");
1422    lib.bindSymbol(cast(void**)&CheckCollisionPointLine, "CheckCollisionPointLine");
1423    lib.bindSymbol(cast(void**)&GetCollisionRec, "GetCollisionRec");
1424    lib.bindSymbol(cast(void**)&LoadImage, "LoadImage");
1425    lib.bindSymbol(cast(void**)&LoadImageRaw, "LoadImageRaw");
1426    lib.bindSymbol(cast(void**)&LoadImageSvg, "LoadImageSvg");
1427    lib.bindSymbol(cast(void**)&LoadImageAnim, "LoadImageAnim");
1428    lib.bindSymbol(cast(void**)&LoadImageFromMemory, "LoadImageFromMemory");
1429    lib.bindSymbol(cast(void**)&LoadImageFromTexture, "LoadImageFromTexture");
1430    lib.bindSymbol(cast(void**)&LoadImageFromScreen, "LoadImageFromScreen");
1431    lib.bindSymbol(cast(void**)&IsImageReady, "IsImageReady");
1432    lib.bindSymbol(cast(void**)&UnloadImage, "UnloadImage");
1433    lib.bindSymbol(cast(void**)&ExportImage, "ExportImage");
1434    lib.bindSymbol(cast(void**)&ExportImageToMemory, "ExportImageToMemory");
1435    lib.bindSymbol(cast(void**)&ExportImageAsCode, "ExportImageAsCode");
1436    lib.bindSymbol(cast(void**)&GenImageColor, "GenImageColor");
1437    lib.bindSymbol(cast(void**)&GenImageGradientLinear, "GenImageGradientLinear");
1438    lib.bindSymbol(cast(void**)&GenImageGradientRadial, "GenImageGradientRadial");
1439    lib.bindSymbol(cast(void**)&GenImageGradientSquare, "GenImageGradientSquare");
1440    lib.bindSymbol(cast(void**)&GenImageChecked, "GenImageChecked");
1441    lib.bindSymbol(cast(void**)&GenImageWhiteNoise, "GenImageWhiteNoise");
1442    lib.bindSymbol(cast(void**)&GenImagePerlinNoise, "GenImagePerlinNoise");
1443    lib.bindSymbol(cast(void**)&GenImageCellular, "GenImageCellular");
1444    lib.bindSymbol(cast(void**)&GenImageText, "GenImageText");
1445    lib.bindSymbol(cast(void**)&ImageCopy, "ImageCopy");
1446    lib.bindSymbol(cast(void**)&ImageFromImage, "ImageFromImage");
1447    lib.bindSymbol(cast(void**)&ImageText, "ImageText");
1448    lib.bindSymbol(cast(void**)&ImageTextEx, "ImageTextEx");
1449    lib.bindSymbol(cast(void**)&ImageFormat, "ImageFormat");
1450    lib.bindSymbol(cast(void**)&ImageToPOT, "ImageToPOT");
1451    lib.bindSymbol(cast(void**)&ImageCrop, "ImageCrop");
1452    lib.bindSymbol(cast(void**)&ImageAlphaCrop, "ImageAlphaCrop");
1453    lib.bindSymbol(cast(void**)&ImageAlphaClear, "ImageAlphaClear");
1454    lib.bindSymbol(cast(void**)&ImageAlphaMask, "ImageAlphaMask");
1455    lib.bindSymbol(cast(void**)&ImageAlphaPremultiply, "ImageAlphaPremultiply");
1456    lib.bindSymbol(cast(void**)&ImageBlurGaussian, "ImageBlurGaussian");
1457    lib.bindSymbol(cast(void**)&ImageResize, "ImageResize");
1458    lib.bindSymbol(cast(void**)&ImageResizeNN, "ImageResizeNN");
1459    lib.bindSymbol(cast(void**)&ImageResizeCanvas, "ImageResizeCanvas");
1460    lib.bindSymbol(cast(void**)&ImageMipmaps, "ImageMipmaps");
1461    lib.bindSymbol(cast(void**)&ImageDither, "ImageDither");
1462    lib.bindSymbol(cast(void**)&ImageFlipVertical, "ImageFlipVertical");
1463    lib.bindSymbol(cast(void**)&ImageFlipHorizontal, "ImageFlipHorizontal");
1464    lib.bindSymbol(cast(void**)&ImageRotate, "ImageRotate");
1465    lib.bindSymbol(cast(void**)&ImageRotateCW, "ImageRotateCW");
1466    lib.bindSymbol(cast(void**)&ImageRotateCCW, "ImageRotateCCW");
1467    lib.bindSymbol(cast(void**)&ImageColorTint, "ImageColorTint");
1468    lib.bindSymbol(cast(void**)&ImageColorInvert, "ImageColorInvert");
1469    lib.bindSymbol(cast(void**)&ImageColorGrayscale, "ImageColorGrayscale");
1470    lib.bindSymbol(cast(void**)&ImageColorContrast, "ImageColorContrast");
1471    lib.bindSymbol(cast(void**)&ImageColorBrightness, "ImageColorBrightness");
1472    lib.bindSymbol(cast(void**)&ImageColorReplace, "ImageColorReplace");
1473    lib.bindSymbol(cast(void**)&LoadImageColors, "LoadImageColors");
1474    lib.bindSymbol(cast(void**)&LoadImagePalette, "LoadImagePalette");
1475    lib.bindSymbol(cast(void**)&UnloadImageColors, "UnloadImageColors");
1476    lib.bindSymbol(cast(void**)&UnloadImagePalette, "UnloadImagePalette");
1477    lib.bindSymbol(cast(void**)&GetImageAlphaBorder, "GetImageAlphaBorder");
1478    lib.bindSymbol(cast(void**)&GetImageColor, "GetImageColor");
1479    lib.bindSymbol(cast(void**)&ImageClearBackground, "ImageClearBackground");
1480    lib.bindSymbol(cast(void**)&ImageDrawPixel, "ImageDrawPixel");
1481    lib.bindSymbol(cast(void**)&ImageDrawPixelV, "ImageDrawPixelV");
1482    lib.bindSymbol(cast(void**)&ImageDrawLine, "ImageDrawLine");
1483    lib.bindSymbol(cast(void**)&ImageDrawLineV, "ImageDrawLineV");
1484    lib.bindSymbol(cast(void**)&ImageDrawCircle, "ImageDrawCircle");
1485    lib.bindSymbol(cast(void**)&ImageDrawCircleV, "ImageDrawCircleV");
1486    lib.bindSymbol(cast(void**)&ImageDrawCircleLines, "ImageDrawCircleLines");
1487    lib.bindSymbol(cast(void**)&ImageDrawCircleLinesV, "ImageDrawCircleLinesV");
1488    lib.bindSymbol(cast(void**)&ImageDrawRectangle, "ImageDrawRectangle");
1489    lib.bindSymbol(cast(void**)&ImageDrawRectangleV, "ImageDrawRectangleV");
1490    lib.bindSymbol(cast(void**)&ImageDrawRectangleRec, "ImageDrawRectangleRec");
1491    lib.bindSymbol(cast(void**)&ImageDrawRectangleLines, "ImageDrawRectangleLines");
1492    lib.bindSymbol(cast(void**)&ImageDraw, "ImageDraw");
1493    lib.bindSymbol(cast(void**)&ImageDrawText, "ImageDrawText");
1494    lib.bindSymbol(cast(void**)&ImageDrawTextEx, "ImageDrawTextEx");
1495    lib.bindSymbol(cast(void**)&LoadTexture, "LoadTexture");
1496    lib.bindSymbol(cast(void**)&LoadTextureFromImage, "LoadTextureFromImage");
1497    lib.bindSymbol(cast(void**)&LoadTextureCubemap, "LoadTextureCubemap");
1498    lib.bindSymbol(cast(void**)&LoadRenderTexture, "LoadRenderTexture");
1499    lib.bindSymbol(cast(void**)&IsTextureReady, "IsTextureReady");
1500    lib.bindSymbol(cast(void**)&UnloadTexture, "UnloadTexture");
1501    lib.bindSymbol(cast(void**)&IsRenderTextureReady, "IsRenderTextureReady");
1502    lib.bindSymbol(cast(void**)&UnloadRenderTexture, "UnloadRenderTexture");
1503    lib.bindSymbol(cast(void**)&UpdateTexture, "UpdateTexture");
1504    lib.bindSymbol(cast(void**)&UpdateTextureRec, "UpdateTextureRec");
1505    lib.bindSymbol(cast(void**)&GenTextureMipmaps, "GenTextureMipmaps");
1506    lib.bindSymbol(cast(void**)&SetTextureFilter, "SetTextureFilter");
1507    lib.bindSymbol(cast(void**)&SetTextureWrap, "SetTextureWrap");
1508    lib.bindSymbol(cast(void**)&DrawTexture, "DrawTexture");
1509    lib.bindSymbol(cast(void**)&DrawTextureV, "DrawTextureV");
1510    lib.bindSymbol(cast(void**)&DrawTextureEx, "DrawTextureEx");
1511    lib.bindSymbol(cast(void**)&DrawTextureRec, "DrawTextureRec");
1512    lib.bindSymbol(cast(void**)&DrawTexturePro, "DrawTexturePro");
1513    lib.bindSymbol(cast(void**)&DrawTextureNPatch, "DrawTextureNPatch");
1514    lib.bindSymbol(cast(void**)&Fade, "Fade");
1515    lib.bindSymbol(cast(void**)&ColorToInt, "ColorToInt");
1516    lib.bindSymbol(cast(void**)&ColorNormalize, "ColorNormalize");
1517    lib.bindSymbol(cast(void**)&ColorFromNormalized, "ColorFromNormalized");
1518    lib.bindSymbol(cast(void**)&ColorToHSV, "ColorToHSV");
1519    lib.bindSymbol(cast(void**)&ColorFromHSV, "ColorFromHSV");
1520    lib.bindSymbol(cast(void**)&ColorTint, "ColorTint");
1521    lib.bindSymbol(cast(void**)&ColorBrightness, "ColorBrightness");
1522    lib.bindSymbol(cast(void**)&ColorContrast, "ColorContrast");
1523    lib.bindSymbol(cast(void**)&ColorAlpha, "ColorAlpha");
1524    lib.bindSymbol(cast(void**)&ColorAlphaBlend, "ColorAlphaBlend");
1525    lib.bindSymbol(cast(void**)&GetColor, "GetColor");
1526    lib.bindSymbol(cast(void**)&GetPixelColor, "GetPixelColor");
1527    lib.bindSymbol(cast(void**)&SetPixelColor, "SetPixelColor");
1528    lib.bindSymbol(cast(void**)&GetPixelDataSize, "GetPixelDataSize");
1529    lib.bindSymbol(cast(void**)&GetFontDefault, "GetFontDefault");
1530    lib.bindSymbol(cast(void**)&LoadFont, "LoadFont");
1531    lib.bindSymbol(cast(void**)&LoadFontEx, "LoadFontEx");
1532    lib.bindSymbol(cast(void**)&LoadFontFromImage, "LoadFontFromImage");
1533    lib.bindSymbol(cast(void**)&LoadFontFromMemory, "LoadFontFromMemory");
1534    lib.bindSymbol(cast(void**)&IsFontReady, "IsFontReady");
1535    lib.bindSymbol(cast(void**)&LoadFontData, "LoadFontData");
1536    lib.bindSymbol(cast(void**)&GenImageFontAtlas, "GenImageFontAtlas");
1537    lib.bindSymbol(cast(void**)&UnloadFontData, "UnloadFontData");
1538    lib.bindSymbol(cast(void**)&UnloadFont, "UnloadFont");
1539    lib.bindSymbol(cast(void**)&ExportFontAsCode, "ExportFontAsCode");
1540    lib.bindSymbol(cast(void**)&DrawFPS, "DrawFPS");
1541    lib.bindSymbol(cast(void**)&DrawText, "DrawText");
1542    lib.bindSymbol(cast(void**)&DrawTextEx, "DrawTextEx");
1543    lib.bindSymbol(cast(void**)&DrawTextPro, "DrawTextPro");
1544    lib.bindSymbol(cast(void**)&DrawTextCodepoint, "DrawTextCodepoint");
1545    lib.bindSymbol(cast(void**)&DrawTextCodepoints, "DrawTextCodepoints");
1546    lib.bindSymbol(cast(void**)&SetTextLineSpacing, "SetTextLineSpacing");
1547    lib.bindSymbol(cast(void**)&MeasureText, "MeasureText");
1548    lib.bindSymbol(cast(void**)&MeasureTextEx, "MeasureTextEx");
1549    lib.bindSymbol(cast(void**)&GetGlyphIndex, "GetGlyphIndex");
1550    lib.bindSymbol(cast(void**)&GetGlyphInfo, "GetGlyphInfo");
1551    lib.bindSymbol(cast(void**)&GetGlyphAtlasRec, "GetGlyphAtlasRec");
1552    lib.bindSymbol(cast(void**)&LoadUTF8, "LoadUTF8");
1553    lib.bindSymbol(cast(void**)&UnloadUTF8, "UnloadUTF8");
1554    lib.bindSymbol(cast(void**)&LoadCodepoints, "LoadCodepoints");
1555    lib.bindSymbol(cast(void**)&UnloadCodepoints, "UnloadCodepoints");
1556    lib.bindSymbol(cast(void**)&GetCodepointCount, "GetCodepointCount");
1557    lib.bindSymbol(cast(void**)&GetCodepoint, "GetCodepoint");
1558    lib.bindSymbol(cast(void**)&GetCodepointNext, "GetCodepointNext");
1559    lib.bindSymbol(cast(void**)&GetCodepointPrevious, "GetCodepointPrevious");
1560    lib.bindSymbol(cast(void**)&CodepointToUTF8, "CodepointToUTF8");
1561    lib.bindSymbol(cast(void**)&TextCopy, "TextCopy");
1562    lib.bindSymbol(cast(void**)&TextIsEqual, "TextIsEqual");
1563    lib.bindSymbol(cast(void**)&TextLength, "TextLength");
1564    lib.bindSymbol(cast(void**)&TextSubtext, "TextSubtext");
1565    lib.bindSymbol(cast(void**)&TextReplace, "TextReplace");
1566    lib.bindSymbol(cast(void**)&TextInsert, "TextInsert");
1567    lib.bindSymbol(cast(void**)&TextJoin, "TextJoin");
1568    lib.bindSymbol(cast(void**)&TextSplit, "TextSplit");
1569    lib.bindSymbol(cast(void**)&TextAppend, "TextAppend");
1570    lib.bindSymbol(cast(void**)&TextFindIndex, "TextFindIndex");
1571    lib.bindSymbol(cast(void**)&TextToUpper, "TextToUpper");
1572    lib.bindSymbol(cast(void**)&TextToLower, "TextToLower");
1573    lib.bindSymbol(cast(void**)&TextToPascal, "TextToPascal");
1574    lib.bindSymbol(cast(void**)&TextToInteger, "TextToInteger");
1575    lib.bindSymbol(cast(void**)&DrawLine3D, "DrawLine3D");
1576    lib.bindSymbol(cast(void**)&DrawPoint3D, "DrawPoint3D");
1577    lib.bindSymbol(cast(void**)&DrawCircle3D, "DrawCircle3D");
1578    lib.bindSymbol(cast(void**)&DrawTriangle3D, "DrawTriangle3D");
1579    lib.bindSymbol(cast(void**)&DrawTriangleStrip3D, "DrawTriangleStrip3D");
1580    lib.bindSymbol(cast(void**)&DrawCube, "DrawCube");
1581    lib.bindSymbol(cast(void**)&DrawCubeV, "DrawCubeV");
1582    lib.bindSymbol(cast(void**)&DrawCubeWires, "DrawCubeWires");
1583    lib.bindSymbol(cast(void**)&DrawCubeWiresV, "DrawCubeWiresV");
1584    lib.bindSymbol(cast(void**)&DrawSphere, "DrawSphere");
1585    lib.bindSymbol(cast(void**)&DrawSphereEx, "DrawSphereEx");
1586    lib.bindSymbol(cast(void**)&DrawSphereWires, "DrawSphereWires");
1587    lib.bindSymbol(cast(void**)&DrawCylinder, "DrawCylinder");
1588    lib.bindSymbol(cast(void**)&DrawCylinderEx, "DrawCylinderEx");
1589    lib.bindSymbol(cast(void**)&DrawCylinderWires, "DrawCylinderWires");
1590    lib.bindSymbol(cast(void**)&DrawCylinderWiresEx, "DrawCylinderWiresEx");
1591    lib.bindSymbol(cast(void**)&DrawCapsule, "DrawCapsule");
1592    lib.bindSymbol(cast(void**)&DrawCapsuleWires, "DrawCapsuleWires");
1593    lib.bindSymbol(cast(void**)&DrawPlane, "DrawPlane");
1594    lib.bindSymbol(cast(void**)&DrawRay, "DrawRay");
1595    lib.bindSymbol(cast(void**)&DrawGrid, "DrawGrid");
1596    lib.bindSymbol(cast(void**)&LoadModel, "LoadModel");
1597    lib.bindSymbol(cast(void**)&LoadModelFromMesh, "LoadModelFromMesh");
1598    lib.bindSymbol(cast(void**)&IsModelReady, "IsModelReady");
1599    lib.bindSymbol(cast(void**)&UnloadModel, "UnloadModel");
1600    lib.bindSymbol(cast(void**)&GetModelBoundingBox, "GetModelBoundingBox");
1601    lib.bindSymbol(cast(void**)&DrawModel, "DrawModel");
1602    lib.bindSymbol(cast(void**)&DrawModelEx, "DrawModelEx");
1603    lib.bindSymbol(cast(void**)&DrawModelWires, "DrawModelWires");
1604    lib.bindSymbol(cast(void**)&DrawModelWiresEx, "DrawModelWiresEx");
1605    lib.bindSymbol(cast(void**)&DrawBoundingBox, "DrawBoundingBox");
1606    lib.bindSymbol(cast(void**)&DrawBillboard, "DrawBillboard");
1607    lib.bindSymbol(cast(void**)&DrawBillboardRec, "DrawBillboardRec");
1608    lib.bindSymbol(cast(void**)&DrawBillboardPro, "DrawBillboardPro");
1609    lib.bindSymbol(cast(void**)&UploadMesh, "UploadMesh");
1610    lib.bindSymbol(cast(void**)&UpdateMeshBuffer, "UpdateMeshBuffer");
1611    lib.bindSymbol(cast(void**)&UnloadMesh, "UnloadMesh");
1612    lib.bindSymbol(cast(void**)&DrawMesh, "DrawMesh");
1613    lib.bindSymbol(cast(void**)&DrawMeshInstanced, "DrawMeshInstanced");
1614    lib.bindSymbol(cast(void**)&ExportMesh, "ExportMesh");
1615    lib.bindSymbol(cast(void**)&GetMeshBoundingBox, "GetMeshBoundingBox");
1616    lib.bindSymbol(cast(void**)&GenMeshTangents, "GenMeshTangents");
1617    lib.bindSymbol(cast(void**)&GenMeshPoly, "GenMeshPoly");
1618    lib.bindSymbol(cast(void**)&GenMeshPlane, "GenMeshPlane");
1619    lib.bindSymbol(cast(void**)&GenMeshCube, "GenMeshCube");
1620    lib.bindSymbol(cast(void**)&GenMeshSphere, "GenMeshSphere");
1621    lib.bindSymbol(cast(void**)&GenMeshHemiSphere, "GenMeshHemiSphere");
1622    lib.bindSymbol(cast(void**)&GenMeshCylinder, "GenMeshCylinder");
1623    lib.bindSymbol(cast(void**)&GenMeshCone, "GenMeshCone");
1624    lib.bindSymbol(cast(void**)&GenMeshTorus, "GenMeshTorus");
1625    lib.bindSymbol(cast(void**)&GenMeshKnot, "GenMeshKnot");
1626    lib.bindSymbol(cast(void**)&GenMeshHeightmap, "GenMeshHeightmap");
1627    lib.bindSymbol(cast(void**)&GenMeshCubicmap, "GenMeshCubicmap");
1628    lib.bindSymbol(cast(void**)&LoadMaterials, "LoadMaterials");
1629    lib.bindSymbol(cast(void**)&LoadMaterialDefault, "LoadMaterialDefault");
1630    lib.bindSymbol(cast(void**)&IsMaterialReady, "IsMaterialReady");
1631    lib.bindSymbol(cast(void**)&UnloadMaterial, "UnloadMaterial");
1632    lib.bindSymbol(cast(void**)&SetMaterialTexture, "SetMaterialTexture");
1633    lib.bindSymbol(cast(void**)&SetModelMeshMaterial, "SetModelMeshMaterial");
1634    lib.bindSymbol(cast(void**)&LoadModelAnimations, "LoadModelAnimations");
1635    lib.bindSymbol(cast(void**)&UpdateModelAnimation, "UpdateModelAnimation");
1636    lib.bindSymbol(cast(void**)&UnloadModelAnimation, "UnloadModelAnimation");
1637    lib.bindSymbol(cast(void**)&UnloadModelAnimations, "UnloadModelAnimations");
1638    lib.bindSymbol(cast(void**)&IsModelAnimationValid, "IsModelAnimationValid");
1639    lib.bindSymbol(cast(void**)&CheckCollisionSpheres, "CheckCollisionSpheres");
1640    lib.bindSymbol(cast(void**)&CheckCollisionBoxes, "CheckCollisionBoxes");
1641    lib.bindSymbol(cast(void**)&CheckCollisionBoxSphere, "CheckCollisionBoxSphere");
1642    lib.bindSymbol(cast(void**)&GetRayCollisionSphere, "GetRayCollisionSphere");
1643    lib.bindSymbol(cast(void**)&GetRayCollisionBox, "GetRayCollisionBox");
1644    lib.bindSymbol(cast(void**)&GetRayCollisionMesh, "GetRayCollisionMesh");
1645    lib.bindSymbol(cast(void**)&GetRayCollisionTriangle, "GetRayCollisionTriangle");
1646    lib.bindSymbol(cast(void**)&GetRayCollisionQuad, "GetRayCollisionQuad");
1647    lib.bindSymbol(cast(void**)&InitAudioDevice, "InitAudioDevice");
1648    lib.bindSymbol(cast(void**)&CloseAudioDevice, "CloseAudioDevice");
1649    lib.bindSymbol(cast(void**)&IsAudioDeviceReady, "IsAudioDeviceReady");
1650    lib.bindSymbol(cast(void**)&SetMasterVolume, "SetMasterVolume");
1651    lib.bindSymbol(cast(void**)&GetMasterVolume, "GetMasterVolume");
1652    lib.bindSymbol(cast(void**)&LoadWave, "LoadWave");
1653    lib.bindSymbol(cast(void**)&LoadWaveFromMemory, "LoadWaveFromMemory");
1654    lib.bindSymbol(cast(void**)&IsWaveReady, "IsWaveReady");
1655    lib.bindSymbol(cast(void**)&LoadSound, "LoadSound");
1656    lib.bindSymbol(cast(void**)&LoadSoundFromWave, "LoadSoundFromWave");
1657    lib.bindSymbol(cast(void**)&LoadSoundAlias, "LoadSoundAlias");
1658    lib.bindSymbol(cast(void**)&IsSoundReady, "IsSoundReady");
1659    lib.bindSymbol(cast(void**)&UpdateSound, "UpdateSound");
1660    lib.bindSymbol(cast(void**)&UnloadWave, "UnloadWave");
1661    lib.bindSymbol(cast(void**)&UnloadSound, "UnloadSound");
1662    lib.bindSymbol(cast(void**)&UnloadSoundAlias, "UnloadSoundAlias");
1663    lib.bindSymbol(cast(void**)&ExportWave, "ExportWave");
1664    lib.bindSymbol(cast(void**)&ExportWaveAsCode, "ExportWaveAsCode");
1665    lib.bindSymbol(cast(void**)&PlaySound, "PlaySound");
1666    lib.bindSymbol(cast(void**)&StopSound, "StopSound");
1667    lib.bindSymbol(cast(void**)&PauseSound, "PauseSound");
1668    lib.bindSymbol(cast(void**)&ResumeSound, "ResumeSound");
1669    lib.bindSymbol(cast(void**)&IsSoundPlaying, "IsSoundPlaying");
1670    lib.bindSymbol(cast(void**)&SetSoundVolume, "SetSoundVolume");
1671    lib.bindSymbol(cast(void**)&SetSoundPitch, "SetSoundPitch");
1672    lib.bindSymbol(cast(void**)&SetSoundPan, "SetSoundPan");
1673    lib.bindSymbol(cast(void**)&WaveCopy, "WaveCopy");
1674    lib.bindSymbol(cast(void**)&WaveCrop, "WaveCrop");
1675    lib.bindSymbol(cast(void**)&WaveFormat, "WaveFormat");
1676    lib.bindSymbol(cast(void**)&LoadWaveSamples, "LoadWaveSamples");
1677    lib.bindSymbol(cast(void**)&UnloadWaveSamples, "UnloadWaveSamples");
1678    lib.bindSymbol(cast(void**)&LoadMusicStream, "LoadMusicStream");
1679    lib.bindSymbol(cast(void**)&LoadMusicStreamFromMemory, "LoadMusicStreamFromMemory");
1680    lib.bindSymbol(cast(void**)&IsMusicReady, "IsMusicReady");
1681    lib.bindSymbol(cast(void**)&UnloadMusicStream, "UnloadMusicStream");
1682    lib.bindSymbol(cast(void**)&PlayMusicStream, "PlayMusicStream");
1683    lib.bindSymbol(cast(void**)&IsMusicStreamPlaying, "IsMusicStreamPlaying");
1684    lib.bindSymbol(cast(void**)&UpdateMusicStream, "UpdateMusicStream");
1685    lib.bindSymbol(cast(void**)&StopMusicStream, "StopMusicStream");
1686    lib.bindSymbol(cast(void**)&PauseMusicStream, "PauseMusicStream");
1687    lib.bindSymbol(cast(void**)&ResumeMusicStream, "ResumeMusicStream");
1688    lib.bindSymbol(cast(void**)&SeekMusicStream, "SeekMusicStream");
1689    lib.bindSymbol(cast(void**)&SetMusicVolume, "SetMusicVolume");
1690    lib.bindSymbol(cast(void**)&SetMusicPitch, "SetMusicPitch");
1691    lib.bindSymbol(cast(void**)&SetMusicPan, "SetMusicPan");
1692    lib.bindSymbol(cast(void**)&GetMusicTimeLength, "GetMusicTimeLength");
1693    lib.bindSymbol(cast(void**)&GetMusicTimePlayed, "GetMusicTimePlayed");
1694    lib.bindSymbol(cast(void**)&LoadAudioStream, "LoadAudioStream");
1695    lib.bindSymbol(cast(void**)&IsAudioStreamReady, "IsAudioStreamReady");
1696    lib.bindSymbol(cast(void**)&UnloadAudioStream, "UnloadAudioStream");
1697    lib.bindSymbol(cast(void**)&UpdateAudioStream, "UpdateAudioStream");
1698    lib.bindSymbol(cast(void**)&IsAudioStreamProcessed, "IsAudioStreamProcessed");
1699    lib.bindSymbol(cast(void**)&PlayAudioStream, "PlayAudioStream");
1700    lib.bindSymbol(cast(void**)&PauseAudioStream, "PauseAudioStream");
1701    lib.bindSymbol(cast(void**)&ResumeAudioStream, "ResumeAudioStream");
1702    lib.bindSymbol(cast(void**)&IsAudioStreamPlaying, "IsAudioStreamPlaying");
1703    lib.bindSymbol(cast(void**)&StopAudioStream, "StopAudioStream");
1704    lib.bindSymbol(cast(void**)&SetAudioStreamVolume, "SetAudioStreamVolume");
1705    lib.bindSymbol(cast(void**)&SetAudioStreamPitch, "SetAudioStreamPitch");
1706    lib.bindSymbol(cast(void**)&SetAudioStreamPan, "SetAudioStreamPan");
1707    lib.bindSymbol(cast(void**)&SetAudioStreamBufferSizeDefault, "SetAudioStreamBufferSizeDefault");
1708    lib.bindSymbol(cast(void**)&SetAudioStreamCallback, "SetAudioStreamCallback");
1709    lib.bindSymbol(cast(void**)&AttachAudioStreamProcessor, "AttachAudioStreamProcessor");
1710    lib.bindSymbol(cast(void**)&DetachAudioStreamProcessor, "DetachAudioStreamProcessor");
1711    lib.bindSymbol(cast(void**)&AttachAudioMixedProcessor, "AttachAudioMixedProcessor");
1712    lib.bindSymbol(cast(void**)&DetachAudioMixedProcessor, "DetachAudioMixedProcessor");
1713    if (errorCount() != errCount) {
1714       return RaylibSupport.badLibrary;
1715    } else {
1716       loadedVersion = RaylibSupport.raylib500;
1717    }
1718 
1719    return loadedVersion;
1720 }
1721