Home > classes > @ao > update_struct.m

update_struct

PURPOSE ^

UPDATE_STRUCT update the input structure to the current ltpda version

SYNOPSIS ^

function varargout = update_struct(varargin)

DESCRIPTION ^

 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.2 2008/08/01 13:19:42 ingo Exp $

 HISTORY:     07-07-2008 Diepholz
                 Creation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

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.2 2008/08/01 13:19:42 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 
0036       obj_struct.creator = obj_struct.provenance;
0037       obj_struct = rmfield(obj_struct, 'provenance');
0038 
0039       obj_struct = rmfield(obj_struct, 'plist');
0040 
0041       obj_struct.procinfo = plist();
0042       obj_struct.plotinfo = plist();
0043 
0044     catch ME
0045       disp(varargin{1});
0046       throw(addCause(ME, MException('MATLAB:LTPDA','### The struct (ao) above is not from version 1.0')));
0047     end
0048 
0049     % Set the struct_ver to '1.1'
0050     struct_ver = '1.1';
0051 
0052   end
0053 
0054   %%%%%%%%%%%%%%%%%%%%%%%   Update version '1.1' ->'1.2'  %%%%%%%%%%%%%%%%%%%%%%%
0055 
0056   if utils.helper.ver2num(struct_ver) < utils.helper.ver2num(tbx_ver) && ...
0057       strcmp(struct_ver, '1.1')
0058 
0059     % Set the struct_ver to '1.2'
0060     struct_ver = '1.1';
0061 
0062   end
0063 
0064   %%%%%%%%%%%%%%%%%%%%%%%   Update version '1.2' ->'1.3'  %%%%%%%%%%%%%%%%%%%%%%%
0065 
0066   if utils.helper.ver2num(struct_ver) < utils.helper.ver2num(tbx_ver) && ...
0067       strcmp(struct_ver, '1.2')
0068 
0069     % Set the struct_ver to '1.3'
0070     struct_ver = '1.3';
0071 
0072   end
0073 
0074   varargout{1} = obj_struct;
0075 end

Generated on Mon 08-Sep-2008 13:18:47 by m2html © 2003