0001 function p = provenance(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010 ALGONAME = mfilename;
0011 VERSION = '$Id: provenance.m,v 1.6 2007/06/20 06:40:11 hewitson Exp $';
0012
0013 if nargin > 0
0014 if ~ischar(varargin{1}) && ~isstruct(varargin{1})
0015 error('### Incorrect usage: first argument should be a character string or a structure.');
0016 end
0017
0018 if isstruct(varargin{1})
0019
0020 p = class(varargin{1}, 'provenance');
0021
0022 return
0023 end
0024
0025 creator = varargin{1};
0026 else
0027 creator = 'unknown';
0028 end
0029 created = now;
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047 ipaddress = char(getHostAddress(java.net.InetAddress.getLocalHost));
0048 hostname = char(getHostName(java.net.InetAddress.getLocalHost));
0049 os = computer;
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072 matlab_version = getappdata(0, 'matlab_version');
0073 sigproc_version = getappdata(0, 'sigproc_version');
0074 ltpda_version = getappdata(0, 'ltpda_version');
0075
0076
0077
0078
0079
0080 p.creator = creator;
0081 p.created = created;
0082 p.ip = ipaddress;
0083 p.hostname = hostname;
0084 p.os = os;
0085 p.matlab_version = matlab_version;
0086 p.sigproc_version = sigproc_version;
0087 p.ltpda_version = ltpda_version;
0088 p = class(p, 'provenance');
0089
0090
0091
0092
0093