MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ on_attach()

void MayaFlux::Kakshya::RegionProcessorBase::on_attach ( const std::shared_ptr< SignalSourceContainer > &  container)
overridevirtual

Attach this processor to a signal source container.

Initializes region organization, caching, and dimension metadata.

Parameters
containerThe SignalSourceContainer to attach to.

Implements MayaFlux::Kakshya::DataProcessor.

Definition at line 8 of file RegionProcessorBase.cpp.

9{
10 if (!container) {
11 throw std::invalid_argument("Container cannot be null");
12 }
13
14 m_container_weak = container;
15 m_structure = container->get_structure();
16
17 m_cache_manager = std::make_unique<RegionCacheManager>(m_max_cache_size);
18 m_cache_manager->initialize();
19
21
22 organize_container_data(container);
23
24 container->mark_ready_for_processing(true);
25}
virtual void organize_container_data(const std::shared_ptr< SignalSourceContainer > &container)=0
Organize container data into structured regions.
std::unique_ptr< RegionCacheManager > m_cache_manager
std::weak_ptr< SignalSourceContainer > m_container_weak
static size_t get_frame_size(const std::vector< DataDimension > &dimensions)
Extract the size of non time dimensions (channel, spatial, frequency)

References MayaFlux::Kakshya::ContainerDataStructure::get_frame_size(), m_cache_manager, m_container_weak, m_current_position, m_max_cache_size, m_structure, and organize_container_data().

Referenced by MayaFlux::Kakshya::RegionOrganizationProcessor::RegionOrganizationProcessor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: