note
	description: "A builder to create {GAME_WINDOW_GL}."
	author: "Louis Marchand"
	date: "Tue, 29 Dec 2015 19:06:42 +0000"
	revision: "1.0"

expanded class interface
	GAME_WINDOW_GL_BUILDER

create 
	default_create

feature -- Access

	reset_gl
			-- Reset the gl_* attributes these default values

	set_gl_version (a_version: TUPLE [major: INTEGER_32; minor: INTEGER_32])
			-- The version of OpenGL that the result of generate_window will use.
			-- Default depend on the OpenGL library in the system

	set_gl_red_size (a_size: INTEGER_32)
			-- Minimum number of bits for the red channel of the color buffer.
			-- Defaults to 3

	set_gl_green_size (a_size: INTEGER_32)
			-- Minimum number of bits for the green channel of the color buffer.
			-- Defaults to 3

	set_gl_blue_size (a_size: INTEGER_32)
			-- Minimum number of bits for the blue channel of the color buffer.
			-- Defaults to 2

	set_gl_alpha_size (a_size: INTEGER_32)
			-- Minimum number of bits for the alpha channel of the color buffer.
			-- Defaults to 0

	set_gl_buffer_size (a_size: INTEGER_32)
			-- Minimum number of bits for the frame buffer.
			-- Defaults to 0

	enable_gl_double_buffer
			-- The result of generate_window will be double buffered.
			-- Default: True

	disable_gl_double_buffer
			-- The result of generate_window will not be double buffered.
			-- Default: True

	set_gl_depth_size (a_size: INTEGER_32)
			-- Minimum number of bits for the depth buffer.
			-- Defaults to 16

	set_gl_stencil_size (a_size: INTEGER_32)
			-- Minimum number of bits for the stencil buffer.
			-- Defaults to 0

	set_gl_accumulation_red_size (a_size: INTEGER_32)
			-- Minimum number of bits for the red channel of the accumulation buffer.
			-- Defaults to 0

	set_gl_accumulation_green_size (a_size: INTEGER_32)
			-- Minimum number of bits for the green channel of the accumulation buffer.
			-- Defaults to 0

	set_gl_accumulation_blue_size (a_size: INTEGER_32)
			-- Minimum number of bits for the blue channel of the accumulation buffer.
			-- Defaults to 0

	set_gl_accumulation_alpha_size (a_size: INTEGER_32)
			-- Minimum number of bits for the alpha channel of the accumulation buffer.
			-- Defaults to 0

	enable_gl_stereo
			-- The result of generate_window will used quad buffer stereo rendering.
			-- Default: False

	disable_gl_stereo
			-- The result of generate_window will not used quad buffer stereo rendering.
			-- Default: False

	enable_gl_multi_sample (a_sample_count: INTEGER_32)
			-- Multisample anti-aliasing will be enabled and using  gl_multi_sample_count around the current pixel

	disable_gl_multi_sample
			-- Disable Multisample anti-aliasing

	enable_gl_software_rendering
			-- The result of generate_window will use softare rendering.
			-- Default: False

	disable_gl_software_rendering
			-- The result of generate_window will try to use hardware rendering.
			-- Default: False

	enable_gl_debug
			-- Put the GL into a "debug" mode. May cause performance lost
			-- Ignored on system that does not support it.
			-- Default: False

	disable_gl_debug
			-- Don't put the GL into a "debug" mode.
			-- Ignored on system that does not support it.
			-- Default: False

	enable_gl_forward_compatibility
			-- No deprecated context functionality will be supported
			-- Can provide better performance
			-- Only available for OpenGL 3.0 and newer
			-- Ignored on system that does not support it.
			-- Default: False

	disable_gl_forward_compatibility
			-- Deprecated context functionality will be supported
			-- Ignored on system that does not support it.
			-- Default: False

	enable_gl_robust_access
			-- Internal OpenGL context will use more robust API.
			-- Ignored on system that does not support it.
			-- Can cause a performance lost
			-- Default: False

	disable_gl_robust_access
			-- Internal OpenGL context will not use more robust API.
			-- Ignored on system that does not support it.
			-- Default: False

	enable_gl_reset_isolation
			-- Enable more rebust driver or hardware failure reset management.
			-- Ignored on system that does not support it.
			-- Default: False

	disable_gl_reset_isolation
			-- Do not enable more rebust driver or hardware failure reset management.
			-- Ignored on system that does not support it.
			-- Default: False

	enable_gl_core_profile
			-- In this profile, deprecated conext funtionnalities will be disabled;
			-- Default: Depend on the system

	enable_gl_compatibility_profile
			-- In this profile, deprecated conext funtionnalities will be enabled;
			-- Default: Depend on the system

	enable_gl_es_profile
			-- In this profile, only the GLES subset of the context functionnalities will be enabled
			-- Default: Depend on the system

	enable_gl_context_sharing
			-- Enable OpenGL Context Sharing

	disable_gl_context_sharing
			-- Disable OpenGL Context Sharing

	enable_gl_srgb_request
			-- Request sRGB rendering

	disable_gl_srgb_request
			-- Don't request sRGB rendering

	is_gl_swap_interval_enabled: BOOLEAN
			-- The FPS will be managed by the update of the result of generate_window

	is_gl_swap_late_enabled: BOOLEAN
			-- Like enable_gl_swap_interval, but if a frame is skip because of
			-- a lag, the driver will immediately update the frame.

	enable_gl_swap_interval
			-- Set is_gl_swap_interval_enabled

	enable_gl_swap_late
			-- Set is_gl_swap_late_enabled
			-- If this fail, you can it is possible that you can use enable_gl_swap_interval

	disable_gl_swap_interval_and_late
			-- Unset is_gl_swap_interval_enabled and is_gl_swap_late_enabled

	generate_window: GAME_WINDOW_GL
			-- The GAME_WINDOW_GL that fit all
			-- attributes of Current
	
end -- class GAME_WINDOW_GL_BUILDER

Generated by ISE EiffelStudio