Tracking: Add utility function to get RNA path prefix for given track
Some code could be de-duplicated with the full path case, but that's for another rainy day i guess.
This commit is contained in:
parent
9fa021cdaf
commit
e1921ed871
|
@ -310,11 +310,21 @@ void BKE_tracking_get_rna_path_for_track(
|
||||||
const struct MovieTrackingTrack *track,
|
const struct MovieTrackingTrack *track,
|
||||||
char *rna_path,
|
char *rna_path,
|
||||||
size_t rna_path_len);
|
size_t rna_path_len);
|
||||||
|
void BKE_tracking_get_rna_path_prefix_for_track(
|
||||||
|
const struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingTrack *track,
|
||||||
|
char *rna_path,
|
||||||
|
size_t rna_path_len);
|
||||||
void BKE_tracking_get_rna_path_for_plane_track(
|
void BKE_tracking_get_rna_path_for_plane_track(
|
||||||
const struct MovieTracking *tracking,
|
const struct MovieTracking *tracking,
|
||||||
const struct MovieTrackingPlaneTrack *plane_track,
|
const struct MovieTrackingPlaneTrack *plane_track,
|
||||||
char *rna_path,
|
char *rna_path,
|
||||||
size_t rna_path_len);
|
size_t rna_path_len);
|
||||||
|
void BKE_tracking_get_rna_path_prefix_for_plane_track(
|
||||||
|
const struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingPlaneTrack *plane_track,
|
||||||
|
char *rna_path,
|
||||||
|
size_t rna_path_len);
|
||||||
|
|
||||||
/* **** Utility macros **** */
|
/* **** Utility macros **** */
|
||||||
|
|
||||||
|
|
|
@ -2992,6 +2992,26 @@ void BKE_tracking_get_rna_path_for_track(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BKE_tracking_get_rna_path_prefix_for_track(
|
||||||
|
const struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingTrack *track,
|
||||||
|
char *rna_path,
|
||||||
|
size_t rna_path_len)
|
||||||
|
{
|
||||||
|
MovieTrackingObject *object =
|
||||||
|
BKE_tracking_find_object_for_track(tracking, track);
|
||||||
|
if (object == NULL) {
|
||||||
|
BLI_snprintf(rna_path, rna_path_len, "tracking.tracks");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
char object_name_esc[MAX_NAME * 2];
|
||||||
|
BLI_strescape(object_name_esc, object->name, sizeof(object_name_esc));
|
||||||
|
BLI_snprintf(rna_path, rna_path_len,
|
||||||
|
"tracking.objects[\"%s\"]",
|
||||||
|
object_name_esc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void BKE_tracking_get_rna_path_for_plane_track(
|
void BKE_tracking_get_rna_path_for_plane_track(
|
||||||
const struct MovieTracking *tracking,
|
const struct MovieTracking *tracking,
|
||||||
const struct MovieTrackingPlaneTrack *plane_track,
|
const struct MovieTrackingPlaneTrack *plane_track,
|
||||||
|
@ -3016,3 +3036,23 @@ void BKE_tracking_get_rna_path_for_plane_track(
|
||||||
track_name_esc);
|
track_name_esc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BKE_tracking_get_rna_path_prefix_for_plane_track(
|
||||||
|
const struct MovieTracking *tracking,
|
||||||
|
const struct MovieTrackingPlaneTrack *plane_track,
|
||||||
|
char *rna_path,
|
||||||
|
size_t rna_path_len)
|
||||||
|
{
|
||||||
|
MovieTrackingObject *object =
|
||||||
|
BKE_tracking_find_object_for_plane_track(tracking, plane_track);
|
||||||
|
if (object == NULL) {
|
||||||
|
BLI_snprintf(rna_path, rna_path_len, "tracking.plane_tracks");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
char object_name_esc[MAX_NAME * 2];
|
||||||
|
BLI_strescape(object_name_esc, object->name, sizeof(object_name_esc));
|
||||||
|
BLI_snprintf(rna_path, rna_path_len,
|
||||||
|
"tracking.objects[\"%s\"].plane_tracks",
|
||||||
|
object_name_esc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue