upipe/upipe_helper_flow_def.h header reference
Upipe helper functions for input and output flow definitions More
Header inclusion
Members
Macro
Description
Upipe helper functions for input and output flow definitions
Members detail
This macro is declared in upipe/upipe_helper_flow_def.h source file, line 101.
This macro declares six functions dealing with the management of flow definitions in linear pipes.
You must add two members to your private upipe structure, for instance:
struct uref *flow_def_input; //flow def exactly as it is input
struct uref *flow_def_attr; //attributes added by the pipe to flow def
You must also declare UPIPE_HELPER_UPIPE prior to using this macro.
Supposing the name of your structure is upipe_foo, it declares:
void upipe_foo_init_flow_def(struct upipe *upipe)
Typically called in your upipe_foo_alloc() function.
struct uref *upipe_foo_alloc_flow_def_attr(struct upipe *upipe)
Called whenever you need to allocate a flow definition attributes packet.
struct uref *upipe_foo_make_flow_def(struct upipe *upipe)
Builds and returns a new flow definition, deduced from the input flow definition and the flow def attributes.
bool upipe_foo_check_flow_def_attr(struct upipe *upipe)
Checks a new flow definitions attributes packet against the stored one.
struct uref *upipe_foo_store_flow_def_attr(struct upipe *upipe,
struct uref *flow_def_attr)Called when new flow definition attributes are calculated (for instance on a new global header). Returns the new flow definition of the pipe.
struct uref *upipe_foo_store_flow_def_input(struct upipe *upipe,
struct uref *flow_def_input)Called when a new flow definition input is received. Returns the new flow definition of the pipe.
void upipe_foo_clean_flow_def(struct upipe *upipe)
Typically called from your upipe_foo_free() function.
Parameter list:
- STRUCTURE: name of your private upipe structure
- FLOW_DEF_INPUT: name of the struct uref * field of your private upipe structure, pointing to the input flow definition
- FLOW_DEF_ATTR: name of the struct uref * field of your private upipe structure, pointing to the flow definition attributes
This macro is declared in upipe/upipe_helper_flow_def.h source file, line 31.