Enum gdk4::MemoryFormat
source · #[non_exhaustive]
pub enum MemoryFormat {
Show 18 variants
B8g8r8a8Premultiplied,
A8r8g8b8Premultiplied,
R8g8b8a8Premultiplied,
B8g8r8a8,
A8r8g8b8,
R8g8b8a8,
A8b8g8r8,
R8g8b8,
B8g8r8,
R16g16b16,
R16g16b16a16Premultiplied,
R16g16b16a16,
R16g16b16Float,
R16g16b16a16FloatPremultiplied,
R16g16b16a16Float,
R32g32b32Float,
R32g32b32a32FloatPremultiplied,
R32g32b32a32Float,
// some variants omitted
}
Expand description
MemoryFormat
describes formats that image data can have in memory.
It describes formats by listing the contents of the memory passed to it.
So GDK_MEMORY_A8R8G8B8 will be 1 byte (8 bits) of alpha, followed by a
byte each of red, green and blue. It is not endian-dependent, so
CAIRO_FORMAT_ARGB32 is represented by different GdkMemoryFormats
on architectures with different endiannesses.
Its naming is modelled after VkFormat for details).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
B8g8r8a8Premultiplied
4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value.
A8r8g8b8Premultiplied
4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value.
R8g8b8a8Premultiplied
4 bytes; for red, green, blue, alpha The color values are premultiplied with the alpha value.
B8g8r8a8
4 bytes; for blue, green, red, alpha.
A8r8g8b8
4 bytes; for alpha, red, green, blue.
R8g8b8a8
4 bytes; for red, green, blue, alpha.
A8b8g8r8
4 bytes; for alpha, blue, green, red.
R8g8b8
3 bytes; for red, green, blue. The data is opaque.
B8g8r8
3 bytes; for blue, green, red. The data is opaque.
R16g16b16
v4_6
only.3 guint16 values; for red, green, blue. Since: 4.6
R16g16b16a16Premultiplied
v4_6
only.4 guint16 values; for red, green, blue, alpha. The color values are premultiplied with the alpha value. Since: 4.6
R16g16b16a16
v4_6
only.4 guint16 values; for red, green, blue, alpha. Since: 4.6
R16g16b16Float
v4_6
only.3 half-float values; for red, green, blue. The data is opaque. Since: 4.6
R16g16b16a16FloatPremultiplied
v4_6
only.4 half-float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value. Since: 4.6
R16g16b16a16Float
v4_6
only.4 half-float values; for red, green, blue and alpha. Since: 4.6
R32g32b32Float
v4_6
only.R32g32b32a32FloatPremultiplied
v4_6
only.4 float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value. Since: 4.6
R32g32b32a32Float
v4_6
only.4 float values; for red, green, blue and alpha. Since: 4.6
Trait Implementations§
source§impl Clone for MemoryFormat
impl Clone for MemoryFormat
source§fn clone(&self) -> MemoryFormat
fn clone(&self) -> MemoryFormat
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MemoryFormat
impl Debug for MemoryFormat
source§impl Display for MemoryFormat
impl Display for MemoryFormat
source§impl<'a> FromValue<'a> for MemoryFormat
impl<'a> FromValue<'a> for MemoryFormat
§type Checker = GenericValueTypeChecker<MemoryFormat>
type Checker = GenericValueTypeChecker<MemoryFormat>
source§unsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Value
. Read moresource§impl Hash for MemoryFormat
impl Hash for MemoryFormat
source§impl Ord for MemoryFormat
impl Ord for MemoryFormat
source§fn cmp(&self, other: &MemoryFormat) -> Ordering
fn cmp(&self, other: &MemoryFormat) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq<MemoryFormat> for MemoryFormat
impl PartialEq<MemoryFormat> for MemoryFormat
source§fn eq(&self, other: &MemoryFormat) -> bool
fn eq(&self, other: &MemoryFormat) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<MemoryFormat> for MemoryFormat
impl PartialOrd<MemoryFormat> for MemoryFormat
source§fn partial_cmp(&self, other: &MemoryFormat) -> Option<Ordering>
fn partial_cmp(&self, other: &MemoryFormat) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl StaticType for MemoryFormat
impl StaticType for MemoryFormat
source§fn static_type() -> Type
fn static_type() -> Type
Self
.source§impl ToValue for MemoryFormat
impl ToValue for MemoryFormat
source§impl ValueType for MemoryFormat
impl ValueType for MemoryFormat
§type Type = MemoryFormat
type Type = MemoryFormat
Type
from. Read moreimpl Copy for MemoryFormat
impl Eq for MemoryFormat
impl StructuralEq for MemoryFormat
impl StructuralPartialEq for MemoryFormat
Auto Trait Implementations§
impl RefUnwindSafe for MemoryFormat
impl Send for MemoryFormat
impl Sync for MemoryFormat
impl Unpin for MemoryFormat
impl UnwindSafe for MemoryFormat
Blanket Implementations§
source§impl<T> StaticTypeExt for Twhere
T: StaticType,
impl<T> StaticTypeExt for Twhere
T: StaticType,
source§fn ensure_type()
fn ensure_type()
source§impl<T> ToClosureReturnValue for Twhere
T: ToValue,
impl<T> ToClosureReturnValue for Twhere
T: ToValue,
fn to_closure_return_value(&self) -> Option<Value>
source§impl<T> ToSendValue for Twhere
T: Send + ToValue + ?Sized,
impl<T> ToSendValue for Twhere
T: Send + ToValue + ?Sized,
source§fn to_send_value(&self) -> SendValue
fn to_send_value(&self) -> SendValue
SendValue
clone of self
.