[Bf-blender-cvs] [4895bd6acee] master: Libmv: Add C-API function to set all markers within AutoTrack structure

Sergey Sharybin noreply at git.blender.org
Fri Dec 15 12:52:56 CET 2017


Commit: 4895bd6aceec57a08b471b6be9a0cabef30f7aa7
Author: Sergey Sharybin
Date:   Fri Dec 15 12:51:17 2017 +0100
Branches: master
https://developer.blender.org/rB4895bd6aceec57a08b471b6be9a0cabef30f7aa7

Libmv: Add C-API function to set all markers within AutoTrack structure

===================================================================

M	intern/libmv/intern/autotrack.cc
M	intern/libmv/intern/autotrack.h
M	intern/libmv/intern/stub.cc

===================================================================

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*/,



More information about the Bf-blender-cvs mailing list