Skip to main content

alpha2_native_gpu/
sync.rs

1//! Synchronization values transferred with imported native images.
2
3/// Timeline synchronization point required before sampling an image.
4#[derive(Copy, Clone, Debug, Eq, PartialEq)]
5pub struct ExternalSyncPoint {
6    /// Backend-native semaphore or fence identity.
7    pub handle: u64,
8    /// Timeline value to wait for.
9    pub wait_value: u64,
10    /// Timeline value returned to the decoder after rendering.
11    pub signal_value: u64,
12}
13
14/// Native image state observed while the decoder surface is locked.
15#[derive(Copy, Clone, Debug, Eq, PartialEq)]
16pub struct NativeImageState {
17    /// Backend-native layout/state value.
18    pub layout: u32,
19    /// Backend-native access mask.
20    pub access: u32,
21    /// Current queue-family owner, when meaningful for the backend.
22    pub queue_family: u32,
23}