source: MML/trunk/mml/doc_html/mml/links/tango/tango2handle.html @ 4

Last change on this file since 4 was 4, checked in by zhangj, 10 years ago

Initial import--MML version from SOLEIL@2013

File size: 9.0 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2                "http://www.w3.org/TR/REC-html40/loose.dtd">
3<html>
4<head>
5  <title>Description of tango2handle</title>
6  <meta name="keywords" content="tango2handle">
7  <meta name="description" content="TANGO2HANDLE - Converts TANGO name to handle name">
8  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
9  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
10  <meta name="robots" content="index, follow">
11  <link type="text/css" rel="stylesheet" href="../../../m2html.css">
12</head>
13<body>
14<a name="_top"></a>
15<div><a href="../../../index.html">Home</a> &gt;  <a href="../../index.html">mml</a> &gt; <a href="#">links</a> &gt; <a href="index.html">tango</a> &gt; tango2handle.m</div>
16
17<!--<table width="100%"><tr><td align="left"><a href="../../../index.html"><img alt="<" border="0" src="../../../left.png">&nbsp;Master index</a></td>
18<td align="right"><a href="index.html">Index for mml/links/tango&nbsp;<img alt=">" border="0" src="../../../right.png"></a></td></tr></table>-->
19
20<h1>tango2handle
21</h1>
22
23<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
24<div class="box"><strong>TANGO2HANDLE - Converts TANGO name to handle name</strong></div>
25
26<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
27<div class="box"><strong>function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList); </strong></div>
28
29<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
30<div class="fragment"><pre class="comment"> TANGO2HANDLE - Converts TANGO name to handle name
31 [Handle, ErrorFlag] = tango2handle(TangoNames, Family)
32
33 INPUTS
34 1. TangoNames = List of Tango names (string, matrix, or cell array)
35 2. Family = optional input to limit the search (string, matrix, structure, or cell array)
36
37 OUTPUTS
38 1. Handle = Handles corresponding to the Tango name
39             0 if Tango name cannot be found
40 2. ErrorFlag = Number of errors found
41
42 Written by Laurent S. Nadolski</pre></div>
43
44<!-- crossreference -->
45<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
46This function calls:
47<ul style="list-style-image:url(../../../matlabicon.gif)">
48<li><a href="tango2handle.html" class="code" title="function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList);">tango2handle</a>      TANGO2HANDLE - Converts TANGO name to handle name</li></ul>
49This function is called by:
50<ul style="list-style-image:url(../../../matlabicon.gif)">
51<li><a href="tango2handle.html" class="code" title="function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList);">tango2handle</a>      TANGO2HANDLE - Converts TANGO name to handle name</li></ul>
52<!-- crossreference -->
53
54
55<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
56<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList);</a>
570002 <span class="comment">% TANGO2HANDLE - Converts TANGO name to handle name</span>
580003 <span class="comment">% [Handle, ErrorFlag] = tango2handle(TangoNames, Family)</span>
590004 <span class="comment">%</span>
600005 <span class="comment">% INPUTS</span>
610006 <span class="comment">% 1. TangoNames = List of Tango names (string, matrix, or cell array)</span>
620007 <span class="comment">% 2. Family = optional input to limit the search (string, matrix, structure, or cell array)</span>
630008 <span class="comment">%</span>
640009 <span class="comment">% OUTPUTS</span>
650010 <span class="comment">% 1. Handle = Handles corresponding to the Tango name</span>
660011 <span class="comment">%             0 if Tango name cannot be found</span>
670012 <span class="comment">% 2. ErrorFlag = Number of errors found</span>
680013 <span class="comment">%</span>
690014 <span class="comment">% Written by Laurent S. Nadolski</span>
700015
710016 <span class="keyword">if</span> nargin &lt; 1
720017     error(<span class="string">'Must have 1 input (''TangoNames'')'</span>);
730018 <span class="keyword">end</span>
740019 <span class="keyword">if</span> nargin &lt; 2
750020     FamilyList = [];
760021 <span class="keyword">end</span>
770022
780023 <span class="comment">% Cell inputs</span>
790024 <span class="keyword">if</span> iscell(TangoNames)
800025     <span class="keyword">if</span> iscell(FamilyList)
810026         <span class="keyword">if</span> length(FamilyList) ~= length(CommonNames)
820027             error(<span class="string">'Family and CommonNames must be the same size cell arrays.'</span>);
830028         <span class="keyword">end</span>
840029     <span class="keyword">end</span>
850030     
860031     <span class="keyword">for</span> i = 1:length(TangoNames)
870032         <span class="keyword">if</span> iscell(FamilyList)
880033             [Handle{i}, ErrorFlag{i}] = <a href="tango2handle.html" class="code" title="function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList);">tango2handle</a>(TangoNames{i}, FamilyList{i});
890034         <span class="keyword">else</span>
900035             [Handle{i}, ErrorFlag{i}] = <a href="tango2handle.html" class="code" title="function [Handle, ErrorFlag] = tango2handle(TangoNames, FamilyList);">tango2handle</a>(TangoNames{i}, FamilyList);
910036         <span class="keyword">end</span>
920037         <span class="keyword">return</span>   
930038     <span class="keyword">end</span>
940039 <span class="keyword">end</span>
950040 <span class="comment">% End cell input</span>
960041
970042
980043 ErrorFlag = 0;
990044 Handle = [];
1000045 <span class="keyword">if</span> isempty(FamilyList)
1010046     FamilyList = getfamilylist;
1020047 <span class="keyword">elseif</span> isstruct(FamilyList)
1030048     <span class="comment">% Structures are ok</span>
1040049     FamilyList = FamilyList.FamilyName;
1050050 <span class="keyword">end</span>
1060051
1070052 <span class="keyword">for</span> i = 1:size(TangoNames,1)
1080053     Found = 0;
1090054     <span class="keyword">for</span> l = 1:size(FamilyList, 1)
1100055         
1110056         FamilyTest = deblank(FamilyList(l,:));
1120057         
1130058         Fields = fieldnames(getfamilydata(FamilyTest));
1140059         <span class="keyword">for</span> m = 1:length(Fields)
1150060             TangoNamesTotal = getfamilydata(FamilyTest, Fields{m}, <span class="string">'TangoNames'</span>);
1160061             
1170062             <span class="keyword">if</span> ~isempty(TangoNamesTotal)
1180063                 Name = deblank(TangoNames(i,:));
1190064                 [name,j,k] = intersect(Name, TangoNamesTotal, <span class="string">'rows'</span>);
1200065                 
1210066                 <span class="keyword">if</span> isempty(name) &amp; length(Name)~=size(TangoNamesTotal)
1220067                     Name = [repmat(<span class="string">' '</span>,size(Name,1),size(TangoNamesTotal,2)-size(Name,2)) Name];
1230068                     [name,j,k] = intersect(Name, TangoNamesTotal, <span class="string">'rows'</span>);
1240069                 <span class="keyword">end</span>
1250070                 
1260071                 <span class="keyword">if</span> isempty(name)
1270072                     Name = deblank(TangoNames(i,:));
1280073                     <span class="keyword">if</span> length(Name)~=size(TangoNamesTotal)
1290074                         Name = [Name repmat(<span class="string">' '</span>,size(Name,1),size(TangoNamesTotal,2)-size(Name,2))];
1300075                         [name,j,k] = intersect(Name, TangoNamesTotal, <span class="string">'rows'</span>);
1310076                     <span class="keyword">end</span>
1320077                 <span class="keyword">end</span>
1330078                 
1340079                 <span class="keyword">if</span> ~isempty(k)
1350080                     Found = 1;
1360081                     <span class="keyword">break</span>
1370082                 <span class="keyword">end</span>
1380083             <span class="keyword">end</span>
1390084             <span class="keyword">if</span> Found
1400085                 <span class="keyword">break</span>
1410086             <span class="keyword">end</span>
1420087         <span class="keyword">end</span>
1430088         <span class="keyword">if</span> Found
1440089             <span class="keyword">break</span>
1450090         <span class="keyword">end</span>
1460091     <span class="keyword">end</span>
1470092     <span class="keyword">if</span> Found
1480093         HandleTotal = getfamilydata(FamilyTest, Fields{m}, <span class="string">'Handles'</span>);
1490094         h = HandleTotal(k,:);
1500095     <span class="keyword">else</span>
1510096         h = 0;
1520097         ErrorFlag = ErrorFlag + 1;
1530098     <span class="keyword">end</span>
1540099     
1550100     Handle = [Handle; h];
1560101 <span class="keyword">end</span>
1570102 <span class="comment">% if all(~Handle)</span>
1580103 <span class="comment">%     Handle = [];</span>
1590104 <span class="comment">% end</span>
1600105 <span class="comment">% End all family search</span>
1610106
1620107
1630108</pre></div>
164<hr><address>Generated on Mon 21-May-2007 15:29:18 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
165</body>
166</html>
Note: See TracBrowser for help on using the repository browser.