Video_library/source/backends/sdl/video-backends-sdl-surfaces...

31 lines
678 B
Ada

with Interfaces.C.Pointers;
with System.Storage_Elements;
use System.Storage_Elements;
package body Video.Backends.SDL.Surfaces is
package body Raster_Conversions is
type Pixel_Array is array (Integer range <>) of Pixel;
procedure Copy (
Source : in Raster;
Target : in out Surface)
is
begin
for Y in Source'Range (1) loop
declare
Line : Pixel_Array (Source'Range (2)) with
Import, Address => Target.Pixels
+ Storage_Offset (Y - Source'First (1));
begin
for X in Source'Range (2) loop
Line (X) := Source (Y, X);
end loop;
end;
end loop;
end;
end Raster_Conversions;
end Video.Backends.SDL.Surfaces;