14
15:- module(sdl_foreign, [
16 17 sdl_init_/1,
18 sdl_quit/0,
19
20 21 sdl_window_blob_portray/2,
22 sdl_createwindow_/5,
23 sdl_setwindowposition_/3,
24 sdl_destroywindow/1,
25
26 27 sdl_renderer_blob_portray/2,
28 sdl_texture_blob_portray/2,
29 sdl_createrenderer_/3,
30 sdl_setrendervsync_/2,
31 sdl_destroyrenderer/1,
32 sdl_renderclear/1,
33 sdl_rendertexture_/4,
34 sdl_renderpresent/1,
35 sdl_createtexturefromsurface_/3,
36 sdl_createtexture_/6,
37 sdl_destroytexture/1,
38 sdl_setrenderdrawcolor_/5,
39 sdl_renderrect_/2,
40 sdl_renderfillrect_/2,
41 sdl_updatetexture_/4,
42 sdl_locktexture_/4,
43 sdl_unlocktexture_/1,
44
45 46 sdl_pollevent_/1,
47
48 49 sdl_surface_blob_portray/2,
50 sdl_destroysurface/1,
51 sdl_createsurfacefrom_/6,
52
53 54 img_load_/2,
55
56 57 sdl_gpu_device_blob_portray/2,
58 sdl_gpu_cmdbuf_blob_portray/2,
59 sdl_gpu_swapchain_texture_blob_portray/2,
60 sdl_gpu_renderpass_blob_portray/2,
61 sdl_gpu_texture_blob_portray/2,
62 sdl_gpu_shader_blob_portray/2,
63 sdl_gpu_pipeline_blob_portray/2,
64 sdl_gpu_buffer_blob_portray/2,
65 sdl_gpu_transfer_buffer_blob_portray/2,
66 sdl_gpu_copypass_blob_portray/2,
67
68 69 sdl_creategpudevice_/4,
70 sdl_destroygpudevice_/1,
71 sdl_getnumgpudrivers/1,
72 sdl_getgpudriver/2,
73 sdl_claimwindowforgpudevice_/2,
74 sdl_releasewindowfromgpudevice_/2,
75
76 77 sdl_acquiregpucommandbuffer_/2,
78 sdl_submitgpucommandbuffer_/1,
79 sdl_cancelgpucommandbuffer_/1,
80
81 82 sdl_acquiregpuswapchaintexture_/5,
83 sdl_waitandacquiregpuswapchaintexture_/5,
84
85 86 sdl_begingpurenderpass_/4,
87 sdl_endgpurenderpass_/1,
88
89 90 sdl_creategputexture_/3,
91 sdl_releasegputexture_/1,
92
93 94 sdl_creategpushader_/3,
95 sdl_releasegpushader_/1,
96
97 98 sdl_creategpugraphicspipeline_/3,
99 sdl_releasegpugraphicspipeline_/1,
100
101 102 sdl_creategpubuffer_/4,
103 sdl_releasegpubuffer_/1,
104
105 106 sdl_creategputransferbuffer_/4,
107 sdl_releasegputransferbuffer_/1,
108 sdl_mapgputransferbuffer_/3,
109 sdl_unmapgputransferbuffer_/1,
110
111 112 sdl_begingpucopypass_/2,
113 sdl_endgpucopypass_/1,
114
115 116 sdl_uploadtogpubuffer_/4,
117
118 119 sdl_bindgpugraphicspipeline_/2,
120 sdl_bindgpuvertexbuffers_/3,
121 sdl_bindgpuindexbuffer_/3,
122 sdl_drawgpuindexedprimitives_/6,
123 sdl_drawgpuprimitives_/5,
124
125 126 or_list/2
127]). 128
129:- use_foreign_library(foreign(sdl)). 130
131or_list(List, Or) :-
132 foldl([B, A, C]>>(C is A \/ B), List, 0, Or)