2024-03-18 08:06:11 -04:00
------------------------------------------------------------------------
with System ;
package Raylib is
------------------------------------------------------------------------
2024-03-18 08:19:30 -04:00
type Logical is new Boolean ;
--
for Logical ' Size use 32 ;
2024-03-18 08:06:11 -04:00
type Config_Flags is (
2024-03-18 15:48:53 -04:00
Flag_None ,
2024-03-18 08:06:11 -04:00
Flag_Fullscreen_Mode ,
Flag_Window_Resizable ,
Flag_Window_Undecorated ,
Flag_Window_Transparent ,
Flag_MSAA_x4_Hint ,
Flag_VSync_Hint ,
Flag_Window_Hidden ,
Flag_Window_Always_Run ,
Flag_Window_Minimized ,
Flag_Window_Maximized ,
Flag_Window_Unfocused ,
Flag_Window_Topmost ,
Flag_Window_High_DPI ,
Flag_Window_Mouse_Passthrough ,
Flag_Borderless_Windowed_Mode ,
Flag_Interlaced_Hint
) with Convention => C ;
for Config_Flags use (
2024-03-18 15:48:53 -04:00
Flag_None => 16#00000000# ,
2024-03-18 08:06:11 -04:00
Flag_Fullscreen_Mode => 16#00000002# ,
Flag_Window_Resizable => 16#00000004# ,
Flag_Window_Undecorated => 16#00000008# ,
Flag_Window_Transparent => 16#00000010# ,
Flag_MSAA_x4_Hint => 16#00000020# ,
Flag_VSync_Hint => 16#00000040# ,
Flag_Window_Hidden => 16#00000080# ,
Flag_Window_Always_Run => 16#00000100# ,
Flag_Window_Minimized => 16#00000200# ,
Flag_Window_Maximized => 16#00000400# ,
Flag_Window_Unfocused => 16#00000800# ,
Flag_Window_Topmost => 16#00001000# ,
Flag_Window_High_DPI => 16#00002000# ,
Flag_Window_Mouse_Passthrough => 16#00004000# ,
Flag_Borderless_Windowed_Mode => 16#00008000# ,
Flag_Interlaced_Hint => 16#00010000#
) ;
type Trace_Log_Level is (
Log_All ,
Log_Trace ,
Log_Debug ,
Log_Info ,
Log_Warning ,
Log_Error ,
Log_Fatal ,
Log_None
) with Convention => C ;
type Keyboard_Key is (
Key_Null ,
Key_Space ,
Key_Apostrophe ,
Key_Comma ,
Key_Minus ,
Key_Period ,
Key_Slash ,
Key_0 ,
Key_1 ,
Key_2 ,
Key_3 ,
Key_4 ,
Key_5 ,
Key_6 ,
Key_7 ,
Key_8 ,
Key_9 ,
Key_Semicolon ,
Key_Equal ,
Key_A ,
Key_B ,
Key_C ,
Key_D ,
Key_E ,
Key_F ,
Key_G ,
Key_H ,
Key_I ,
Key_J ,
Key_K ,
Key_L ,
Key_M ,
Key_N ,
Key_O ,
Key_P ,
Key_Q ,
Key_R ,
Key_S ,
Key_T ,
Key_U ,
Key_V ,
Key_W ,
Key_X ,
Key_Y ,
Key_Z ,
Key_Left_Bracket ,
Key_Backslash ,
Key_Right_Bracket ,
Key_Grave ,
Key_Escape ,
Key_Enter ,
Key_Tab ,
Key_Backspace ,
Key_Insert ,
Key_Delete ,
Key_Right ,
Key_Left ,
Key_Down ,
Key_Up ,
Key_Page_Up ,
Key_Page_Down ,
Key_Home ,
Key_End ,
Key_Caps_Lock ,
Key_Scroll_Lock ,
Key_Num_Lock ,
Key_Print_Screen ,
Key_Pause ,
Key_F1 ,
Key_F2 ,
Key_F3 ,
Key_F4 ,
Key_F5 ,
Key_F6 ,
Key_F7 ,
Key_F8 ,
Key_F9 ,
Key_F10 ,
Key_F11 ,
Key_F12 ,
Key_Pad_0 ,
Key_Pad_1 ,
Key_Pad_2 ,
Key_Pad_3 ,
Key_Pad_4 ,
Key_Pad_5 ,
Key_Pad_6 ,
Key_Pad_7 ,
Key_Pad_8 ,
Key_Pad_9 ,
Key_Pad_Decimal ,
Key_Pad_Divide ,
Key_Pad_Multiply ,
Key_Pad_Subtract ,
Key_Pad_Add ,
Key_Pad_Enter ,
Key_Pad_Equal ,
Key_Left_Shift ,
Key_Left_Control ,
Key_Left_Alt ,
Key_Left_Super ,
Key_Right_Shift ,
Key_Right_Control ,
Key_Right_Alt ,
Key_Right_Super ,
Key_KB_Menu
) with Convention => C ;
for Keyboard_Key use (
Key_Null => 0 ,
Key_Space => 32 ,
Key_Apostrophe => 39 ,
Key_Comma => 44 ,
Key_Minus => 45 ,
Key_Period => 46 ,
Key_Slash => 47 ,
Key_0 => 48 ,
Key_1 => 49 ,
Key_2 => 50 ,
Key_3 => 51 ,
Key_4 => 52 ,
Key_5 => 53 ,
Key_6 => 54 ,
Key_7 => 55 ,
Key_8 => 56 ,
Key_9 => 57 ,
Key_Semicolon => 59 ,
Key_Equal => 61 ,
Key_A => 65 ,
Key_B => 66 ,
Key_C => 67 ,
Key_D => 68 ,
Key_E => 69 ,
Key_F => 70 ,
Key_G => 71 ,
Key_H => 72 ,
Key_I => 73 ,
Key_J => 74 ,
Key_K => 75 ,
Key_L => 76 ,
Key_M => 77 ,
Key_N => 78 ,
Key_O => 79 ,
Key_P => 80 ,
Key_Q => 81 ,
Key_R => 82 ,
Key_S => 83 ,
Key_T => 84 ,
Key_U => 85 ,
Key_V => 86 ,
Key_W => 87 ,
Key_X => 88 ,
Key_Y => 89 ,
Key_Z => 90 ,
Key_Left_Bracket => 91 ,
Key_Backslash => 92 ,
Key_Right_Bracket => 93 ,
Key_Grave => 96 ,
Key_Escape => 256 ,
Key_Enter => 257 ,
Key_Tab => 258 ,
Key_Backspace => 259 ,
Key_Insert => 260 ,
Key_Delete => 261 ,
Key_Right => 262 ,
Key_Left => 263 ,
Key_Down => 264 ,
Key_Up => 265 ,
Key_Page_Up => 266 ,
Key_Page_Down => 267 ,
Key_Home => 268 ,
Key_End => 269 ,
Key_Caps_Lock => 280 ,
Key_Scroll_Lock => 281 ,
Key_Num_Lock => 282 ,
Key_Print_Screen => 283 ,
Key_Pause => 284 ,
Key_F1 => 290 ,
Key_F2 => 291 ,
Key_F3 => 292 ,
Key_F4 => 293 ,
Key_F5 => 294 ,
Key_F6 => 295 ,
Key_F7 => 296 ,
Key_F8 => 297 ,
Key_F9 => 298 ,
Key_F10 => 299 ,
Key_F11 => 300 ,
Key_F12 => 301 ,
Key_Pad_0 => 320 ,
Key_Pad_1 => 321 ,
Key_Pad_2 => 322 ,
Key_Pad_3 => 323 ,
Key_Pad_4 => 324 ,
Key_Pad_5 => 325 ,
Key_Pad_6 => 326 ,
Key_Pad_7 => 327 ,
Key_Pad_8 => 328 ,
Key_Pad_9 => 329 ,
Key_Pad_Decimal => 330 ,
Key_Pad_Divide => 331 ,
Key_Pad_Multiply => 332 ,
Key_Pad_Subtract => 333 ,
Key_Pad_Add => 334 ,
Key_Pad_Enter => 335 ,
Key_Pad_Equal => 336 ,
Key_Left_Shift => 340 ,
Key_Left_Control => 341 ,
Key_Left_Alt => 342 ,
Key_Left_Super => 343 ,
Key_Right_Shift => 344 ,
Key_Right_Control => 345 ,
Key_Right_Alt => 346 ,
Key_Right_Super => 347 ,
Key_KB_Menu => 348
) ;
type Mouse_Button is (
Mouse_Button_Left ,
Mouse_Button_Right ,
Mouse_Button_Middle ,
Mouse_Button_Side ,
Mouse_Button_Extra ,
Mouse_Button_Forward ,
Mouse_Button_Back
) with Convention => C ;
type Mouse_Cursor is (
Mouse_Cursor_Default ,
Mouse_Cursor_Arrow ,
Mouse_Cursor_Ibeam ,
Mouse_Cursor_Crosshair ,
Mouse_Cursor_Pointing_Hand ,
Mouse_Cursor_Resize_EW ,
Mouse_Cursor_Resize_NS ,
Mouse_Cursor_Resize_NWSE ,
Mouse_Cursor_Resize_NESW ,
Mouse_Cursor_Resize_All ,
Mouse_Cursor_Not_Allowed
) with Convention => C ;
type Gamepad_Button is (
Gamepad_Button_Unknown ,
Gamepad_Button_Left_Face_Up ,
Gamepad_Button_Left_Face_Right ,
Gamepad_Button_Left_Face_Down ,
Gamepad_Button_Left_Face_Left ,
Gamepad_Button_Right_Face_Up ,
Gamepad_Button_Right_Face_Right ,
Gamepad_Button_Right_Face_Down ,
Gamepad_Button_Right_Face_Left ,
Gamepad_Button_Left_Trigger_1 ,
Gamepad_Button_Left_Trigger_2 ,
Gamepad_Button_Right_Trigger_1 ,
Gamepad_Button_Right_Trigger_2 ,
Gamepad_Button_Middle_Left ,
Gamepad_Button_Middle ,
Gamepad_Button_Middle_Right ,
Gamepad_Button_Left_Thumb ,
Gamepad_Button_Right_Thumb
) with Convention => C ;
type Gamepad_Axis is (
Gamepad_Axis_Left_X ,
Gamepad_Axis_Left_Y ,
Gamepad_Axis_Right_X ,
Gamepad_Axis_Right_Y ,
Gamepad_Axis_Left_Trigger ,
Gamepad_Axis_Right_Trigger
) with Convention => C ;
type Material_Map_Index is (
Material_Map_Diffuse ,
Material_Map_Specular ,
Material_Map_Normal ,
Material_Map_Roughness ,
Material_Map_Occlusion ,
Material_Map_Emission ,
Material_Map_Height ,
Material_Map_Cubemap ,
Material_Map_Irradiance ,
Material_Map_Prefilter ,
Material_Map_BRDF
) with Convention => C ;
type Shader_Location_Index is (
Shader_Location_Vertex_Position ,
Shader_Location_Vertex_Texcoord_1 ,
Shader_Location_Vertex_Texcoord_2 ,
Shader_Location_Vertex_Normal ,
Shader_Location_Vertex_Tangent ,
Shader_Location_Vertex_Color ,
Shader_Location_Matrix_MVP ,
Shader_Location_Matrix_View ,
Shader_Location_Matrix_Projection ,
Shader_Location_Matrix_Model ,
Shader_Location_Matrix_Normal ,
Shader_Location_Vector_View ,
Shader_Location_Color_Diffuse ,
Shader_Location_Color_Specular ,
Shader_Location_Color_Ambient ,
Shader_Location_Map_Diffuse ,
Shader_Location_Map_Specular ,
Shader_Location_Map_Normal ,
Shader_Location_Map_Roughness ,
Shader_Location_Map_Occlusion ,
Shader_Location_Map_Emission ,
Shader_Location_Map_Height ,
Shader_Location_Map_Cubemap ,
Shader_Location_Map_Irradiance ,
Shader_Location_Map_Prefilter ,
Shader_Location_Map_BRDF
) with Convention => C ;
type Shader_Uniform_Data_Type is (
Shader_Uniform_FLOAT ,
Shader_Uniform_VEC2 ,
Shader_Uniform_VEC3 ,
Shader_Uniform_VEC4 ,
Shader_Uniform_INT ,
Shader_Uniform_IVEC2 ,
Shader_Uniform_IVEC3 ,
Shader_Uniform_IVEC4 ,
Shader_Uniform_SAMPLER2D
) with Convention => C ;
type Shader_Attribute_Data_Type is (
Shader_Attribute_FLOAT ,
Shader_Attribute_VEC2 ,
Shader_Attribute_VEC3 ,
Shader_Attribute_VEC4
) with Convention => C ;
type Pixel_Format is (
Pixel_Format_None ,
Pixel_Format_Uncompressed_Grayscale ,
Pixel_Format_Uncompressed_Gray_Alpha ,
Pixel_Format_Uncompressed_R5G6B5 ,
Pixel_Format_Uncompressed_R8G8B8 ,
Pixel_Format_Uncompressed_R5G5B5A1 ,
Pixel_Format_Uncompressed_R4G4B4A4 ,
Pixel_Format_Uncompressed_R8G8B8A8 ,
Pixel_Format_Uncompressed_R32 ,
Pixel_Format_Uncompressed_R32G32B32 ,
Pixel_Format_Uncompressed_R32G32B32A32 ,
Pixel_Format_Uncompressed_R16 ,
Pixel_Format_Uncompressed_R16G16B16 ,
Pixel_Format_Uncompressed_R16G16B16A16 ,
Pixel_Format_Compressed_DXT1_RGB ,
Pixel_Format_Compressed_DXT1_RGBA ,
Pixel_Format_Compressed_DXT3_RGBA ,
Pixel_Format_Compressed_DXT5_RGBA ,
Pixel_Format_Compressed_ETC1_RGB ,
Pixel_Format_Compressed_ETC2_RGB ,
Pixel_Format_Compressed_ETC2_EAC_RGBA ,
Pixel_Format_Compressed_PVRT_RGB ,
Pixel_Format_Compressed_PVRT_RGBA ,
Pixel_Format_Compressed_ASTC_4x4_RGBA ,
Pixel_Format_Compressed_ASTC_8x8_RGBA
) with Convention => C ;
type Texture_Filter is (
Texture_Filter_Point ,
Texture_Filter_Bilinear ,
Texture_Filter_Trilinear ,
Texture_Filter_Anisotropic_x4 ,
Texture_Filter_Anisotropic_x8 ,
Texture_Filter_Anisotropic_x16
) with Convention => C ;
type Texture_Wrap is (
Texture_Wrap_Repeat ,
Texture_Wrap_Clamp ,
Texture_Wrap_Mirror_Repeat ,
Texture_Wrap_Mirror_Clamp
) with Convention => C ;
type Cubemap_Layout is (
Cubemap_Layout_Auto_Detect ,
Cubemap_Layout_Line_Vertical ,
Cubemap_Layout_Line_Horizontal ,
Cubemap_Layout_Cross_3_By_4 ,
Cubemap_Layout_Cross_4_By_3 ,
Cubemap_Layout_Panorama
) with Convention => C ;
type Font_Type is (
Font_Default ,
Font_Bitmap ,
Font_SDF
) with Convention => C ;
type Blend_Mode is (
Blend_Alpha ,
Blend_Additive ,
Blend_Multiplied ,
Blend_Add_Colors ,
Blend_Subtract_Colors ,
Blend_Alpha_Premultiply ,
Blend_Custom ,
Blend_Custom_Separate
) with Convention => C ;
type Gesture is (
Gesture_None ,
Gesture_Tap ,
Gesture_Doubletap ,
Gesture_Hold ,
Gesture_Drag ,
Gesture_Swipe_Right ,
Gesture_Swipe_Left ,
Gesture_Swipe_Up ,
Gesture_Swipe_Down ,
Gesture_Pinch_In ,
Gesture_Pinch_Out
) with Convention => C ;
for Gesture use (
Gesture_None => 0 ,
Gesture_Tap => 1 ,
Gesture_Doubletap => 2 ,
Gesture_Hold => 4 ,
Gesture_Drag => 8 ,
Gesture_Swipe_Right => 16 ,
Gesture_Swipe_Left => 32 ,
Gesture_Swipe_Up => 64 ,
Gesture_Swipe_Down => 128 ,
Gesture_Pinch_In => 256 ,
Gesture_Pinch_Out => 512
) ;
type Camera_Mode is (
Camera_Custom ,
Camera_Free ,
Camera_Orbital ,
Camera_First_Person ,
Camera_Third_Person
) with Convention => C ;
type Camera_Projection is (
Camera_Perspective ,
Camera_Orthographic
) with Convention => C ;
type NPatch_Layout is (
NPatch_Nine_Patch ,
NPatch_Three_Patch_Vertical ,
NPatch_Three_Patch_Horizontal
) with Convention => C ;
------------------------------------------------------------------------
type Color_Range is range 0 . . 2 * * 8 - 1 ;
type Index_Range is range 0 . . 2 * * 16 - 1 ;
2024-03-18 14:40:43 -04:00
for Color_Range ' Size use 8 ;
for Index_Range ' Size use 16 ;
2024-03-18 08:06:11 -04:00
type Pointer is access all System . Address ;
type Vector_2D is record
X : Float := 0.0 ;
Y : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
type Vector_3D is record
X : Float := 0.0 ;
Y : Float := 0.0 ;
Z : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
type Vector_4D is record
X : Float := 0.0 ;
Y : Float := 0.0 ;
Z : Float := 0.0 ;
W : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
type Quaternion is new Vector_4D ;
type Matrix_4D is record
2024-03-18 15:28:32 -04:00
M00 : Float := 1.0 ;
M10 : Float := 0.0 ;
M20 : Float := 0.0 ;
M30 : Float := 0.0 ;
M01 : Float := 0.0 ;
M11 : Float := 1.0 ;
M21 : Float := 0.0 ;
M31 : Float := 0.0 ;
M02 : Float := 0.0 ;
M12 : Float := 0.0 ;
M22 : Float := 1.0 ;
M32 : Float := 0.0 ;
M03 : Float := 0.0 ;
M13 : Float := 0.0 ;
M23 : Float := 0.0 ;
M33 : Float := 1.0 ;
2024-03-18 08:06:11 -04:00
end record with Convention = > C_Pass_By_Copy ;
Id_Matrix : Matrix_4D ;
type Color is record
R : Color_Range := 255 ;
G : Color_Range := 255 ;
B : Color_Range := 255 ;
A : Color_Range := 255 ;
end record with Convention = > C_Pass_By_Copy ;
No_Color : Color ;
type Rectangle is record
X : Float := 0.0 ;
Y : Float := 0.0 ;
Width : Float := 0.0 ;
Height : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
No_Rectangle : Rectangle ;
type Image is record
Data : Pointer := null ;
Width : Integer := 0 ;
Height : Integer := 0 ;
Mipmaps : Integer := 1 ;
Format : Pixel_Format := Pixel_Format_None ;
end record with Convention = > C_Pass_By_Copy ;
No_Image : Image ;
type Texture is record
2024-03-18 11:43:03 -04:00
Id : Natural := 0 ;
Width : Integer := 0 ;
Height : Integer := 0 ;
Mipmaps : Integer := 1 ;
Format : Pixel_Format := Pixel_Format_None ;
2024-03-18 08:06:11 -04:00
end record with Convention = > C_Pass_By_Copy ;
No_Texture : Texture ;
type Render_Texture is record
Id : Natural := 0 ;
Data : Texture := No_Texture ;
Depth : Texture := No_Texture ;
end record with Convention = > C_Pass_By_Copy ;
No_Render_Texture : Render_Texture ;
type NPatch_Info is record
Source : Rectangle := No_Rectangle ;
Left : Integer := 0 ;
Top : Integer := 0 ;
Right : Integer := 0 ;
Bottom : Integer := 0 ;
Layout : NPatch_Layout := NPatch_Nine_Patch ;
end record with Convention = > C_Pass_By_Copy ;
type Glyph_Info is record
Value : Integer := 0 ;
Offset_X : Integer := 0 ;
Offset_Y : Integer := 0 ;
Advance_X : Integer := 0 ;
Data : Image := No_Image ;
end record with Convention = > C_Pass_By_Copy ;
type Font is record
Base_Size : Integer := 0 ;
Glyph_Count : Integer := 0 ;
Glyph_Padding : Integer := 0 ;
Data : Texture := No_Texture ;
Rectangles : access Rectangle := null ;
Glyphs : access Glyph_Info := null ;
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 10:10:41 -04:00
No_Font : Font ;
2024-03-18 08:06:11 -04:00
type Camera_3D is record
Position : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Target : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Up : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Field_Of_View : Float := 0.0 ;
Projection : Camera_Projection := Camera_Perspective ;
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 15:28:32 -04:00
No_Camera_3D : Camera_3D ;
2024-03-18 08:06:11 -04:00
type Camera_2D is record
Offset : Vector_2D := ( 0.0 , 0.0 ) ;
Target : Vector_2D := ( 0.0 , 0.0 ) ;
Rotation : Float := 0.0 ;
Zoom : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 15:28:32 -04:00
No_Camera_2D : Camera_2D ;
2024-03-18 08:06:11 -04:00
type Mesh is record
Vertex_Count : Integer := 0 ;
Triangle_Count : Integer := 0 ;
Vertices : access Float := null ;
Texture_Coordinates : access Float := null ;
Texture_Coordinates_2 : access Float := null ;
Normals : access Float := null ;
Tangents : access Float := null ;
Colors : access Color_Range := null ;
Indices : access Index_Range := null ;
Animation_Vertices : access Float := null ;
Animation_Normals : access Float := null ;
Bone_Ids : access Color_Range := null ;
Bone_Weights : access Float := null ;
VAO_Id : Natural := 0 ;
VBO_Id : access Natural := null ;
end record with Convention = > C_Pass_By_Copy ;
No_Mesh : Mesh ;
type Shader is record
Id : Natural := 0 ;
Locations : access Integer := null ;
end record with Convention = > C_Pass_By_Copy ;
No_Shader : Shader ;
type Material_Map is record
Data : Texture := No_Texture ;
Tint : Color := No_Color ;
Value : Float := 0.0 ;
end record with Convention = > C_Pass_By_Copy ;
type Float_Array_4 is array ( 0 . . 3 ) of Float ;
type Material is record
Data : Shader := No_Shader ;
Map : access Material_Map := null ;
Parameter : Float_Array_4 := ( 0.0 , 0.0 , 0.0 , 0.0 ) ;
end record with Convention = > C_Pass_By_Copy ;
type Transform is record
Translation : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Rotation : Vector_4D := ( 0.0 , 0.0 , 0.0 , 0.0 ) ;
Scale : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
end record with Convention = > C_Pass_By_Copy ;
type Character_Array_32 is array ( 0 . . 31 ) of Character ;
Empty : Character_Array_32 := ( others => Character ' Val ( 0 ) ) ;
type Bone_Info is record
Name : Character_Array_32 := Empty ;
Parent : Integer := 0 ;
end record with Convention = > C_Pass_By_Copy ;
type Model is record
Transform : Matrix_4D := Id_Matrix ;
Mesh_Count : Integer := 0 ;
Material_Count : Integer := 0 ;
Meshes : access Mesh := null ;
Materials : access Material := null ;
Mesh_Materials : access Integer := null ;
Bone_Count : Integer := 0 ;
Bones : access Bone_Info := null ;
--~Bind_Post : access Transform := null; ERROR
end record with Convention = > C_Pass_By_Copy ;
type Model_Animation is record
Bone_Count : Integer := 0 ;
Frame_Count : Integer := 0 ;
Bones : access Bone_Info := null ;
Frame_Poses : access Transform := null ;
Name : Character_Array_32 := Empty ;
end record with Convention = > C_Pass_By_Copy ;
type Ray is record
Position : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Direction : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
end record with Convention = > C_Pass_By_Copy ;
type Ray_Collision is record
2024-03-18 08:19:30 -04:00
Hit : Logical := False ;
2024-03-18 08:06:11 -04:00
Distance : Float := 0.0 ;
Point : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Normal : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
type Bounding_Box is record
Min : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Max : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
type Wave is record
Frame_Count : Natural := 0 ;
Sample_Rate : Natural := 0 ;
Sample_Size : Natural := 0 ;
Channels : Natural := 0 ;
Data : Pointer := null ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:41:16 -04:00
No_Wave : Wave ;
2024-03-18 08:06:11 -04:00
type Audio_Stream is record
Buffer : Pointer := null ;
Processor : Pointer := null ;
Sample_Rate : Natural := 0 ;
Sample_Size : Natural := 0 ;
Channels : Natural := 0 ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
No_Audio_Stream : Audio_Stream ;
type Sound is record
Stream : Audio_Stream := No_Audio_Stream ;
Frame_Count : Natural := 0 ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
No_Sound : Sound ;
2024-03-18 08:06:11 -04:00
type Music is record
Stream : Audio_Stream := No_Audio_Stream ;
Frame_Count : Natural := 0 ;
2024-03-18 08:19:30 -04:00
Looping : Logical := False ;
2024-03-18 08:06:11 -04:00
Context_Type : Integer := 0 ;
Context_Data : Pointer := null ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
type VR_Device_Info is record
Horizontal_Resoultion : Integer := 0 ;
Vertical_Resoultion : Integer := 0 ;
Horizontal_Screen_Size : Float := 0.0 ;
Vertical_Screen_Size : Float := 0.0 ;
Vertical_Screen_Center : Float := 0.0 ;
Eye_To_Screen_Distance : Float := 0.0 ;
Lens_Separate_Distance : Float := 0.0 ;
Interpupillary_Distance : Float := 0.0 ;
Lens_Distortion_Values : Float_Array_4 := ( 0.0 , 0.0 , 0.0 , 0.0 ) ;
Chroma_Abberation_Correction : Float_Array_4 := ( 0.0 , 0.0 , 0.0 , 0.0 ) ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
No_VR_Device_Info : VR_Device_Info ;
type Matrix_4D_Array_2 is array ( 0 . . 1 ) of Matrix_4D ;
type Float_Array_2 is array ( 0 . . 1 ) of Float ;
type VR_Stereo_Config is record
Projection : Matrix_4D_Array_2 := ( Id_Matrix , Id_Matrix ) ;
View_Offset : Matrix_4D_Array_2 := ( Id_Matrix , Id_Matrix ) ;
Left_Lens_Center : Float_Array_2 := ( 0.0 , 0.0 ) ;
Right_Lens_Center : Float_Array_2 := ( 0.0 , 0.0 ) ;
Left_Screen_Center : Float_Array_2 := ( 0.0 , 0.0 ) ;
Right_Screen_Center : Float_Array_2 := ( 0.0 , 0.0 ) ;
Scale : Float_Array_2 := ( 0.0 , 0.0 ) ;
Scale_In : Float_Array_2 := ( 0.0 , 0.0 ) ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
No_VR_Stereo_Config : VR_Stereo_Config ;
type File_Path_List is record
Capacity : Natural := 0 ;
Count : Natural := 0 ;
Paths : Pointer := null ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
type Integer_Array_4 is array ( 0 . . 3 ) of Integer ;
type Automation_Event is record
Frame : Natural := 0 ;
Kind : Natural := 0 ;
Parameters : Integer_Array_4 := ( 0 , 0 , 0 , 0 ) ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
type Automation_Event_List is record
Capacity : Natural := 0 ;
Count : Natural := 0 ;
Events : access Automation_Event := null ;
2024-03-18 11:43:03 -04:00
end record with Convention = > C_Pass_By_Copy ;
2024-03-18 08:06:11 -04:00
------------------------------------------------------------------------
Version_Major : constant Integer := 5 ;
Version_Minor : constant Integer := 1 ;
Version_Patch : constant Integer := 0 ;
Version : aliased constant String := "5.1-dev" ;
Pi : constant Float := 3.14159265358979323846 ;
Tau : constant Float := 2.0 * Pi ;
Degree_To_Radius : constant Float := Pi / 180.0 ;
Radius_To_Degree : constant Float := 180.0 / Pi ;
Light_Gray : constant Color := ( 200 , 200 , 200 , 255 ) ;
Gray : constant Color := ( 130 , 130 , 130 , 255 ) ;
Dark_Gray : constant Color := ( 80 , 80 , 80 , 255 ) ;
Yellow : constant Color := ( 253 , 249 , 0 , 255 ) ;
Gold : constant Color := ( 255 , 203 , 0 , 255 ) ;
Orange : constant Color := ( 255 , 161 , 0 , 255 ) ;
Pink : constant Color := ( 255 , 109 , 194 , 255 ) ;
Red : constant Color := ( 230 , 41 , 55 , 255 ) ;
Maroon : constant Color := ( 190 , 33 , 55 , 255 ) ;
Green : constant Color := ( 0 , 228 , 48 , 255 ) ;
Lime : constant Color := ( 0 , 158 , 47 , 255 ) ;
Dark_Green : constant Color := ( 0 , 117 , 44 , 255 ) ;
Sky_Blue : constant Color := ( 102 , 191 , 255 , 255 ) ;
Blue : constant Color := ( 0 , 121 , 241 , 255 ) ;
Dark_Blue : constant Color := ( 0 , 82 , 172 , 255 ) ;
Purple : constant Color := ( 200 , 122 , 255 , 255 ) ;
Violet : constant Color := ( 135 , 60 , 190 , 255 ) ;
Dark_Purple : constant Color := ( 112 , 31 , 126 , 255 ) ;
Beige : constant Color := ( 211 , 176 , 131 , 255 ) ;
Brown : constant Color := ( 127 , 106 , 79 , 255 ) ;
Dark_Brown : constant Color := ( 76 , 63 , 47 , 255 ) ;
White : constant Color := ( 255 , 255 , 255 , 255 ) ;
Black : constant Color := ( 0 , 0 , 0 , 255 ) ;
Blank : constant Color := ( 0 , 0 , 0 , 0 ) ;
Magenta : constant Color := ( 255 , 0 , 255 , 255 ) ;
Ray_White : constant Color := ( 245 , 245 , 245 , 255 ) ;
------------------------------------------------------------------------
--~typedef void (*TraceLogCallback)(int logLevel, const char *text, va_list args); -- Logging: Redirect trace log messages
--~typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, int *dataSize); -- FileIO: Load binary data
--~typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, int dataSize); -- FileIO: Save binary data
--~typedef char *(*LoadFileTextCallback)(const char *fileName); -- FileIO: Load text data
--~typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); -- FileIO: Save text data
procedure Open_Window (
Width : Integer := 640 ;
Height : Integer := 480 ;
Title : String := ""
) with
Import => True ,
Convention => C ,
External_Name => "InitWindow" ;
procedure Close_Window with
Import => True ,
Convention => C ,
External_Name => "CloseWindow" ;
2024-03-18 08:19:30 -04:00
function Window_Should_Close return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "WindowShouldClose" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Ready return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowReady" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Fullscreen return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowFullscreen" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Hidden return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowHidden" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Minimized return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowMinimized" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Maximized return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowMaximized" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Focused return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowFocused" ;
2024-03-18 08:19:30 -04:00
function Is_Window_Resized return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowResized" ;
function Is_Window_State (
Flags : Natural := 0
2024-03-18 08:19:30 -04:00
) return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsWindowState" ;
procedure Set_Window_State (
Flags : Natural := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowState" ;
procedure Clear_Window_State (
Flags : Natural := 0
) with
Import => True ,
Convention => C ,
External_Name => "ClearWindowState" ;
procedure Toggle_Fullscreen with
Import => True ,
Convention => C ,
External_Name => "ToggleFullscreen" ;
procedure Toggle_Borderless_Windowed with
Import => True ,
Convention => C ,
External_Name => "ToggleBorderlessWindowed" ;
procedure Maximize_Window with
Import => True ,
Convention => C ,
External_Name => "MaximizeWindow" ;
procedure Minimize_Window with
Import => True ,
Convention => C ,
External_Name => "MinimizeWindow" ;
procedure Restore_Window with
Import => True ,
Convention => C ,
External_Name => "RestoreWindow" ;
procedure Set_Window_Icon (
Icon : Image := No_Image
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowIcon" ;
procedure Set_Window_Icons (
Icons : access Image := null ;
Count : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowIcons" ;
procedure Set_Window_Title (
Title : String := ""
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowTitle" ;
procedure Set_Window_Position (
X : Integer := 0 ;
Y : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowPosition" ;
procedure Set_Window_Monitor (
Monitor : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowMonitor" ;
procedure Set_Window_Min_Size (
Width : Integer := 0 ;
Height : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowMinSize" ;
procedure Set_Window_Max_Size (
Width : Integer := 0 ;
Height : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowMaxSize" ;
procedure Set_Window_Size (
Width : Integer := 0 ;
Height : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowSize" ;
procedure Set_WindowZ_Opacity (
Opacity : Float := 0.0
) with
Import => True ,
Convention => C ,
External_Name => "SetWindowOpacity" ;
procedure Set_Window_Focused with
Import => True ,
Convention => C ,
External_Name => "SetWindowFocused" ;
function Get_Window_Handle return Pointer with
Import => True ,
Convention => C ,
External_Name => "GetWindowHandle" ;
function Get_Screen_Width return Integer with
Import => True ,
Convention => C ,
External_Name => "GetScreenWidth" ;
function Get_Screen_Height return Integer with
Import => True ,
Convention => C ,
External_Name => "GetScreenHeight" ;
function Get_Render_Width return Integer with
Import => True ,
Convention => C ,
External_Name => "GetRenderWidth" ;
function Get_Render_Height return Integer with
Import => True ,
Convention => C ,
External_Name => "GetRenderHeight" ;
function Get_Monitor_Count return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorCount" ;
function Get_Current_Monitor return Integer with
Import => True ,
Convention => C ,
External_Name => "GetCurrentMonitor" ;
function Get_Monitor_Position (
Monitor : Integer := 0
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetMonitorPosition" ;
function Get_Monitor_Width (
Monitor : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorWidth" ;
function Get_Monitor_Height (
Monitor : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorHeight" ;
function Get_Monitor_Physical_Width (
Monitor : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorPhysicalWidth" ;
function Get_Monitor_Physical_Height (
Monitor : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorPhysicalHeight" ;
function Get_Monitor_Refresh_Rate (
Monitor : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorRefreshRate" ;
function Get_Window_Position return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetWindowPosition" ;
function Get_Window_Scale_DPI return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetWindowScaleDPI" ;
function Get_Monitor_Name (
Monitor : Integer := 0
) return Pointer with
Import => True ,
Convention => C ,
External_Name => "GetMonitorName" ;
procedure Set_Clipboard_Text (
Text : String := ""
) with
Import => True ,
Convention => C ,
External_Name => "SetClipboardText" ;
function Get_Clipboard_Text return Pointer with
Import => True ,
Convention => C ,
External_Name => "GetClipboardText" ;
procedure Enable_Event_Waiting with
Import => True ,
Convention => C ,
External_Name => "EnableEventWaiting" ;
procedure Disable_Event_Waiting with
Import => True ,
Convention => C ,
External_Name => "DisableEventWaiting" ;
procedure Show_Cursor with
Import => True ,
Convention => C ,
External_Name => "ShowCursor" ;
procedure Hide_Cursor with
Import => True ,
Convention => C ,
External_Name => "HideCursor" ;
2024-03-18 08:19:30 -04:00
function Is_Cursor_Hidden return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsCursorHidden" ;
procedure Enable_Cursor with
Import => True ,
Convention => C ,
External_Name => "EnableCursor" ;
procedure Disable_Cursor with
Import => True ,
Convention => C ,
External_Name => "DisableCursor" ;
2024-03-18 08:19:30 -04:00
function Is_Cursor_On_Screen return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsCursorOnScreen" ;
procedure Clear_Background (
Tint : Color := Ray_White
) with
Import => True ,
Convention => C ,
External_Name => "ClearBackground" ;
procedure Begin_Drawing with
Import => True ,
Convention => C ,
External_Name => "BeginDrawing" ;
procedure End_Drawing with
Import => True ,
Convention => C ,
External_Name => "EndDrawing" ;
procedure Begin_Mode_2D (
Camera : Camera_2D
) with
Import => True ,
Convention => C ,
External_Name => "BeginMode2D" ;
procedure End_Mode_2D with
Import => True ,
Convention => C ,
External_Name => "EndMode2D" ;
procedure Begin_Mode_3D (
Camera : Camera_3D
) with
Import => True ,
Convention => C ,
External_Name => "BeginMode3D" ;
procedure End_Mode_3D with
Import => True ,
Convention => C ,
External_Name => "EndMode3D" ;
procedure Begin_Texture_Mode (
Data : Render_Texture := No_Render_Texture
) with
Import => True ,
Convention => C ,
External_Name => "BeginTextureMode" ;
procedure End_Texture_Mode with
Import => True ,
Convention => C ,
External_Name => "EndTextureMode" ;
procedure Begin_Shader_Mode (
Data : Shader := No_Shader
) with
Import => True ,
Convention => C ,
External_Name => "BeginShaderMode" ;
procedure End_Shader_Mode with
Import => True ,
Convention => C ,
External_Name => "EndShaderMode" ;
procedure Begin_Blend_Mode (
Mode : Blend_Mode := Blend_Alpha
) with
Import => True ,
Convention => C ,
External_Name => "BeginBlendMode" ;
procedure End_Blend_Mode with
Import => True ,
Convention => C ,
External_Name => "EndBlendMode" ;
procedure Begin_Scissor_Mode (
X : Integer := 0 ;
Y : Integer := 0 ;
Width : Integer := 0 ;
Height : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "BeginScissorMode" ;
procedure End_Scissor_Mode with
Import => True ,
Convention => C ,
External_Name => "EndScissorMode" ;
procedure Begin_VR_Stereo_Mode (
Config : VR_Stereo_Config := No_VR_Stereo_Config
) with
Import => True ,
Convention => C ,
External_Name => "BeginVrStereoMode" ;
procedure End_VR_Stereo_Mode with
Import => True ,
Convention => C ,
External_Name => "EndVrStereoMode" ;
function Load_VR_Stereo_Config (
Device : VR_Device_Info := No_VR_Device_Info
) return VR_Stereo_Config with
Import => True ,
Convention => C ,
External_Name => "LoadVrStereoConfig" ;
procedure Unload_VR_Stereo_Config (
Config : VR_Stereo_Config := No_VR_Stereo_Config
) with
Import => True ,
Convention => C ,
External_Name => "UnloadVrStereoConfig" ;
function Load_Shader (
Vertex_Shader_File_Path : String := "" ;
Fragment_Shader_File_Path : String := ""
) return Shader with
Import => True ,
Convention => C ,
External_Name => "LoadShader" ;
function Load_Shader_From_Memory (
Vertex_Shader_Code_Path : String := "" ;
Fragment_Shader_Code_Path : String := ""
) return Shader with
Import => True ,
Convention => C ,
External_Name => "LoadShaderFromMemory" ;
function Is_Shader_Ready (
Data : Shader := No_Shader
2024-03-18 08:19:30 -04:00
) return Logical with
2024-03-18 08:06:11 -04:00
Import => True ,
Convention => C ,
External_Name => "IsShaderReady" ;
function Get_Shader_Location (
Data : Shader := No_Shader ;
Name : String := ""
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetShaderLocation" ;
function Get_Shader_Location_Attribute (
Data : Shader := No_Shader ;
Name : String := ""
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetShaderLocationAttrib" ;
procedure Set_Shader_Value (
Data : Shader := No_Shader ;
Location_Index : Integer := 0 ;
Value : Pointer := null ;
Uniform_Type : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetShaderValue" ;
procedure Set_Shader_Value_Vector (
Data : Shader := No_Shader ;
Location_Index : Integer := 0 ;
Value : Pointer := null ;
Uniform_Type : Integer := 0 ;
Count : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetShaderValueV" ;
procedure Set_Shader_Value_Matrix (
Data : Shader := No_Shader ;
Location_Index : Integer := 0 ;
Value : Matrix_4D := Id_Matrix
) with
Import => True ,
Convention => C ,
External_Name => "SetShaderValueMatrix" ;
procedure Set_Shader_Value_Texture (
Data : Shader := No_Shader ;
Location_Index : Integer := 0 ;
Value : Texture := No_Texture
) with
Import => True ,
Convention => C ,
External_Name => "SetShaderValueTexture" ;
procedure Unload_Shader (
Data : Shader := No_Shader
) with
Import => True ,
Convention => C ,
External_Name => "UnloadShader" ;
2024-03-18 15:28:32 -04:00
function Get_Mouse_Ray (
Mouse_Position : Vector_2D := ( 0.0 , 0.0 ) ;
Camera : Camera_3D := No_Camera_3D
) return Ray with
Import => True ,
Convention => C ,
External_Name => "GetMouseRay" ;
function Get_Camera_Matrix_3D (
Camera : Camera_3D := No_Camera_3D
) return Matrix_4D with
Import => True ,
Convention => C ,
External_Name => "GetCameraMatrix" ;
function Get_Camera_Matrix_2D (
Camera : Camera_2D := No_Camera_2D
) return Matrix_4D with
Import => True ,
Convention => C ,
External_Name => "GetCameraMatrix2D" ;
function Get_World_To_Screen_3D (
Position : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Camera : Camera_3D := No_Camera_3D
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetWorldToScreen" ;
function Get_Screen_To_World_2D (
Position : Vector_2D := ( 0.0 , 0.0 ) ;
Camera : Camera_2D := No_Camera_2D
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetScreenToWorld2D" ;
function Get_World_To_Screen_Ex (
Position : Vector_3D := ( 0.0 , 0.0 , 0.0 ) ;
Camera : Camera_3D := No_Camera_3D ;
Width : Integer := 0 ;
Height : Integer := 0
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetWorldToScreenEx" ;
function Get_World_To_Screen_2D (
Position : Vector_2D := ( 0.0 , 0.0 ) ;
Camera : Camera_2D := No_Camera_2D
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetWorldToScreen2D" ;
2024-03-18 15:48:53 -04:00
2024-03-18 10:10:41 -04:00
procedure Set_Target_FPS (
FPS : Integer := 60
) with
Import => True ,
Convention => C ,
External_Name => "SetTargetFPS" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Get_Frame_Time return Float with
Import => True ,
Convention => C ,
External_Name => "GetFrameTime" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Get_Time return Long_Float with
Import => True ,
Convention => C ,
External_Name => "GetTime" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Get_FPS return Integer with
Import => True ,
Convention => C ,
External_Name => "GetFPS" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Swap_Screen_Buffer with
Import => True ,
Convention => C ,
External_Name => "SwapScreenBuffer" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Poll_Input_Events with
Import => True ,
Convention => C ,
External_Name => "PollInputEvents" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Wait_Time (
Seconds : Long_Float := 0.0
) with
Import => True ,
Convention => C ,
External_Name => "WaitTime" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Set_Random_Seed (
Seed : Natural := 16#0EADBEEF#
) with
Import => True ,
Convention => C ,
External_Name => "SetRandomSeed" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Get_Random_Value (
Min : Integer := 0 ;
Max : Integer := 255
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetRandomValue" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Load_Random_Sequence (
Count : Natural := 0 ;
Min : Integer := 0 ;
Max : Integer := 0
) return access Integer with
Import => True ,
Convention => C ,
External_Name => "LoadRandomSequence" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Unload_Random_Sequence (
Sequence : access Integer := null
) with
Import => True ,
Convention => C ,
External_Name => "UnloadRandomSequence" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Take_Screenshot (
File_Name : String := "Screenshot.png"
) with
Import => True ,
Convention => C ,
External_Name => "TakeScreenshot" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Set_Config_Flags (
Flags : Config_Flags := Flag_None
) with
Import => True ,
Convention => C ,
External_Name => "SetConfigFlags" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Open_URL (
URL : String := ""
) with
Import => True ,
Convention => C ,
External_Name => "OpenURL" ;
2024-03-18 08:06:11 -04:00
--~procedure TraceLog (int logLevel, const char *text, ...) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "TraceLog";
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Set_Trace_Log_Level (
Level : Trace_Log_Level := Log_All
) with
Import => True ,
Convention => C ,
External_Name => "SetTraceLogLevel" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Allocate (
Size : Natural := 0
) return Pointer with
Import => True ,
Convention => C ,
External_Name => "MemAlloc" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Reallocate (
Data : Pointer := null ;
Size : Natural := 0
) return Pointer with
Import => True ,
Convention => C ,
External_Name => "MemRealloc" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Deallocate (
Data : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "MemFree" ;
2024-03-18 08:06:11 -04:00
--~procedure SetTraceLogCallback (TraceLogCallback callback) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetTraceLogCallback";
2024-03-18 08:06:11 -04:00
--~procedure SetLoadFileDataCallback (LoadFileDataCallback callback) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetLoadFileDataCallback";
2024-03-18 08:06:11 -04:00
--~procedure SetSaveFileDataCallback (SaveFileDataCallback callback) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetSaveFileDataCallback";
2024-03-18 08:06:11 -04:00
--~procedure SetLoadFileTextCallback (LoadFileTextCallback callback) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetLoadFileTextCallback";
2024-03-18 08:06:11 -04:00
--~procedure SetSaveFileTextCallback (SaveFileTextCallback callback) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetSaveFileTextCallback";
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
function Load_File_Data (
File_Name : String := "" ;
Data_Size : access Integer := null
) return access Character with
Import => True ,
Convention => C ,
External_Name => "LoadFileData" ;
2024-03-18 08:06:11 -04:00
2024-03-18 15:48:53 -04:00
procedure Unload_File_Data (
Data : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "UnloadFileData" ;
2024-03-18 08:06:11 -04:00
--~function bool SaveFileData (const char *fileName, void *data, int dataSize) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SaveFileData";
2024-03-18 08:06:11 -04:00
--~function bool ExportDataAsCode (const unsigned char *data, int dataSize, const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "ExportDataAsCode";
2024-03-18 08:06:11 -04:00
--~function char *LoadFileText (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "LoadFileText";
2024-03-18 08:06:11 -04:00
--~procedure UnloadFileText (char *text) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "UnloadFileText";
2024-03-18 08:06:11 -04:00
--~function bool SaveFileText (const char *fileName, char *text) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SaveFileText";
2024-03-18 08:06:11 -04:00
--~function bool FileExists (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "FileExists";
2024-03-18 08:06:11 -04:00
--~function bool DirectoryExists (const char *dirPath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "DirectoryExists";
2024-03-18 08:06:11 -04:00
--~function bool IsFileExtension (const char *fileName, const char *ext) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "IsFileExtension";
2024-03-18 08:06:11 -04:00
--~function int GetFileLength (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetFileLength";
2024-03-18 08:06:11 -04:00
--~function const char *GetFileExtension (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetFileExtension";
2024-03-18 08:06:11 -04:00
--~function const char *GetFileName (const char *filePath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetFileName";
2024-03-18 08:06:11 -04:00
--~function const char *GetFileNameWithoutExt (const char *filePath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetFileNameWithoutExt";
2024-03-18 08:06:11 -04:00
--~function const char *GetDirectoryPath (const char *filePath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetDirectoryPath";
2024-03-18 08:06:11 -04:00
--~function const char *GetPrevDirectoryPath (const char *dirPath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetPrevDirectoryPath";
2024-03-18 08:06:11 -04:00
--~function const char *GetWorkingDirectory (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetWorkingDirectory";
2024-03-18 08:06:11 -04:00
--~function const char *GetApplicationDirectory (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetApplicationDirectory";
2024-03-18 08:06:11 -04:00
--~function bool ChangeDirectory (const char *dir) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "ChangeDirectory";
2024-03-18 08:06:11 -04:00
--~function bool IsPathFile (const char *path) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "IsPathFile";
2024-03-18 08:06:11 -04:00
--~function FilePathList LoadDirectoryFiles (const char *dirPath) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "LoadDirectoryFiles";
2024-03-18 08:06:11 -04:00
--~function FilePathList LoadDirectoryFilesEx (const char *basePath, const char *filter, bool scanSubdirs) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "LoadDirectoryFilesEx";
2024-03-18 08:06:11 -04:00
--~procedure UnloadDirectoryFiles (FilePathList files) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "UnloadDirectoryFiles";
2024-03-18 08:06:11 -04:00
--~function bool IsFileDropped (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "IsFileDropped";
2024-03-18 08:06:11 -04:00
--~function FilePathList LoadDroppedFiles (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "LoadDroppedFiles";
2024-03-18 08:06:11 -04:00
--~procedure UnloadDroppedFiles (FilePathList files) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "UnloadDroppedFiles";
2024-03-18 08:06:11 -04:00
--~function long GetFileModTime (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "GetFileModTime";
2024-03-18 08:06:11 -04:00
--~function unsigned char *CompressData (const unsigned char *data, int dataSize, int *compDataSize) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "CompressData";
2024-03-18 08:06:11 -04:00
--~function unsigned char *DecompressData (const unsigned char *compData, int compDataSize, int *dataSize) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "DecompressData";
2024-03-18 08:06:11 -04:00
--~function char *EncodeDataBase64 (const unsigned char *data, int dataSize, int *outputSize) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "EncodeDataBase64";
2024-03-18 08:06:11 -04:00
--~function unsigned char *DecodeDataBase64 (const unsigned char *data, int *outputSize) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "DecodeDataBase64";
2024-03-18 08:06:11 -04:00
--~function AutomationEventList LoadAutomationEventList (const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "LoadAutomationEventList";
2024-03-18 08:06:11 -04:00
--~procedure UnloadAutomationEventList (AutomationEventList *list) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "UnloadAutomationEventList";
2024-03-18 08:06:11 -04:00
--~function bool ExportAutomationEventList (AutomationEventList list, const char *fileName) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "ExportAutomationEventList";
2024-03-18 08:06:11 -04:00
--~procedure SetAutomationEventList (AutomationEventList *list) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetAutomationEventList";
2024-03-18 08:06:11 -04:00
--~procedure SetAutomationEventBaseFrame (int frame) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "SetAutomationEventBaseFrame";
2024-03-18 08:06:11 -04:00
--~procedure StartAutomationEventRecording (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "StartAutomationEventRecording";
2024-03-18 08:06:11 -04:00
--~procedure StopAutomationEventRecording (void) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "StopAutomationEventRecording";
2024-03-18 08:06:11 -04:00
--~procedure PlayAutomationEvent (AutomationEvent event) with
--~Import => True,
--~Convention => C,
2024-03-18 15:48:53 -04:00
--~External_Name => "PlayAutomationEvent";
2024-03-18 16:05:10 -04:00
2024-03-18 10:10:41 -04:00
function Is_Key_Pressed (
Key : Keyboard_Key := Key_Null
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsKeyPressed" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Is_Key_Pressed_Repeat (
Key : Keyboard_Key := Key_Null
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsKeyPressedRepeat" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Is_Key_Down (
Key : Keyboard_Key := Key_Null
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsKeyDown" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Is_Key_Released (
Key : Keyboard_Key := Key_Null
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsKeyReleased" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Is_Key_Up (
Key : Keyboard_Key := Key_Null
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsKeyUp" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Get_Key_Pressed return Keyboard_Key with
Import => True ,
Convention => C ,
External_Name => "GetKeyPressed" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
function Get_Character_Pressed return Character with
Import => True ,
Convention => C ,
External_Name => "GetCharPressed" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
procedure Set_Exit_Key (
Key : Keyboard_Key := Key_Escape
) with
Import => True ,
Convention => C ,
External_Name => "SetExitKey" ;
2024-03-18 08:06:11 -04:00
--~function bool IsGamepadAvailable (int gamepad) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *GetGamepadName (int gamepad) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsGamepadButtonPressed (int gamepad, int button) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsGamepadButtonDown (int gamepad, int button) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsGamepadButtonReleased (int gamepad, int button) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsGamepadButtonUp (int gamepad, int button) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetGamepadButtonPressed (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetGamepadAxisCount (int gamepad) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetGamepadAxisMovement (int gamepad, int axis) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int SetGamepadMappings (const char *mappings) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
function Is_Mouse_Button_Pressed (
Button : Mouse_Button := Mouse_Button_Left
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsMouseButtonPressed" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Is_Mouse_Button_Down (
Button : Mouse_Button := Mouse_Button_Left
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsMouseButtonDown" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Is_Mouse_Button_Released (
Button : Mouse_Button := Mouse_Button_Left
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsMouseButtonReleased" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Is_Mouse_Button_Up (
Button : Mouse_Button := Mouse_Button_Left
) return Logical with
Import => True ,
Convention => C ,
External_Name => "IsMouseButtonUp" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_X return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMouseX" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_Y return Integer with
Import => True ,
Convention => C ,
External_Name => "GetMouseY" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_Position return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetMousePosition" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_Delta return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetMouseDelta" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Set_Mouse_Position (
X : Integer := 0 ;
Y : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetMousePosition" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Set_Mouse_Offset (
X : Integer := 0 ;
Y : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetMouseOffset" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Set_Mouse_Scale (
X : Float := 0.0 ;
Y : Float := 0.0
) with
Import => True ,
Convention => C ,
External_Name => "SetMouseScale" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_Wheel_Move return Float with
Import => True ,
Convention => C ,
External_Name => "GetMouseWheelMove" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Get_Mouse_Wheel_Move_V return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "GetMouseWheelMoveV" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Set_Mouse_Cursor (
Cursor : Mouse_Cursor := Mouse_Cursor_Default
) with
Import => True ,
Convention => C ,
External_Name => "SetMouseCursor" ;
2024-03-18 08:06:11 -04:00
--~function int GetTouchX (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetTouchY (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetTouchPosition (int index) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetTouchPointId (int index) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetTouchPointCount (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetGesturesEnabled (unsigned int flags) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsGestureDetected (unsigned int gesture) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetGestureDetected (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetGestureHoldDuration (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetGestureDragVector (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetGestureDragAngle (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetGesturePinchVector (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetGesturePinchAngle (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateCamera (Camera *camera, int mode) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateCameraPro (Camera *camera, Vector3 movement, Vector3 rotation, float zoom) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetShapesTexture (Texture2D texture, Rectangle source) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPixel (int posX, int posY, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPixelV (Vector2 position, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Draw_Line (
X0 : Integer := 0 ;
Y0 : Integer := 0 ;
X1 : Integer := 0 ;
Y1 : Integer := 0 ;
Tint : Color := Black
) with
Import => True ,
Convention => C ,
External_Name => "DrawLine" ;
2024-03-18 08:06:11 -04:00
--~procedure DrawLineV (Vector2 startPos, Vector2 endPos, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawLineEx (Vector2 startPos, Vector2 endPos, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawLineStrip (Vector2 *points, int pointCount, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawLineBezier (Vector2 startPos, Vector2 endPos, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircle (int centerX, int centerY, float radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleSector (Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleSectorLines (Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleGradient (int centerX, int centerY, float radius, Color color1, Color color2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleV (Vector2 center, float radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleLines (int centerX, int centerY, float radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircleLinesV (Vector2 center, float radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawEllipse (int centerX, int centerY, float radiusH, float radiusV, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawEllipseLines (int centerX, int centerY, float radiusH, float radiusV, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRing (Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRingLines (Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Draw_Rectangle (
X : Integer := 0 ;
Y : Integer := 0 ;
Width : Integer := 0 ;
Height : Integer := 0 ;
Tint : Color := Black
) with
Import => True ,
Convention => C ,
External_Name => "DrawRectangle" ;
2024-03-18 08:06:11 -04:00
--~procedure DrawRectangleV (Vector2 position, Vector2 size, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleRec (Rectangle rec, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectanglePro (Rectangle rec, Vector2 origin, float rotation, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleGradientV (int posX, int posY, int width, int height, Color color1, Color color2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleGradientH (int posX, int posY, int width, int height, Color color1, Color color2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleGradientEx (Rectangle rec, Color col1, Color col2, Color col3, Color col4) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleLines (int posX, int posY, int width, int height, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleLinesEx (Rectangle rec, float lineThick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleRounded (Rectangle rec, float roundness, int segments, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRectangleRoundedLines (Rectangle rec, float roundness, int segments, float lineThick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangle (Vector2 v1, Vector2 v2, Vector2 v3, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangleLines (Vector2 v1, Vector2 v2, Vector2 v3, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangleFan (Vector2 *points, int pointCount, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangleStrip (Vector2 *points, int pointCount, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPoly (Vector2 center, int sides, float radius, float rotation, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPolyLines (Vector2 center, int sides, float radius, float rotation, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPolyLinesEx (Vector2 center, int sides, float radius, float rotation, float lineThick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineLinear (Vector2 *points, int pointCount, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineBasis (Vector2 *points, int pointCount, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineCatmullRom (Vector2 *points, int pointCount, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineBezierQuadratic (Vector2 *points, int pointCount, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineBezierCubic (Vector2 *points, int pointCount, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineSegmentLinear (Vector2 p1, Vector2 p2, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineSegmentBasis (Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineSegmentCatmullRom (Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineSegmentBezierQuadratic (Vector2 p1, Vector2 c2, Vector2 p3, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSplineSegmentBezierCubic (Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetSplinePointLinear (Vector2 startPos, Vector2 endPos, float t) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetSplinePointBasis (Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetSplinePointCatmullRom (Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetSplinePointBezierQuad (Vector2 p1, Vector2 c2, Vector2 p3, float t) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector2 GetSplinePointBezierCubic (Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float t) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionRecs (Rectangle rec1, Rectangle rec2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionCircles (Vector2 center1, float radius1, Vector2 center2, float radius2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionCircleRec (Vector2 center, float radius, Rectangle rec) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionPointRec (Vector2 point, Rectangle rec) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionPointCircle (Vector2 point, Vector2 center, float radius) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionPointTriangle (Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionPointPoly (Vector2 point, Vector2 *points, int pointCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionLines (Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionPointLine (Vector2 point, Vector2 p1, Vector2 p2, int threshold) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Rectangle GetCollisionRec (Rectangle rec1, Rectangle rec2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImage (const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageRaw (const char *fileName, int width, int height, int format, int headerSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageSvg (const char *fileNameOrString, int width, int height) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageAnim (const char *fileName, int *frames) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageFromMemory (const char *fileType, const unsigned char *fileData, int dataSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageFromTexture (Texture2D texture) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image LoadImageFromScreen (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsImageReady (Image image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadImage (Image image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportImage (Image image, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function unsigned char *ExportImageToMemory (Image image, const char *fileType, int *fileSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportImageAsCode (Image image, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageColor (int width, int height, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageGradientLinear (int width, int height, int direction, Color start, Color end) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageGradientRadial (int width, int height, float density, Color inner, Color outer) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageGradientSquare (int width, int height, float density, Color inner, Color outer) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageChecked (int width, int height, int checksX, int checksY, Color col1, Color col2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageWhiteNoise (int width, int height, float factor) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImagePerlinNoise (int width, int height, int offsetX, int offsetY, float scale) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageCellular (int width, int height, int tileSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageText (int width, int height, const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image ImageCopy (Image image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image ImageFromImage (Image image, Rectangle rec) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image ImageText (const char *text, int fontSize, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image ImageTextEx (Font font, const char *text, float fontSize, float spacing, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageFormat (Image *image, int newFormat) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageToPOT (Image *image, Color fill) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageCrop (Image *image, Rectangle crop) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageAlphaCrop (Image *image, float threshold) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageAlphaClear (Image *image, Color color, float threshold) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageAlphaMask (Image *image, Image alphaMask) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageAlphaPremultiply (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageBlurGaussian (Image *image, int blurSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageKernelConvolution (Image *image, float* kernel, int kernelSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageResize (Image *image, int newWidth, int newHeight) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageResizeNN (Image *image, int newWidth,int newHeight) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageResizeCanvas (Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageMipmaps (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDither (Image *image, int rBpp, int gBpp, int bBpp, int aBpp) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageFlipVertical (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageFlipHorizontal (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageRotate (Image *image, int degrees) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageRotateCW (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageRotateCCW (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorTint (Image *image, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorInvert (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorGrayscale (Image *image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorContrast (Image *image, float contrast) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorBrightness (Image *image, int brightness) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageColorReplace (Image *image, Color color, Color replace) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color *LoadImageColors (Image image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color *LoadImagePalette (Image image, int maxPaletteSize, int *colorCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadImageColors (Color *colors) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadImagePalette (Color *colors) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Rectangle GetImageAlphaBorder (Image image, float threshold) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color GetImageColor (Image image, int x, int y) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageClearBackground (Image *dst, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawPixel (Image *dst, int posX, int posY, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawPixelV (Image *dst, Vector2 position, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawLine (Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawLineV (Image *dst, Vector2 start, Vector2 end, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawCircle (Image *dst, int centerX, int centerY, int radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawCircleV (Image *dst, Vector2 center, int radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawCircleLines (Image *dst, int centerX, int centerY, int radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawCircleLinesV (Image *dst, Vector2 center, int radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawRectangle (Image *dst, int posX, int posY, int width, int height, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawRectangleV (Image *dst, Vector2 position, Vector2 size, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawRectangleRec (Image *dst, Rectangle rec, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawRectangleLines (Image *dst, Rectangle rec, int thick, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDraw (Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawText (Image *dst, const char *text, int posX, int posY, int fontSize, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ImageDrawTextEx (Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
function Load_Texture (
File_Path : String := ""
) return Texture with
Import => True ,
Convention => C ,
External_Name => "LoadTexture" ;
2024-03-18 08:06:11 -04:00
--~function Texture2D LoadTextureFromImage (Image image) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function TextureCubemap LoadTextureCubemap (Image image, int layout) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RenderTexture2D LoadRenderTexture (int width, int height) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsTextureReady (Texture2D texture) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Unload_Texture (
Data : Texture := No_Texture
) with
Import => True ,
Convention => C ,
External_Name => "UnloadTexture" ;
2024-03-18 08:06:11 -04:00
--~function bool IsRenderTextureReady (RenderTexture2D target) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadRenderTexture (RenderTexture2D target) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateTexture (Texture2D texture, const void *pixels) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateTextureRec (Texture2D texture, Rectangle rec, const void *pixels) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure GenTextureMipmaps (Texture2D *texture) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetTextureFilter (Texture2D texture, int filter) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetTextureWrap (Texture2D texture, int wrap) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Draw_Texture (
Data : Texture := No_Texture ;
X : Integer := 0 ;
Y : Integer := 0 ;
Tint : Color := White
) with
Import => True ,
Convention => C ,
External_Name => "DrawTexture" ;
2024-03-18 08:06:11 -04:00
--~procedure DrawTextureV (Texture2D texture, Vector2 position, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTextureEx (Texture2D texture, Vector2 position, float rotation, float scale, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTextureRec (Texture2D texture, Rectangle source, Vector2 position, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Draw_Texture_Pro (
Data : Texture := No_Texture ;
Source : Rectangle := No_Rectangle ;
Destination : Rectangle := No_Rectangle ;
Origin : Vector_2D := ( 0.0 , 0.0 ) ;
Rotation : Float := 0.0 ;
Tint : Color := White
) with
Import => True ,
Convention => C ,
External_Name => "DrawTexturePro" ;
2024-03-18 08:06:11 -04:00
--~procedure DrawTextureNPatch (Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color Fade (Color color, float alpha) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int ColorToInt (Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector4 ColorNormalize (Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorFromNormalized (Vector4 normalized) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Vector3 ColorToHSV (Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorFromHSV (float hue, float saturation, float value) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorTint (Color color, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorBrightness (Color color, float factor) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorContrast (Color color, float contrast) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorAlpha (Color color, float alpha) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color ColorAlphaBlend (Color dst, Color src, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color GetColor (unsigned int hexValue) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Color GetPixelColor (void *srcPtr, int format) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetPixelColor (void *dstPtr, Color color, int format) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetPixelDataSize (int width, int height, int format) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
function Get_Font_Default return Font with
Import => True ,
Convention => C ,
External_Name => "GetFontDefault" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
function Load_Font (
File_Name : String := ""
) return Font with
Import => True ,
Convention => C ,
External_Name => "LoadFont" ;
2024-03-18 08:06:11 -04:00
--~function Font LoadFontEx (const char *fileName, int fontSize, int *codepoints, int codepointCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Font LoadFontFromImage (Image image, Color key, int firstChar) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Font LoadFontFromMemory (const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsFontReady (Font font) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function GlyphInfo *LoadFontData (const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount, int type) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Image GenImageFontAtlas (const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyphCount, int fontSize, int padding, int packMethod) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadFontData (GlyphInfo *glyphs, int glyphCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
procedure Unload_Font (
Data : Font := No_Font
) with
Import => True ,
Convention => C ,
External_Name => "UnloadFont" ;
2024-03-18 08:06:11 -04:00
--~function bool ExportFontAsCode (Font font, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 10:10:41 -04:00
procedure Draw_FPS (
X : Integer := 0 ;
Y : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "DrawFPS" ;
2024-03-18 16:05:10 -04:00
2024-03-18 10:10:41 -04:00
procedure Draw_Text (
Text : String := "" ;
X : Integer := 0 ;
Y : Integer := 0 ;
Size : Integer := 32 ;
2024-03-18 16:38:05 -04:00
Tint : Color := White
2024-03-18 10:10:41 -04:00
) with
Import => True ,
Convention => C ,
External_Name => "DrawText" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:27:49 -04:00
procedure Draw_Text_Ex (
Data : Font := Get_Font_Default ;
Text : String := "" ;
Position : Vector_2D := ( 0.0 , 0.0 ) ;
Font_Size : Float := 0.0 ;
Spacing : Float := 0.0 ;
Tint : Color := White
) with
Import => True ,
Convention => C ,
External_Name => "DrawTextEx" ;
2024-03-18 08:06:11 -04:00
2024-03-18 10:10:41 -04:00
procedure Draw_Text_Pro (
Data : Font := Get_Font_Default ;
2024-03-18 16:05:10 -04:00
Text : String := "" ;
2024-03-18 10:10:41 -04:00
Position : Vector_2D := ( 0.0 , 0.0 ) ;
Origin : Vector_2D := ( 0.0 , 0.0 ) ;
Rotation : Float := 0.0 ;
Font_Size : Float := 0.0 ;
Spacing : Float := 0.0 ;
2024-03-18 16:38:05 -04:00
Tint : Color := White
2024-03-18 10:10:41 -04:00
) with
Import => True ,
Convention => C ,
External_Name => "DrawTextPro" ;
2024-03-18 08:06:11 -04:00
--~procedure DrawTextCodepoint (Font font, int codepoint, Vector2 position, float fontSize, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTextCodepoints (Font font, const int *codepoints, int codepointCount, Vector2 position, float fontSize, float spacing, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-20 03:36:00 -04:00
procedure Set_Text_Line_Spacing (
Spacing : Integer := 0
) with
Import => True ,
Convention => C ,
External_Name => "SetTextLineSpacing" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:36:00 -04:00
function Measure_Text (
Text : String := "" ;
Font_Size : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "MeasureText" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:36:00 -04:00
function Measure_Text_Ex (
Data : Font := Get_Font_Default ;
Text : String := "" ;
Font_Size : Float := 0.0 ;
Spacing : Float := 0.0
) return Vector_2D with
Import => True ,
Convention => C ,
External_Name => "MeasureTextEx" ;
--~################################################################
function Get_Glyph_Index (
Data : Font := Get_Font_Default ;
Code_Point : Integer := 0
) return Integer with
Import => True ,
Convention => C ,
External_Name => "GetGlyphIndex" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:36:00 -04:00
function Get_Glyph_Info (
Data : Font := Get_Font_Default ;
Code_Point : Integer := 0
) return Glyph_Info with
Import => True ,
Convention => C ,
External_Name => "GetGlyphInfo" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:36:00 -04:00
function Get_Glyph_Atlas_Rec (
Data : Font := Get_Font_Default ;
Code_Point : Integer := 0
) return Rectangle with
Import => True ,
Convention => C ,
External_Name => "GetGlyphAtlasRec" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:41:16 -04:00
function Load_UTF8 (
Code_Points : access Integer := null ;
Length : Integer := 0
) return access Character with
Import => True ,
Convention => C ,
External_Name => "LoadUTF8" ;
2024-03-18 08:06:11 -04:00
2024-03-20 03:41:16 -04:00
procedure Unload_UTF8 (
Text : access Character := null
) with
Import => True ,
Convention => C ,
External_Name => "UnloadUTF8" ;
2024-03-18 08:06:11 -04:00
--~function int *LoadCodepoints (const char *text, int *count) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadCodepoints (int *codepoints) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetCodepointCount (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetCodepoint (const char *text, int *codepointSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetCodepointNext (const char *text, int *codepointSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int GetCodepointPrevious (const char *text, int *codepointSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *CodepointToUTF8 (int codepoint, int *utf8Size) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int TextCopy (char *dst, const char *src) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool TextIsEqual (const char *text1, const char *text2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function unsigned int TextLength (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextFormat (const char *text, ...) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextSubtext (const char *text, int position, int length) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function char *TextReplace (char *text, const char *replace, const char *by) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function char *TextInsert (const char *text, const char *insert, int position) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextJoin (const char **textList, int count, const char *delimiter) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char **TextSplit (const char *text, char delimiter, int *count) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure TextAppend (char *text, const char *append, int *position) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int TextFindIndex (const char *text, const char *find) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextToUpper (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextToLower (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function const char *TextToPascal (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function int TextToInteger (const char *text) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawLine3D (Vector3 startPos, Vector3 endPos, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPoint3D (Vector3 position, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCircle3D (Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangle3D (Vector3 v1, Vector3 v2, Vector3 v3, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawTriangleStrip3D (Vector3 *points, int pointCount, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCube (Vector3 position, float width, float height, float length, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCubeV (Vector3 position, Vector3 size, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCubeWires (Vector3 position, float width, float height, float length, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCubeWiresV (Vector3 position, Vector3 size, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSphere (Vector3 centerPos, float radius, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSphereEx (Vector3 centerPos, float radius, int rings, int slices, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawSphereWires (Vector3 centerPos, float radius, int rings, int slices, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCylinder (Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCylinderEx (Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCylinderWires (Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCylinderWiresEx (Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCapsule (Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawCapsuleWires (Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawPlane (Vector3 centerPos, Vector2 size, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawRay (Ray ray, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawGrid (int slices, float spacing) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Model LoadModel (const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Model LoadModelFromMesh (Mesh mesh) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsModelReady (Model model) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadModel (Model model) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function BoundingBox GetModelBoundingBox (Model model) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawModel (Model model, Vector3 position, float scale, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawModelEx (Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawModelWires (Model model, Vector3 position, float scale, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawModelWiresEx (Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawBoundingBox (BoundingBox box, Color color) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawBillboard (Camera camera, Texture2D texture, Vector3 position, float size, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawBillboardRec (Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawBillboardPro (Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UploadMesh (Mesh *mesh, bool dynamic) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateMeshBuffer (Mesh mesh, int index, const void *data, int dataSize, int offset) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadMesh (Mesh mesh) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawMesh (Mesh mesh, Material material, Matrix transform) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure DrawMeshInstanced (Mesh mesh, Material material, const Matrix *transforms, int instances) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function BoundingBox GetMeshBoundingBox (Mesh mesh) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure GenMeshTangents (Mesh *mesh) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportMesh (Mesh mesh, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportMeshAsCode (Mesh mesh, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshPoly (int sides, float radius) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshPlane (float width, float length, int resX, int resZ) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshCube (float width, float height, float length) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshSphere (float radius, int rings, int slices) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshHemiSphere (float radius, int rings, int slices) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshCylinder (float radius, float height, int slices) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshCone (float radius, float height, int slices) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshTorus (float radius, float size, int radSeg, int sides) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshKnot (float radius, float size, int radSeg, int sides) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshHeightmap (Image heightmap, Vector3 size) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Mesh GenMeshCubicmap (Image cubicmap, Vector3 cubeSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Material *LoadMaterials (const char *fileName, int *materialCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Material LoadMaterialDefault (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsMaterialReady (Material material) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadMaterial (Material material) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetMaterialTexture (Material *material, int mapType, Texture2D texture) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetModelMeshMaterial (Model *model, int meshId, int materialId) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function ModelAnimation *LoadModelAnimations (const char *fileName, int *animCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateModelAnimation (Model model, ModelAnimation anim, int frame) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadModelAnimation (ModelAnimation anim) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadModelAnimations (ModelAnimation *animations, int animCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsModelAnimationValid (Model model, ModelAnimation anim) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionSpheres (Vector3 center1, float radius1, Vector3 center2, float radius2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionBoxes (BoundingBox box1, BoundingBox box2) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool CheckCollisionBoxSphere (BoundingBox box, Vector3 center, float radius) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RayCollision GetRayCollisionSphere (Ray ray, Vector3 center, float radius) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RayCollision GetRayCollisionBox (Ray ray, BoundingBox box) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RayCollision GetRayCollisionMesh (Ray ray, Mesh mesh, Matrix transform) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RayCollision GetRayCollisionTriangle (Ray ray, Vector3 p1, Vector3 p2, Vector3 p3) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function RayCollision GetRayCollisionQuad (Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~typedef void (*AudioCallback) (void *bufferData, unsigned int frames) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
procedure Open_Audio_Device with
Import => True ,
Convention => C ,
External_Name => "InitAudioDevice" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Close_Audio_Device with
Import => True ,
Convention => C ,
External_Name => "CloseAudioDevice" ;
2024-03-18 08:06:11 -04:00
--~function bool IsAudioDeviceReady (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetMasterVolume (float volume) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetMasterVolume (void) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Wave LoadWave (const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Wave LoadWaveFromMemory (const char *fileType, const unsigned char *fileData, int dataSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsWaveReady (Wave wave) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
function Load_Sound (
File_Name : String := ""
) return Sound with
Import => True ,
Convention => C ,
External_Name => "LoadSound" ;
2024-03-18 08:06:11 -04:00
--~function Sound LoadSoundFromWave (Wave wave) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Sound LoadSoundAlias (Sound source) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsSoundReady (Sound sound) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateSound (Sound sound, const void *data, int sampleCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadWave (Wave wave) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
procedure Unload_Sound (
Data : Sound := No_Sound
) with
Import => True ,
Convention => C ,
External_Name => "UnloadSound" ;
2024-03-18 08:06:11 -04:00
--~procedure UnloadSoundAlias (Sound alias) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportWave (Wave wave, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool ExportWaveAsCode (Wave wave, const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
2024-03-18 16:05:10 -04:00
procedure Play_Sound (
Data : Sound := No_Sound
) with
Import => True ,
Convention => C ,
External_Name => "PlaySound" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Stop_Sound (
Data : Sound := No_Sound
) with
Import => True ,
Convention => C ,
External_Name => "StopSound" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Pause_Sound (
Data : Sound := No_Sound
) with
Import => True ,
Convention => C ,
External_Name => "PauseSound" ;
2024-03-18 08:06:11 -04:00
2024-03-18 16:05:10 -04:00
procedure Resume_Sound (
Data : Sound := No_Sound
) with
Import => True ,
Convention => C ,
External_Name => "ResumeSound" ;
2024-03-18 08:06:11 -04:00
--~function bool IsSoundPlaying (Sound sound) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetSoundVolume (Sound sound, float volume) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetSoundPitch (Sound sound, float pitch) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetSoundPan (Sound sound, float pan) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Wave WaveCopy (Wave wave) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure WaveCrop (Wave *wave, int initSample, int finalSample) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure WaveFormat (Wave *wave, int sampleRate, int sampleSize, int channels) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float *LoadWaveSamples (Wave wave) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadWaveSamples (float *samples) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Music LoadMusicStream (const char *fileName) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function Music LoadMusicStreamFromMemory (const char *fileType, const unsigned char *data, int dataSize) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsMusicReady (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure PlayMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsMusicStreamPlaying (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure StopMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure PauseMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ResumeMusicStream (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SeekMusicStream (Music music, float position) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetMusicVolume (Music music, float volume) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetMusicPitch (Music music, float pitch) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetMusicPan (Music music, float pan) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetMusicTimeLength (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function float GetMusicTimePlayed (Music music) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function AudioStream LoadAudioStream (unsigned int sampleRate, unsigned int sampleSize, unsigned int channels) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsAudioStreamReady (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UnloadAudioStream (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure UpdateAudioStream (AudioStream stream, const void *data, int frameCount) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsAudioStreamProcessed (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure PlayAudioStream (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure PauseAudioStream (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure ResumeAudioStream (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~function bool IsAudioStreamPlaying (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure StopAudioStream (AudioStream stream) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetAudioStreamVolume (AudioStream stream, float volume) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetAudioStreamPitch (AudioStream stream, float pitch) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetAudioStreamPan (AudioStream stream, float pan) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetAudioStreamBufferSizeDefault (int size) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
--~procedure SetAudioStreamCallback (AudioStream stream, AudioCallback callback) with
--~Import => True,
--~Convention => C,
--~External_Name => "";
procedure Attach_Audio_Stream_Processor (
Stream : Audio_Stream := No_Audio_Stream ;
Processor : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "AttachAudioStreamProcessor" ;
procedure Detach_Audio_Stream_Processor (
Stream : Audio_Stream := No_Audio_Stream ;
Processor : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "DetachAudioStreamProcessor" ;
procedure Attach_Audio_Mixed_Processor (
Processor : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "AttachAudioMixedProcessor" ;
procedure Detach_Audio_Mixed_Processor (
Processor : Pointer := null
) with
Import => True ,
Convention => C ,
External_Name => "DetachAudioMixedProcessor" ;
end Raylib ;