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

class 
	SDL_AUDIO_SPEC_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

	freq: INTEGER_32
			-- Access member freq
		require
			exists: exists
		do
			Result := c_freq (item)
		ensure
			result_correct: Result = c_freq (item)
		end

	set_freq (a_value: INTEGER_32)
			-- Change the value of member freq to a_value.
		require
			exists: exists
		do
			set_c_freq (item, a_value)
		ensure
			freq_set: a_value = freq
		end

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

	set_format (a_value: NATURAL_32)
			-- Change the value of member format to a_value.
		require
			exists: exists
		do
			set_c_format (item, a_value)
		ensure
			format_set: a_value = format
		end

	channels: CHARACTER_8
			-- Access member channels
		require
			exists: exists
		do
			Result := c_channels (item)
		ensure
			result_correct: Result = c_channels (item)
		end

	set_channels (a_value: CHARACTER_8)
			-- Change the value of member channels to a_value.
		require
			exists: exists
		do
			set_c_channels (item, a_value)
		ensure
			channels_set: a_value = channels
		end

	silence: CHARACTER_8
			-- Access member silence
		require
			exists: exists
		do
			Result := c_silence (item)
		ensure
			result_correct: Result = c_silence (item)
		end

	set_silence (a_value: CHARACTER_8)
			-- Change the value of member silence to a_value.
		require
			exists: exists
		do
			set_c_silence (item, a_value)
		ensure
			silence_set: a_value = silence
		end

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

	set_samples (a_value: NATURAL_32)
			-- Change the value of member samples to a_value.
		require
			exists: exists
		do
			set_c_samples (item, a_value)
		ensure
			samples_set: a_value = samples
		end

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

	set_padding (a_value: NATURAL_32)
			-- Change the value of member padding to a_value.
		require
			exists: exists
		do
			set_c_padding (item, a_value)
		ensure
			padding_set: a_value = padding
		end

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

	set_size (a_value: NATURAL_32)
			-- 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

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

	set_callback (a_value: POINTER)
			-- Change the value of member callback to a_value.
		require
			exists: exists
		do
			set_c_callback (item, a_value)
		ensure
			callback_set: a_value = callback
		end

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

	set_userdata (a_value: POINTER)
			-- Change the value of member userdata to a_value.
		require
			exists: exists
		do
			set_c_userdata (item, a_value)
		ensure
			userdata_set: a_value = userdata
		end
	
feature {NONE} -- Implementation wrapper for struct struct SDL_AudioSpec

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

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

	set_c_freq (an_item: POINTER; a_value: INTEGER_32)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_AudioSpec*)$an_item)->freq =  (int)$a_value
			]"
		ensure
			freq_set: a_value = c_freq (an_item)
		end

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

	set_c_format (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_AudioSpec*)$an_item)->format =  (SDL_AudioFormat)$a_value
			]"
		ensure
			format_set: a_value = c_format (an_item)
		end

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

	set_c_channels (an_item: POINTER; a_value: CHARACTER_8)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_AudioSpec*)$an_item)->channels =  (Uint8)$a_value
			]"
		ensure
			channels_set: a_value = c_channels (an_item)
		end

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

	set_c_silence (an_item: POINTER; a_value: CHARACTER_8)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_AudioSpec*)$an_item)->silence =  (Uint8)$a_value
			]"
		ensure
			silence_set: a_value = c_silence (an_item)
		end

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

	set_c_samples (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_AudioSpec*)$an_item)->samples =  (Uint16)$a_value
			]"
		ensure
			samples_set: a_value = c_samples (an_item)
		end

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

	set_c_padding (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_AudioSpec*)$an_item)->padding =  (Uint16)$a_value
			]"
		ensure
			padding_set: a_value = c_padding (an_item)
		end

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

	set_c_size (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_AudioSpec*)$an_item)->size =  (Uint32)$a_value
			]"
		ensure
			size_set: a_value = c_size (an_item)
		end

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

	set_c_callback (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_AudioSpec*)$an_item)->callback =  (SDL_AudioCallback)$a_value
			]"
		ensure
			callback_set: a_value = c_callback (an_item)
		end

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

	set_c_userdata (an_item: POINTER; a_value: POINTER)
		require
			an_item_not_null: an_item /= default_pointer
		external
			"C inline use <SDL.h>"
		alias
			"[
				((struct SDL_AudioSpec*)$an_item)->userdata =  (void*)$a_value
			]"
		ensure
			userdata_set: a_value = c_userdata (an_item)
		end
	
end -- class SDL_AUDIO_SPEC_STRUCT_API

Generated by ISE EiffelStudio