|
Blender V4.3
|
#include <DNA_action_types.h>
Inherited by blender::animrig::ChannelGroup.
Public Attributes | |
| struct bActionGroup * | next |
| struct bActionGroup * | prev |
| ListBase | channels |
| int | fcurve_range_start |
| int | fcurve_range_length |
| struct ActionChannelBag * | channel_bag |
| int | flag |
| int | customCol |
| char | name [64] |
| ThemeWireColor | cs |
Action-Channel Group (agrp)
These are stored as a list per-Action, and are only used to group that Action's channels in an Animation Editor.
Even though all FCurves live in a big list per Action, each group they are in also holds references to the achans within that list which belong to it. Care must be taken to ensure that action-groups never end up being the sole 'owner' of a channel.
This is also exploited for bone-groups. Bone-Groups are stored per bPose, and are used primarily to color bones in the 3d-view. There are other benefits too, but those are mostly related to Action-Groups.
Note that these two uses each have their own RNA 'ActionGroup' and 'BoneGroup'.
Definition at line 676 of file DNA_action_types.h.
| struct ActionChannelBag* bActionGroup::channel_bag |
For layered actions: the ChannelBag this group belongs to.
This is needed in the keyframe drawing code, etc., to give direct access to the fcurves in this group.
Definition at line 708 of file DNA_action_types.h.
Referenced by action_group_to_keylist(), agrp_keyframes_loop(), animchannels_delete_exec(), animchannels_ungroup_exec(), animfilter_act_group(), blender::animrig::ChannelBag::channel_group_create(), blender::animrig::ChannelBag::ChannelBag(), convert_action_in_place(), blender::animrig::ChannelGroup::fcurves(), blender::animrig::ChannelGroup::fcurves(), blender::animrig::ChannelGroup::is_legacy(), and rearrange_layered_action_fcurves().
| ListBase bActionGroup::channels |
List of channels in this group for legacy actions.
NOTE: this must not be touched by standard listbase functions which would clear links to other channels.
Definition at line 685 of file DNA_action_types.h.
Referenced by blender::bke::action_copy_data(), action_group_to_keylist(), action_groups_add_channel(), action_groups_remove_channel(), agrp_keyframes_loop(), animchannels_delete_exec(), animchannels_group_channels(), animchannels_ungroup_exec(), blender::animrig::animdata_fcurve_delete(), animfilter_act_group(), animsys_evaluate_action_group(), animviz_calc_motionpaths(), click_select_channel_group(), do_version_bbone_scale_fcurve_fix(), split_groups_action_temp(), and blender::bke::tests::TEST().
| ThemeWireColor bActionGroup::cs |
Color set to use when customCol == -1.
Definition at line 721 of file DNA_action_types.h.
Referenced by action_group_colors_set(), action_group_colors_sync(), get_actiongroup_color(), and version_bonegroup_migrate_color().
| int bActionGroup::customCol |
Index of custom color set to use when used for bones (0=default - used for all old files, -1=custom set).
Definition at line 716 of file DNA_action_types.h.
Referenced by action_group_colors_set(), action_group_colors_sync(), get_actiongroup_color(), and version_bonegroup_migrate_color().
| int bActionGroup::fcurve_range_length |
Definition at line 700 of file DNA_action_types.h.
Referenced by action_group_to_keylist(), agrp_keyframes_loop(), animchannels_delete_exec(), animfilter_action_slot(), blender::animrig::ChannelBag::channel_group_create(), blender::animrig::ChannelBag::channel_group_move(), blender::animrig::ChannelBag::channel_group_remove(), blender::animrig::ChannelBag::fcurve_assign_to_channel_group(), blender::animrig::ChannelBag::fcurve_ungroup(), blender::animrig::ChannelGroup::fcurves(), blender::animrig::ChannelGroup::fcurves(), rearrange_layered_action_fcurves(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and blender::animrig::tests::TEST_F().
| int bActionGroup::fcurve_range_start |
Span of channels in this group for layered actions.
This specifies that span as a range of items in a ChannelBag's fcurve array.
Note that empty groups (fcurve_range_length == 0) are allowed, and they still have a position in the fcurves array, as specified by fcurve_range_start. You can imagine these cases as a zero-width range that sits at the border between the element at fcurve_range_start and the element just before it.
Definition at line 699 of file DNA_action_types.h.
Referenced by action_group_to_keylist(), agrp_keyframes_loop(), animchannels_delete_exec(), animfilter_action_slot(), blender::animrig::ChannelBag::channel_group_create(), blender::animrig::ChannelBag::channel_group_move(), blender::animrig::ChannelBag::channel_group_remove(), blender::animrig::ChannelBag::fcurve_assign_to_channel_group(), blender::animrig::ChannelGroup::fcurves(), blender::animrig::ChannelGroup::fcurves(), rearrange_layered_action_fcurves(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and blender::animrig::tests::TEST_F().
| int bActionGroup::flag |
Settings for this action-group.
Definition at line 711 of file DNA_action_types.h.
Referenced by acf_group_setting_ptr(), action_groups_add_new(), action_groups_clear_tempflags(), AnimationImporter::add_bone_fcurve(), anim_channels_select_set(), ANIM_is_active_channel(), ANIM_set_active_channel(), animchan_sync_group(), animfilter_act_group(), animsys_evaluate_action_group(), BKE_fcurve_is_protected(), box_select_anim_channels(), blender::animrig::ChannelBag::channel_group_create(), click_select_channel_group(), draw_fcurve(), draw_fcurve_handles_check(), ED_add_action_group_channel(), ED_add_fcurve_channel(), fcurve_add_to_list(), is_fcurve_evaluatable(), make_new_animlistelem(), mouse_action_keys(), rearrange_animchannel_add_to_islands(), select_pchan_for_action_group(), set_active_action_group(), skip_fcurve_selected_data(), and split_groups_action_temp().
| char bActionGroup::name[64] |
Name of the group.
Definition at line 718 of file DNA_action_types.h.
Referenced by acf_group_name(), blender::animrig::action_fcurve_move(), action_groups_add_new(), AnimationImporter::add_bone_fcurve(), ANIM_OT_channels_group(), animchan_sync_group(), blender::animrig::autokeyframe_property(), BKE_pose_add_group(), blender::animrig::ChannelBag::channel_group_create(), click_select_channel_group(), fcurve_add_to_list(), fcurves_path_rename_fix(), insert_fcurve_key(), insert_graph_keys(), select_pchan_for_action_group(), split_groups_action_temp(), blender::bke::tests::TEST(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and blender::animrig::tests::TEST_F().
| struct bActionGroup* bActionGroup::next |
Definition at line 677 of file DNA_action_types.h.
Referenced by blender::bke::action_copy_data(), and blender::bke::tests::TEST().
| struct bActionGroup * bActionGroup::prev |
Definition at line 677 of file DNA_action_types.h.
Referenced by action_groups_add_channel(), and blender::bke::tests::TEST().