Commit 58b7fad0 authored by Jay Dubb's avatar Jay Dubb
Browse files

v1.24.3

-- Add time column to exported data
-- Add deleting of exported data files in TreeNodeClass method Reset()
-- Change vague argument name 'option' in DataTree classes to the more descriptive 'dataStorageScheme' to control load/save behavior
-- Change AppSettings config option 'file' to 'files' for 'Data Storage Scheme' parameter
-- Add error status return value to TreeNodeClass method LoadSubBranch()
parent b1a56af6
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -15,13 +15,13 @@ SNIRF
On

% Last Checked For Update
18-Aug-2020 16:47:29
24-Aug-2020 19:29:36

% Check For Updates
on

% Data Storage Scheme
file
files

% Auto Save Acquisition Files
No
+2 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@ classdef FileLoadSaveClass < matlab.mixin.Copyable
        fileformat;
        supportedFomats;
        err;
        options;        
        dataStorageScheme;        
    end
    
    
@@ -20,7 +20,7 @@ classdef FileLoadSaveClass < matlab.mixin.Copyable
                'hdf5', {{'hdf','.hdf','hdf5','.hdf5','hf5','.hf5','h5','.h5'}} ...
                );
            obj.err = 0;
            obj.options = 'memory';            
            obj.dataStorageScheme = 'memory';
        end
        
        
+5 −8
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ classdef NirsClass < AcqDataClass & FileLoadSaveClass
            % Syntax:
            %   obj = NirsClass()
            %   obj = NirsClass(filename);
            %   obj = NirsClass(filename, options);
            %   obj = NirsClass(filename, dataStorageScheme);
            %   
            %
            % Example 1:
@@ -58,7 +58,7 @@ classdef NirsClass < AcqDataClass & FileLoadSaveClass
                return;
            end
            if nargin==2
                obj.options = varargin{2};
                obj.dataStorageScheme = varargin{2};
            end
            
            if isa(varargin{1}, 'NirsClass')
@@ -73,7 +73,7 @@ classdef NirsClass < AcqDataClass & FileLoadSaveClass
            obj.filename = filename;
            
            % Conditional loading of snirf file data
            if strcmpi(obj.options, 'memory')
            if strcmpi(obj.dataStorageScheme, 'memory')
                obj.Load(filename);
            end
        end
@@ -255,7 +255,7 @@ classdef NirsClass < AcqDataClass & FileLoadSaveClass

            % If we're working off the snirf file instead of loading everything into memory
            % then we have to load stim here from file before accessing it.
            if strcmpi(obj.options, 'file')
            if strcmpi(obj.dataStorageScheme, 'files')
                obj.LoadStims(obj.filename);
            end
            
@@ -349,11 +349,8 @@ classdef NirsClass < AcqDataClass & FileLoadSaveClass
        end
        
        % ---------------------------------------------------------
        function val = GetDataTimeSeries(obj, options, iBlk)
        function val = GetDataTimeSeries(obj, ~, iBlk)
            val = [];
            if ~exist('options','var')
                options = '';
            end
            if ~exist('iBlk','var') || isempty(iBlk)
                iBlk=1;
            end
+14 −15
Original line number Diff line number Diff line
@@ -27,8 +27,8 @@ classdef SnirfClass < AcqDataClass & FileLoadSaveClass
            %   obj = SnirfClass()
            %   obj = SnirfClass(filename);
            %   obj = SnirfClass(filename, nirsdatanum);
            %   obj = SnirfClass(filename, nirsdatanum, options);
            %   obj = SnirfClass(filename, options);
            %   obj = SnirfClass(filename, nirsdatanum, dataStorageScheme);
            %   obj = SnirfClass(filename, dataStorageScheme);
            %   obj = SnirfClass(dotnirs);
            %   obj = SnirfClass(dotnirs, numdatabllocks);
            %   obj = SnirfClass(data, stim);
@@ -82,8 +82,8 @@ classdef SnirfClass < AcqDataClass & FileLoadSaveClass
            %
            % obj = SnirfClass(filename);
            % obj = SnirfClass(filename, nirsdatanum);
            % obj = SnirfClass(filename, nirsdatanum, options);
            % obj = SnirfClass(filename, options);
            % obj = SnirfClass(filename, nirsdatanum, dataStorageScheme);
            % obj = SnirfClass(filename, dataStorageScheme);
            % obj = SnirfClass(dotnirs);
            % obj = SnirfClass(dotnirs, numdatabllocks);
            % obj = SnirfClass(data, stim);
@@ -100,8 +100,8 @@ classdef SnirfClass < AcqDataClass & FileLoadSaveClass
                
                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                % obj = SnirfClass(filename, nirsdatanum);
                % obj = SnirfClass(filename, nirsdatanum, options);
                % obj = SnirfClass(filename, options);
                % obj = SnirfClass(filename, nirsdatanum, dataStorageScheme);
                % obj = SnirfClass(filename, dataStorageScheme);
                %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                if ischar(varargin{1})
                    obj.filename = varargin{1};
@@ -110,20 +110,20 @@ classdef SnirfClass < AcqDataClass & FileLoadSaveClass
                        if isnumeric(varargin{2})
                            obj.nirsdatanum = varargin{2};
                            
                            % obj = SnirfClass(filename, nirsdatanum, options);
                            % obj = SnirfClass(filename, nirsdatanum, dataStorageScheme);
                            if nargin>2
                                obj.options = varargin{3};
                                obj.dataStorageScheme = varargin{3};
                            end
                            
                            % obj = SnirfClass(filename, options);
                            % obj = SnirfClass(filename, dataStorageScheme);
                        elseif ischar(varargin{2})
                            obj.options = varargin{2};
                            obj.dataStorageScheme = varargin{2};
                            
                        end
                    end
                    
                    % Conditional loading of snirf file data
                    if strcmpi(obj.options, 'memory')
                    % Load Snirf file here ONLY if data storage scheme is 'memory'
                    if strcmpi(obj.dataStorageScheme, 'memory')
                        obj.Load(varargin{1});
                    end
                    
@@ -274,9 +274,8 @@ classdef SnirfClass < AcqDataClass & FileLoadSaveClass
                options = '';
            end
            
            % If we're working off the snirf file instead of loading everything into memory
            % then we have to load stim here from file before accessing it.
            if strcmpi(obj.options, 'file')
            % Load mutable data from Snirf file here ONLY if data storage scheme is 'files'
            if strcmpi(obj.dataStorageScheme, 'files')
                obj.LoadStim(obj.filename);
            end
            
+4 −4
Original line number Diff line number Diff line
@@ -216,16 +216,16 @@ classdef DataTreeClass < handle
                options = '';
            end
            
            if optionExists(options, 'file')
                obj.dataStorageScheme = 'file';
            if optionExists(options, 'files')
                obj.dataStorageScheme = 'files';
            end
            
            % Estimate memory requirement based on number of acquired files and their
            % average size
            % obj.logger.Write(sprintf('Memory required for data tree: %0.1f MB\n', obj.MemoryRequired() / 1e6));            
            if strcmp(obj.dataStorageScheme, 'file') || strcmp(obj.dataStorageScheme, 'disk')
            if strcmpi(obj.dataStorageScheme, 'files') || strcmpi(obj.dataStorageScheme, 'disk')
                onoff = true;
            elseif strcmp(obj.dataStorageScheme, 'memory') || strcmpi(obj.dataStorageScheme, 'ram')
            elseif strcmpi(obj.dataStorageScheme, 'memory') || strcmpi(obj.dataStorageScheme, 'ram')
                onoff = false;
            else
                onoff = false;
Loading