#[non_exhaustive]pub enum SurfaceTargetUnsafe {
RawHandle {
raw_display_handle: RawDisplayHandle,
raw_window_handle: RawWindowHandle,
},
Drm {
fd: i32,
plane: u32,
connector_id: u32,
width: u32,
height: u32,
refresh_rate: u32,
},
}Expand description
The window/canvas/surface/swap-chain/etc. a surface is attached to, for use with unsafe surface creation.
This is either a window or an actual web canvas depending on the platform and enabled features. Refer to the individual variants for more information.
See also SurfaceTarget for safe variants.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
RawHandle
Raw window & display handle.
If the specified display and window handle are not supported by any of the backends, then the surface will not be supported by any adapters.
§Safety
raw_window_handle&raw_display_handlemust be valid objects to create a surface upon.raw_window_handle&raw_display_handlemust remain valid until after the returnedSurfaceis dropped.
Fields
raw_display_handle: RawDisplayHandleRaw display handle, underlying display must outlive the surface created from this.
raw_window_handle: RawWindowHandleRaw display handle, underlying window must outlive the surface created from this.
Drm
Surface from a DRM device.
If the specified DRM configuration is not supported by any of the backends, then the surface will not be supported by any adapters.
§Safety
- All parameters must point to valid DRM values and remain valid for as long as the resulting
Surfaceexists. - The file descriptor (
fd), plane, connector, and mode configuration must be valid and compatible.
Fields
Implementations§
Source§impl SurfaceTargetUnsafe
impl SurfaceTargetUnsafe
Sourcepub unsafe fn from_window<T>(window: &T) -> Result<Self, HandleError>where
T: HasDisplayHandle + HasWindowHandle,
pub unsafe fn from_window<T>(window: &T) -> Result<Self, HandleError>where
T: HasDisplayHandle + HasWindowHandle,
Creates a SurfaceTargetUnsafe::RawHandle from a window.
§Safety
windowmust outlive the resulting surface target (and subsequently the surface created for this target).