[−][src]Struct glium_graphics::GliumWindow
A window struct for glium.
Fields
window: Rc<RefCell<W>>
Window.
context: Rc<Context>
Glium context.
events: Events
Event loop state.
Methods
impl<W> GliumWindow<W> where
W: OpenGLWindow + 'static,
[src]
impl<W> GliumWindow<W> where
W: OpenGLWindow + 'static,
pub fn new(window: &Rc<RefCell<W>>) -> Result<Self, IncompatibleOpenGl> | [src] |
Creates new GliumWindow.
pub fn draw(&self) -> Frame | [src] |
Returns new frame.
pub fn next(&mut self) -> Option<Event> | [src] |
Returns next event.
Methods from Deref<Target = Context>
pub fn get_framebuffer_dimensions(&self) -> (u32, u32) | [src] |
Calls get_framebuffer_dimensions
on the backend object stored by this context.
pub unsafe fn rebuild<B>( | [src] |
Changes the OpenGL context associated with this context.
The new context must have lists shared with the old one.
pub fn swap_buffers(&self) -> Result<(), SwapBuffersError> | [src] |
Swaps the buffers in the backend.
pub fn get_version(&self) -> &Version | [src] |
DEPRECATED. Use get_opengl_version
instead.
pub fn get_opengl_version(&self) -> &Version | [src] |
Returns the OpenGL version detected by this context.
pub fn get_supported_glsl_version(&self) -> Version | [src] |
Returns the GLSL version guaranteed to be supported.
pub fn is_glsl_version_supported(&self, version: &Version) -> bool | [src] |
Returns true if the given GLSL version is supported.
pub fn get_opengl_version_string(&self) -> &str | [src] |
Returns a string containing this GL version or release number used by this context.
Vendor-specific information may follow the version number.
pub fn get_opengl_vendor_string(&self) -> &str | [src] |
Returns a string containing the company responsible for this GL implementation.
pub fn get_opengl_renderer_string(&self) -> &str | [src] |
Returns a string containing the name of the GL renderer used by this context.
This name is typically specific to a particular configuration of a hardware platform.
pub fn is_debug(&self) -> bool | [src] |
Returns true if the context is in debug mode.
Debug mode may provide additional error and performance issue reporting functionality.
pub fn is_forward_compatible(&self) -> bool | [src] |
Returns true if the context is in "forward-compatible" mode.
Forward-compatible mode means that no deprecated functionality will be supported.
pub fn get_opengl_profile(&self) -> Option<Profile> | [src] |
Returns this context's OpenGL profile if available.
The context profile is available from OpenGL 3.2 onwards. Returns None
if not supported.
pub fn is_robust(&self) -> bool | [src] |
Returns true if out-of-bound buffer access from the GPU side (inside a program) cannot result in a crash.
You should take extra care if is_robust
returns false.
pub fn is_context_loss_possible(&self) -> bool | [src] |
Returns true if a context loss is possible.
pub fn is_context_lost(&self) -> bool | [src] |
Returns true if the context has been lost and needs to be recreated.
Implementation
If it has been determined that the context has been lost before, then the function
immediately returns true. Otherwise, calls glGetGraphicsResetStatus
. If this function
is not available, returns false.
pub fn get_release_behavior(&self) -> ReleaseBehavior | [src] |
Returns the behavior when the current OpenGL context is changed.
The most common value is Flush
. In order to get None
you must explicitly request it
during creation.
pub fn get_max_anisotropy_support(&self) -> Option<u16> | [src] |
Returns the maximum value that can be used for anisotropic filtering, or None
if the hardware doesn't support it.
pub fn get_max_viewport_dimensions(&self) -> (u32, u32) | [src] |
Returns the maximum dimensions of the viewport.
Glium will panic if you request a larger viewport than this when drawing.
pub fn release_shader_compiler(&self) | [src] |
Releases the shader compiler, indicating that no new programs will be created for a while.
This method is a no-op if it's not available in the implementation.
pub fn get_free_video_memory(&self) -> Option<usize> | [src] |
Returns an estimate of the amount of video memory available in bytes.
Returns None
if no estimate is available.
pub fn read_front_buffer<T>(&self) -> T where | [src] |
Reads the content of the front buffer.
You will only see the data that has finished being drawn.
This function can return any type that implements Texture2dDataSink<(u8, u8, u8, u8)>
.
Example
let pixels: Vec<Vec<(u8, u8, u8, u8)>> = display.read_front_buffer();
pub unsafe fn exec_in_context<'a, T, F>(&self, action: F) -> T where | [src] |
Execute an arbitrary closure with the OpenGL context active. Useful if another component needs to directly manipulate OpenGL state.
If action
manipulates any OpenGL state, it must be restored before action
completes.
pub fn assert_no_error(&self, user_msg: Option<&str>) | [src] |
Asserts that there are no OpenGL errors pending.
This function should be used in tests.
pub fn synchronize(&self) | [src] |
DEPRECATED. Renamed finish
.
pub fn finish(&self) | [src] |
Calls glFinish()
. This waits until all the previously issued commands have finished
being executed.
When you execute OpenGL functions, they are not executed immediately. Instead they are put in a queue. This function flushes this queue, then waits until all commands have finished being executed.
You normally don't need to call this function manually, except for debugging purposes.
pub fn flush(&self) | [src] |
Calls glFlush()
. This starts executing the commands that you have issued if it is not
yet the case.
When you execute OpenGL functions, they are not executed immediately. Instead they are put in a queue. This function flushes this queue so that commands start being executed.
You normally don't need to call this function manually. Swapping buffers automatically flushes the queue. This function can be useful if you want to benchmark the time it takes from your OpenGL driver to process commands.
pub fn insert_debug_marker(&self, marker: &str) -> Result<(), ()> | [src] |
Inserts a debugging string in the commands queue. If you use an OpenGL debugger, you will be able to see that string.
This is helpful to understand where you are when you have big applications.
Returns Err
if the backend doesn't support this functionality. You can choose whether
to call .unwrap()
if you want to make sure that it works, or .ok()
if you don't care.
pub fn debug_insert_debug_marker(&self, marker: &str) -> Result<(), ()> | [src] |
Same as insert_debug_marker
, except that if you don't compile with debug_assertions
it is a no-op and returns Ok
.
Trait Implementations
impl<W> Clone for GliumWindow<W>
[src]
impl<W> Clone for GliumWindow<W>
fn clone(&self) -> GliumWindow<W> | [src] |
fn clone_from(&mut self, source: &Self) | 1.0.0 [src] |
Performs copy-assignment from source
. Read more
impl<W> Deref for GliumWindow<W>
[src]
impl<W> Deref for GliumWindow<W>
impl<W> Facade for GliumWindow<W>
[src]
impl<W> Facade for GliumWindow<W>
fn get_context(&self) -> &Rc<Context> | [src] |
impl<W> EventLoop for GliumWindow<W>
[src]
impl<W> EventLoop for GliumWindow<W>
fn get_event_settings(&self) -> EventSettings | [src] |
fn set_event_settings(&mut self, settings: EventSettings) | [src] |
fn set_ups(&mut self, frames: u64) |
The number of updates per second Read more
fn ups(self, frames: u64) -> Self |
The number of updates per second Read more
fn set_ups_reset(&mut self, frames: u64) |
The number of delayed updates before skipping them to catch up. When set to 0
, it will always try to catch up. Read more
fn ups_reset(self, frames: u64) -> Self |
The number of delayed updates before skipping them to catch up. When set to 0
, it will always try to catch up. Read more
fn set_max_fps(&mut self, frames: u64) |
The maximum number of frames per second Read more
fn max_fps(self, frames: u64) -> Self |
The maximum number of frames per second Read more
fn set_swap_buffers(&mut self, enable: bool) |
Enable or disable automatic swapping of buffers.
fn swap_buffers(self, enable: bool) -> Self |
Enable or disable automatic swapping of buffers.
fn set_bench_mode(&mut self, enable: bool) |
Enable or disable benchmark mode. When enabled, it will render and update without sleep and ignore input. Used to test performance by playing through as fast as possible. Requires lazy
to be set to false
. Read more
fn bench_mode(self, enable: bool) -> Self |
Enable or disable benchmark mode. When enabled, it will render and update without sleep and ignore input. Used to test performance by playing through as fast as possible. Requires lazy
to be set to false
. Read more
fn set_lazy(&mut self, enable: bool) |
Enable or disable rendering only when receiving input. When enabled, update events are disabled. Idle events are emitted while receiving input. Read more
fn lazy(self, enable: bool) -> Self |
Enable or disable rendering only when receiving input. When enabled, update events are disabled. Idle events are emitted while receiving input. Read more
impl<W> Window for GliumWindow<W> where
W: Window,
[src]
impl<W> Window for GliumWindow<W> where
W: Window,
fn should_close(&self) -> bool | [src] |
fn set_should_close(&mut self, value: bool) | [src] |
fn size(&self) -> Size | [src] |
fn draw_size(&self) -> Size | [src] |
fn swap_buffers(&mut self) | [src] |
fn poll_event(&mut self) -> Option<Input> | [src] |
fn wait_event(&mut self) -> Input | [src] |
fn wait_event_timeout(&mut self, duration: Duration) -> Option<Input> | [src] |
impl<W> BuildFromWindowSettings for GliumWindow<W> where
W: 'static + Window + OpenGLWindow + BuildFromWindowSettings,
[src]
impl<W> BuildFromWindowSettings for GliumWindow<W> where
W: 'static + Window + OpenGLWindow + BuildFromWindowSettings,
fn build_from_window_settings( | [src] |
impl<W> AdvancedWindow for GliumWindow<W> where
W: AdvancedWindow,
[src]
impl<W> AdvancedWindow for GliumWindow<W> where
W: AdvancedWindow,
fn get_title(&self) -> String | [src] |
fn set_title(&mut self, title: String) | [src] |
fn get_exit_on_esc(&self) -> bool | [src] |
fn set_exit_on_esc(&mut self, value: bool) | [src] |
fn set_capture_cursor(&mut self, value: bool) | [src] |
fn show(&mut self) | [src] |
fn hide(&mut self) | [src] |
fn get_position(&self) -> Option<Position> | [src] |
fn set_position<P: Into<Position>>(&mut self, pos: P) | [src] |
fn set_size<S: Into<Size>>(&mut self, size: S) | [src] |
fn title(self, value: String) -> Self |
Sets title on window. Read more
fn exit_on_esc(self, value: bool) -> Self |
Sets whether to exit when pressing the Esc button. Read more
fn capture_cursor(self, value: bool) -> Self |
Sets whether to capture/grab the cursor. Read more
fn position<P>(self, val: P) -> Self where |
Sets the position of window. Read more
Auto Trait Implementations
impl<W = GlutinWindow> !Send for GliumWindow<W>
impl<W = GlutinWindow> !Send for GliumWindow<W>
impl<W = GlutinWindow> !Sync for GliumWindow<W>
impl<W = GlutinWindow> !Sync for GliumWindow<W>
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> | [src] |
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T | [src] |
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error> | [src] |
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId | [src] |
impl<T> CapabilitiesSource for T where
T: Facade + ?Sized,
[src]
impl<T> CapabilitiesSource for T where
T: Facade + ?Sized,
fn get_version(&self) -> &Version | [src] |
fn get_extensions(&self) -> &ExtensionsList | [src] |
fn get_capabilities(&self) -> &Capabilities | [src] |
impl<T> Erased for T
impl<T> Erased for T
impl<T> SetParameter for T
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where |
Sets value
as a parameter of self
.