Initial commit
[pftoolbox.git] / models / @danl / get.m
blob3459d8b6770126ffd086007e26bee75ab8395f1e
1 function v = get(obj,varargin)\r
2 % Accesses the properties of an object.\r
3 %\r
4 % value = get(obj, 'propertyname') returns the value of the specified property of the\r
5 % object 'obj'.\r
6 %\r
7 % An equivalent syntax is value = obj.propertyname.\r
8 %   \r
9 % get(obj) displays all properties of obj and their values.  \r
10 %\r
11 % Type 'props(obj)' for more details on the properties of the object 'obj'.\r
13 % Toolbox for nonlinear filtering.\r
14 % Copyright (C) 2005  Jakob Rosén <jakob.rosen@gmail.com>\r
15 %\r
16 % This program is free software; you can redistribute it and/or\r
17 % modify it under the terms of the GNU General Public License\r
18 % as published by the Free Software Foundation; either version 2\r
19 % of the License, or (at your option) any later version.\r
20 %\r
21 % This program is distributed in the hope that it will be useful,\r
22 % but WITHOUT ANY WARRANTY; without even the implied warranty of\r
23 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
24 % GNU General Public License for more details.\r
25 %\r
26 % You should have received a copy of the GNU General Public License\r
27 % along with this program; if not, write to the Free Software\r
28 % Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\r
30 if nargin>1\r
31         error(nargchk(1,2,nargin));     \r
32         prop_name=varargin{1};\r
33         switch prop_name\r
35         % <custom>\r
36         % Here we handle properties that need custom treatment (or need to be \r
37         % processed really fast)\r
38         case 'R'\r
39                 v = get(obj.e,'R');\r
40         case 'Q'\r
41                 v = get(obj.w,'R');\r
42         case 'P0'\r
43                 v=get(obj.p0,'R');\r
45         % </custom>\r
47         otherwise\r
48                 [props,rprops]=pnames;\r
49                 if findcstr(props,prop_name)||findcstr(rprops,prop_name)\r
50                         v=obj.(prop_name);\r
51                 else\r
52                         error([prop_name,' is not a valid property'])\r
53                 end\r
54         end\r
55 else\r
56         displayprops(obj);\r
57 end;\r