Skip to content

src/processing/processing_subtask_queue_channel.hpp

Namespaces

Name
sgns
sgns::processing

Classes

Name
class sgns::processing::ProcessingSubTaskQueueChannel

Source code

#ifndef SUPERGENIUS_PROCESSING_SUBTASK_QUEUE_CHANNEL_HPP
#define SUPERGENIUS_PROCESSING_SUBTASK_QUEUE_CHANNEL_HPP

#include "processing/proto/SGProcessing.pb.h"

#include <string>
#include <memory>

#include <ipfs_pubsub/gossip_pubsub_topic.hpp>

namespace sgns::processing
{
class ProcessingSubTaskQueueChannel
{
public:
    virtual ~ProcessingSubTaskQueueChannel() = default;

    virtual void RequestQueueOwnership(const std::string& nodeId) = 0;

    virtual void PublishQueue(std::shared_ptr<SGProcessing::SubTaskQueue> queue) = 0;

    virtual size_t GetActiveNodesCount() const = 0;

    virtual std::vector<libp2p::peer::PeerId> GetActiveNodes() const = 0;
};
}
#endif // SUPERGENIUS_PROCESSING_SUBTASK_QUEUE_CHANNEL_HPP

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