diff options
author | Richard Antalik <richardantalik@gmail.com> | 2020-11-05 15:33:27 +0300 |
---|---|---|
committer | Richard Antalik <richardantalik@gmail.com> | 2020-11-05 15:33:27 +0300 |
commit | 0f43fe7fa66b94cf3cb5033223c1d96b89372ecc (patch) | |
tree | ebe008c860f1b0988f48da46d220d28b6860f9cb /source/blender/sequencer/intern/render.h | |
parent | 7bc7b7da2d2fdd48a7c8c28f7c23419ca9178b4d (diff) |
Cleanup: split sequencer.c file
Move functions closely related to rendering images and proxies into
render.c and proxy.c files. render.h and proxy.h are created for
functions used internally.
There should be no functional changes.
Diffstat (limited to 'source/blender/sequencer/intern/render.h')
-rw-r--r-- | source/blender/sequencer/intern/render.h | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/source/blender/sequencer/intern/render.h b/source/blender/sequencer/intern/render.h new file mode 100644 index 00000000000..8be4ed7c2ab --- /dev/null +++ b/source/blender/sequencer/intern/render.h @@ -0,0 +1,75 @@ +/* + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * The Original Code is Copyright (C) 2004 Blender Foundation. + * All rights reserved. + */ + +#pragma once + +/** \file + * \ingroup sequencer + */ + +#ifdef __cplusplus +extern "C" { +#endif + +struct Editing; +struct SeqRenderData; +struct ListBase; +struct ImBuf; +struct Scene; +struct Sequence; + +/* mutable state for sequencer */ +typedef struct SeqRenderState { + struct LinkNode *scene_parents; +} SeqRenderState; + +void seq_render_state_init(SeqRenderState *state); + +struct ImBuf *seq_render_give_ibuf_seqbase(const struct SeqRenderData *context, + float cfra, + int chan_shown, + struct ListBase *seqbasep); +struct ImBuf *seq_render_effect_execute_threaded(struct SeqEffectHandle *sh, + const SeqRenderData *context, + struct Sequence *seq, + float cfra, + float facf0, + float facf1, + struct ImBuf *ibuf1, + struct ImBuf *ibuf2, + struct ImBuf *ibuf3); +void seq_imbuf_to_sequencer_space(struct Scene *scene, struct ImBuf *ibuf, bool make_float); +float seq_give_stripelem_index(struct Sequence *seq, float cfra); +int seq_get_shown_sequences(struct ListBase *seqbasep, + int cfra, + int chanshown, + struct Sequence **seq_arr_out); +struct ImBuf *seq_render_strip(const struct SeqRenderData *context, + struct SeqRenderState *state, + struct Sequence *seq, + float cfra); +struct ImBuf *seq_render_mask(const struct SeqRenderData *context, + struct Mask *mask, + float nr, + bool make_float); +void seq_imbuf_assign_spaces(struct Scene *scene, struct ImBuf *ibuf); + +#ifdef __cplusplus +} +#endif |