feat: Add AI extraction service and related view models
- Introduced `IAiExtractionService` and its implementation `AiExtractionService` for processing images and extracting text. - Created `AiResultItem` model to hold results from AI extraction. - Added `ImageProcessingCoordinator` to manage image processing tasks and provide progress updates. - Implemented view models for AI settings, path settings, processing state, race upload settings, and visual settings to support UI binding. - Updated `Program.cs` to register new services and dependencies. - Modified project file to skip MinVer execution during local builds.
This commit is contained in:
parent
bdf503c627
commit
3c722a66df
16 changed files with 1462 additions and 628 deletions
28
imagecatalog/Services/IImageProcessingCoordinator.cs
Normal file
28
imagecatalog/Services/IImageProcessingCoordinator.cs
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
using System;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using MaddoShared;
|
||||
|
||||
namespace ImageCatalog_2.Services
|
||||
{
|
||||
public readonly record struct ImageProcessedUpdate(string Status, int Total, int Processed);
|
||||
|
||||
public sealed class ImageProcessingRunRequest
|
||||
{
|
||||
public required ImageCreationService.Options Options { get; init; }
|
||||
}
|
||||
|
||||
public sealed class ImageProcessingRunResult
|
||||
{
|
||||
public required string FinalSpeedCounter { get; init; }
|
||||
}
|
||||
|
||||
public interface IImageProcessingCoordinator
|
||||
{
|
||||
Task<ImageProcessingRunResult> RunAsync(
|
||||
ImageProcessingRunRequest request,
|
||||
CancellationToken token,
|
||||
Action<ImageProcessedUpdate> onImageProcessed,
|
||||
Action<string> onSpeedUpdated);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue