pub trait CameraHost:
Send
+ Sync
+ 'static {
// Required methods
fn availability(&self) -> Result<CameraAvailability, CameraError>;
fn request_permission(
&self,
request: CameraPermissionRequest,
) -> Result<CameraPermission, CameraError>;
fn capture_photo(
&self,
request: CameraCaptureRequest,
) -> Result<CameraCapture, CameraError>;
fn set_flashlight(
&self,
request: CameraFlashlightRequest,
) -> Result<(), CameraError>;
fn cancel_capture(&self) -> Result<(), CameraError>;
}Expand description
Host-side camera and flashlight provider.
Required Methods§
Sourcefn availability(&self) -> Result<CameraAvailability, CameraError>
fn availability(&self) -> Result<CameraAvailability, CameraError>
Returns camera permission state and host-visible camera devices.
Sourcefn request_permission(
&self,
request: CameraPermissionRequest,
) -> Result<CameraPermission, CameraError>
fn request_permission( &self, request: CameraPermissionRequest, ) -> Result<CameraPermission, CameraError>
Requests camera permission and returns the resulting permission state.
Sourcefn capture_photo(
&self,
request: CameraCaptureRequest,
) -> Result<CameraCapture, CameraError>
fn capture_photo( &self, request: CameraCaptureRequest, ) -> Result<CameraCapture, CameraError>
Captures a still image according to the selected camera, format, flash, and quality request.
Sourcefn set_flashlight(
&self,
request: CameraFlashlightRequest,
) -> Result<(), CameraError>
fn set_flashlight( &self, request: CameraFlashlightRequest, ) -> Result<(), CameraError>
Enables, disables, or adjusts the selected camera flashlight where available.
Sourcefn cancel_capture(&self) -> Result<(), CameraError>
fn cancel_capture(&self) -> Result<(), CameraError>
Cancels an active camera capture flow.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".