1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
use crate::ffi;
use glib::{bitflags::bitflags, translate::*};
bitflags! {
/// Flags to be used in a [`BaseParseFrame`][crate::BaseParseFrame].
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
#[doc(alias = "GstBaseParseFrameFlags")]
pub struct BaseParseFrameFlags: u32 {
/// set by baseclass if current frame
/// is passed for processing to the subclass for the first time
/// (and not set on subsequent calls with same data).
#[doc(alias = "GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME")]
const NEW_FRAME = ffi::GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME as _;
/// set to indicate this buffer should not be
/// counted as frame, e.g. if this frame is dependent on a previous one.
/// As it is not counted as a frame, bitrate increases but frame to time
/// conversions are maintained.
#[doc(alias = "GST_BASE_PARSE_FRAME_FLAG_NO_FRAME")]
const NO_FRAME = ffi::GST_BASE_PARSE_FRAME_FLAG_NO_FRAME as _;
/// `pre_push_frame` can set this to indicate
/// that regular segment clipping can still be performed (as opposed to
/// any custom one having been done).
#[doc(alias = "GST_BASE_PARSE_FRAME_FLAG_CLIP")]
const CLIP = ffi::GST_BASE_PARSE_FRAME_FLAG_CLIP as _;
/// indicates to `finish_frame` that the
/// the frame should be dropped (and might be handled internally by subclass)
#[doc(alias = "GST_BASE_PARSE_FRAME_FLAG_DROP")]
const DROP = ffi::GST_BASE_PARSE_FRAME_FLAG_DROP as _;
/// indicates to `finish_frame` that the
/// the frame should be queued for now and processed fully later
/// when the first non-queued frame is finished
#[doc(alias = "GST_BASE_PARSE_FRAME_FLAG_QUEUE")]
const QUEUE = ffi::GST_BASE_PARSE_FRAME_FLAG_QUEUE as _;
}
}
#[doc(hidden)]
impl IntoGlib for BaseParseFrameFlags {
type GlibType = ffi::GstBaseParseFrameFlags;
#[inline]
fn into_glib(self) -> ffi::GstBaseParseFrameFlags {
self.bits()
}
}
#[doc(hidden)]
impl FromGlib<ffi::GstBaseParseFrameFlags> for BaseParseFrameFlags {
#[inline]
unsafe fn from_glib(value: ffi::GstBaseParseFrameFlags) -> Self {
skip_assert_initialized!();
Self::from_bits_truncate(value)
}
}