Blender V5.0
blender::animrig::versioning Namespace Reference

Namespaces

namespace  tests

Functions

bool action_is_layered (const bAction &dna_action)
void convert_legacy_animato_actions (Main &bmain)
void convert_legacy_animato_action (bAction &dna_action)
void tag_action_users_for_slotted_actions_conversion (Main &bmain)
void tag_action_user_for_slotted_actions_conversion (ID &animated_id)
void convert_legacy_action_assignments (Main &bmain, ReportList *reports)

Function Documentation

◆ action_is_layered()

bool blender::animrig::versioning::action_is_layered ( const bAction & dna_action)

Return whether an action is layered (as opposed to legacy).

This will return false for both Animato and pre-Animato actions. It is used during file read and versioning to determine how forward-compatible and legacy data should be handled.

NOTE: this is semi-duplicated from Action::is_action_layered(), but with tweaks to also recognize ultra-legacy (pre-Animato) data. Because this needs access to deprecated DNA fields, which is ok here in the versioning code, the other "is this legacy or layered?" functions do not check for pre-Animato data.

See also
Action::is_action_layered()

Definition at line 38 of file versioning.cc.

References BLI_listbase_is_empty(), bAction::curves, bAction::groups, bAction::layer_array_num, and bAction::slot_array_num.

Referenced by blender::bke::action_blend_read_data(), convert_legacy_animato_actions(), and blender::animrig::versioning::tests::TEST().

◆ convert_legacy_action_assignments()

◆ convert_legacy_animato_action()

◆ convert_legacy_animato_actions()

void blender::animrig::versioning::convert_legacy_animato_actions ( Main & bmain)

Convert all legacy (Animato) Actions to slotted Actions, in-place.

This function does not work on pre-Animato actions.

Definition at line 57 of file versioning.cc.

References action_is_layered(), Main::actions, convert_legacy_animato_action(), blender::animrig::Action::is_empty(), and LISTBASE_FOREACH.

Referenced by do_versions_after_linking_440().

◆ tag_action_user_for_slotted_actions_conversion()

void blender::animrig::versioning::tag_action_user_for_slotted_actions_conversion ( ID & animated_id)

Tag this ID so it'll get its legacy Action assignment converted.

See also
convert_legacy_action_assignments

Definition at line 140 of file versioning.cc.

References ID::runtime.

Referenced by tag_action_users_for_slotted_actions_conversion().

◆ tag_action_users_for_slotted_actions_conversion()

void blender::animrig::versioning::tag_action_users_for_slotted_actions_conversion ( Main & bmain)