pub struct ProviderRegistry { /* private fields */ }Expand description
Provider Registry - manages all hardware discovery providers
Implementations§
Source§impl ProviderRegistry
impl ProviderRegistry
Sourcepub async fn register(&self, provider: Box<dyn DMSCHardwareProvider>)
pub async fn register(&self, provider: Box<dyn DMSCHardwareProvider>)
Registers a provider
Sourcepub async fn register_defaults(&self)
pub async fn register_defaults(&self)
Registers the default set of providers
Sourcepub async fn discover_devices(
&self,
category: &HardwareCategory,
platform: &PlatformInfo,
) -> DiscoveryResult<Vec<DMSCDevice>>
pub async fn discover_devices( &self, category: &HardwareCategory, platform: &PlatformInfo, ) -> DiscoveryResult<Vec<DMSCDevice>>
Discovers devices of a specific type
Sourcepub async fn discover_all(
&self,
platform: &PlatformInfo,
) -> DiscoveryResult<Vec<DMSCDevice>>
pub async fn discover_all( &self, platform: &PlatformInfo, ) -> DiscoveryResult<Vec<DMSCDevice>>
Discovers all available devices
Sourcepub async fn provider_count(&self) -> usize
pub async fn provider_count(&self) -> usize
Returns the number of registered providers
Trait Implementations§
Source§impl Default for ProviderRegistry
impl Default for ProviderRegistry
Source§fn default() -> ProviderRegistry
fn default() -> ProviderRegistry
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ProviderRegistry
impl !RefUnwindSafe for ProviderRegistry
impl Send for ProviderRegistry
impl Sync for ProviderRegistry
impl Unpin for ProviderRegistry
impl !UnwindSafe for ProviderRegistry
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request