Skip to main content

PluginRegistry

Struct PluginRegistry 

Source
pub struct PluginRegistry { /* private fields */ }
Expand description

Structured report for dynamic plugins loaded from host-provided paths.

Implementations§

Source§

impl PluginRegistry

Source

pub fn inspect_decoder_support_development( paths: impl IntoIterator<Item = impl AsRef<Path>>, request: DecoderPluginMatchRequest, ) -> Self

Inspects unsigned raw native libraries under explicit development policy.

Source

pub fn inspect_frame_processor_support_development( paths: impl IntoIterator<Item = impl AsRef<Path>>, ) -> Self

Inspects unsigned raw native libraries under explicit development policy.

Source

pub fn inspect_frame_processor_support_artifacts( artifacts: impl IntoIterator<Item = NativePluginArtifact>, ) -> Self

Inspects host-verified native artifacts and binds each declared plugin identity to the Root ABI identity before exposing capability records.

Source

pub fn inspect_source_normalizer_support_development( paths: impl IntoIterator<Item = impl AsRef<Path>>, ) -> Self

Inspects unsigned raw native libraries under explicit development policy.

Source

pub fn inspect_source_normalizer_support_artifacts( artifacts: impl IntoIterator<Item = NativePluginArtifact>, ) -> Self

Inspects host-verified native artifacts and binds each declared plugin identity to the Root ABI identity before exposing capability records.

Source

pub fn from_records(records: Vec<PluginDiagnosticRecord>) -> Self

Source

pub fn from_records_with_references( entries: impl IntoIterator<Item = (PluginDiagnosticRecord, Option<PluginReference>)>, ) -> Self

Builds a diagnostic-only registry from records with their validated canonical references already attached.

This constructor does not load plugin instances. It is intended for host adapters and synthetic fixtures that have already established the same identity mapping produced by native or WASM inspection.

Source

pub fn load_native_development( paths: impl IntoIterator<Item = impl AsRef<Path>>, ) -> Result<Self, PluginRegistryBuildError>

Loads unsigned raw native libraries under explicit development policy.

Source

pub fn load_native_artifacts( artifacts: impl IntoIterator<Item = NativePluginArtifact>, ) -> Result<Self, PluginRegistryBuildError>

Source

pub fn registered_interfaces(&self) -> &[RegisteredPluginInterface]

Source

pub fn post_download_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn pipeline_event_hook_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn benchmark_sink_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn native_decoder_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn frame_processor_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn audio_processor_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn source_packet_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn source_resource_references( &self, ) -> Result<Vec<PluginReference>, PluginSelectionError>

Source

pub fn resolve_post_download( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn PostDownloadProcessor>, PluginSelectionError>

Source

pub fn resolve_pipeline_event_hook( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn PipelineEventHook>, PluginSelectionError>

Source

pub fn resolve_pipeline_event_hook_in_scope( &self, reference: &PluginReference, _scope: &PluginScope, ) -> Result<ResolvedPluginCapability<dyn PipelineEventHook>, PluginSelectionError>

Resolves one EventHook and binds a fresh WASM worker/session to scope. Native capabilities keep their existing trusted owner semantics.

Source

pub fn resolve_benchmark_sink( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn BenchmarkSink>, PluginSelectionError>

Source

pub fn resolve_benchmark_sink_in_scope( &self, reference: &PluginReference, _scope: &PluginScope, ) -> Result<ResolvedPluginCapability<dyn BenchmarkSink>, PluginSelectionError>

Resolves one BenchmarkSink and binds a fresh WASM worker/session to scope. Native capabilities keep their existing trusted owner semantics.

Source

pub fn resolve_native_decoder( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn NativeDecoderPluginFactory>, PluginSelectionError>

Source

pub fn resolve_frame_processor( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn FrameProcessorPluginFactory>, PluginSelectionError>

Source

pub fn resolve_audio_processor( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn AudioProcessorPluginFactory>, PluginSelectionError>

Source

pub fn resolve_source_packet( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn SourceNormalizerPacketPluginFactory>, PluginSelectionError>

Source

pub fn resolve_source_resource( &self, reference: &PluginReference, ) -> Result<ResolvedPluginCapability<dyn SourceNormalizerResourcePluginFactory>, PluginSelectionError>

Source

pub fn records(&self) -> &[PluginDiagnosticRecord]

Source

pub fn reference_for_record( &self, record: &PluginDiagnosticRecord, ) -> Option<&PluginReference>

Returns the canonical plugin reference associated with an inspection record.

Source

pub fn best_decoder_for( &self, request: &DecoderPluginMatchRequest, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_native_decoder_for( &self, request: &DecoderPluginMatchRequest, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_pcm_audio_decoder_for( &self, request: &DecoderPluginMatchRequest, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn supports_decoder(&self, request: &DecoderPluginMatchRequest) -> bool

Source

pub fn supports_native_decoder( &self, request: &DecoderPluginMatchRequest, ) -> bool

Source

pub fn supports_pcm_audio_decoder( &self, request: &DecoderPluginMatchRequest, ) -> bool

Source

pub fn frame_processor_supported_plugin_names(&self) -> Vec<&str>

Source

pub fn source_normalizer_supported_plugin_names(&self) -> Vec<&str>

Source

pub fn best_source_normalizer(&self) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_source_normalizer_packet(&self) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_source_normalizer_packet_for_profile( &self, runtime_profile: &str, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_source_normalizer_resource(&self) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_source_normalizer_resource_for_profile( &self, runtime_profile: &str, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn best_source_normalizer_for_profile( &self, runtime_profile: &str, ) -> Option<&PluginDiagnosticRecord>

Source

pub fn decoder_supported_plugin_names(&self) -> Vec<&str>

Source

pub fn diagnostic_notes(&self) -> Vec<String>

Source

pub fn report(&self) -> PluginRegistryReport

Trait Implementations§

Source§

impl Clone for PluginRegistry

Source§

fn clone(&self) -> PluginRegistry

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PluginRegistry

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for PluginRegistry

Source§

fn default() -> PluginRegistry

Returns the “default value” for a type. Read more

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more