pub struct StreamingService<CH>where
CH: CommandHandler<GenerateFramesCommand, Vec<Frame>> + CommandHandler<BatchGenerateFramesCommand, Vec<Frame>> + CommandHandler<AdjustPriorityThresholdCommand, ()>,{ /* private fields */ }
Expand description
High-level service for streaming workflows and optimizations
Implementations§
Source§impl<CH> StreamingService<CH>where
CH: CommandHandler<GenerateFramesCommand, Vec<Frame>> + CommandHandler<BatchGenerateFramesCommand, Vec<Frame>> + CommandHandler<AdjustPriorityThresholdCommand, ()> + Send + Sync,
impl<CH> StreamingService<CH>where
CH: CommandHandler<GenerateFramesCommand, Vec<Frame>> + CommandHandler<BatchGenerateFramesCommand, Vec<Frame>> + CommandHandler<AdjustPriorityThresholdCommand, ()> + Send + Sync,
pub fn new(command_handler: Arc<CH>) -> Self
Sourcepub async fn generate_adaptive_frames(
&self,
session_id: SessionId,
stream_id: StreamId,
performance_context: &PerformanceContext,
) -> ApplicationResult<AdaptiveFrameResult>
pub async fn generate_adaptive_frames( &self, session_id: SessionId, stream_id: StreamId, performance_context: &PerformanceContext, ) -> ApplicationResult<AdaptiveFrameResult>
Generate optimized frames for a single stream based on adaptive priority
Sourcepub async fn generate_cross_stream_optimized_frames(
&self,
session_id: SessionId,
performance_context: &PerformanceContext,
) -> ApplicationResult<CrossStreamFrameResult>
pub async fn generate_cross_stream_optimized_frames( &self, session_id: SessionId, performance_context: &PerformanceContext, ) -> ApplicationResult<CrossStreamFrameResult>
Generate priority-optimized frames across multiple streams
Sourcepub async fn auto_adjust_priorities(
&self,
session_id: SessionId,
streaming_metrics: &StreamingMetrics,
) -> ApplicationResult<PriorityAdjustmentResult>
pub async fn auto_adjust_priorities( &self, session_id: SessionId, streaming_metrics: &StreamingMetrics, ) -> ApplicationResult<PriorityAdjustmentResult>
Automatically adjust priority thresholds based on streaming performance
Sourcepub async fn optimize_for_use_case(
&self,
session_id: SessionId,
use_case: StreamingUseCase,
) -> ApplicationResult<UseCaseOptimizationResult>
pub async fn optimize_for_use_case( &self, session_id: SessionId, use_case: StreamingUseCase, ) -> ApplicationResult<UseCaseOptimizationResult>
Optimize streaming for specific use cases
Trait Implementations§
Source§impl<CH> Debug for StreamingService<CH>where
CH: CommandHandler<GenerateFramesCommand, Vec<Frame>> + CommandHandler<BatchGenerateFramesCommand, Vec<Frame>> + CommandHandler<AdjustPriorityThresholdCommand, ()> + Debug,
impl<CH> Debug for StreamingService<CH>where
CH: CommandHandler<GenerateFramesCommand, Vec<Frame>> + CommandHandler<BatchGenerateFramesCommand, Vec<Frame>> + CommandHandler<AdjustPriorityThresholdCommand, ()> + Debug,
Auto Trait Implementations§
impl<CH> Freeze for StreamingService<CH>
impl<CH> RefUnwindSafe for StreamingService<CH>where
CH: RefUnwindSafe,
impl<CH> Send for StreamingService<CH>
impl<CH> Sync for StreamingService<CH>
impl<CH> Unpin for StreamingService<CH>
impl<CH> UnwindSafe for StreamingService<CH>where
CH: RefUnwindSafe,
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
Mutably borrows from an owned value. Read more