Blender  V3.3
Public Attributes | List of all members
bAnimListElem Struct Reference

#include <ED_anim_api.h>

Public Attributes

struct bAnimListElemnext
 
struct bAnimListElemprev
 
voiddata
 
int type
 
int flag
 
int index
 
char update
 
char tag
 
short datatype
 
voidkey_data
 
struct IDid
 
struct AnimDataadt
 
struct IDfcurve_owner_id
 
voidowner
 

Detailed Description

This struct defines a structure used for quick and uniform access for channels of animation data.

Definition at line 126 of file ED_anim_api.h.

Member Data Documentation

◆ adt

struct AnimData* bAnimListElem::adt

◆ data

void* bAnimListElem::data

source data this elem represents

Definition at line 130 of file ED_anim_api.h.

Referenced by acf_dsarm_setting_ptr(), acf_dscachefile_setting_ptr(), acf_dscam_setting_ptr(), acf_dscur_icon(), acf_dscur_setting_ptr(), acf_dscurves_setting_ptr(), acf_dsgpencil_setting_ptr(), acf_dslat_setting_ptr(), acf_dslight_setting_ptr(), acf_dslinestyle_setting_ptr(), acf_dsmat_setting_ptr(), acf_dsmball_setting_ptr(), acf_dsmclip_setting_ptr(), acf_dsmesh_setting_ptr(), acf_dsntree_offset(), acf_dsntree_setting_ptr(), acf_dspart_setting_ptr(), acf_dspointcloud_setting_ptr(), acf_dssimulation_setting_ptr(), acf_dsskey_setting_ptr(), acf_dsspk_setting_ptr(), acf_dstex_setting_ptr(), acf_dsvolume_setting_ptr(), acf_dswor_setting_ptr(), acf_fcurve_name(), acf_fcurve_name_prop(), acf_fcurve_setting_ptr(), acf_fcurve_setting_valid(), acf_fillactd_setting_ptr(), acf_filldrivers_setting_ptr(), acf_generic_channel_color(), acf_generic_idblock_name(), acf_generic_idblock_name_prop(), acf_generic_idfill_name_prop(), acf_generic_indentation_flexible(), acf_gpd_setting_ptr(), acf_gpencil_channel_color(), acf_gpl_name(), acf_gpl_name_prop(), acf_gpl_setting_ptr(), acf_group_color(), acf_group_name(), acf_group_name_prop(), acf_group_setting_ptr(), acf_mask_setting_ptr(), acf_masklay_name(), acf_masklay_name_prop(), acf_masklay_setting_ptr(), acf_nla_controls_setting_ptr(), acf_nla_curve_name(), acf_nlaaction_backdrop(), acf_nlaaction_color(), acf_nlaaction_name(), acf_nlaaction_name_prop(), acf_nlatrack_color(), acf_nlatrack_name(), acf_nlatrack_name_prop(), acf_nlatrack_setting_ptr(), acf_nlatrack_setting_valid(), acf_object_icon(), acf_object_name(), acf_object_setting_ptr(), acf_object_setting_valid(), acf_scene_setting_ptr(), acf_shapekey_name(), acf_shapekey_name_prop(), acf_shapekey_setting_ptr(), acf_summary_setting_ptr(), achannel_nlatrack_solo_widget_cb(), actkeys_framejump_exec(), actkeys_list_element_to_keylist(), actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), ANIM_animchannel_keyframes_loop(), ANIM_animdata_update(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), anim_channels_select_set(), ANIM_flush_setting_anim_channels(), ANIM_set_active_channel(), animchan_sync_fcurve(), animchan_sync_fcurve_scene(), animchan_sync_gplayer(), animchan_sync_group(), animchannels_clean_empty_exec(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), animdata_filter_animchan(), animdata_filter_remove_duplis(), box_select_anim_channels(), box_select_elem(), box_select_nla_strips(), cachefile_to_keylist(), click_select_channel_fcurve(), click_select_channel_gpdatablock(), click_select_channel_gplayer(), click_select_channel_group(), click_select_channel_maskdatablock(), click_select_channel_masklayer(), click_select_channel_nlacontrols(), click_select_channel_object(), click_select_channel_scene(), click_select_channel_shapekey(), columnselect_action_keys(), createTransActionData(), createTransNlaData(), delete_action_keys(), deselect_action_keys(), deselect_nla_strips(), draw_channel_strips(), duplicate_action_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), euler_filter_group_channels(), get_keyframe_extents(), get_nlastrip_extents(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_copy_exec(), graph_fmodifier_paste_exec(), graph_panel_context(), graph_refresh_fcurve_colors(), graphkeys_click_insert_exec(), graphkeys_deselectall_exec(), graphop_active_fcurve_poll(), graphop_editable_keyframes_poll(), graphop_visible_keyframes_poll(), insert_gpencil_key(), make_new_animlistelem(), markers_selectkeys_between(), mirror_action_keys(), mouse_action_keys(), mouse_nla_channels(), mouse_nla_strips(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_existing(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_strip_at_region_position(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), ob_keyframes_loop(), ob_to_keylist(), paste_animedit_keys(), rearrange_gpencil_channels(), region_select_elem(), rename_anim_channels(), scene_keyframes_loop(), scene_to_keylist(), setexpo_action_keys(), setexpo_graph_keys(), setkeytype_action_keys(), skip_fcurve_with_name(), snap_action_keys(), special_aftertrans_update__nla(), and summary_keyframes_loop().

◆ datatype

short bAnimListElem::datatype

◆ fcurve_owner_id

struct ID* bAnimListElem::fcurve_owner_id

For list element which corresponds to a f-curve, this is an ID which owns the f-curve.

For example, if the f-curve is coming from Action, this id will be set to action's ID. But if this is a f-curve which is a driver, then the owner is set to, for example, object.

NOTE: this is different from id above. The id above will be set to an object if the f-curve is coming from action associated with that object.

Definition at line 175 of file ED_anim_api.h.

Referenced by acf_fcurve_name_prop(), acf_group_name_prop(), acf_nlaaction_name_prop(), ANIM_channel_action_get(), draw_setting_widget(), graph_panel_key_properties(), graph_panel_modifiers(), graph_panel_properties(), make_new_animlistelem(), and rename_anim_channels().

◆ flag

int bAnimListElem::flag

copy of elem's flags for quick access

Definition at line 134 of file ED_anim_api.h.

Referenced by acf_group_color(), ANIM_channel_draw(), and make_new_animlistelem().

◆ id

struct ID* bAnimListElem::id
Note
id here is the "IdAdtTemplate"-style datablock (e.g. Object, Material, Texture, NodeTree) from which evaluation of the RNA-paths takes place. It's used to figure out how deep channels should be nested (e.g. for Textures/NodeTrees) in the tree, and allows property lookups (e.g. for sliders and for inserting keyframes) to work. If we had instead used bAction or something similar, none of this would be possible: although it's trivial to use an IdAdtTemplate type to find the source action a channel (e.g. F-Curve) comes from (i.e. in the AnimEditors, it must be the active action, as only that can be edited), it's impossible to go the other way (i.e. one action may be used in multiple places). ID block that channel is attached to

Definition at line 160 of file ED_anim_api.h.

Referenced by acf_fcurve_name(), acf_generic_group_offset(), acf_gpl_name_prop(), acf_masklay_name_prop(), acf_nlatrack_name_prop(), acf_object_name_prop(), acf_shapekey_name_prop(), achannel_nlatrack_solo_widget_cb(), achannel_setting_flush_widget_cb(), ANIM_channel_draw_widgets(), ANIM_flush_setting_anim_channels(), ANIM_list_elem_update(), animchan_sync_fcurve(), animchan_sync_fcurve_scene(), animchan_sync_group(), animchannels_clean_empty_exec(), animchannels_delete_exec(), animchannels_rearrange_exec(), animdata_filter_animchan(), box_select_graphkeys(), cachefile_to_keylist(), clean_fcurve(), click_select_channel_gplayer(), click_select_channel_group(), copy_animedit_keys(), createTransNlaData(), draw_fcurve(), draw_setting_widget(), ED_gpencil_anim_copybuf_paste(), euler_filter_group_channels(), get_nearest_fcurve_verts_list(), graph_driver_delete_invalid_exec(), graph_panel_driven_property(), graph_panel_drivers(), graph_panel_key_properties(), graph_panel_properties(), graphkeys_click_insert_exec(), insert_fcurve_key(), insert_gpencil_key(), insert_graph_keys(), make_new_animlistelem(), mirror_graph_keys(), mouse_action_keys(), mouse_nla_channels(), nla_fmodifier_add_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nlachannels_pushdown_exec(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_duplicate_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_remove_meta_exec(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_swap_exec(), ob_keyframes_loop(), ob_to_keylist(), rename_anim_channels(), scene_keyframes_loop(), scene_to_keylist(), select_pchan_for_action_group(), skip_fcurve_with_name(), snap_graph_keys(), special_aftertrans_update__actedit(), sum_selected_keyframes(), and tag_update_animation_element().

◆ index

int bAnimListElem::index

for un-named data, the index of the data in its collection

Definition at line 136 of file ED_anim_api.h.

Referenced by acf_shapekey_name(), and make_new_animlistelem().

◆ key_data

void* bAnimListElem::key_data

motion data - mostly F-Curves, but can be other types too

Definition at line 146 of file ED_anim_api.h.

Referenced by actkeys_framejump_exec(), actkeys_list_element_to_keylist(), actkeys_mselect_column(), actkeys_select_leftright(), actkeys_select_linked_exec(), ANIM_animchannel_keyframes_loop(), ANIM_animdata_keyframe_callback(), ANIM_animdata_update(), ANIM_channel_action_get(), ANIM_list_elem_update(), bake_graph_curves(), blend_to_neighbor_graph_keys(), box_select_graphkeys(), breakdown_graph_keys(), clean_fcurve(), columnselect_action_keys(), columnselect_graph_keys(), copy_animedit_keys(), createTransActionData(), decimate_fcurve(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), draw_channel_strips(), draw_fcurve(), duplicate_action_keys(), duplicate_graph_keys(), equalize_graph_keys(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), graph_draw_curves(), graphkeys_mselect_column(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), insert_fcurve_key(), insert_graph_keys(), make_new_animlistelem(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), paste_animedit_keys(), posttrans_action_clean(), remake_graph_transdata(), reset_bezts(), sample_action_keys(), sample_graph_keys(), select_anim_channel_keys(), select_moreless_action_keys(), select_moreless_graph_keys(), seteasing_graph_keys(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), snap_action_keys(), snap_graph_keys(), special_aftertrans_update__actedit(), special_aftertrans_update__graph(), store_original_bezt_arrays(), sum_selected_keyframes(), and unbake_graph_curves().

◆ next

struct bAnimListElem* bAnimListElem::next

Definition at line 127 of file ED_anim_api.h.

Referenced by actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), actkeys_framejump_exec(), actkeys_mselect_column(), actkeys_select_leftright(), actkeys_select_linked_exec(), ANIM_animdata_freelist(), ANIM_animdata_keyframe_callback(), ANIM_animdata_update(), anim_channels_select_set(), ANIM_editkeyframes_refresh(), anim_flush_channel_setting_down(), ANIM_flush_setting_anim_channels(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannels_clean_empty_exec(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_group_exec(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), animdata_filter_remove_duplis(), animdata_filter_remove_invalid(), bake_graph_curves(), blend_to_neighbor_graph_keys(), box_select_action(), box_select_anim_channels(), box_select_graphkeys(), box_select_nla_strips(), breakdown_graph_keys(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), columnselect_graph_keys(), copy_animedit_keys(), createTransActionData(), createTransNlaData(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), deselect_nla_strips(), draw_channel_names(), draw_channel_strips(), draw_nla_channel_list(), duplicate_action_keys(), duplicate_graph_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), get_nlastrip_extents(), graph_draw_channel_names(), graph_draw_curves(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_refresh_fcurve_colors(), graphkeys_mselect_column(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), graphop_editable_keyframes_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), insert_action_keys(), insert_graph_keys(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), nla_channels_get_selected_extents(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_enable_tweakmode_exec(), nlaedit_move_down_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright(), nlaedit_split_exec(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), ob_keyframes_loop(), paste_animedit_keys(), posttrans_action_clean(), rearrange_gpencil_channels(), region_select_action_keys(), remake_graph_transdata(), reset_bezts(), sample_action_keys(), sample_graph_keys(), scene_keyframes_loop(), select_anim_channel_keys(), select_moreless_action_keys(), select_moreless_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), setflag_anim_channels(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), snap_action_keys(), snap_graph_keys(), special_aftertrans_update__actedit(), special_aftertrans_update__graph(), special_aftertrans_update__nla(), store_original_bezt_arrays(), sum_selected_keyframes(), summary_keyframes_loop(), and unbake_graph_curves().

◆ owner

void* bAnimListElem::owner

for per-element F-Curves (e.g. NLA Control Curves), the element that this represents (e.g. NlaStrip)

Definition at line 180 of file ED_anim_api.h.

Referenced by acf_nla_curve_name(), ANIM_channel_draw_widgets(), animchannels_delete_exec(), insert_fcurve_key(), insert_graph_keys(), and skip_fcurve_with_name().

◆ prev

struct bAnimListElem * bAnimListElem::prev

◆ tag

char bAnimListElem::tag

tag the included data. Temporary always

Definition at line 141 of file ED_anim_api.h.

Referenced by createTransActionData().

◆ type

int bAnimListElem::type

(eAnim_ChannelType) one of the ANIMTYPE_* values

Definition at line 132 of file ED_anim_api.h.

Referenced by acf_generic_channel_color(), acf_generic_indentation_flexible(), acf_gpencil_channel_color(), achannel_setting_flush_widget_cb(), actkeys_list_element_to_keylist(), actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), ANIM_animdata_update(), ANIM_channel_action_get(), ANIM_channel_debug_print_info(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), ANIM_channel_get_typeinfo(), anim_channels_select_set(), ANIM_flush_setting_anim_channels(), ANIM_list_elem_update(), ANIM_nla_mapping_get(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannels_delete_exec(), animdata_filter_animchan(), animdata_filter_remove_invalid(), box_select_anim_channels(), box_select_elem(), box_select_nla_strips(), cachefile_to_keylist(), click_select_channel_fcurve(), columnselect_action_keys(), createTransActionData(), createTransNlaData(), delete_action_keys(), deselect_action_keys(), draw_channel_strips(), draw_setting_widget(), duplicate_action_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), get_nearest_fcurve_verts_list(), graph_panel_properties(), graphop_active_fcurve_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), insert_action_keys(), make_new_animlistelem(), markers_selectkeys_between(), mirror_action_keys(), mouse_action_keys(), mouse_anim_channels(), mouse_nla_channels(), mouse_nla_strips(), nla_panel_context(), nlachannels_pushdown_exec(), nlaedit_add_tracks_existing(), nlaedit_delete_tracks_exec(), nlaedit_strip_at_region_position(), ob_keyframes_loop(), ob_to_keylist(), rearrange_gpencil_channels(), region_select_elem(), rename_anim_channels(), scene_keyframes_loop(), scene_to_keylist(), setkeytype_action_keys(), skip_fcurve_with_name(), and snap_action_keys().

◆ update

char bAnimListElem::update

(eAnim_Update_Flags) tag the element for updating

Definition at line 139 of file ED_anim_api.h.

Referenced by actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), ANIM_animdata_freelist(), ANIM_animdata_keyframe_callback(), ANIM_animdata_update(), ANIM_editkeyframes_refresh(), animchannels_delete_exec(), animchannels_enable_exec(), bake_graph_curves(), blend_to_neighbor_graph_keys(), box_select_elem(), breakdown_graph_keys(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), duplicate_action_keys(), duplicate_graph_keys(), ED_nla_postop_refresh(), equalize_graph_keys(), euler_filter_group_channels(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graphkeys_click_insert_exec(), graphkeys_smooth_exec(), insert_fcurve_key(), insert_graph_keys(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), mouse_nla_channels(), nla_fmodifier_add_exec(), nla_fmodifier_paste_exec(), nlaedit_add_meta_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_apply_scale_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_remove_meta_exec(), nlaedit_snap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), paste_animedit_keys(), region_select_elem(), sample_action_keys(), sample_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), snap_action_keys(), snap_graph_keys(), and unbake_graph_curves().


The documentation for this struct was generated from the following file: