Home > classes > @timespan > timespan.m

timespan

PURPOSE ^

TIMESPAN timespan object class constructor.

SYNOPSIS ^

This is a script file.

DESCRIPTION ^

 TIMESPAN timespan object class constructor.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 DESCRIPTION:  TIMESPAN timespan object class constructor.
               Create a timespan object.

 SUPER CLASSES: ltpda_uoh < ltpda_uo < ltpda_obj

 PROPERTIES:

     Inherit Properties (read only)
       name       - name of object
       created    - creation time (time-object)
       prov       - contains a instance of the provenance class.
       hist       - history of the object (history object)
       version    - cvs-version string.

     Protected Properties (read only)
       startT     - Start time of the time span. (time-object)
       endT       - End time of the time span.   (time-object)
       timeformat - The time format of start- AND end- time.
       timezone   - The timezone of start- AND end- time.
       interval   - Interval between start/end time

 TIMESPAN Methods:

     Defined Abstract methods:
       char          - returns one character string which represents the object
       copy          - copies an object
       display       - displays an object
       string        - converts an object to a command string which will
                       recreate the plist object
       update_struct - updates a object structure to the current tbx-version

     Public methods:

     Protected methods:

     Private methods:
       fromRepository  - construct an timespan from a repository
       fromTimespanDef - construct an timespan from start and end time
       computeInterval - compute the interval of the time span

 CONSTRUCTORS:

       ts = timespan()
       ts = timespan('file_name.mat');
       ts = timespan('file_name.xml');
       ts = timespan( time,       time)
       ts = timespan(time,       '14:00:05')
       ts = timespan('14:00:00',  time)
       ts = timespan('14:00:00', '14:00:05')
       ts = timespan(30000, 50000)
       ts = timespan(20000, 30000, 'HH:MM:SS')
       ts = timespan(plist)

 Parameter sets for plist constructor (in order of priority):

 From XML File
 -------------

   Construct an TIMESPAN by loading it from an XML file.

   'filename' - construct an TIMESPAN from a filename.
                Example: plist('filename', 'ts1.xml')
                [default: empty string]

 From MAT File
 -------------

   Construct an TIMESPAN by loading it from a MAT file.

   'filename' - construct an TIMESPAN from a filename.
                Example: plist('filename', 'ts1.mat')
                [default: empty string]

 From Repository
 ---------------

   Construct an TIMESPAN by retrieving it from an LTPDA repository.

   'Hostname' - the repository hostname. Only those objects which
                are TIMESPANs are returned.
                [default: 'localhost'];

                Additional parameters:

                'Database'   - The database name [default: 'ltpda']
                'ID'         - A vector of object IDs. [default: []]

 From Timespan Definition
 ------------------------
   Construct an TIMESPAN by its properties definition
   'startT'- the starting time [default: '1970-01-01 00:30:00.000'];
   'endT'  - the ending time [default: '1980-01-01 12:00:00.010'];
               The times can be as a time-object, a string or a unix time
             Example 1: plist('startT', time, 'endT', '2008-12-31 23:59:59')
             Example 2: plist('startT', '2007-12-31 23:59:59', 'endT', 1206442503406)

                Additional parameters:

             'timezone'   - Timezone (string or java object) [default: 'UTC']
             'timeformat' - Time format (string) [default: 'yyyy-mm-dd HH:MM:SS.FFF']

 From Plist
 ----------

   'Plist'  - construct from a plist. The value passed should be a plist
              object.
              [default: empty plist]

 M-FILE INFO: The following call returns an minfo object that contains
              information about the timespan constructor:
                   >> info = timespan.getInfo
              or   >> info = timespan.getInfo('timespan')

              You can get information about class methods by calling:
                   >> info = timespan.getInfo(method)
              e.g. >> info = timespan.getInfo('eq')

              You can also restrict the sets of parameters contained in
              the minfo object by calling:
                   >> info = timespan.getInfo(method, set)
              e.g. >> info = timespan.getInfo('timespan', 'None')

 VERSION:     $Id: timespan.m,v 1.36 2008/08/22 14:17:27 ingo Exp $

 HISTORY:     03-04-2007 M Hewitson
                 Creation

 SEE ALSO:    ltpda_uoh, ltpda_uo, ltpda_obj, plist

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

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 % TIMESPAN timespan object class constructor.
0002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0003 %
0004 % DESCRIPTION:  TIMESPAN timespan object class constructor.
0005 %               Create a timespan object.
0006 %
0007 % SUPER CLASSES: ltpda_uoh < ltpda_uo < ltpda_obj
0008 %
0009 % PROPERTIES:
0010 %
0011 %     Inherit Properties (read only)
0012 %       name       - name of object
0013 %       created    - creation time (time-object)
0014 %       prov       - contains a instance of the provenance class.
0015 %       hist       - history of the object (history object)
0016 %       version    - cvs-version string.
0017 %
0018 %     Protected Properties (read only)
0019 %       startT     - Start time of the time span. (time-object)
0020 %       endT       - End time of the time span.   (time-object)
0021 %       timeformat - The time format of start- AND end- time.
0022 %       timezone   - The timezone of start- AND end- time.
0023 %       interval   - Interval between start/end time
0024 %
0025 % TIMESPAN Methods:
0026 %
0027 %     Defined Abstract methods:
0028 %       char          - returns one character string which represents the object
0029 %       copy          - copies an object
0030 %       display       - displays an object
0031 %       string        - converts an object to a command string which will
0032 %                       recreate the plist object
0033 %       update_struct - updates a object structure to the current tbx-version
0034 %
0035 %     Public methods:
0036 %
0037 %     Protected methods:
0038 %
0039 %     Private methods:
0040 %       fromRepository  - construct an timespan from a repository
0041 %       fromTimespanDef - construct an timespan from start and end time
0042 %       computeInterval - compute the interval of the time span
0043 %
0044 % CONSTRUCTORS:
0045 %
0046 %       ts = timespan()
0047 %       ts = timespan('file_name.mat');
0048 %       ts = timespan('file_name.xml');
0049 %       ts = timespan( time,       time)
0050 %       ts = timespan(time,       '14:00:05')
0051 %       ts = timespan('14:00:00',  time)
0052 %       ts = timespan('14:00:00', '14:00:05')
0053 %       ts = timespan(30000, 50000)
0054 %       ts = timespan(20000, 30000, 'HH:MM:SS')
0055 %       ts = timespan(plist)
0056 %
0057 % Parameter sets for plist constructor (in order of priority):
0058 %
0059 % From XML File
0060 % -------------
0061 %
0062 %   Construct an TIMESPAN by loading it from an XML file.
0063 %
0064 %   'filename' - construct an TIMESPAN from a filename.
0065 %                Example: plist('filename', 'ts1.xml')
0066 %                [default: empty string]
0067 %
0068 % From MAT File
0069 % -------------
0070 %
0071 %   Construct an TIMESPAN by loading it from a MAT file.
0072 %
0073 %   'filename' - construct an TIMESPAN from a filename.
0074 %                Example: plist('filename', 'ts1.mat')
0075 %                [default: empty string]
0076 %
0077 % From Repository
0078 % ---------------
0079 %
0080 %   Construct an TIMESPAN by retrieving it from an LTPDA repository.
0081 %
0082 %   'Hostname' - the repository hostname. Only those objects which
0083 %                are TIMESPANs are returned.
0084 %                [default: 'localhost'];
0085 %
0086 %                Additional parameters:
0087 %
0088 %                'Database'   - The database name [default: 'ltpda']
0089 %                'ID'         - A vector of object IDs. [default: []]
0090 %
0091 % From Timespan Definition
0092 % ------------------------
0093 %   Construct an TIMESPAN by its properties definition
0094 %   'startT'- the starting time [default: '1970-01-01 00:30:00.000'];
0095 %   'endT'  - the ending time [default: '1980-01-01 12:00:00.010'];
0096 %               The times can be as a time-object, a string or a unix time
0097 %             Example 1: plist('startT', time, 'endT', '2008-12-31 23:59:59')
0098 %             Example 2: plist('startT', '2007-12-31 23:59:59', 'endT', 1206442503406)
0099 %
0100 %                Additional parameters:
0101 %
0102 %             'timezone'   - Timezone (string or java object) [default: 'UTC']
0103 %             'timeformat' - Time format (string) [default: 'yyyy-mm-dd HH:MM:SS.FFF']
0104 %
0105 % From Plist
0106 % ----------
0107 %
0108 %   'Plist'  - construct from a plist. The value passed should be a plist
0109 %              object.
0110 %              [default: empty plist]
0111 %
0112 % M-FILE INFO: The following call returns an minfo object that contains
0113 %              information about the timespan constructor:
0114 %                   >> info = timespan.getInfo
0115 %              or   >> info = timespan.getInfo('timespan')
0116 %
0117 %              You can get information about class methods by calling:
0118 %                   >> info = timespan.getInfo(method)
0119 %              e.g. >> info = timespan.getInfo('eq')
0120 %
0121 %              You can also restrict the sets of parameters contained in
0122 %              the minfo object by calling:
0123 %                   >> info = timespan.getInfo(method, set)
0124 %              e.g. >> info = timespan.getInfo('timespan', 'None')
0125 %
0126 % VERSION:     $Id: timespan.m,v 1.36 2008/08/22 14:17:27 ingo Exp $
0127 %
0128 % HISTORY:     03-04-2007 M Hewitson
0129 %                 Creation
0130 %
0131 % SEE ALSO:    ltpda_uoh, ltpda_uo, ltpda_obj, plist
0132 %
0133 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0134 
0135 classdef timespan < ltpda_uoh
0136 
0137   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0138   %                            Property definition                            %
0139   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0140 
0141   %---------- Public (read/write) Properties  ----------
0142   properties
0143   end
0144 
0145   %---------- Protected read-only Properties ----------
0146   properties (SetAccess = protected)
0147     startT     = time(0);
0148     endT       = time(0);
0149     timeformat = time(0).timeformat;
0150     timezone   = time(0).timezone;
0151     interval   = '';
0152   end
0153 
0154   %---------- Private Properties ----------
0155   properties (GetAccess = protected, SetAccess = protected)
0156   end
0157 
0158   %---------- Abstract Properties ----------
0159   properties (Abstract = true, SetAccess = protected)
0160   end
0161 
0162   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0163   %                          Check property setting                           %
0164   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0165 
0166   methods
0167     function obj = set.startT(obj, val)
0168       if ~isa(val, 'time')
0169         error('### The value for the property ''startT'' must be a time-object.\nBut it is from the class [%s]',class(val));
0170       end
0171       obj.startT = val;
0172     end
0173     function obj = set.endT(obj, val)
0174       if ~isa(val, 'time')
0175         error('### The value for the property ''endT'' must be a time-object.\nBut it is from the class [%s]',class(val));
0176       end
0177       obj.endT = val;
0178     end
0179     function obj = set.timeformat(obj, val)
0180       if ~ischar(val)
0181         error('### The value for the property ''timeformat'' must be a character string.');
0182       end
0183       obj.timeformat = val;
0184     end
0185     function obj = set.timezone(obj, val)
0186       if ~strcmp(class(val), 'sun.util.calendar.ZoneInfo')
0187         error('### The value for the property ''timezone'' must be a JAVA sun.util.calendar.ZoneInfo-object.');
0188       end
0189       obj.timezone = val;
0190     end
0191     function obj = set.interval(obj, val)
0192       if ~ischar(val)
0193         error('### The value for the property ''interval'' must be a character string.');
0194       end
0195       obj.interval = val;
0196     end
0197   end
0198 
0199   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0200   %                                Constructor                                %
0201   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0202 
0203   methods
0204     function obj = timespan(varargin)
0205 
0206       import utils.const.*
0207       utils.helper.msg(msg.OMNAME, 'running %s/%s', mfilename('class'), mfilename);
0208 
0209       % Call superclass
0210       obj = obj@ltpda_uoh(varargin{:});
0211 
0212       % Collect all timespan objects
0213       [ts, invars, rest] = utils.helper.collect_objects(varargin(:), 'timespan');
0214 
0215       if isempty(rest) && ~isempty(ts)
0216         % Do copy constructor and return
0217         utils.helper.msg(msg.OPROC1, 'copy constructor');
0218         obj = copy(ts, 1);
0219         for kk=1:numel(obj)
0220           obj(kk).addHistory(timespan.getInfo('timespan', 'None'), [], [], obj(kk).hist);
0221         end
0222         return
0223       end
0224 
0225       %%%%%%%%%%   Set dafault values   %%%%%%%%%%
0226       %%% Exept for a struct as an input
0227       if ~(nargin == 1 && isstruct(varargin{1}))
0228         % set version
0229         obj.prependVersion('$Id: timespan.m,v 1.36 2008/08/22 14:17:27 ingo Exp $');
0230       end
0231 
0232       switch nargin
0233         case 0
0234           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0235           %%%%%%%%%%%%%%%%%%%%%%%%%%%   no input   %%%%%%%%%%%%%%%%%%%%%%%%%%%%
0236           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0237           utils.helper.msg(msg.OPROC1, 'empty constructor');
0238           obj.addHistory(timespan.getInfo('timespan', 'None'), plist(), [], []);
0239 
0240         case 1
0241           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0242           %%%%%%%%%%%%%%%%%%%%%%%%%%%   one input   %%%%%%%%%%%%%%%%%%%%%%%%%%%
0243           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0244 
0245           if ischar(varargin{1})
0246 
0247             %%%%%%%%%%   ts = timespan('foo.mat')   %%%%%%%%%%
0248             %%%%%%%%%%   ts = timespan('foo.xml')   %%%%%%%%%%
0249             utils.helper.msg(msg.OPROC1, 'constructing from file %s', varargin{1});
0250             obj = fromFile(obj, varargin{1});
0251 
0252           elseif isa(varargin{1}, 'plist')
0253             %%%%%%%%%%   ts = time(plist)   %%%%%%%%%%
0254 
0255             pl = varargin{1};
0256             filename = find(pl, 'filename');
0257             hostname = find(pl, 'hostname');
0258             conn     = find(pl, 'conn');
0259             ipl      = find(pl, 'plist');
0260             startT   = find(pl, 'startT');
0261             endT     = find(pl, 'endT');
0262 
0263             if isempty(startT)
0264               startT = find(pl, 'start');
0265             end
0266             if isempty(endT)
0267               endT = find(pl, 'end');
0268             end
0269 
0270             if ~isempty(filename)
0271               %-----------------------------------------------------
0272               %--- Construct from file
0273               %-----------------------------------------------------
0274 
0275               utils.helper.msg(msg.OPROC1, 'constructing from file %s', filename);
0276               obj = fromFile(obj, varargin{1});
0277 
0278             elseif ~isempty(hostname) || ~isempty(conn)
0279               %-----------------------------------------------------
0280               %--- Construct from repository
0281               %-----------------------------------------------------
0282               utils.helper.msg(msg.OPROC1, 'constructing from repository %s', hostname);
0283               obj = obj.fromRepository(pl);
0284 
0285             elseif ~isempty(startT) && ~isempty(endT)
0286               %-----------------------------------------------------
0287               %--- Construct from start and end times
0288               %-----------------------------------------------------
0289               utils.helper.msg(msg.OPROC1, 'constructing from start/end times');
0290               obj = obj.fromTimespanDef(pl);
0291 
0292             elseif ~isempty(ipl)
0293               %-----------------------------------------------------
0294               %--- Construct from plist
0295               %-----------------------------------------------------
0296 
0297               if nparams(ipl) == 0
0298                 %%% return empty object
0299               else
0300                 obj = timespan(ipl);
0301               end
0302 
0303             else
0304 
0305               if nparams(pl) == 0
0306                 %%% if the plist is empty then return the default time object
0307               else
0308                 error('### Unknown TIMESPAN constructor method.');
0309               end
0310             end
0311 
0312           elseif isstruct(varargin{1})
0313             %%%%%%%%%%   ts = time(struct)   %%%%%%%%%%
0314 
0315             utils.helper.msg(msg.OPROC1, 'constructing from struct');
0316             %%% Set properties which are declared in this class
0317             ts_struct = varargin{1};
0318 
0319             obj.startT     = utils.helper.struct2obj(ts_struct.startT, 'time');
0320             obj.endT       = utils.helper.struct2obj(ts_struct.endT, 'time');
0321             obj.timeformat = ts_struct.timeformat;
0322             obj.timezone   = ts_struct.timezone;
0323             obj.interval   = ts_struct.interval;
0324 
0325           else
0326             error('### Unknown single argument constructor.');
0327           end
0328 
0329         case 2
0330           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0331           %%%%%%%%%%%%%%%%%%%%%%%%%%%   two input   %%%%%%%%%%%%%%%%%%%%%%%%%%%
0332           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0333 
0334           if (ischar(varargin{1}) || isa(varargin{1}, 'time') || isnumeric(varargin{1})) && ...
0335               (ischar(varargin{2}) || isa(varargin{2}, 'time') || isnumeric(varargin{2}))
0336             %%%%%%%%%%  ts = timespan('14:00:00', '14:00:05')   %%%%%%%%%%
0337             %%%%%%%%%%  ts = timespan('14:00:00', time)         %%%%%%%%%%
0338             %%%%%%%%%%  ts = timespan(time, time)               %%%%%%%%%%
0339             %%%%%%%%%%  ts = timespan(time, '14:00:05')         %%%%%%%%%%
0340 
0341             utils.helper.msg(msg.OPROC1, 'constructing from start/end time');
0342             pli = plist('startT', varargin{1}, 'endT', varargin{2});
0343             obj = obj.fromTimespanDef(pli);
0344 
0345           elseif isa(varargin{1}, 'database') && isnumeric(varargin{2})
0346             %%%%%%%%%%  f = timespan(database, IDs)   %%%%%%%%%%
0347             utils.helper.msg(msg.OPROC1, 'retrieve from repository');
0348             obj = obj.fromRepository(plist('conn', varargin{1}, 'id', varargin{2}));
0349 
0350           else
0351             error ('  ### Unknown constructor with two inputs.');
0352           end
0353 
0354         case 3
0355           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0356           %%%%%%%%%%%%%%%%%%%%%%%%%%   three input   %%%%%%%%%%%%%%%%%%%%%%%%%%
0357           %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0358 
0359           if  (ischar(varargin{1}) || isnumeric(varargin{1})) && ...
0360               (ischar(varargin{2}) || isnumeric(varargin{2})) && ...
0361               ischar(varargin{3})
0362             %%%%%%%%%%  obj = timespan('14:00:00', '14:00:05', 'HH:MM:SS')  %%%%%%%%%%
0363             %%%%%%%%%%  obj = timespan(  200000  ,   300000  , 'HH:MM:SS')  %%%%%%%%%%
0364 
0365             utils.helper.msg(msg.OPROC1, 'constructing from start/end and timeformat');
0366             obj.startT = time(varargin{1}, varargin{3});
0367             obj.endT   = time(varargin{2}, varargin{3});
0368             obj.setTimeformat(obj.startT.timeformat, 'internal');
0369 
0370             % Compute the interval
0371             obj = computeInterval(obj);
0372 
0373             % Add history
0374             ii = timespan.getInfo('timespan', 'From Timespan Definition');
0375             plh = plist(...
0376               'startT', varargin{1}, ...
0377               'endT',   varargin{2}, ...
0378               'timeformat', varargin{3});
0379             obj.addHistory(ii, plh, [], []);
0380 
0381           else
0382             error ('  ### Unknown constructor with three inputs.');
0383           end
0384 
0385         otherwise
0386           error('### Unknown number of arguments.');
0387       end
0388 
0389       % Consistency check
0390       if obj.startT.utc_epoch_milli > obj.endT.utc_epoch_milli
0391         error('### The start time is larger than the end time.');
0392       end
0393 
0394     end % End constructor
0395 
0396   end
0397 
0398   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0399   %                             Methods (public)                              %
0400   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0401   methods
0402     varargout = copy(varargin)
0403     varargout = setStartT(varargin)
0404     varargout = setEndT(varargin)
0405     varargout = setTimeformat(varargin)
0406     varargout = setTimezone(varargin)
0407   end
0408 
0409   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0410   %                             Methods (protected)                           %
0411   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0412   methods (Access = protected)
0413   end
0414 
0415   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0416   %                           Methods (private)                               %
0417   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0418   methods (Access = private)
0419     obj = fromTimespanDef(obj, pli)
0420     obj = computeInterval(obj)
0421   end
0422 
0423   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0424   %                            Methods (static)                               %
0425   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0426   methods (Static)
0427 
0428     varargout = update_struct(varargin);
0429 
0430     function out = VEROUT()
0431       out = '$Id: timespan.m,v 1.36 2008/08/22 14:17:27 ingo Exp $';
0432     end
0433 
0434     function ii = getInfo(varargin)
0435       ii = utils.helper.generic_getInfo(varargin{:}, 'timespan');
0436     end
0437 
0438     function out = SETS()
0439       out = {...
0440         'From XML File',   ...
0441         'From MAT File',   ...
0442         'From Repository', ...
0443         'From Timespan Definition', ...
0444         'From Plist'};
0445     end
0446 
0447     function out = getDefaultPlist(set)
0448       switch set
0449         case 'From Repository'
0450           %--- Repository constructor
0451           out = plist('hostname', 'localhost', 'database', 'ltpda', 'ID', []);
0452         case 'From Timespan Definition'
0453           %--- From definition constructor
0454           out = plist(...
0455             'startT', '1970-01-01 00:30:00.000', ...
0456             'endT',   '1980-01-01 12:00:00.010', ....
0457             'timezone', 'UTC',                  ...
0458             'timeformat', 'yyyy-mm-dd HH:MM:SS.FFF');
0459         case 'From XML File'
0460           %--- Read from XML file
0461           out = plist('filename', '');
0462         case 'From MAT File'
0463           %--- Read from MAT file
0464           out = plist('filename', '');
0465         case 'From Plist'
0466           %--- Create from a plist
0467           out = plist('Plist', []);
0468         otherwise
0469           error('### Unknown set-name [%s] for a default parameter list.', set);
0470       end
0471     end % function out = getDefaultPlist(varargin)
0472 
0473   end % End static methods
0474 
0475   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0476   %                         Methods (static, private)                         %
0477   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0478 
0479   methods (Static, Access=private)
0480     [ao,bo] = abcascade(a1,b1,a2,b2)
0481   end % End static, private methods
0482 
0483 end % End classdef
0484

Generated on Mon 25-Aug-2008 22:39:29 by m2html © 2003