line source
+ − % PARAMVALUE object class constructor.
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %
+ − % DESCRIPTION: Parameter value object class constructor.
+ − % Create a parameter value object.
+ − %
+ − % SUPERCLASSES: ltpda_nuo < ltpda_obj
+ − %
+ − % CONSTRUCTORS:
+ − %
+ − % p = paramValue(); - creates an empty parameter value
+ − % p = paramVAlue(pl) - creates a parameter value from a
+ − % parameter list with the keys:
+ − % 'valIndex', 'options' and 'selection'
+ − % p = paramValue(valIdx, ...
+ − % options) - creates a parameter value from
+ − % value index and the options
+ − % p = paramValue(valIdx, ...
+ − % options, ...
+ − % selectionMode) - creates a parameter value from
+ − % value index, options and
+ − % selection mode.
+ − %
+ − % VERSION: $Id: paramValue.m,v 1.29 2011/04/07 11:01:28 ingo Exp $
+ − %
+ − % SEE ALSO: ltpda_obj, ltpda_nuo, param, plist
+ − %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − classdef (Sealed = true, Hidden = true) paramValue < ltpda_nuo
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Property definition %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − %---------- Public (read/write) Properties ----------
+ − properties
+ − end
+ −
+ − %---------- Protected read-only Properties ----------
+ − properties (SetAccess = protected)
+ − valIndex = -1; % Index to the value inside 'options'
+ − options = {}; % Possible values for 'val' if they exist
+ − selection = 0; % Selection mode for the 'options'
+ − property = struct([]); % A list which contains all additional infromation about the value like: min, max, ...
+ − end
+ −
+ − %---------- Protected Properties ----------
+ − properties (SetAccess = protected)
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Check property setting %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods
+ − function set.valIndex(obj, val)
+ − if isnumeric(val)
+ − obj.valIndex = val;
+ − else
+ − error('### The value for the property ''valIndex'' must be a index (Interger) to the options. The value is from the class %s', class(val));
+ − end
+ − end
+ − function set.options(obj, val)
+ − if iscell(val)
+ − obj.options = val;
+ − else
+ − error('### The value for the property ''options'' must be a cell with all possible values. The value is from the class %s', class(val));
+ − end
+ − end
+ − function set.selection(obj, val)
+ − if isnumeric(val)
+ − obj.selection = val;
+ − else
+ − error('### The value for the property ''selection'' must be a Interger. The value is from the class %s', class(val));
+ − end
+ − end
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Constructor %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods
+ − function obj = paramValue(varargin)
+ −
+ − switch nargin
+ − case 0
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%% no input %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − % Do nothing
+ −
+ − case 1
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%% one input %%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − if isa(varargin{1}, 'paramValue')
+ − %%%%%%%%%% obj = paramValue(paramValue) %%%%%%%%%%
+ − obj = copy(varargin{1}, 1);
+ −
+ − elseif isa(varargin{1}, 'plist')
+ − %%%%%%%%%% obj = paramValue(plist) %%%%%%%%%%
+ −
+ − if nparams(varargin{1}) == 0
+ − %%%%%%%%%% obj = paramValue(plist()) %%%%%%%%%%
+ − %%% is the plist is empty then return an empty paramValue object
+ −
+ − else
+ − %%%%%%%%%% pl = plist('valIndex', 1, 'OPTIONS', {'a', 'b'}, 'SELECTION', 0) %%%%%%%%%%
+ − %%%%%%%%%% obj = paramValue(pl) %%%%%%%%%%
+ − pl = varargin{1};
+ − pl_valIndex = pl.find('valIndex');
+ − pl_options = pl.find('options');
+ − pl_selection = pl.find('selection');
+ −
+ − % Set the value index to 1 if there is only one option.
+ − if isempty(pl_valIndex) && numel(pl_options) == 1
+ − pl_valIndex = 1;
+ − end
+ −
+ − if isempty(pl_valIndex)
+ − error('### building a parameter from a plist requires one value index in the plist is called ''valIndex''');
+ − end
+ − if isempty(pl_options)
+ − error('### building a parameter from a plist requires at least one option in the plist is calles ''options''');
+ − end
+ −
+ − obj.valIndex = pl_valIndex;
+ − obj.options = pl_options;
+ − if ~isempty(pl_selection)
+ − obj.selection = pl_selection;
+ − end
+ − end
+ −
+ − elseif isstruct(varargin{1})
+ − %%%%%%%%%% obj = paramValue(struct) %%%%%%%%%%
+ − obj = fromStruct(obj, varargin{1});
+ −
+ − else
+ − error('### Unknown single input paramValue constructor');
+ − end
+ −
+ − case 2
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%% two inputs %%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − %%%%%%%%%% obj = paramValue(valIndex, {options}) %%%%%%%%%%
+ − obj.valIndex = varargin{1};
+ − obj.options = varargin{2};
+ −
+ − case 3;
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%% three inputs %%%%%%%%%%%%%%%%%%%%%%%%%
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − %%%%%%%% obj = paramValue(valIndex, {options}, selection) %%%%%%%%
+ − obj.valIndex = varargin{1};
+ − obj.options = varargin{2};
+ − if varargin{3} ~= obj.selection
+ − obj.selection = varargin{3};
+ − end
+ − otherwise
+ − error('### Unknown number of arguments.');
+ − end
+ −
+ − % Plausibility check.
+ − if ~(obj.valIndex <= numel(obj.options))
+ − error('### The valIndex must point to one element inside the ''options''. But valIndex is %d and the length of ''options'' is %d', obj.valIndex, numel(obj.options));
+ − end
+ −
+ − end
+ − end
+ −
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (public) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods
+ − %%% Define Abstract methods
+ − varargout = char(varargin)
+ − varargout = copy(varargin)
+ − varargout = display(varargin)
+ −
+ − varargout = getVal(varargin)
+ − varargout = getOptions(varargin)
+ −
+ − varargout = setValIndex(varargin)
+ − varargout = setValIndexAndOptions(varargin)
+ − varargout = setOptions(varargin)
+ − varargout = setSelection(varargin)
+ −
+ − varargout = setProperty(varargin)
+ − varargout = getProperty(varargin)
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (protected) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods (Access = protected)
+ − varargout = fromStruct(varargin)
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (private) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods (Access = private)
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (Static, Public) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods (Static = true)
+ −
+ −
+ − % Param Value types
+ − function out = EMPTY_STRING
+ − out = '';
+ − end
+ − function out = EMPTY_DOUBLE
+ − out = [];
+ − end
+ − function out = EMPTY_CELL
+ − out = {};
+ − end
+ −
+ − function out = YES_NO
+ − out = {1, {'yes', 'no'}, paramValue.SINGLE};
+ − end
+ − function out = NO_YES
+ − out = {1, {'no', 'yes'}, paramValue.SINGLE};
+ − end
+ −
+ − function out = DATA_TYPES
+ − out = {4,{'tsdata', 'fsdata', 'xydata', 'cdata'}, paramValue.SINGLE};
+ − end
+ −
+ − function out = WINDOW
+ − prefs = getappdata(0, 'LTPDApreferences');
+ − dwin = find(strcmpi(char(prefs.getMiscPrefs.getDefaultWindow), specwin.getTypes));
+ − out = {dwin, specwin.getTypes, paramValue.SINGLE};
+ − end
+ −
+ − function out = STRING_VALUE(s)
+ − out = {1, {s}, paramValue.OPTIONAL};
+ − end
+ −
+ − function out = DOUBLE_VALUE(v)
+ − out = {1, {v}, paramValue.OPTIONAL};
+ − end
+ −
+ − function out = DETREND_ORDER
+ − out = {1, {-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, paramValue.SINGLE};
+ − end
+ −
+ − function out = TRUE_FALSE
+ − out = {1, {true, false}, paramValue.SINGLE};
+ − end
+ −
+ − function out = FALSE_TRUE
+ − out = {1, {false, true}, paramValue.SINGLE};
+ − end
+ −
+ − function out = TIMEFORMAT
+ − prefs = getappdata(0, 'LTPDApreferences');
+ − tf = {...
+ − 'dd-mm-yyyy HH:MM:SS', ...
+ − 'yyyy-mm-dd HH:MM:SS', ...
+ − 'dd-mm-yyyy HH:MM:SS.FFF', ...
+ − 'yyyy-mm-dd HH:MM:SS.FFF', ...
+ − 'HH:MM:SS dd-mm-yyyy', ...
+ − 'HH:MM:SS yyyy-mm-dd', ...
+ − 'HH:MM:SS.FFF dd-mm-yyyy', ...
+ − 'HH:MM:SS.FFF yyyy-mm-dd', ...
+ − 'dd.mm.yyyy HH:MM:SS', ...
+ − 'yyyy.mm.dd HH:MM:SS', ...
+ − 'dd.mm.yyyy HH:MM:SS.FFF', ...
+ − 'yyyy.mm.dd HH:MM:SS.FFF', ...
+ − 'HH:MM:SS dd.mm.yyyy', ...
+ − 'HH:MM:SS yyyy.mm.dd', ...
+ − 'HH:MM:SS.FFF dd.mm.yyyy', ...
+ − 'HH:MM:SS.FFF yyyy.mm.dd', ...
+ − 'MM:SS', ...
+ − 'MM:SS.FFF'};
+ −
+ − idx = find(strcmp(char(prefs.getTimePrefs.getTimestringFormat), tf));
+ − if isempty(idx)
+ − tf = [{char(prefs.getTimePrefs.getTimestringFormat)} tf];
+ − idx = 1;
+ − end
+ − out = {idx, tf, paramValue.OPTIONAL};
+ − end
+ −
+ − function out = TIMEZONE
+ − prefs = getappdata(0, 'LTPDApreferences');
+ − tz = utils.timetools.getTimezone;
+ −
+ − idx = find(strcmp(prefs.getTimePrefs.getTimeTimezone(), tz));
+ − out = {idx, tz, paramValue.SINGLE};
+ − end
+ −
+ − function res = OPTIONAL(); res = 0; end
+ − function res = SINGLE(); res = 1; end
+ − function res = MULTI(); res = 2; end
+ − function str = getSelectionMode(val)
+ − switch val
+ − case 0
+ − str = 'OPTIONAL';
+ − case 1
+ − str = 'SINGLE';
+ − case 2
+ − str = 'MULTI';
+ − otherwise
+ − str = '''selection'' is not valid!';
+ − end
+ − end
+ −
+ − varargout = update_struct(varargin);
+ −
+ − function out = VEROUT()
+ − out = '$Id: paramValue.m,v 1.29 2011/04/07 11:01:28 ingo Exp $';
+ − end
+ −
+ − function ii = getInfo(varargin)
+ − ii = utils.helper.generic_getInfo(varargin{:}, 'paramValue');
+ − end
+ −
+ − function out = SETS()
+ − out = {'Default'};
+ − end
+ −
+ − function out = getDefaultPlist(set)
+ − switch lower(set)
+ − case 'default'
+ − out = plist();
+ − otherwise
+ − error('### Unknown set [%s]', set');
+ − end
+ − end
+ −
+ − function obj = initObjectWithSize(n,m)
+ − obj = paramValue.newarray([n m]);
+ − end
+ −
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (Static, Private) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods (Static = true, Access = private)
+ − end
+ −
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − % Methods (static, hidden) %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − methods (Static = true, Hidden = true)
+ − varargout = loadobj(varargin)
+ − end
+ −
+ − end
+ −