UPDATE_STRUCT update the input structure to the current ltpda version %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION: update_struct DESCRIPTION: UPDATE_STRUCT update the input structure to the current ltpda version CALL: obj_struct = update_struct(obj_struct, version_str); VERSION: $Id: update_struct.m,v 1.1 2008/07/10 12:06:49 ingo Exp $ HISTORY: 07-07-2008 Diepholz Creation %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 % UPDATE_STRUCT update the input structure to the current ltpda version 0002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0003 % 0004 % FUNCTION: update_struct 0005 % 0006 % DESCRIPTION: UPDATE_STRUCT update the input structure to the current 0007 % ltpda version 0008 % 0009 % CALL: obj_struct = update_struct(obj_struct, version_str); 0010 % 0011 % VERSION: $Id: update_struct.m,v 1.1 2008/07/10 12:06:49 ingo Exp $ 0012 % 0013 % HISTORY: 07-07-2008 Diepholz 0014 % Creation 0015 % 0016 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0017 0018 function varargout = update_struct(varargin) 0019 0020 obj_struct = varargin{1}; 0021 struct_ver = varargin{2}; 0022 0023 % get the version of the current toolbox 0024 tbx_ver = strtok(getappdata(0, 'ltpda_version')); 0025 0026 % get only the version string without the MATLAB version 0027 struct_ver = strtok(struct_ver); 0028 0029 %%%%%%%%%%%%%%%%%%%%%%% Update version '1.0 -> 1.1' %%%%%%%%%%%%%%%%%%%%%%% 0030 0031 if utils.helper.ver2num(struct_ver) < utils.helper.ver2num(tbx_ver) && ... 0032 strcmp(struct_ver, '1.0') 0033 0034 try 0035 %%% methodInfo 0036 ii = minfo(obj_struct.name, 'ao', '', '', obj_struct.version, {''}, plist, 0, 0); 0037 obj_struct.methodInfo = ii; 0038 0039 %%% version 0040 obj_struct.version = obj_struct.consver; 0041 0042 %%% proctime 0043 obj_struct.proctime = obj_struct.created; 0044 0045 %%% methodInvars 0046 obj_struct.methodInvars = obj_struct.invars; 0047 0048 %%% plistUsed 0049 obj_struct.plistUsed = obj_struct.plist; 0050 catch ME 0051 disp(varargin{1}); 0052 throw(addCause(ME, MException('MATLAB:LTPDA','### The struct (history) above is not from version 1.0'))); 0053 end 0054 0055 % Set the struct_ver to '1.1' 0056 struct_ver = '1.1'; 0057 0058 end 0059 0060 %%%%%%%%%%%%%%%%%%%%%%% Update version '1.1' ->'1.2' %%%%%%%%%%%%%%%%%%%%%%% 0061 0062 if utils.helper.ver2num(struct_ver) < utils.helper.ver2num(tbx_ver) && ... 0063 strcmp(struct_ver, '1.1') 0064 0065 % Set the struct_ver to '1.2' 0066 struct_ver = '1.1'; 0067 0068 end 0069 0070 %%%%%%%%%%%%%%%%%%%%%%% Update version '1.2' ->'1.3' %%%%%%%%%%%%%%%%%%%%%%% 0071 0072 if utils.helper.ver2num(struct_ver) < utils.helper.ver2num(tbx_ver) && ... 0073 strcmp(struct_ver, '1.2') 0074 0075 % Set the struct_ver to '1.3' 0076 struct_ver = '1.3'; 0077 0078 end 0079 0080 varargout{1} = obj_struct; 0081