Skip to content

SGProcessingManager/include/processors/processing_processor.hpp

Namespaces

Name
sgns
sgns::sgprocessing

Classes

Name
class sgns::sgprocessing::ProcessingProcessor

Source code

#ifndef PROCESSING_PROCESSOR_HPP
#define PROCESSING_PROCESSOR_HPP

#include <cmath>
#include <memory>
#include <vector>
#include <SGNSProcMain.hpp>
#include <util/sgprocmgr-logger.hpp>

namespace sgns::sgprocessing
{
    class ProcessingProcessor
    {
    public:
        virtual ~ProcessingProcessor() = default;

        virtual std::vector<uint8_t> StartProcessing( std::vector<std::vector<uint8_t>> &chunkhashes,
                                                      const sgns::IoDeclaration               &proc,
                                                      std::vector<char>                 &imageData,
                                                      std::vector<char>                 &modelFile ) = 0;

        //virtual void SetData(std::shared_ptr<std::pair<std::vector<std::string>, std::vector<std::vector<char>>>> buffers) = 0;

        virtual float GetProgress() const { return m_progress; }

    protected:
        std::atomic<float> m_progress{0.0f}; // Progress percentage
        sgns::sgprocmanager::Logger m_logger = sgns::sgprocmanager::createLogger( "SGProcessor" );
    };
}

#endif 

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