Blender V5.0
SEQ_relations.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2004 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
10
11#include <cstddef>
12
13struct ListBase;
14struct Main;
15struct MovieClip;
16struct ReportList;
17struct bNodeTree;
18struct Scene;
19struct Strip;
20
21namespace blender::seq {
22
26bool relation_is_effect_of_strip(const Strip *effect, const Strip *input);
31bool relations_check_scene_recursion(Scene *scene, ReportList *reports);
35bool relations_render_loop_check(Strip *strip_main, Strip *strip);
36void relations_free_imbuf(Scene *scene, ListBase *seqbase, bool for_render);
37
48void relations_invalidate_cache(Scene *scene, Strip *strip);
49
54void relations_invalidate_cache_raw(Scene *scene, Strip *strip);
55void relations_invalidate_scene_strips(const Main *bmain, const Scene *scene_target);
56
60void relations_invalidate_compositor_modifiers(const Main *bmain, const bNodeTree *node_tree);
61
62void relations_invalidate_movieclip_strips(Main *bmain, MovieClip *clip_target);
66void relations_free_all_anim_ibufs(Scene *scene, int timeline_frame);
76
77void cache_cleanup(Scene *scene);
78void cache_cleanup_intra(Scene *scene);
79void cache_cleanup_final(Scene *scene);
80
81void cache_settings_changed(Scene *scene);
82bool is_cache_full(const Scene *scene);
83bool evict_caches_if_full(Scene *scene);
84
86 void *userdata,
87 void callback_iter(void *userdata,
88 const Strip *strip,
89 int timeline_frame));
91 void *userdata,
92 void callback_iter(void *userdata, int timeline_frame));
93
95size_t final_image_cache_calc_memory_size(const Scene *scene);
96
97bool exists_in_seqbase(const Strip *strip, const ListBase *seqbase);
98
99} // namespace blender::seq
struct ListBase ListBase
struct MovieClip MovieClip
struct bNodeTree bNodeTree
struct Scene Scene
struct Strip Strip
#define input
void relations_strip_free_anim(Strip *strip)
void cache_cleanup_final(Scene *scene)
void relations_invalidate_compositor_modifiers(const Main *bmain, const bNodeTree *node_tree)
size_t final_image_cache_calc_memory_size(const Scene *scene)
void relations_invalidate_cache(Scene *scene, Strip *strip)
void cache_settings_changed(Scene *scene)
bool relations_render_loop_check(Strip *strip_main, Strip *strip)
void relations_free_all_anim_ibufs(Scene *scene, int timeline_frame)
void source_image_cache_iterate(Scene *scene, void *userdata, void callback_iter(void *userdata, const Strip *strip, int timeline_frame))
void relations_invalidate_scene_strips(const Main *bmain, const Scene *scene_target)
void final_image_cache_iterate(Scene *scene, void *userdata, void callback_iter(void *userdata, int timeline_frame))
void relations_invalidate_cache_raw(Scene *scene, Strip *strip)
void relations_invalidate_movieclip_strips(Main *bmain, MovieClip *clip_target)
void cache_cleanup(Scene *scene)
bool is_cache_full(const Scene *scene)
void relations_session_uid_generate(Strip *strip)
bool relation_is_effect_of_strip(const Strip *effect, const Strip *input)
bool evict_caches_if_full(Scene *scene)
size_t source_image_cache_calc_memory_size(const Scene *scene)
void relations_free_imbuf(Scene *scene, ListBase *seqbase, bool for_render)
void cache_cleanup_intra(Scene *scene)
void relations_check_uids_unique_and_report(const Scene *scene)
bool relations_check_scene_recursion(Scene *scene, ReportList *reports)
bool exists_in_seqbase(const Strip *strip, const ListBase *seqbase)