#[repr(C)]pub struct RequestAdapterOptionsBase<S> {
pub power_preference: PowerPreference,
pub force_fallback_adapter: bool,
pub compatible_surface: Option<S>,
pub apply_limit_buckets: bool,
}Expand description
Options for requesting adapter.
Corresponds to WebGPU GPURequestAdapterOptions,
with some wgpu extensions.
Fields§
§power_preference: PowerPreferencePower preference for the adapter.
force_fallback_adapter: boolIndicates that only a fallback adapter can be returned. This is generally a “software” implementation on the system.
compatible_surface: Option<S>Surface that is required to be presentable with the requested adapter. This does not create the surface, only guarantees that the adapter can present to said surface. For WebGL, this is strictly required, as an adapter can not be created without a surface.
apply_limit_buckets: boolRequests that the returned adapter’s limits are mapped to one of several pre-defined
buckets, as described in limit bucketing. If your application exposes wgpu to untrusted
content (e.g. a web browser), this can reduce the potential for fingerprinting via adapter
characteristics.
To be effective, control of this option must not be available to the untrusted content. Instead, set this option unconditionally in trusted code.
Trait Implementations§
Source§impl<S> Clone for RequestAdapterOptions<S>where
S: Clone,
impl<S> Clone for RequestAdapterOptions<S>where
S: Clone,
Source§fn clone(&self) -> RequestAdapterOptions<S>
fn clone(&self) -> RequestAdapterOptions<S>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<S> Debug for RequestAdapterOptions<S>where
S: Debug,
impl<S> Debug for RequestAdapterOptions<S>where
S: Debug,
Source§impl<S> Default for RequestAdapterOptions<S>
impl<S> Default for RequestAdapterOptions<S>
Source§fn default() -> RequestAdapterOptions<S>
fn default() -> RequestAdapterOptions<S>
Source§impl<'de, S> Deserialize<'de> for RequestAdapterOptions<S>where
S: Deserialize<'de>,
impl<'de, S> Deserialize<'de> for RequestAdapterOptions<S>where
S: Deserialize<'de>,
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<RequestAdapterOptions<S>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<RequestAdapterOptions<S>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl<S> Hash for RequestAdapterOptions<S>where
S: Hash,
impl<S> Hash for RequestAdapterOptions<S>where
S: Hash,
Source§impl<S> PartialEq for RequestAdapterOptions<S>where
S: PartialEq,
impl<S> PartialEq for RequestAdapterOptions<S>where
S: PartialEq,
Source§impl<S> Serialize for RequestAdapterOptions<S>where
S: Serialize,
impl<S> Serialize for RequestAdapterOptions<S>where
S: Serialize,
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl<S> Eq for RequestAdapterOptions<S>where
S: Eq,
impl<S> StructuralPartialEq for RequestAdapterOptions<S>
Auto Trait Implementations§
impl<S> Freeze for RequestAdapterOptions<S>where
S: Freeze,
impl<S> RefUnwindSafe for RequestAdapterOptions<S>where
S: RefUnwindSafe,
impl<S> Send for RequestAdapterOptions<S>where
S: Send,
impl<S> Sync for RequestAdapterOptions<S>where
S: Sync,
impl<S> Unpin for RequestAdapterOptions<S>where
S: Unpin,
impl<S> UnwindSafe for RequestAdapterOptions<S>where
S: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more