Skip to main content

CameraEffects

Struct CameraEffects 

Source
pub struct CameraEffects<'a, 'b, S: AppState> { /* private fields */ }
Expand description

Convenience builder for standard camera host capabilities.

Implementations§

Source§

impl<'a, 'b, S: AppState> CameraEffects<'a, 'b, S>

Source

pub fn availability(self) -> EffectBuilder<'a, 'b, S>

Queries camera permission and available camera devices.

Use this before showing camera-specific controls. The result contains the current permission state and host-visible devices, including facing direction and flashlight availability where known.

Source

pub fn request_permission( self, request: CameraPermissionRequest, ) -> EffectBuilder<'a, 'b, S>

Requests camera permission from the host.

request.reason can carry product-facing context for hosts that support a pre-prompt or custom rationale. The success action receives the resulting CameraPermission state.

Source

pub fn capture_photo( self, request: CameraCaptureRequest, ) -> EffectBuilder<'a, 'b, S>

Captures a still photo through the selected host camera.

request chooses camera id or facing direction, optional resolution, image format, flash behavior, and quality. The success action receives image bytes plus dimensions and content type.

Source

pub fn set_flashlight( self, request: CameraFlashlightRequest, ) -> EffectBuilder<'a, 'b, S>

Enables, disables, or adjusts the camera flashlight where supported.

request.camera_id selects the device, enabled chooses the desired state, and intensity optionally requests a platform-specific brightness level from 0 to 100. Many desktop cameras have no torch.

Source

pub fn cancel_capture(self) -> EffectBuilder<'a, 'b, S>

Cancels an active camera capture session.

Use this when the user dismisses the camera flow before a photo is returned. Hosts may return success when there is no active capture.

Auto Trait Implementations§

§

impl<'a, 'b, S> Freeze for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> !RefUnwindSafe for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> Send for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> Sync for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> Unpin for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> UnsafeUnpin for CameraEffects<'a, 'b, S>

§

impl<'a, 'b, S> !UnwindSafe for CameraEffects<'a, 'b, S>

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> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
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>,

Source§

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>,

Source§

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.