Enum cogl::PixelFormat [−][src]
#[non_exhaustive] pub enum PixelFormat {}Show variants
Any, A8, Rgb565, Rgba4444, Rgba5551, Yuv, G8, Rg88, Rgb888, Bgr888, Rgba8888, Bgra8888, Argb8888, Abgr8888, Rgba1010102, Bgra1010102, Argb2101010, Abgr2101010, Rgba8888Pre, Bgra8888Pre, Argb8888Pre, Abgr8888Pre, Rgba4444Pre, Rgba5551Pre, Rgba1010102Pre, Bgra1010102Pre, Argb2101010Pre, Abgr2101010Pre, Depth16, Depth32, Depth24Stencil8, // some variants omitted
Pixel formats used by Cogl. For the formats with a byte per
component, the order of the components specify the order in
increasing memory addresses. So for example
PixelFormat::Rgb888
would have the red component in the
lowest address, green in the next address and blue after that
regardless of the endianness of the system.
For the formats with non byte aligned components the component
order specifies the order within a 16-bit or 32-bit number from
most significant bit to least significant. So for
PixelFormat::Rgb565
, the red component would be in bits
11-15, the green component would be in 6-11 and the blue component
would be in 1-5. Therefore the order in memory depends on the
endianness of the system.
When uploading a texture PixelFormat::Any
can be used as the
internal format. Cogl will try to pick the best format to use
internally and convert the texture data if necessary.
Variants (Non-exhaustive)
Any format
8 bits alpha mask
RGB, 16 bits
RGBA, 16 bits
RGBA, 16 bits
Not currently supported
Single luminance component
RG, 16 bits. Note that red-green textures
are only available if FeatureID::OglFeatureIdTextureRg
is advertised.
See Texture::set_components
for details.
RGB, 24 bits
BGR, 24 bits
RGBA, 32 bits
BGRA, 32 bits
ARGB, 32 bits
ABGR, 32 bits
RGBA, 32 bits, 10 bpc
BGRA, 32 bits, 10 bpc
ARGB, 32 bits, 10 bpc
ABGR, 32 bits, 10 bpc
Premultiplied RGBA, 32 bits
Premultiplied BGRA, 32 bits
Premultiplied ARGB, 32 bits
Premultiplied ABGR, 32 bits
Premultiplied RGBA, 16 bits
Premultiplied RGBA, 16 bits
Premultiplied RGBA, 32 bits, 10 bpc
Premultiplied BGRA, 32 bits, 10 bpc
Premultiplied ARGB, 32 bits, 10 bpc
Premultiplied ABGR, 32 bits, 10 bpc
Trait Implementations
impl Clone for PixelFormat
[src]
fn clone(&self) -> PixelFormat
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for PixelFormat
[src]
impl Debug for PixelFormat
[src]
impl Display for PixelFormat
[src]
impl Eq for PixelFormat
[src]
impl<'a> FromValue<'a> for PixelFormat
[src]
unsafe fn from_value(value: &Value) -> Self
[src]
impl<'a> FromValueOptional<'a> for PixelFormat
[src]
unsafe fn from_value_optional(value: &Value) -> Option<Self>
[src]
impl Hash for PixelFormat
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for PixelFormat
[src]
fn cmp(&self, other: &PixelFormat) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<PixelFormat> for PixelFormat
[src]
fn eq(&self, other: &PixelFormat) -> bool
[src]
fn ne(&self, other: &PixelFormat) -> bool
[src]
impl PartialOrd<PixelFormat> for PixelFormat
[src]
fn partial_cmp(&self, other: &PixelFormat) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl SetValue for PixelFormat
[src]
impl StaticType for PixelFormat
[src]
fn static_type() -> Type
[src]
impl StructuralEq for PixelFormat
[src]
impl StructuralPartialEq for PixelFormat
[src]
Auto Trait Implementations
impl RefUnwindSafe for PixelFormat
impl Send for PixelFormat
impl Sync for PixelFormat
impl Unpin for PixelFormat
impl UnwindSafe for PixelFormat
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,
pub fn borrow_mut(&mut self) -> &mut T
[src]
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,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToSendValue for T where
T: SetValue + Send + ToValue + ?Sized,
[src]
T: SetValue + Send + ToValue + ?Sized,
pub fn to_send_value(&self) -> SendValue
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> ToValue for T where
T: SetValue + ?Sized,
[src]
T: SetValue + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,