note
	description: "This file has been generated by WrapC. Do not edit. Changes will be lost!"
	generator: "Eiffel Wrapper Generator"

class 
	SDL_RWOPS_STRUCT_API

inherit
	MEMORY_STRUCTURE

create 
	make,
	make_by_pointer

feature -- Measurement

	structure_size: INTEGER_32
			-- Size to allocate (in bytes).
		do
			Result := sizeof_external
		end
	
feature -- Member Access

	size: POINTER
			-- Access member size
		require
			exists: exists
		do
			Result := c_size (item)
		ensure
			result_correct: Result = c_size (item)
		end

	set_size (a_value: POINTER)
			-- Change the value of member size to a_value.
		require
			exists: exists
		do
			set_c_size (item, a_value)
		ensure
			size_set: a_value = size
		end

	seek: POINTER
			-- Access member seek
		require
			exists: exists
		do
			Result := c_seek (item)
		ensure
			result_correct: Result = c_seek (item)
		end

	set_seek (a_value: POINTER)
			-- Change the value of member seek to a_value.
		require
			exists: exists
		do
			set_c_seek (item, a_value)
		ensure
			seek_set: a_value = seek
		end

	read: POINTER
			-- Access member read
		require
			exists: exists
		do
			Result := c_read (item)
		ensure
			result_correct: Result = c_read (item)
		end

	set_read (a_value: POINTER)
			-- Change the value of member read to a_value.
		require
			exists: exists
		do
			set_c_read (item, a_value)
		ensure
			read_set: a_value = read
		end

	write: POINTER
			-- Access member write
		require
			exists: exists
		do
			Result := c_write (item)
		ensure
			result_correct: Result = c_write (item)
		end

	set_write (a_value: POINTER)
			-- Change the value of member write to a_value.
		require
			exists: exists
		do
			set_c_write (item, a_value)
		ensure
			write_set: a_value = write
		end

	close: POINTER
			-- Access member close
		require
			exists: exists
		do
			Result := c_close (item)
		ensure
			result_correct: Result = c_close (item)
		end

	set_close (a_value: POINTER)
			-- Change the value of member close to a_value.
		require
			exists: exists
		do
			set_c_close (item, a_value)
		ensure
			close_set: a_value = close
		end

	type: NATURAL_32
			-- Access member type
		require
			exists: exists
		do
			Result := c_type (item)
		ensure
			result_correct: Result = c_type (item)
		end

	set_type (a_value: NATURAL_32)
			-- Change the value of member type to a_value.
		require
			exists: exists
		do
			set_c_type (item, a_value)
		ensure
			type_set: a_value = type
		end
	
feature {NONE} -- Implementation wrapper for struct struct SDL_RWops

	sizeof_external: INTEGER_32
		external
			"C inline use <SDL.h>"
		alias
			"sizeof(struct SDL_RWops)"
		end

	c_size (an_item: POINTER): POINTER
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->size
			]"
		end

	set_c_size (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->size =  (Sint64 (*) (struct SDL_RWops *context))$a_value
			]"
		ensure
			size_set: a_value = c_size (an_item)
		end

	c_seek (an_item: POINTER): POINTER
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->seek
			]"
		end

	set_c_seek (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->seek =  (Sint64 (*) (struct SDL_RWops *context, Sint64 offset, int whence))$a_value
			]"
		ensure
			seek_set: a_value = c_seek (an_item)
		end

	c_read (an_item: POINTER): POINTER
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->read
			]"
		end

	set_c_read (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->read =  (size_t (*) (struct SDL_RWops *context, void *ptr, size_t size, size_t maxnum))$a_value
			]"
		ensure
			read_set: a_value = c_read (an_item)
		end

	c_write (an_item: POINTER): POINTER
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->write
			]"
		end

	set_c_write (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->write =  (size_t (*) (struct SDL_RWops *context, void const *ptr, size_t size, size_t num))$a_value
			]"
		ensure
			write_set: a_value = c_write (an_item)
		end

	c_close (an_item: POINTER): POINTER
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->close
			]"
		end

	set_c_close (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->close =  (int (*) (struct SDL_RWops *context))$a_value
			]"
		ensure
			close_set: a_value = c_close (an_item)
		end

	c_type (an_item: POINTER): NATURAL_32
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->type
			]"
		end

	set_c_type (an_item: POINTER; a_value: NATURAL_32)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_RWops*)$an_item)->type =  (Uint32)$a_value
			]"
		ensure
			type_set: a_value = c_type (an_item)
		end
	
end -- class SDL_RWOPS_STRUCT_API

Generated by ISE EiffelStudio