MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Kakshya::ContiguousAccessProcessor Class Reference

#include <ContiguousAccessProcessor.hpp>

+ Inheritance diagram for MayaFlux::Kakshya::ContiguousAccessProcessor:
+ Collaboration diagram for MayaFlux::Kakshya::ContiguousAccessProcessor:

Public Member Functions

 ContiguousAccessProcessor ()=default
 
 ~ContiguousAccessProcessor () override=default
 
void on_attach (std::shared_ptr< SignalSourceContainer > container) override
 Attach the processor to a signal source container.
 
void on_detach (std::shared_ptr< SignalSourceContainer > container) override
 Detach the processor from its container.
 
void process (std::shared_ptr< SignalSourceContainer > container) override
 Process the current region or block of data.
 
bool is_processing () const override
 Query if the processor is currently performing processing.
 
void set_output_size (const std::vector< uint64_t > &shape)
 Set the output buffer size (shape) for each processing call.
 
void set_auto_advance (bool enable)
 Enable or disable automatic advancement of the read position after each process call.
 
void set_current_position (const std::vector< uint64_t > &new_position)
 Set the current read position (N-dimensional coordinates).
 
- Public Member Functions inherited from MayaFlux::Kakshya::DataProcessor
virtual ~DataProcessor ()=default
 Virtual destructor for proper cleanup.
 

Private Member Functions

void store_metadata (const std::shared_ptr< SignalSourceContainer > &container)
 Store dimension and layout metadata from the container.
 
void validate ()
 Validate the container's structure and output configuration.
 

Private Attributes

std::atomic< bool > m_is_processing { false }
 
bool m_prepared {}
 
bool m_auto_advance { true }
 
std::weak_ptr< SignalSourceContainerm_source_container_weak
 
ContainerDataStructure m_structure
 
std::vector< uint64_t > m_current_position
 
std::vector< uint64_t > m_output_shape
 
bool m_looping_enabled {}
 
Region m_loop_region
 
uint64_t m_total_elements {}
 
std::chrono::steady_clock::time_point m_last_process_time
 

Detailed Description

Definition at line 33 of file ContiguousAccessProcessor.hpp.


The documentation for this class was generated from the following files: