2023-08-16 00:20:26 +10:00
|
|
|
/* SPDX-FileCopyrightText: 2004 Blender Authors
|
2023-05-31 16:19:06 +02:00
|
|
|
*
|
|
|
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
2020-10-26 00:47:06 +01:00
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
/** \file
|
|
|
|
|
* \ingroup sequencer
|
|
|
|
|
*/
|
|
|
|
|
|
2025-01-07 12:39:13 +01:00
|
|
|
#include "BLI_span.hh"
|
|
|
|
|
|
2020-10-26 00:47:06 +01:00
|
|
|
struct Scene;
|
2025-01-06 14:19:24 +01:00
|
|
|
struct Strip;
|
2022-01-25 17:05:33 +01:00
|
|
|
struct StripProxy;
|
2021-12-08 21:02:29 +11:00
|
|
|
/**
|
|
|
|
|
* Cache must be freed before calling this function
|
2024-05-20 10:20:32 +10:00
|
|
|
* since it leaves the #Editing::seqbase in an invalid state.
|
2021-12-08 21:02:29 +11:00
|
|
|
*/
|
2025-01-07 14:09:45 +01:00
|
|
|
void seq_free_sequence_recurse(Scene *scene, Strip *strip, bool do_id_user);
|
2023-11-14 09:51:41 +01:00
|
|
|
StripProxy *seq_strip_proxy_alloc();
|
2022-06-02 01:39:40 +02:00
|
|
|
/**
|
|
|
|
|
* Find meta strip, that contains strip `key`.
|
|
|
|
|
* If lookup hash doesn't exist, it will be created. If hash is tagged as invalid, it will be
|
|
|
|
|
* rebuilt.
|
|
|
|
|
*
|
|
|
|
|
* \param scene: scene that owns lookup hash
|
2025-01-07 17:03:57 +01:00
|
|
|
* \param key: pointer to Strip inside of meta strip
|
2022-06-02 01:39:40 +02:00
|
|
|
*
|
|
|
|
|
* \return pointer to meta strip
|
|
|
|
|
*/
|
2025-01-07 17:03:57 +01:00
|
|
|
Strip *SEQ_lookup_meta_by_strip(const Scene *scene, const Strip *key);
|
2022-06-02 01:39:40 +02:00
|
|
|
/**
|
2025-01-07 14:09:45 +01:00
|
|
|
* Find effect strips, that use strip `strip` as one of inputs.
|
2022-06-02 01:39:40 +02:00
|
|
|
* If lookup hash doesn't exist, it will be created. If hash is tagged as invalid, it will be
|
|
|
|
|
* rebuilt.
|
|
|
|
|
*
|
|
|
|
|
* \param scene: scene that owns lookup hash
|
2025-01-07 17:03:57 +01:00
|
|
|
* \param key: pointer to Strip inside of meta strip
|
2022-06-02 01:39:40 +02:00
|
|
|
*
|
|
|
|
|
* \return collection of effect strips
|
|
|
|
|
*/
|
2025-01-07 17:03:57 +01:00
|
|
|
blender::Span<Strip *> SEQ_lookup_effects_by_strip(const Scene *scene, const Strip *key);
|