Struct webxr::glwindow::GlWindowDevice

source ·
pub struct GlWindowDevice {
Show 13 fields device: Device, context: Context, gl: Rc<Context>, window: Box<dyn GlWindow>, grand_manager: LayerGrandManager<SurfmanGL>, layer_manager: Option<LayerManager>, target_swap_chain: Option<SwapChain<Device>>, swap_chains: SwapChains<LayerId, Device>, read_fbo: Option<NativeFramebuffer>, events: EventBuffer, clip_planes: ClipPlanes, granted_features: Vec<String>, shader: Option<GlWindowShader>,
}

Fields§

§device: Device§context: Context§gl: Rc<Context>§window: Box<dyn GlWindow>§grand_manager: LayerGrandManager<SurfmanGL>§layer_manager: Option<LayerManager>§target_swap_chain: Option<SwapChain<Device>>§swap_chains: SwapChains<LayerId, Device>§read_fbo: Option<NativeFramebuffer>§events: EventBuffer§clip_planes: ClipPlanes§granted_features: Vec<String>§shader: Option<GlWindowShader>

Implementations§

source§

impl GlWindowDevice

source

fn new( connection: Connection, adapter: Adapter, context_attributes: ContextAttributes, window: Box<dyn GlWindow>, granted_features: Vec<String>, grand_manager: LayerGrandManager<SurfmanGL>, ) -> Result<GlWindowDevice, Error>

source

fn blit_texture( &self, texture_id: Option<NativeTexture>, texture_target: u32, texture_size: Size2D<i32, UnknownUnit>, window_size: Size2D<i32, Viewport>, )

source

fn layer_manager(&mut self) -> Result<&mut LayerManager, Error>

source

fn window_size(&self) -> Size2D<i32, Viewport>

source

fn viewport_size(&self) -> Size2D<i32, Viewport>

source

fn views(&self, viewer: RigidTransform3D<f32, Viewer, Native>) -> Views

source

fn view<Eye>( &self, viewer: RigidTransform3D<f32, Viewer, Native>, eye: SomeEye<Eye>, ) -> View<Eye>

source

fn perspective<Eye>(&self) -> Transform3D<f32, Eye, Display>

Trait Implementations§

source§

impl DeviceAPI for GlWindowDevice

source§

fn floor_transform(&self) -> Option<RigidTransform3D<f32, Native, Floor>>

The transform from native coordinates to the floor.
source§

fn viewports(&self) -> Viewports

source§

fn create_layer( &mut self, context_id: ContextId, init: LayerInit, ) -> Result<LayerId, Error>

Create a new layer
source§

fn destroy_layer(&mut self, context_id: ContextId, layer_id: LayerId)

Destroy a layer
source§

fn begin_animation_frame( &mut self, layers: &[(ContextId, LayerId)], ) -> Option<Frame>

Begin an animation frame.
source§

fn end_animation_frame(&mut self, layers: &[(ContextId, LayerId)])

End an animation frame, render the layer to the device, and block waiting for the next frame.
source§

fn initial_inputs(&self) -> Vec<InputSource>

Inputs registered with the device on initialization. More may be added, which should be communicated through a yet-undecided event mechanism
source§

fn set_event_dest(&mut self, dest: Sender<Event>)

Sets the event handling channel
source§

fn quit(&mut self)

Quit the session
source§

fn set_quitter(&mut self, _: Quitter)

source§

fn update_clip_planes(&mut self, near: f32, far: f32)

source§

fn granted_features(&self) -> &[String]

source§

fn environment_blend_mode(&self) -> EnvironmentBlendMode

source§

fn request_hit_test(&mut self, _source: HitTestSource)

source§

fn cancel_hit_test(&mut self, _id: HitTestId)

source§

fn update_frame_rate(&mut self, rate: f32) -> f32

source§

fn supported_frame_rates(&self) -> Vec<f32>

source§

fn reference_space_bounds(&self) -> Option<Vec<Point2D<f32, Floor>>>

source§

impl Drop for GlWindowDevice

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.