From dc9d3b187100a5314fd63fe84eda7f11fb72a174 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Charybdis=29?=
 <stephane.adjemian@univ-lemans.fr>
Date: Fri, 21 Oct 2016 17:02:33 +0200
Subject: [PATCH] Added instantiation from a Fame database.

---
 .gitmodules                      |  3 +++
 src/@dseries/dseries.m           |  7 +++++++
 src/initialize_dseries_toolbox.m | 10 ++++++++++
 src/modules/matlab-fame-io       |  1 +
 4 files changed, 21 insertions(+)
 create mode 100644 .gitmodules
 create mode 160000 src/modules/matlab-fame-io

diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..45261cf
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "src/modules/matlab-fame-io"]
+	path = src/modules/matlab-fame-io
+	url = git@gitlab.com:McModelTeam/matlab-fame-io.git
diff --git a/src/@dseries/dseries.m b/src/@dseries/dseries.m
index ac2367c..608e8d7 100644
--- a/src/@dseries/dseries.m
+++ b/src/@dseries/dseries.m
@@ -92,6 +92,13 @@ classdef dseries<handle % --*-- Unitary tests --*--
                         end
                         [freq,init,data,varlist] = load_xls_file_data(varargin{1}, sheet, range);
                         tex = [];
+                    elseif check_file_extension(varargin{1},'db')
+                        % Fame database (need to have matlab-fame-io submodule and TimeIQ installed)
+                        FameInfo = fame.open.connector();
+                        db = fame.open.database(FameInfo, varargin{1});
+                        [data, init, varlist] = fame.getall.timeseries(db);
+                        fame.close.database(fid);
+                        fame.close.connector(FameInfo);
                     else
                         error('dseries:WrongInputArguments', 'I''m not able to load data from %s!', varargin{1});
                     end
diff --git a/src/initialize_dseries_toolbox.m b/src/initialize_dseries_toolbox.m
index 0d8ff39..94b384e 100644
--- a/src/initialize_dseries_toolbox.m
+++ b/src/initialize_dseries_toolbox.m
@@ -45,3 +45,13 @@ end
 if isoctave && ~exist('user_has_octave_forge_package','file')
     addpath([dseries_src_root '/utilities/missing/user_has_octave_forge_package'])
 end
+
+% Add matlab-fame-io (fame connector toolbox) if available.
+if exist([dseries_src_root '/modules/matlab-fame-io'])
+    addpath([dseries_src_root '/modules/matlab-fame-io'])
+    if exist([dseries_src_root '/modules/matlab-fame-io/locals.m'])
+        initialize_fame_toolbox();
+    else
+        warning('matlab-fame-io submodule is not properly configured!')
+    end
+end
\ No newline at end of file
diff --git a/src/modules/matlab-fame-io b/src/modules/matlab-fame-io
new file mode 160000
index 0000000..581f54b
--- /dev/null
+++ b/src/modules/matlab-fame-io
@@ -0,0 +1 @@
+Subproject commit 581f54bf3edce3e57d2c05428375bd3541774f2e
-- 
GitLab