CaptureMoment 0.1.0
Free and open-source non-destructive photo editor
Loading...
Searching...
No Matches
worker_registry.cpp
Go to the documentation of this file.
1
10
11#include <spdlog/spdlog.h>
12
14
16 spdlog::info("WorkerRegistry: Registering all workers");
17
18 registerHalideWorkers(builder);
19 // registerAIWorkers(builder); // TODO: Enable when AI worker is ready
20
21 spdlog::info("WorkerRegistry: All workers registered");
22}
23
24void WorkerRegistry::registerHalideWorkers(WorkerBuilder& builder) {
25 spdlog::debug("WorkerRegistry: Registering Halide workers");
26
28 return std::make_unique<HalideOperationWorker>();
29 });
30 spdlog::trace("WorkerRegistry: Registered HalideOperationWorker");
31}
32
33void WorkerRegistry::registerAIWorkers(WorkerBuilder& builder) {
34 spdlog::debug("WorkerRegistry: Registering AI/Computer Vision workers");
35
36 // Exemple: Sky Replacement
37 // builder.registerCreator(WorkerType::SkyAI, []() {
38 // return std::make_unique<SkyReplacementWorker>();
39 // });
40 // spdlog::trace("WorkerRegistry: Registered SkyReplacementWorker");
41}
42
43} // namespace CaptureMoment::Core::Workers
Static registry for creating IWorkerRequest instances based on type.
static void registerCreator(WorkerType type, CreatorFunc creator)
Registers a creator function for a specific worker type.
static void registerAll(WorkerBuilder &builder)
Register all available workers.
Concrete worker for Halide-based adjustment operations.
@ HalideOperation
Worker for Halide-based pixel operations (Brightness, Contrast, etc.).
Central registry for all processing workers.
CaptureMoment — footer