pub trait BaseSrcImplExt: ObjectSubclass {
Show 17 methods
fn parent_start(&self, element: &Self::Type) -> Result<(), ErrorMessage>;
fn parent_stop(&self, element: &Self::Type) -> Result<(), ErrorMessage>;
fn parent_is_seekable(&self, element: &Self::Type) -> bool;
fn parent_size(&self, element: &Self::Type) -> Option<u64>;
fn parent_times(
&self,
element: &Self::Type,
buffer: &BufferRef
) -> (Option<ClockTime>, Option<ClockTime>);
fn parent_fill(
&self,
element: &Self::Type,
offset: u64,
length: u32,
buffer: &mut BufferRef
) -> Result<FlowSuccess, FlowError>;
fn parent_alloc(
&self,
element: &Self::Type,
offset: u64,
length: u32
) -> Result<Buffer, FlowError>;
fn parent_create(
&self,
element: &Self::Type,
offset: u64,
buffer: Option<&mut BufferRef>,
length: u32
) -> Result<CreateSuccess, FlowError>;
fn parent_do_seek(
&self,
element: &Self::Type,
segment: &mut Segment
) -> bool;
fn parent_query(&self, element: &Self::Type, query: &mut QueryRef) -> bool;
fn parent_event(&self, element: &Self::Type, event: &Event) -> bool;
fn parent_caps(
&self,
element: &Self::Type,
filter: Option<&Caps>
) -> Option<Caps>;
fn parent_negotiate(
&self,
element: &Self::Type
) -> Result<(), LoggableError>;
fn parent_set_caps(
&self,
element: &Self::Type,
caps: &Caps
) -> Result<(), LoggableError>;
fn parent_fixate(&self, element: &Self::Type, caps: Caps) -> Caps;
fn parent_unlock(&self, element: &Self::Type) -> Result<(), ErrorMessage>;
fn parent_unlock_stop(
&self,
element: &Self::Type
) -> Result<(), ErrorMessage>;
}