view m-toolbox/classes/@unit/fromStruct.m @ 22:b11e88004fca
database-connection-manager
Update collection.fromRepository
author
Daniele Nicolodi <nicolodi@science.unitn.it>
date
Mon, 05 Dec 2011 16:20:06 +0100 (2011-12-05)
parents
f0afece42f48
children
line source
+ − % FROMSTRUCT creates from a structure a UNIT object.
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ − %
+ − % FUNCTION: fromStruct
+ − %
+ − % DESCRIPTION: Creates from a structure a UNIT object.
+ − %
+ − % CALL: obj = fromStruct(obj, struct)
+ − %
+ − % VERSION: $Id: fromStruct.m,v 1.3 2011/03/28 17:02:29 ingo Exp $
+ − %
+ − %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ −
+ − function objs = fromStruct(objs, obj_struct)
+ −
+ − % Get the class name of the object.
+ − cn = class(objs);
+ −
+ − % Define function name for updating the structure
+ − fcnName = ([cn '.update_struct']);
+ −
+ − % Initialize output objects
+ − objs = feval([cn '.initObjectWithSize'], size(obj_struct, 1), size(obj_struct, 2));
+ −
+ − % Update structure (if necessary)
+ − for kk = 1:numel(obj_struct)
+ −
+ − % Get structure version
+ − if isfield(obj_struct, 'tbxver')
+ − tbxVer = obj_struct(kk).tbxver;
+ − else
+ − tbxVer = '1.0';
+ − end
+ − % Update structure
+ − up_struct = feval(fcnName, obj_struct(kk), tbxVer);
+ −
+ − % Call super-class
+ − objs(kk) = fromStruct@ltpda_nuo(objs(kk), up_struct);
+ −
+ − % Set 'strs' object
+ − if isfield(up_struct, 'strs')
+ − objs(kk).strs = up_struct.strs;
+ − end
+ −
+ − % Set 'exps' object
+ − if isfield(up_struct, 'exps')
+ − objs(kk).exps = up_struct.exps;
+ − end
+ −
+ − % Set 'vals' object
+ − if isfield(up_struct, 'vals')
+ − objs(kk).vals = up_struct.vals;
+ − end
+ −
+ − end
+ −
+ − end
+ −