61 void init(std::vector<Operations::OperationDescriptor>&& operations);
67 mutable std::mutex m_mutex;
74 std::unique_ptr<Pipeline::OperationPipelineExecutor> m_executor;
79 std::vector<Operations::OperationDescriptor> m_last_operations;
84 std::unique_ptr<Operations::OperationFactory> m_operation_factory;
Abstract interface representing an image used as a working buffer.
High-level interface for executing a processing strategy.
Thread-safe manager responsible for fused Halide operation pipelines.
void init(std::vector< Operations::OperationDescriptor > &&operations)
Initializes the manager with a new list of operations (Thread-Safe).
PipelineHalideOperationManager(PipelineHalideOperationManager &&)=delete
virtual ~PipelineHalideOperationManager()=default
PipelineHalideOperationManager & operator=(PipelineHalideOperationManager &&)=delete
PipelineHalideOperationManager & operator=(const PipelineHalideOperationManager &)=delete
PipelineHalideOperationManager(const PipelineHalideOperationManager &)=delete
virtual bool execute(ImageProcessing::IWorkingImageHardware &working_image) override
Executes the Halide pipeline on the image (Thread-Safe).
PipelineHalideOperationManager()
Constructor with Dependency Injection.
Abstract interface for managing a specific category of image processing.
Manages the lifecycle of a single IWorkingImage instance.
Descriptor of an operation with its parameters and unique identifier.
Factory for creating operations (Dependency Injection)
Declaration of OperationPipelineExecutor (Fused Adjustment Pipeline).