comparison scripts/control/system/sysgetsignals.m @ 5443:ec8c33dcd1bf

[project @ 2005-09-08 01:40:57 by jwe]
author jwe
date Thu, 08 Sep 2005 01:40:58 +0000
parents 99489e2ffbd4
children 34f96dd5441b
comparison
equal deleted inserted replaced
5442:636886245488 5443:ec8c33dcd1bf
158 sys = sysupdate(sys,"ss"); #make sure ss is up to date 158 sys = sysupdate(sys,"ss"); #make sure ss is up to date
159 stname = sysgetsignals(sys,"st"); 159 stname = sysgetsignals(sys,"st");
160 inname = sysgetsignals(sys,"in"); 160 inname = sysgetsignals(sys,"in");
161 outname = sysgetsignals(sys,"out"); 161 outname = sysgetsignals(sys,"out");
162 yd = sysgetsignals(sys,"yd"); 162 yd = sysgetsignals(sys,"yd");
163 elseif(!(isstr(sigid) & min(size(sigid)) == 1)) 163 elseif(!(ischar(sigid) & min(size(sigid)) == 1))
164 error(sprintf("sigid(%dx%d) must be a string)",rows(sigid),columns(sigid))); 164 error(sprintf("sigid(%dx%d) must be a string)",rows(sigid),columns(sigid)));
165 else 165 else
166 if(strcmp("st",sigid)) stname = sys.stname; 166 if(strcmp("st",sigid)) stname = sys.stname;
167 elseif(strcmp("in",sigid)) stname = sys.inname; 167 elseif(strcmp("in",sigid)) stname = sys.inname;
168 elseif(strcmp("out",sigid)) stname = sys.outname; 168 elseif(strcmp("out",sigid)) stname = sys.outname;
170 else 170 else
171 error(sprintf("sigid=%s must be \"st\", \"in\", \"out\", or \"yd\"", ... 171 error(sprintf("sigid=%s must be \"st\", \"in\", \"out\", or \"yd\"", ...
172 sigid)); 172 sigid));
173 endif 173 endif
174 if(nargin >= 3) 174 if(nargin >= 3)
175 if( is_signal_list(signum) | isstr(signum) ) 175 if( is_signal_list(signum) | ischar(signum) )
176 signum = cellidx(stname,signum); 176 signum = cellidx(stname,signum);
177 end 177 end
178 if(max(signum) > length(stname)) 178 if(max(signum) > length(stname))
179 error(sprintf("sysgetsignals(sys,\"%s\",%d):only %d entries.\n", ... 179 error(sprintf("sysgetsignals(sys,\"%s\",%d):only %d entries.\n", ...
180 sigid,signum, rows(stname))); 180 sigid,signum, rows(stname)));