diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-12-15 14:51:17 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-12-15 14:51:17 +0300 |
commit | 4895bd6aceec57a08b471b6be9a0cabef30f7aa7 (patch) | |
tree | d8aa1088eb7bd732d1f4df24e20e3e317774ce99 /intern/libmv | |
parent | e50442418adf4377a86a102f213e836c6d155445 (diff) |
Libmv: Add C-API function to set all markers within AutoTrack structure
Diffstat (limited to 'intern/libmv')
-rw-r--r-- | intern/libmv/intern/autotrack.cc | 15 | ||||
-rw-r--r-- | intern/libmv/intern/autotrack.h | 4 | ||||
-rw-r--r-- | intern/libmv/intern/stub.cc | 6 |
3 files changed, 25 insertions, 0 deletions
diff --git a/intern/libmv/intern/autotrack.cc b/intern/libmv/intern/autotrack.cc index 3b7c9c5a010..980504ed163 100644 --- a/intern/libmv/intern/autotrack.cc +++ b/intern/libmv/intern/autotrack.cc @@ -82,6 +82,21 @@ void libmv_autoTrackAddMarker(libmv_AutoTrack* libmv_autotrack, ((AutoTrack*) libmv_autotrack)->AddMarker(marker); } +void libmv_autoTrackSetMarkers(libmv_AutoTrack* libmv_autotrack, + const libmv_Marker* libmv_marker, + size_t num_markers) { + if (num_markers == 0) { + // Early output. + return; + } + libmv::vector<Marker> markers; + markers.resize(num_markers); + for (size_t i = 0; i < num_markers; ++i) { + libmv_apiMarkerToMarker(libmv_marker[i], &markers[i]); + } + ((AutoTrack*) libmv_autotrack)->SetMarkers(&markers); +} + int libmv_autoTrackGetMarker(libmv_AutoTrack* libmv_autotrack, int clip, int frame, diff --git a/intern/libmv/intern/autotrack.h b/intern/libmv/intern/autotrack.h index 2a4a8f3c97f..9a073ff249b 100644 --- a/intern/libmv/intern/autotrack.h +++ b/intern/libmv/intern/autotrack.h @@ -58,6 +58,10 @@ int libmv_autoTrackMarker(libmv_AutoTrack* libmv_autotrack, void libmv_autoTrackAddMarker(libmv_AutoTrack* libmv_autotrack, const libmv_Marker* libmv_marker); +void libmv_autoTrackSetMarkers(libmv_AutoTrack* libmv_autotrack, + const libmv_Marker* libmv_marker, + size_t num_markers); + int libmv_autoTrackGetMarker(libmv_AutoTrack* libmv_autotrack, int clip, int frame, diff --git a/intern/libmv/intern/stub.cc b/intern/libmv/intern/stub.cc index 8603cc03153..fa2509ffcf6 100644 --- a/intern/libmv/intern/stub.cc +++ b/intern/libmv/intern/stub.cc @@ -361,6 +361,12 @@ void libmv_autoTrackAddMarker(libmv_AutoTrack* /*libmv_autotrack*/, { } +void libmv_autoTrackSetMarkers(libmv_AutoTrack* /*libmv_autotrack*/, + const libmv_Marker* /*libmv_marker-*/, + size_t /*num_markers*/) +{ +} + int libmv_autoTrackGetMarker(libmv_AutoTrack* /*libmv_autotrack*/, int /*clip*/, int /*frame*/, |