pub trait AggregatorImpl: AggregatorImplExt + ElementImpl {
Show 23 methods // Provided methods fn flush(&self) -> Result<FlowSuccess, FlowError> { ... } fn clip( &self, aggregator_pad: &AggregatorPad, buffer: Buffer ) -> Option<Buffer> { ... } fn finish_buffer_list( &self, buffer_list: BufferList ) -> Result<FlowSuccess, FlowError> { ... } fn finish_buffer(&self, buffer: Buffer) -> Result<FlowSuccess, FlowError> { ... } fn sink_event(&self, aggregator_pad: &AggregatorPad, event: Event) -> bool { ... } fn sink_event_pre_queue( &self, aggregator_pad: &AggregatorPad, event: Event ) -> Result<FlowSuccess, FlowError> { ... } fn sink_query( &self, aggregator_pad: &AggregatorPad, query: &mut QueryRef ) -> bool { ... } fn sink_query_pre_queue( &self, aggregator_pad: &AggregatorPad, query: &mut QueryRef ) -> bool { ... } fn src_event(&self, event: Event) -> bool { ... } fn src_query(&self, query: &mut QueryRef) -> bool { ... } fn src_activate( &self, mode: PadMode, active: bool ) -> Result<(), LoggableError> { ... } fn aggregate(&self, timeout: bool) -> Result<FlowSuccess, FlowError> { ... } fn start(&self) -> Result<(), ErrorMessage> { ... } fn stop(&self) -> Result<(), ErrorMessage> { ... } fn next_time(&self) -> Option<ClockTime> { ... } fn create_new_pad( &self, templ: &PadTemplate, req_name: Option<&str>, caps: Option<&Caps> ) -> Option<AggregatorPad> { ... } fn update_src_caps(&self, caps: &Caps) -> Result<Caps, FlowError> { ... } fn fixate_src_caps(&self, caps: Caps) -> Caps { ... } fn negotiated_src_caps(&self, caps: &Caps) -> Result<(), LoggableError> { ... } fn propose_allocation( &self, pad: &AggregatorPad, decide_query: Option<&Allocation>, query: &mut Allocation ) -> Result<(), LoggableError> { ... } fn decide_allocation( &self, query: &mut Allocation ) -> Result<(), LoggableError> { ... } fn negotiate(&self) -> bool { ... } fn peek_next_sample(&self, pad: &AggregatorPad) -> Option<Sample> { ... }
}

Provided Methods§

source

fn flush(&self) -> Result<FlowSuccess, FlowError>

source

fn clip(&self, aggregator_pad: &AggregatorPad, buffer: Buffer) -> Option<Buffer>

source

fn finish_buffer_list( &self, buffer_list: BufferList ) -> Result<FlowSuccess, FlowError>

This method will push the provided output buffer list downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

§bufferlist

the gst::BufferList to push.

source

fn finish_buffer(&self, buffer: Buffer) -> Result<FlowSuccess, FlowError>

This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

§buffer

the gst::Buffer to push.

source

fn sink_event(&self, aggregator_pad: &AggregatorPad, event: Event) -> bool

source

fn sink_event_pre_queue( &self, aggregator_pad: &AggregatorPad, event: Event ) -> Result<FlowSuccess, FlowError>

source

fn sink_query( &self, aggregator_pad: &AggregatorPad, query: &mut QueryRef ) -> bool

source

fn sink_query_pre_queue( &self, aggregator_pad: &AggregatorPad, query: &mut QueryRef ) -> bool

source

fn src_event(&self, event: Event) -> bool

source

fn src_query(&self, query: &mut QueryRef) -> bool

source

fn src_activate(&self, mode: PadMode, active: bool) -> Result<(), LoggableError>

source

fn aggregate(&self, timeout: bool) -> Result<FlowSuccess, FlowError>

source

fn start(&self) -> Result<(), ErrorMessage>

source

fn stop(&self) -> Result<(), ErrorMessage>

source

fn next_time(&self) -> Option<ClockTime>

source

fn create_new_pad( &self, templ: &PadTemplate, req_name: Option<&str>, caps: Option<&Caps> ) -> Option<AggregatorPad>

source

fn update_src_caps(&self, caps: &Caps) -> Result<Caps, FlowError>

source

fn fixate_src_caps(&self, caps: Caps) -> Caps

source

fn negotiated_src_caps(&self, caps: &Caps) -> Result<(), LoggableError>

source

fn propose_allocation( &self, pad: &AggregatorPad, decide_query: Option<&Allocation>, query: &mut Allocation ) -> Result<(), LoggableError>

source

fn decide_allocation(&self, query: &mut Allocation) -> Result<(), LoggableError>

source

fn negotiate(&self) -> bool

Negotiates src pad caps with downstream elements. Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again if GstAggregatorClass::negotiate fails.

§Returns

true if the negotiation succeeded, else false.

source

fn peek_next_sample(&self, pad: &AggregatorPad) -> Option<Sample>

Use this function to determine what input buffers will be aggregated to produce the next output buffer. This should only be called from a samples-selected handler, and can be used to precisely control aggregating parameters for a given set of input samples.

§Returns

The sample that is about to be aggregated. It may hold a gst::Buffer or a gst::BufferList. The contents of its info structure is subclass-dependent, and documented on a subclass basis. The buffers held by the sample are not writable.

Object Safety§

This trait is not object safe.

Implementors§