|
MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
|
|
inline |
Validates that a processing token has a valid, non-conflicting configuration.
| token | Processing token to validate |
| std::invalid_argument | if the token contains mutually exclusive flags |
This function ensures that processing tokens contain only compatible flag combinations. It validates three key mutual exclusions that are fundamental to the processing model:
Rate Mutual Exclusion: SAMPLE_RATE and FRAME_RATE cannot be combined as they represent fundamentally different temporal processing models that cannot be executed simultaneously within the same processing context.
Device Mutual Exclusion: CPU_PROCESS and GPU_PROCESS cannot be combined as they represent different execution environments that require different resource allocation and execution strategies.
Concurrency Mutual Exclusion: SEQUENTIAL and PARALLEL cannot be combined as they represent incompatible execution patterns that would create undefined behavior in processing chains.
This validation is essential for maintaining system stability and ensuring that processing tokens represent achievable execution configurations.
Definition at line 94 of file BufferUtils.hpp.
References CPU_PROCESS, FRAME_RATE, GPU_PPOCESS, PARALLEL, SAMPLE_RATE, SEQUENTIAL, and token.
Referenced by MayaFlux::is_domain_valid(), and MayaFlux::Buffers::BufferProcessor::set_processing_token().
Here is the caller graph for this function: