Skip to content

sgns::processing::ProcessingEngine

Handles subtask processing and result aggregation.

#include <processing_engine.hpp>

Inherits from std::enable_shared_from_this< ProcessingEngine >

Public Functions

Name
ProcessingEngine(std::string nodeId, std::shared_ptr< ProcessingCore > processingCore, std::function< void(const std::string &)> processingErrorSink, std::function< void(void)> processingDoneSink)
~ProcessingEngine()
void StartQueueProcessing(std::shared_ptr< SubTaskQueueAccessor > subTaskQueueAccessor)
void StopQueueProcessing()
bool IsQueueProcessingStarted() const
float GetProgress() const

Public Functions Documentation

function ProcessingEngine

ProcessingEngine(
    std::string nodeId,
    std::shared_ptr< ProcessingCore > processingCore,
    std::function< void(const std::string &)> processingErrorSink,
    std::function< void(void)> processingDoneSink
)

Parameters:

  • nodeId - Current processing node ID.
  • processingCore - Processing core used to execute subtasks.
  • processingErrorSink - Callback for processing errors.
  • processingDoneSink - Callback when processing finishes.

Create a processing engine object.

function ~ProcessingEngine

~ProcessingEngine()

function StartQueueProcessing

void StartQueueProcessing(
    std::shared_ptr< SubTaskQueueAccessor > subTaskQueueAccessor
)

function StopQueueProcessing

void StopQueueProcessing()

function IsQueueProcessingStarted

bool IsQueueProcessingStarted() const

function GetProgress

float GetProgress() const

Return: Progress percentage (0.0 to 100.0)

Get current processing progress


Updated on 2026-03-04 at 13:10:43 -0800