Home > classes > @timeformat > timeformat.m

timeformat

PURPOSE ^

TIMEFORMAT timeformat object class constructor.

SYNOPSIS ^

function varargout = timeformat(varargin)

DESCRIPTION ^

 TIMEFORMAT timeformat object class constructor.

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

 DESCRIPTION:  TIMEFORMAT timeformat object class constructor.
               Create a timeformat object.

 PROPERTIES:   format_str         - current matlab string
               format_nr          - current matlab number
               default_matlab_str - default matlab string (read only)
               default_matlab_nr  - default matlab number (read only)
               default_java_str   - default java string   (read only)

 REMARK:       The default properties must match together.
               They must represent the same time format.

 CONSTRUCTORS: time()
               time(format_str,
                    default_matlab_str,
                    default_matlab_nr,
                    default_java_str)

 VERSION:      $Id: timeformat.m,v 1.5 2007/10/12 15:30:16 ingo Exp $

 HISTORY:      23-07-2007 Diepholz
                  Creation

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

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 function varargout = timeformat(varargin)
0002 % TIMEFORMAT timeformat object class constructor.
0003 %
0004 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0005 %
0006 % DESCRIPTION:  TIMEFORMAT timeformat object class constructor.
0007 %               Create a timeformat object.
0008 %
0009 % PROPERTIES:   format_str         - current matlab string
0010 %               format_nr          - current matlab number
0011 %               default_matlab_str - default matlab string (read only)
0012 %               default_matlab_nr  - default matlab number (read only)
0013 %               default_java_str   - default java string   (read only)
0014 %
0015 % REMARK:       The default properties must match together.
0016 %               They must represent the same time format.
0017 %
0018 % CONSTRUCTORS: time()
0019 %               time(format_str,
0020 %                    default_matlab_str,
0021 %                    default_matlab_nr,
0022 %                    default_java_str)
0023 %
0024 % VERSION:      $Id: timeformat.m,v 1.5 2007/10/12 15:30:16 ingo Exp $
0025 %
0026 % HISTORY:      23-07-2007 Diepholz
0027 %                  Creation
0028 %
0029 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0030 
0031 
0032 %%%%%%%%%%%%%%%%%%%%%%%%%   define time properties   %%%%%%%%%%%%%%%%%%%%%%%%%%
0033 
0034   function tf = init()
0035     tf.format_str = '';
0036     tf.format_nr  = -1;
0037     tf.default_matlab_str = '';
0038     tf.default_matlab_nr  = -1;
0039     tf.default_java_str   = '';
0040     tf = class(tf, 'timeformat');
0041   end
0042 
0043 
0044 %%%%%%%%%%%%%%%%%%%%%%%%   Create timeformat object   %%%%%%%%%%%%%%%%%%%%%%%%%
0045 
0046 % Create empty time format object
0047 if nargin == 0
0048   tf = init();
0049   varargout{1} = tf;
0050 elseif nargin == 1
0051 
0052   %%%%%%%%%% Create from XML fragment %%%%%%%%%%%
0053   if isa(varargin{1}, 'org.apache.xerces.dom.DeferredElementImpl')
0054     tf = fromxml(varargin{1});
0055     varargout{1} = tf;
0056   elseif ischar(varargin{1})
0057 
0058     filename = varargin{1};
0059     [path, name, ext, vers] = fileparts(filename);
0060     switch ext
0061       case '.mat'
0062         tf = load(filename);
0063       case '.xml'
0064         tf = xmlparse(timeformat, filename);
0065       otherwise
0066         error('### Unknown file type.');
0067     end
0068 
0069     varargout{1} = tf;
0070 
0071   %%%%%%%%%%   t1 = time(struct)   %%%%%%%%%%
0072   elseif isstruct(varargin{1})
0073 
0074     tf = init();
0075 
0076     fields = fieldnames(varargin{1});
0077     for ii = 1:length(fields)
0078       field = fields{ii};
0079       try
0080         tf.(field) = varargin{1}.(field);
0081       catch
0082         error('### The field ''%s'' in the struct is not a timeformat property.', field)
0083       end
0084     end
0085   else
0086     error ('### Unknown constructor');
0087   end
0088 
0089   varargout{1} = tf;
0090 
0091 elseif nargin == 2
0092   %%%%%%%%%%% From DATABASE
0093   if isa(varargin{1}, 'database')
0094     varargout{1} = retrieve(varargin{1}, varargin{2:end});
0095   else
0096     error('### Incorrect constructor call.');
0097   end
0098 
0099 elseif nargin == 4
0100   tf = init();
0101 
0102   tf.format_str         = varargin{1};
0103   tf.default_matlab_str = varargin{2};
0104   tf.default_matlab_nr  = varargin{3};
0105   tf.default_java_str   = varargin{4};
0106 
0107   if strcmp(tf.format_str, tf.default_matlab_str)
0108     tf.format_nr = tf.default_matlab_nr;
0109   end
0110 
0111   varargout{1} = tf;
0112 end
0113 
0114 
0115 
0116 end

Generated on Fri 02-Nov-2007 19:39:27 by m2html © 2003