renderling/
types.rs

1//! Type level machinery.
2
3use craballoc::value::{GpuArrayContainer, GpuContainer, HybridArrayContainer, HybridContainer};
4
5/// Specifies that a staged value has been unloaded from the CPU
6/// and now lives solely on the GPU.
7pub type GpuOnly = GpuContainer;
8
9/// Specifies that a contiguous array of staged values has been
10/// unloaded from the CPU and now lives solely on the GPU.
11pub type GpuOnlyArray = GpuArrayContainer;
12
13/// Specifies that a staged value lives on both the CPU and GPU,
14/// with the CPU value being a synchronized copy of the GPU value.
15///
16/// Currently updates flow from the CPU to the GPU, but not back.
17pub type GpuCpu = HybridContainer;
18
19/// Specifies that a contiguous array of staged values lives on both
20/// the CPU and GPU, with the CPU values being synchronized copies
21/// of the GPU values.
22///
23/// Currently updates flow from the CPU to the GPU, but not back.
24pub type GpuCpuArray = HybridArrayContainer;