|
Blender
V2.59
|
#include <stdlib.h>#include <stddef.h>#include <stdio.h>#include <string.h>#include <math.h>#include <float.h>#include "MEM_guardedalloc.h"#include "BLI_utildefines.h"#include "BLI_ghash.h"#include "DNA_anim_types.h"#include "DNA_scene_types.h"#include "BKE_action.h"#include "BKE_fcurve.h"#include "BKE_nla.h"#include "BKE_global.h"#include "BKE_library.h"#include "RNA_access.h"#include "nla_private.h"Go to the source code of this file.
Definition in file nla.c.
Definition at line 268 of file nla.c.
References NlaStrip::act, NlaStrip::actend, NlaStrip::actstart, calc_action_range(), NlaStrip::end, NlaStrip::flag, bAction::id, id_us_plus(), IS_EQF, MEM_callocN(), NLASTRIP_FLAG_AUTO_BLENDS, NLASTRIP_FLAG_SELECT, NULL, NlaStrip::repeat, NlaStrip::scale, and NlaStrip::start.
Referenced by add_nlastrip_to_stack(), and nlaedit_add_actionclip_exec().
Definition at line 310 of file nla.c.
References add_nlastrip(), add_nlatrack(), BKE_nlastrip_validate_name(), BKE_nlatrack_add_strip(), ELEM, ListBase::last, AnimData::nla_tracks, and NULL.
Referenced by animrecord_check_state(), and BKE_nla_action_pushdown().
Definition at line 237 of file nla.c.
References BKE_nlatrack_set_active(), BLI_addtail(), BLI_countlist(), BLI_insertlinkafter(), BLI_uniquename(), NlaTrack::flag, NlaTrack::index, MEM_callocN(), NlaTrack::name, AnimData::nla_tracks, NLATRACK_SELECTED, and NULL.
Referenced by add_nlastrip_to_stack(), nlaedit_add_actionclip_exec(), nlaedit_add_tracks_exec(), nlaedit_duplicate_exec(), nlaedit_snap_exec(), and nlastrips_to_animdata().
| void BKE_nla_action_pushdown | ( | AnimData * | adt | ) |
Definition at line 1423 of file nla.c.
References AnimData::action, action_has_motion(), add_nlastrip_to_stack(), BKE_nlastrip_set_active(), ELEM, NlaStrip::extendmode, bAction::id, id_us_min(), NLASTRIP_EXTEND_HOLD_FORWARD, nlastrip_is_first(), and NULL.
Referenced by BKE_nla_bake(), and mouse_nla_channels().
Definition at line 1585 of file nla.c.
References AnimData::action, BKE_nla_action_pushdown(), ELEM3, ListBase::first, AnimData::nla_tracks, and NULL.
| float BKE_nla_tweakedit_remap | ( | AnimData * | adt, |
| float | cframe, | ||
| short | mode | ||
| ) |
Definition at line 466 of file nla.c.
References AnimData::actstrip, ADT_NLA_EDIT_NOMAP, ADT_NLA_EDIT_ON, BKE_nlastrip_find_active(), BKE_nlatrack_find_active(), NlaStrip::flag, AnimData::flag, AnimData::nla_tracks, NLASTRIP_FLAG_USR_TIME, nlastrip_get_frame(), and NULL.
Referenced by actkeys_mselect_column(), applyTimeScale(), applyTimeSlide(), applyTimeTranslate(), bezt_nlamapping_apply(), bezt_nlamapping_restore(), bezt_to_transdata(), borderselect_action(), columnselect_action_keys(), columnselect_graph_keys(), createTransActionData(), delete_keyframe(), doAnimEdit_SnapFrame(), draw_ghost_poses(), flushTransGraphData(), get_graph_keyframe_extents(), get_keyframe_extents(), graphkeys_click_insert_exec(), graphkeys_mselect_column(), insert_action_keys(), insert_graph_keys(), insert_keyframe(), and mouse_action_keys().
| short BKE_nla_tweakmode_enter | ( | AnimData * | adt | ) |
Definition at line 1471 of file nla.c.
References NlaStrip::act, AnimData::action, AnimData::actstrip, ADT_NLA_EDIT_ON, BKE_nlastrip_find_active(), ELEM, ELEM3, Global::f, ListBase::first, NlaStrip::flag, NlaTrack::flag, AnimData::flag, G, G_DEBUG, bAction::id, id_us_plus(), NlaStrip::next, NlaTrack::next, AnimData::nla_tracks, NLASTRIP_FLAG_TWEAKUSER, NLATRACK_ACTIVE, NLATRACK_DISABLED, NULL, NlaTrack::prev, NlaTrack::strips, and AnimData::tmpact.
Referenced by nlaedit_enable_tweakmode_exec().
| void BKE_nla_tweakmode_exit | ( | AnimData * | adt | ) |
Definition at line 1544 of file nla.c.
References AnimData::action, AnimData::actstrip, ADT_NLA_EDIT_ON, ELEM, ListBase::first, NlaStrip::flag, NlaTrack::flag, AnimData::flag, bAction::id, NlaStrip::next, NlaTrack::next, AnimData::nla_tracks, NLASTRIP_FLAG_TWEAKUSER, NLATRACK_DISABLED, NULL, NlaTrack::strips, AnimData::tmpact, and ID::us.
Referenced by nlaedit_disable_tweakmode_exec().
| void BKE_nla_validate_state | ( | AnimData * | adt | ) |
Definition at line 1377 of file nla.c.
References BKE_nlastrip_validate_autoblends(), ELEM, NlaStrip::extendmode, ListBase::first, NlaStrip::next, NlaTrack::next, AnimData::nla_tracks, NLASTRIP_EXTEND_HOLD, NLASTRIP_EXTEND_HOLD_FORWARD, NLASTRIP_EXTEND_NOTHING, NULL, NlaStrip::start, and NlaTrack::strips.
Referenced by ED_nla_postop_refresh().
Definition at line 726 of file nla.c.
References BKE_nlastrips_add_strip(), BKE_nlastrips_has_space(), BLI_addhead(), BLI_addtail(), ELEM, NlaStrip::end, NlaStrip::next, NULL, NlaStrip::prev, NlaStrip::start, and NlaStrip::strips.
| void BKE_nlameta_flush_transforms | ( | NlaStrip * | mstrip | ) |
Definition at line 776 of file nla.c.
References BKE_nlameta_flush_transforms(), ELEM, NlaStrip::end, ListBase::first, IS_EQF, ListBase::last, NlaStrip::next, NLASTRIP_TYPE_META, NULL, RNA_float_set(), RNA_NlaStrip, RNA_pointer_create(), NlaStrip::start, NlaStrip::strips, and NlaStrip::type.
Referenced by BKE_nlameta_flush_transforms(), nlaedit_snap_exec(), and nlaedit_swap_exec().
Definition at line 1001 of file nla.c.
References ELEM, ListBase::first, NlaStrip::flag, NlaStrip::next, NLASTRIP_FLAG_ACTIVE, NULL, and NlaTrack::strips.
Referenced by BKE_nla_tweakedit_remap(), BKE_nla_tweakmode_enter(), and nla_panel_context().
| void BKE_nlastrip_recalculate_bounds | ( | NlaStrip * | strip | ) |
Definition at line 1075 of file nla.c.
References NlaStrip::actend, NlaStrip::actstart, NlaStrip::end, IS_EQF, NLASTRIP_TYPE_CLIP, NULL, NlaStrip::repeat, NlaStrip::scale, NlaStrip::start, and NlaStrip::type.
Referenced by nlaedit_sync_actlen_exec().
Definition at line 1020 of file nla.c.
References ListBase::first, NlaStrip::flag, NlaStrip::next, NlaTrack::next, AnimData::nla_tracks, NLASTRIP_FLAG_ACTIVE, NULL, and NlaTrack::strips.
Referenced by BKE_nla_action_pushdown().
Definition at line 1329 of file nla.c.
References NlaStrip::blendin, NlaStrip::blendout, ELEM, NlaStrip::end, NlaStrip::flag, IS_EQF, NlaStrip::next, NlaTrack::next, NLASTRIP_FLAG_AUTO_BLENDS, nlastrip_get_endpoint_overlaps(), NULL, NlaStrip::prev, NlaTrack::prev, and NlaStrip::start.
Referenced by BKE_nla_validate_state().
| void BKE_nlastrip_validate_fcurves | ( | NlaStrip * | strip | ) |
Definition at line 1168 of file nla.c.
References BLI_addtail(), BLI_strdupn(), FCURVE_AUTO_HANDLES, FCURVE_SELECTED, FCURVE_VISIBLE, NlaStrip::fcurves, FCurve::flag, NlaStrip::flag, list_find_fcurve(), MEM_callocN(), NLASTRIP_FLAG_USR_INFLUENCE, NLASTRIP_FLAG_USR_TIME, NULL, and FCurve::rna_path.
Definition at line 1231 of file nla.c.
References NlaStrip::act, BLI_ghash_free(), BLI_ghash_insert(), BLI_ghash_new(), BLI_ghashutil_strcmp(), BLI_ghashutil_strhash(), BLI_uniquename_cb(), ELEM, ListBase::first, bAction::id, ID::name, NlaStrip::name, NlaStrip::next, NlaTrack::next, nla_editbone_name_check(), AnimData::nla_tracks, NLASTRIP_TYPE_CLIP, NLASTRIP_TYPE_META, NLASTRIP_TYPE_TRANSITION, NULL, NlaTrack::strips, and NlaStrip::type.
Referenced by add_nlastrip_to_stack(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_transition_exec(), nlaedit_duplicate_exec(), and nlaedit_split_strip_actclip().
| short BKE_nlastrip_within_bounds | ( | NlaStrip * | strip, |
| float | min, | ||
| float | max | ||
| ) |
Definition at line 1042 of file nla.c.
References NlaStrip::end, fabs(), IN_RANGE, IS_EQF, NULL, and NlaStrip::start.
Referenced by borderselect_nla_strips(), draw_nla_main_data(), mouse_nla_strips(), and nlaedit_select_leftright().
Definition at line 584 of file nla.c.
References BKE_nlastrips_has_space(), BLI_addtail(), BLI_insertlinkbefore(), ELEM, NlaStrip::end, ListBase::first, NlaStrip::next, NULL, and NlaStrip::start.
Referenced by BKE_nlameta_add_strip(), and BKE_nlatrack_add_strip().
| void BKE_nlastrips_clear_metas | ( | ListBase * | strips, |
| short | onlySel, | ||
| short | onlyTemp | ||
| ) |
Definition at line 699 of file nla.c.
References BKE_nlastrips_clear_metastrip(), ELEM, ListBase::first, NlaStrip::flag, NlaStrip::next, NLASTRIP_FLAG_SELECT, NLASTRIP_FLAG_TEMP_META, NLASTRIP_TYPE_META, NULL, and NlaStrip::type.
Referenced by nlaedit_remove_meta_exec(), nlaedit_snap_exec(), nlaedit_swap_exec(), and special_aftertrans_update().
Definition at line 674 of file nla.c.
References BLI_insertlinkbefore(), BLI_remlink(), ELEM, ListBase::first, free_nlastrip(), NlaStrip::next, NULL, and NlaStrip::strips.
Referenced by BKE_nlastrips_clear_metas(), and nlaedit_split_strip_meta().
| short BKE_nlastrips_has_space | ( | ListBase * | strips, |
| float | start, | ||
| float | end | ||
| ) |
Definition at line 506 of file nla.c.
References NlaStrip::end, ListBase::first, IS_EQF, NlaStrip::next, NULL, NlaStrip::start, and SWAP.
Referenced by BKE_nlameta_add_strip(), BKE_nlastrips_add_strip(), BKE_nlatrack_has_space(), and nlaedit_swap_exec().
| void BKE_nlastrips_make_metas | ( | ListBase * | strips, |
| short | temp | ||
| ) |
Definition at line 622 of file nla.c.
References BLI_addtail(), BLI_insertlinkbefore(), BLI_remlink(), ELEM, NlaStrip::end, ListBase::first, NlaStrip::flag, MEM_callocN(), NlaStrip::next, NLASTRIP_FLAG_SELECT, NLASTRIP_FLAG_TEMP_META, NLASTRIP_TYPE_META, NULL, NlaStrip::repeat, NlaStrip::scale, NlaStrip::start, NlaStrip::strips, and NlaStrip::type.
Referenced by createTransNlaData(), nlaedit_add_meta_exec(), nlaedit_snap_exec(), and nlaedit_swap_exec().
| void BKE_nlastrips_sort_strips | ( | ListBase * | strips | ) |
Definition at line 540 of file nla.c.
References BLI_addhead(), BLI_insertlinkafter(), BLI_remlink(), ELEM, NlaStrip::end, ListBase::first, ListBase::last, NlaStrip::next, NULL, NlaStrip::prev, and NlaStrip::start.
Referenced by BKE_nlatrack_sort_strips().
Definition at line 959 of file nla.c.
References BKE_nlastrips_add_strip(), ELEM, NULL, and NlaTrack::strips.
Referenced by add_nlastrip_to_stack(), nlaedit_add_actionclip_exec(), nlaedit_duplicate_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_snap_exec(), nlaedit_swap_exec(), and nlastrips_to_animdata().
Definition at line 853 of file nla.c.
References ELEM, ListBase::first, NlaTrack::flag, NlaTrack::next, NLATRACK_ACTIVE, and NULL.
Referenced by BKE_nla_tweakedit_remap().
| short BKE_nlatrack_get_bounds | ( | NlaTrack * | nlt, |
| float | bounds[2] | ||
| ) |
Definition at line 972 of file nla.c.
References ELEM, NlaStrip::end, ListBase::first, ListBase::last, NULL, NlaStrip::start, and NlaTrack::strips.
| short BKE_nlatrack_has_animated_strips | ( | NlaTrack * | nlt | ) |
Definition at line 1130 of file nla.c.
References ELEM, NlaStrip::fcurves, ListBase::first, NlaStrip::next, NULL, and NlaTrack::strips.
Referenced by BKE_nlatracks_have_animated_strips().
| short BKE_nlatrack_has_space | ( | NlaTrack * | nlt, |
| float | start, | ||
| float | end | ||
| ) |
Definition at line 924 of file nla.c.
References BKE_nlastrips_has_space(), NlaTrack::flag, IS_EQF, NLATRACK_PROTECTED, NULL, NlaTrack::strips, and SWAP.
Referenced by nlaedit_move_down_exec(), and nlaedit_move_up_exec().
Definition at line 906 of file nla.c.
References ELEM, ListBase::first, NlaTrack::flag, NlaTrack::next, NLATRACK_ACTIVE, and NULL.
Referenced by add_nlatrack().
Definition at line 874 of file nla.c.
References ADT_NLA_SOLO_TRACK, ELEM, ListBase::first, NlaTrack::flag, AnimData::flag, NlaTrack::next, AnimData::nla_tracks, NLATRACK_SOLO, and NULL.
Referenced by mouse_nla_channels().
| void BKE_nlatrack_sort_strips | ( | NlaTrack * | nlt | ) |
Definition at line 946 of file nla.c.
References BKE_nlastrips_sort_strips(), ELEM, ListBase::first, NULL, and NlaTrack::strips.
Referenced by special_aftertrans_update().
| short BKE_nlatracks_have_animated_strips | ( | ListBase * | tracks | ) |
Definition at line 1149 of file nla.c.
References BKE_nlatrack_has_animated_strips(), ELEM, ListBase::first, NlaTrack::next, and NULL.
Definition at line 213 of file nla.c.
References BLI_addtail(), copy_nlatrack(), ELEM, ListBase::first, ListBase::last, NlaTrack::next, and NULL.
Referenced by BKE_copy_animdata().
Definition at line 153 of file nla.c.
References NlaStrip::act, BLI_addtail(), copy_fcurves(), copy_fmodifiers(), copy_nlastrip(), NlaStrip::fcurves, ListBase::first, bAction::id, id_us_plus(), ListBase::last, MEM_dupallocN(), NlaStrip::modifiers, NlaStrip::next, NULL, NlaStrip::prev, and NlaStrip::strips.
Referenced by copy_nlastrip(), copy_nlatrack(), nlaedit_duplicate_exec(), and nlaedit_split_strip_actclip().
Definition at line 187 of file nla.c.
References BLI_addtail(), copy_nlastrip(), ListBase::first, ListBase::last, MEM_dupallocN(), NlaStrip::next, NlaTrack::next, NULL, NlaTrack::prev, and NlaTrack::strips.
Referenced by copy_nladata().
| void free_nladata | ( | ListBase * | tracks | ) |
Definition at line 132 of file nla.c.
References ELEM, ListBase::first, free_nlatrack(), ListBase::last, NlaTrack::next, and NULL.
Referenced by BKE_free_animdata().
Definition at line 70 of file nla.c.
References NlaStrip::act, BLI_freelinkN(), NlaStrip::fcurves, ListBase::first, free_fcurves(), free_fmodifiers(), free_nlastrip(), bAction::id, id_us_min(), MEM_freeN(), NlaStrip::modifiers, NlaStrip::next, NULL, and NlaStrip::strips.
Referenced by BKE_nlastrips_clear_metastrip(), free_nlastrip(), free_nlatrack(), and nlaedit_delete_exec().
Definition at line 108 of file nla.c.
References BLI_freelinkN(), ListBase::first, free_nlastrip(), MEM_freeN(), NlaStrip::next, NULL, and NlaTrack::strips.
Referenced by free_nladata(), and nlaedit_delete_tracks_exec().
| static int nla_editbone_name_check | ( | void * | arg, |
| const char * | name | ||
| ) | [static] |
Definition at line 1221 of file nla.c.
References BLI_ghash_haskey().
Referenced by BKE_nlastrip_validate_name().
| static void nlastrip_get_endpoint_overlaps | ( | NlaStrip * | strip, |
| NlaTrack * | track, | ||
| float ** | start, | ||
| float ** | end | ||
| ) | [static] |
Definition at line 1292 of file nla.c.
References NlaStrip::end, ListBase::first, IS_EQF, NlaStrip::next, NULL, NlaStrip::prev, NlaStrip::start, and NlaTrack::strips.
Referenced by BKE_nlastrip_validate_autoblends().
| float nlastrip_get_frame | ( | NlaStrip * | strip, |
| float | cframe, | ||
| short | mode | ||
| ) |
Definition at line 446 of file nla.c.
References nlastrip_get_frame_actionclip(), nlastrip_get_frame_transition(), NLASTRIP_TYPE_CLIP, NLASTRIP_TYPE_META, NLASTRIP_TYPE_TRANSITION, and NlaStrip::type.
Referenced by bezt_apply_nlamapping(), BKE_nla_tweakedit_remap(), nlaedit_split_strip_actclip(), and nlastrip_evaluate_controls().
| static float nlastrip_get_frame_actionclip | ( | NlaStrip * | strip, |
| float | cframe, | ||
| short | mode | ||
| ) | [static] |
Definition at line 348 of file nla.c.
References NlaStrip::actend, NlaStrip::actstart, NlaStrip::end, fabs(), NlaStrip::flag, fmodf, IS_EQF, NLASTRIP_FLAG_REVERSE, NLATIME_CONVERT_MAP, NLATIME_CONVERT_UNMAP, NlaStrip::repeat, NlaStrip::scale, and NlaStrip::start.
Referenced by nlastrip_get_frame().
| static float nlastrip_get_frame_transition | ( | NlaStrip * | strip, |
| float | cframe, | ||
| short | mode | ||
| ) | [static] |
Definition at line 418 of file nla.c.
References NlaStrip::end, NlaStrip::flag, length(), NLASTRIP_FLAG_REVERSE, NLATIME_CONVERT_MAP, and NlaStrip::start.
Referenced by nlastrip_get_frame().
Definition at line 1099 of file nla.c.
References ELEM, ListBase::first, NlaTrack::next, AnimData::nla_tracks, NULL, NlaStrip::prev, NlaStrip::start, and NlaTrack::strips.
Referenced by BKE_nla_action_pushdown().