note
	description: "A hardware accelerated picture in memory that can be quickly modified at run-time"
	author: "Louis Marchand"
	date: "Wed, 27 Jan 2016 02:18:41 +0000"
	revision: "2.0"

class interface
	GAME_TEXTURE_STREAMING

create 
	make,
	share_from_other

feature -- Access

	lock
			-- Lock Current to access pixels.
			-- Must used unlock after the edition.
			-- You cannot using Current as rendering target while locked.
		ensure
			is_locked: not has_error implies is_locked and attached internal_pixels

	lock_rectangle (a_x, a_y, a_width, a_height: INTEGER_32)
			-- Lock Current to access pixels from position a_x,a_y of dimension a_widthxa_height
			-- Must used unlock after the edition.
			-- You cannot using Current as rendering target while locked.
		ensure
			is_locked: not has_error implies is_locked and attached internal_pixels

	pixels: GAME_PIXEL_WRITER
			-- Used to modify pixels color in Current
		require
			is_locked: is_locked

	unlock
			-- Unlock Current after access pixels.
		ensure
			is_locked: not is_locked and not attached internal_pixels
	
invariant
	always_streamable: is_streamable

end -- class GAME_TEXTURE_STREAMING

Generated by ISE EiffelStudio