2024-01-03 21:30:16 +00:00
|
|
|
# Clutter Frame scheduling
|
2023-12-18 16:30:53 +00:00
|
|
|
|
|
|
|
`ClutterFrameClock` state diagram.
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
stateDiagram
|
2024-02-03 22:54:45 +00:00
|
|
|
Init --> Scheduled/ScheduledNow : schedule update() -> now
|
|
|
|
Idle --> Scheduled/ScheduledNow : schedule update() -> given presentation time
|
|
|
|
Scheduled/ScheduledNow --> Dispatching : target time hit
|
2023-12-18 16:30:53 +00:00
|
|
|
Dispatching --> PendingPresented : queued page flip
|
|
|
|
Dispatching --> Idle : no queued page flip
|
2024-02-03 22:54:45 +00:00
|
|
|
PendingPresented --> Scheduled/ScheduledNow : page flipped, if recent schedule update
|
2023-12-18 16:30:53 +00:00
|
|
|
PendingPresented --> Idle : page flipped
|
|
|
|
```
|