Skip to content

src/processing/processing_subtask_enqueuer.hpp

Namespaces

Name
sgns
sgns::processing

Classes

Name
class sgns::processing::SubTaskEnqueuer

Source code

#ifndef SUPERGENIUS_PROCESSING_SUBTASK_ENQUEUER_HPP
#define SUPERGENIUS_PROCESSING_SUBTASK_ENQUEUER_HPP

#include "processing/proto/SGProcessing.pb.h"
#include "outcome/outcome.hpp"
#include <list>
#include <string>

namespace sgns::processing
{
// Encapsulates subtask queue construction algorithm
class SubTaskEnqueuer
{
public:
    virtual ~SubTaskEnqueuer() = default;

    virtual outcome::result<SGProcessing::Task> EnqueueSubTasks(
        std::string& subTaskQueueId, 
        std::list<SGProcessing::SubTask>& subTasks) = 0;
    virtual void                                MarkTaskBad( const std::string &taskKey )                     = 0;
};    
}

#endif // SUPERGENIUS_PROCESSING_SUBTASK_QUEUE_SELECTOR_HPP

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