changeset 18:4d8068cb5c65

Added function to merge SolutionFiles.
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 22 Sep 2015 14:52:13 +0200
parents 30ae48efc7ae
children 1644d000c304
files SolutionFile.m
diffstat 1 files changed, 21 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/SolutionFile.m	Tue Sep 22 14:27:21 2015 +0200
+++ b/SolutionFile.m	Tue Sep 22 14:52:13 2015 +0200
@@ -152,4 +152,24 @@
         end
     end
 
-end
\ No newline at end of file
+    methods(Static)
+        function merge(fn1, fn2, fnNew)
+            sf1 = SolutionFile(fn1);
+            sf2 = SolutionFile(fn2);
+
+            sfNew = SolutionFile(fnNew);
+
+            sfNew.keys = sf1.keys;
+            sfNew.matfile.keys = sf1.keys;
+            sfNew.matfile.entries = sf1.matfile.entries;
+
+            for i = 1:length(sf2.keys)
+                if sfNew.isKey(sf2.keys{i})
+                    warning('Key ''%s'' exists in both files!',struct2string(sf2.keys{i}));
+                end
+                sfNew.store(sf2.keys{i},sf2.getEntryByIndex(i));
+            end
+        end
+    end
+
+end