note
	description: "The controller of the game images files library."
	author: "Louis Marchand"
	date: "Thu, 02 Apr 2015 03:46:04 +0000"
	revision: "2.0"

class interface
	IMG_CONTROLLER

create 
	default_create

feature -- Access

	enable_image (a_enable_png, a_enable_jpg, a_enable_tif: BOOLEAN)
			-- Active the game_images_files_lib library.
			-- Pass a true value to a_enable_png, a_enable_jpg and a_enable_tif if you want the library to
			-- be able to open respectively PNG, JPG and TIF files. The dynamic library (DLL, SO, etc.) must be
			-- found to activate the functionnality.
			-- Using this is not actually needed, but loading the needed dynamic library before your program
			-- get buzy is a good idea.
		ensure
			png_is_enabled: (not has_error and a_enable_png) implies is_png_enabled
			jpg_is_enabled: (not has_error and a_enable_jpg) implies is_jpg_enabled
			tif_is_enabled: (not has_error and a_enable_tif) implies is_tif_enabled

	enable_png
			-- Load the PNG dynamic library
		ensure
			png_is_enabled: not has_error implies is_png_enabled

	enable_jpg
			-- Load the JPG dynamic library
		ensure
			jpg_is_enabled: not has_error implies is_jpg_enabled

	enable_tif
			-- Load the TIF dynamic library
		ensure
			tif_is_enabled: not has_error implies is_tif_enabled

	is_png_enabled: BOOLEAN
			-- True if the PNG dynamic library is currently loaded

	is_jpg_enabled: BOOLEAN
			-- True if the JPG dynamic library is currently loaded

	is_tif_enabled: BOOLEAN
			-- True if the tif dynamic library is currently loaded

	quit_library
			-- Close the images files library.
	
invariant
	is_singleton: Instance_count.item = 1

end -- class IMG_CONTROLLER

Generated by ISE EiffelStudio