Represents the current processing lifecycle state of a container.
ProcessingState tracks a container's position in the data processing lifecycle, enabling coordinated processing across components and optimizing resource usage. This state-based approach allows the system to make intelligent decisions about when to process data and how to handle dependencies between components.
The state transitions typically follow this sequence:
- IDLE → READY (when data is loaded/prepared)
- READY → PROCESSING (when processing begins)
- PROCESSING → PROCESSED (when processing completes)
- PROCESSED → READY (when new processing is needed)
- Any state → NEEDS_REMOVAL (when container should be removed)
Components can register for state change notifications to coordinate their activities with the container's lifecycle, enabling efficient resource management and processing optimization.
| Enumerator |
|---|
| IDLE | Container is inactive with no data or not ready for processing.
Typically the initial state or when a container is reset.
|
| READY | Container has data loaded and is ready for processing.
Processing can begin when resources are available.
|
| PROCESSING | Container is actively being processed.
Other components should avoid modifying the data during this state.
|
| PROCESSED | Container has completed processing and results are available.
Data can be consumed by downstream components.
|
| NEEDS_REMOVAL | Container is marked for removal from the system.
Resources should be released and references cleared.
|
| ERROR | Container is in an error state and cannot proceed.
Typically requires external intervention to resolve.
|
Definition at line 31 of file SignalSourceContainer.hpp.
31 : uint8_t {
32
33
34
35
37
38
39
40
41
43
44
45
46
47
49
50
51
52
53
54 PROCESSED,
55
56
57
58
59
61
62
63
64
65
66 ERROR
67};
@ NEEDS_REMOVAL
Container is marked for removal from the system.
@ PROCESSING
Container is actively being processed.
@ READY
Ready for processing.
@ IDLE
Not being processed.