From db1683642f4c31c5ef8ad06e531c14ccb74346e4 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/initialize_dseries_toolbox.m | 10 ++++++++++ src/modules/matlab-fame-io | 1 + src/read/load_data.m | 7 +++++++ 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/initialize_dseries_toolbox.m b/src/initialize_dseries_toolbox.m index 9211488..41aca89 100644 --- a/src/initialize_dseries_toolbox.m +++ b/src/initialize_dseries_toolbox.m @@ -62,6 +62,16 @@ cd([dseries_src_root '/../externals/x13']) installx13(); cd(opath); +% Add matlab-fame-io (fame connector toolbox) if available. +if exist([dseries_src_root '/modules/matlab-fame-io']) + p{end+1} = '/modules/matlab-fame-io'; + if exist([dseries_src_root '/modules/matlab-fame-io/locals.m']) + initialize_fame_toolbox(); + else + disp('matlab-fame-io submodule is not properly configured!') + end +end + % Set path P = cellfun(@(c)[dseries_src_root(1:end-1) c], p, 'uni', false); addpath(P{:}); \ 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 diff --git a/src/read/load_data.m b/src/read/load_data.m index 233211d..936df44 100644 --- a/src/read/load_data.m +++ b/src/read/load_data.m @@ -46,6 +46,13 @@ elseif check_file_extension(filename,'xls') || check_file_extension(filename,'xl end [freq, init, data, varlist] = load_xls_file_data(filename, sheet, range); tex = []; +elseif check_file_extension(filename,'db') + % Fame database (need to have matlab-fame-io submodule and TimeIQ installed) + FameInfo = fame.open.connector(); + db = fame.open.database(FameInfo, filename); + [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!', filename); end -- GitLab