Listing the "Blender Foundation" as copyright holder implied the Blender Foundation holds copyright to files which may include work from many developers. While keeping copyright on headers makes sense for isolated libraries, Blender's own code may be refactored or moved between files in a way that makes the per file copyright holders less meaningful. Copyright references to the "Blender Foundation" have been replaced with "Blender Authors", with the exception of `./extern/` since these this contains libraries which are more isolated, any changed to license headers there can be handled on a case-by-case basis. Some directories in `./intern/` have also been excluded: - `./intern/cycles/` it's own `AUTHORS` file is planned. - `./intern/opensubdiv/`. An "AUTHORS" file has been added, using the chromium projects authors file as a template. Design task: #110784 Ref !110783.
68 lines
3.2 KiB
C
68 lines
3.2 KiB
C
/* SPDX-FileCopyrightText: 2004 Blender Authors
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
#pragma once
|
|
|
|
/** \file
|
|
* \ingroup sequencer
|
|
*/
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct Scene;
|
|
struct Sequence;
|
|
struct SeqRetimingHandle;
|
|
|
|
int SEQ_retiming_handles_count(const struct Sequence *seq);
|
|
bool SEQ_retiming_is_active(const struct Sequence *seq);
|
|
void SEQ_retiming_data_ensure(const struct Scene *scene, struct Sequence *seq);
|
|
void SEQ_retiming_data_clear(struct Sequence *seq);
|
|
bool SEQ_retiming_is_allowed(const struct Sequence *seq);
|
|
|
|
/**
|
|
* Add new retiming handle.
|
|
* This function always reallocates memory, so when function is used all stored pointers will
|
|
* become invalid.
|
|
*/
|
|
struct SeqRetimingHandle *SEQ_retiming_add_handle(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
const int timeline_frame);
|
|
SeqRetimingHandle *SEQ_retiming_add_transition(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
struct SeqRetimingHandle *handle,
|
|
const int offset);
|
|
SeqRetimingHandle *SEQ_retiming_add_freeze_frame(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
struct SeqRetimingHandle *handle,
|
|
const int offset);
|
|
struct SeqRetimingHandle *SEQ_retiming_last_handle_get(const struct Sequence *seq);
|
|
void SEQ_retiming_remove_handle(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
struct SeqRetimingHandle *handle);
|
|
void SEQ_retiming_offset_handle(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
struct SeqRetimingHandle *handle,
|
|
const int offset);
|
|
float SEQ_retiming_handle_speed_get(const struct Sequence *seq,
|
|
const struct SeqRetimingHandle *handle);
|
|
void SEQ_retiming_handle_speed_set(const struct Scene *scene,
|
|
struct Sequence *seq,
|
|
struct SeqRetimingHandle *handle,
|
|
const float speed);
|
|
int SEQ_retiming_handle_index_get(const struct Sequence *seq,
|
|
const struct SeqRetimingHandle *handle);
|
|
void SEQ_retiming_sound_animation_data_set(const struct Scene *scene, const struct Sequence *seq);
|
|
float SEQ_retiming_handle_timeline_frame_get(const struct Scene *scene,
|
|
const struct Sequence *seq,
|
|
const struct SeqRetimingHandle *handle);
|
|
const SeqRetimingHandle *SEQ_retiming_find_segment_start_handle(const struct Sequence *seq,
|
|
const int frame_index);
|
|
bool SEQ_retiming_handle_is_transition_type(const struct SeqRetimingHandle *handle);
|
|
bool SEQ_retiming_handle_is_freeze_frame(const struct SeqRetimingHandle *handle);
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|