Skip to content

sgns::sgprocessing::RenderProcessor

#include <processing_processor_render.hpp>

Inherits from sgns::sgprocessing::ProcessingProcessor

Public Functions

Name
RenderProcessor()
~RenderProcessor() override =default
virtual ProcessingResult StartProcessing(std::vector< std::vector< uint8_t > > & chunkhashes, const sgns::IoDeclaration & proc, std::vector< char > & imageData, std::vector< char > & modelFile, const std::vector< sgns::Parameter > * parameters, const ExecutionContext & execCtx) override
bool InitializeContext()
VkPhysicalDevice GetPhysicalDevice() const
bool IsAcceptable(VkPhysicalDeviceType type)

Additional inherited members

Public Functions inherited from sgns::sgprocessing::ProcessingProcessor

Name
virtual ~ProcessingProcessor() =default
virtual float GetProgress() const
void RunTeardown()

Protected Functions inherited from sgns::sgprocessing::ProcessingProcessor

Name
void PushTeardown(std::function< void()> fn)

Protected Attributes inherited from sgns::sgprocessing::ProcessingProcessor

Name
std::atomic< float > m_progress
sgns::sgprocmanager::Logger m_logger

Public Functions Documentation

function RenderProcessor

inline RenderProcessor()

function ~RenderProcessor

~RenderProcessor() override =default

function StartProcessing

virtual ProcessingResult StartProcessing(
    std::vector< std::vector< uint8_t > > & chunkhashes,
    const sgns::IoDeclaration & proc,
    std::vector< char > & imageData,
    std::vector< char > & modelFile,
    const std::vector< sgns::Parameter > * parameters,
    const ExecutionContext & execCtx
) override

Parameters:

  • chunkhashes - Hashes of input chunks
  • proc - Input/output declaration
  • imageData - Image data buffer
  • modelFile - Model file buffer
  • parameters - Processing parameters
  • execCtx - Execution context (cancel token, progress, budgets, deadline)

Reimplements: sgns::sgprocessing::ProcessingProcessor::StartProcessing

Start processing data with ExecutionContext (D-19, D-21). Pure virtual — all processors must implement this 6-argument overload.

function InitializeContext

bool InitializeContext()

Lazy-init Vulkan instance/device (idempotent, double-checked locking). Public so CapabilityValidator::BuildSnapshot can ensure the device exists before querying its properties (D-10).

function GetPhysicalDevice

inline VkPhysicalDevice GetPhysicalDevice() const

Returns the physical device handle after InitializeContext() has succeeded. Returns VK_NULL_HANDLE if context not yet initialized.

function IsAcceptable

static bool IsAcceptable(
    VkPhysicalDeviceType type
)

Device-type filter (DISCRETE_GPU/INTEGRATED_GPU only). Public so vulkan_gpu_probe.cpp's HasUsableVulkanDevice() can reuse the exact same predicate instead of duplicating it (avoids drift risk).


Updated on 2026-09-17 at 06:29:14 +0000