pub trait BaseTransformImpl: BaseTransformImplExt + ElementImpl {
const MODE: BaseTransformMode;
const PASSTHROUGH_ON_SAME_CAPS: bool;
const TRANSFORM_IP_ON_PASSTHROUGH: bool;
Show methods
fn start(&self, element: &Self::Type) -> Result<(), ErrorMessage> { ... }
fn stop(&self, element: &Self::Type) -> Result<(), ErrorMessage> { ... }
fn transform_caps(
&self,
element: &Self::Type,
direction: PadDirection,
caps: &Caps,
filter: Option<&Caps>
) -> Option<Caps> { ... }
fn fixate_caps(
&self,
element: &Self::Type,
direction: PadDirection,
caps: &Caps,
othercaps: Caps
) -> Caps { ... }
fn set_caps(
&self,
element: &Self::Type,
incaps: &Caps,
outcaps: &Caps
) -> Result<(), LoggableError> { ... }
fn accept_caps(
&self,
element: &Self::Type,
direction: PadDirection,
caps: &Caps
) -> bool { ... }
fn query(
&self,
element: &Self::Type,
direction: PadDirection,
query: &mut QueryRef
) -> bool { ... }
fn transform_size(
&self,
element: &Self::Type,
direction: PadDirection,
caps: &Caps,
size: usize,
othercaps: &Caps
) -> Option<usize> { ... }
fn unit_size(&self, element: &Self::Type, caps: &Caps) -> Option<usize> { ... }
fn sink_event(&self, element: &Self::Type, event: Event) -> bool { ... }
fn src_event(&self, element: &Self::Type, event: Event) -> bool { ... }
fn prepare_output_buffer(
&self,
element: &Self::Type,
inbuf: &BufferRef
) -> Result<PrepareOutputBufferSuccess, FlowError> { ... }
fn transform(
&self,
element: &Self::Type,
inbuf: &Buffer,
outbuf: &mut BufferRef
) -> Result<FlowSuccess, FlowError> { ... }
fn transform_ip(
&self,
element: &Self::Type,
buf: &mut BufferRef
) -> Result<FlowSuccess, FlowError> { ... }
fn transform_ip_passthrough(
&self,
element: &Self::Type,
buf: &Buffer
) -> Result<FlowSuccess, FlowError> { ... }
fn copy_metadata(
&self,
element: &Self::Type,
inbuf: &BufferRef,
outbuf: &mut BufferRef
) -> Result<(), LoggableError> { ... }
fn transform_meta<'a>(
&self,
element: &Self::Type,
outbuf: &mut BufferRef,
meta: MetaRef<'a, Meta>,
inbuf: &'a BufferRef
) -> bool { ... }
fn before_transform(&self, element: &Self::Type, inbuf: &BufferRef) { ... }
fn submit_input_buffer(
&self,
element: &Self::Type,
is_discont: bool,
inbuf: Buffer
) -> Result<FlowSuccess, FlowError> { ... }
fn generate_output(
&self,
element: &Self::Type
) -> Result<GenerateOutputSuccess, FlowError> { ... }
}