Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Schlaile <peter@schlaile.de>2010-07-25 21:19:55 +0400
committerPeter Schlaile <peter@schlaile.de>2010-07-25 21:19:55 +0400
commit98e26b1b081205730c4392fa884810bb65bd0c21 (patch)
tree8d49686326f36d0b262a37112029f93a07c2134e /source/blender/blenkernel/BKE_sequencer.h
parent6ec87e60955cfa2e2737cdf9c1cc902c73f37d08 (diff)
== Sequencer ==
Some cleanup on effects: - converted interface to float cfra - made effects return their own ImBufs, which has the following advantages: * code in sequencer.c is a lot more readable. * multicam saves one memcpy of an image * prepares things for GPU-rendering
Diffstat (limited to 'source/blender/blenkernel/BKE_sequencer.h')
-rw-r--r--source/blender/blenkernel/BKE_sequencer.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/source/blender/blenkernel/BKE_sequencer.h b/source/blender/blenkernel/BKE_sequencer.h
index 81ae83cafb6..b544b3461cd 100644
--- a/source/blender/blenkernel/BKE_sequencer.h
+++ b/source/blender/blenkernel/BKE_sequencer.h
@@ -107,15 +107,14 @@ struct SeqEffectHandle {
0: no early out,
1: out = ibuf1,
2: out = ibuf2 */
- int (*early_out)(struct Sequence *seq,
- float facf0, float facf1);
+ int (*early_out)(struct Sequence *seq, float facf0, float facf1);
/* stores the y-range of the effect IPO */
void (*store_icu_yrange)(struct Sequence * seq,
short adrcode, float *ymin, float *ymax);
/* stores the default facf0 and facf1 if no IPO is present */
- void (*get_default_fac)(struct Sequence *seq, int cfra,
+ void (*get_default_fac)(struct Sequence *seq, float cfra,
float * facf0, float * facf1);
/* execute the effect
@@ -123,11 +122,12 @@ struct SeqEffectHandle {
float-rects or byte-rects
(mixed cases are handled one layer up...) */
- void (*execute)(struct Scene *scene, struct Sequence *seq, int cfra,
- float facf0, float facf1,
- int x, int y, int preview_render_size,
- struct ImBuf *ibuf1, struct ImBuf *ibuf2,
- struct ImBuf *ibuf3, struct ImBuf *out);
+ struct ImBuf* (*execute)(
+ struct Scene *scene, struct Sequence *seq, float cfra,
+ float facf0, float facf1,
+ int x, int y, int preview_render_size,
+ struct ImBuf *ibuf1, struct ImBuf *ibuf2,
+ struct ImBuf *ibuf3);
};
/* ********************* prototypes *************** */
@@ -164,6 +164,10 @@ struct StripElem *give_stripelem(struct Sequence *seq, int cfra);
// intern?
void update_changed_seq_and_deps(struct Scene *scene, struct Sequence *changed_seq, int len_change, int ibuf_change);
+int input_have_to_preprocess(
+ struct Scene *scene, struct Sequence * seq,
+ float cfra, int seqrectx, int seqrecty);
+
/* seqcache.c */
typedef enum {