144 ID *owner_id = ale->
id;
154 if (
GS(owner_id->name) ==
ID_OB) {
179 if (*active_agrp ==
NULL) {
206 ID *owner_id = ale->
id;
212 if (!strstr(fcu->
rna_path,
"sequences_all")) {
220 if (seq_name ==
NULL) {
244 ID *owner_id = ale->
id;
253 switch (
GS(owner_id->name)) {
311 for (ale = anim_data.
first; ale; ale = ale->
next) {
334 for (ale = anim_data->
first; ale; ale = ale->
next) {
410 printf(
"%s: Unhandled animchannel updates (%d) for type=%d (%p)\n",
429 for (ale = anim_data->
first; ale; ale = ale_next) {
430 ale_next = ale->
next;
Blender kernel action and pose functionality.
struct bPoseChannel * BKE_pose_channel_find_name(const struct bPose *pose, const char *name)
void action_group_colors_sync(struct bActionGroup *grp, const struct bActionGroup *ref_grp)
struct AnimData * BKE_animdata_from_id(struct ID *id)
void sort_time_fcurve(struct FCurve *fcu)
void calchandles_fcurve(struct FCurve *fcu)
void BKE_gpencil_layer_frames_sort(struct bGPDlayer *gpl, bool *r_has_duplicate_frames)
BLI_INLINE void BLI_listbase_clear(struct ListBase *lb)
void void BLI_freelistN(struct ListBase *listbase) ATTR_NONNULL(1)
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
char * BLI_str_quoted_substrN(const char *__restrict str, const char *__restrict prefix) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL() ATTR_MALLOC
void DEG_id_tag_update_ex(struct Main *bmain, struct ID *id, int flag)
void DEG_id_tag_update(struct ID *id, int flag)
Object is a sort of wrapper for general info.
@ ANIMFILTER_DATA_VISIBLE
@ ANIMFILTER_LIST_CHANNELS
Read Guarded memory(de)allocation.
static void animchan_sync_fcurve_scene(bAnimListElem *ale)
static void animchan_sync_fcurve(bAnimListElem *ale)
void ANIM_animdata_freelist(ListBase *anim_data)
static void animchan_sync_group(bAnimContext *ac, bAnimListElem *ale, bActionGroup **active_agrp)
void ANIM_sync_animchannels_to_data(const bContext *C)
void ANIM_id_update(Main *bmain, ID *id)
void ANIM_list_elem_update(Main *bmain, Scene *scene, bAnimListElem *ale)
static void animchan_sync_gplayer(bAnimListElem *ale)
void ANIM_animdata_update(bAnimContext *ac, ListBase *anim_data)
bool ANIM_animdata_get_context(const bContext *C, bAnimContext *ac)
size_t ANIM_animdata_filter(bAnimContext *ac, ListBase *anim_data, eAnimFilter_Flags filter_mode, void *data, eAnimCont_Types datatype)
DO_INLINE void filter(lfVector *V, fmatrix3x3 *S)
void(* MEM_freeN)(void *vmemh)
void RNA_id_pointer_create(ID *id, PointerRNA *r_ptr)
void RNA_property_update_main(Main *bmain, Scene *scene, PointerRNA *ptr, PropertyRNA *prop)
bool RNA_path_resolve_property(PointerRNA *ptr, const char *path, PointerRNA *r_ptr, PropertyRNA **r_prop)
Editing * SEQ_editing_get(Scene *scene, bool alloc)
struct bAnimListElem * next
Sequence * SEQ_get_sequence_by_name(ListBase *seqbase, const char *name, bool recursive)