31 #define _SEQ_ITERATOR_NAME_JOIN(x, y) x##_##y
32 #define _SEQ_ITERATOR_NAME_EVALUATE(x, y) _SEQ_ITERATOR_NAME_JOIN(x, y)
33 #define _SEQ_ITERATOR_NAME(prefix) _SEQ_ITERATOR_NAME_EVALUATE(prefix, __LINE__)
35 #define SEQ_ITERATOR_FOREACH(var, collection) \
36 for (SeqIterator _SEQ_ITERATOR_NAME(iter) = {{{NULL}}}; \
37 SEQ_iterator_ensure(collection, &_SEQ_ITERATOR_NAME(iter), &var) && var != NULL; \
38 var = SEQ_iterator_yield(&_SEQ_ITERATOR_NAME(iter)))
135 #define SEQ_collection_free_void_p ((GHashValFreeFP)SEQ_collection_free)
163 void seq_query_func(
const struct Scene *
scene,
178 void seq_query_func(
const struct Scene *
scene,
222 int displayed_channel);
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Bright Control the brightness and contrast of the input color Vector Map an input vectors to used to fine tune the interpolation of the input Camera Retrieve information about the camera and how it relates to the current shading point s position Clamp a value between a minimum and a maximum Vector Perform vector math operation Invert a producing a negative Combine Generate a color from its and blue channels(Deprecated)") DefNode(ShaderNode
void SEQ_collection_exclude(SeqCollection *collection, SeqCollection *exclude_elements)
bool SEQ_iterator_ensure(SeqCollection *collection, SeqIterator *iterator, struct Sequence **r_seq)
bool SEQ_collection_remove_strip(struct Sequence *seq, SeqCollection *collection)
SeqCollection * SEQ_query_all_strips_recursive(ListBase *seqbase)
void SEQ_collection_merge(SeqCollection *collection_dst, SeqCollection *collection_src)
void SEQ_for_each_callback(struct ListBase *seqbase, SeqForEachFunc callback, void *user_data)
bool SEQ_collection_has_strip(const struct Sequence *seq, const SeqCollection *collection)
bool SEQ_collection_append_strip(struct Sequence *seq, SeqCollection *collection)
uint SEQ_collection_len(const SeqCollection *collection)
SeqCollection * SEQ_query_selected_strips(struct ListBase *seqbase)
void SEQ_filter_selected_strips(SeqCollection *collection)
SeqCollection * SEQ_query_by_reference(struct Sequence *seq_reference, const struct Scene *scene, struct ListBase *seqbase, void seq_query_func(const struct Scene *scene, struct Sequence *seq_reference, struct ListBase *seqbase, SeqCollection *collection))
void SEQ_collection_expand(const struct Scene *scene, struct ListBase *seqbase, SeqCollection *collection, void seq_query_func(const struct Scene *scene, struct Sequence *seq_reference, struct ListBase *seqbase, SeqCollection *collection))
bool(* SeqForEachFunc)(struct Sequence *seq, void *user_data)
SeqCollection * SEQ_query_all_strips(ListBase *seqbase)
void SEQ_query_strip_effect_chain(const struct Scene *scene, struct Sequence *seq_reference, struct ListBase *seqbase, SeqCollection *collection)
SeqCollection * SEQ_collection_duplicate(SeqCollection *collection)
struct SeqIterator SeqIterator
SeqCollection * SEQ_collection_create(const char *name)
SeqCollection * SEQ_query_unselected_strips(struct ListBase *seqbase)
struct Sequence * SEQ_iterator_yield(SeqIterator *iterator)
void SEQ_collection_free(SeqCollection *collection)
struct SeqCollection SeqCollection
SeqCollection * SEQ_query_rendered_strips(const struct Scene *scene, ListBase *channels, ListBase *seqbase, int timeline_frame, int displayed_channel)
DEGForeachIDComponentCallback callback
bool iterator_initialized
SeqCollection * collection