[−][src]Enum glium::program::BlockLayout
pub enum BlockLayout { Struct { members: Vec<(String, BlockLayout)>, }, BasicType { ty: UniformType, offset_in_buffer: usize, }, Array { content: Box<BlockLayout>, length: usize, }, DynamicSizedArray { content: Box<BlockLayout>, }, }
Layout of a shader storage buffer or a uniform buffer.
Variants
Multiple elements, each having a name.
Fields of Struct
members: Vec<(String, BlockLayout)>
The list of elements, with name
/layout
pairs.
A basic element.
Fields of BasicType
ty: UniformType
Type of data.
offset_in_buffer: usize
Offset of this element in bytes from the start of the buffer.
A fixed-size array.
For example:
uint data[12];
Fields of Array
content: Box<BlockLayout>
Type of data of each element.
length: usize
Number of elements in the array.
An array whose size isn't known at compile-time. Can only be used as the last element of a buffer.
Its actual size depends on the size of the buffer.
For example:
buffer MyBuffer {
uint data[];
}
Fields of DynamicSizedArray
content: Box<BlockLayout>
Type of data of each element.
Trait Implementations
impl Clone for BlockLayout
[src][+]
impl Debug for BlockLayout
[src][+]
impl Eq for BlockLayout
[src]
impl PartialEq<BlockLayout> for BlockLayout
[src][+]
impl StructuralEq for BlockLayout
[src]
impl StructuralPartialEq for BlockLayout
[src]
Auto Trait Implementations
impl RefUnwindSafe for BlockLayout
impl Send for BlockLayout
impl Sync for BlockLayout
impl Unpin for BlockLayout
impl UnwindSafe for BlockLayout
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,