geosolver/doc/pydoc/geosolver.multimethod.html

145 lines
9.3 KiB
HTML

<!doctype html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>Python: module geosolver.multimethod</title>
</head><body bgcolor="#f0f0f8">
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
<tr bgcolor="#7799ee">
<td valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial">&nbsp;<br><big><big><strong><a href="geosolver.html"><font color="#ffffff">geosolver</font></a>.multimethod</strong></big></big></font></td
><td align=right valign=bottom
><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/rick/Programming/Python/GeoSolver/geosolver/multimethod.py">/home/rick/Programming/Python/GeoSolver/geosolver/multimethod.py</a></font></td></tr></table>
<p><tt>Base&nbsp;classes&nbsp;for&nbsp;multi-valued&nbsp;assignments&nbsp;in&nbsp;methodgraphs</tt></p>
<p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ee77aa">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr>
<tr><td bgcolor="#ee77aa"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl>
<dt><font face="helvetica, arial"><a href="geosolver.method.html#Method">geosolver.method.Method</a>
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="geosolver.multimethod.html#MultiMethod">MultiMethod</a>
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="geosolver.multimethod.html#SumProdMethod">SumProdMethod</a>
</font></dt></dl>
</dd>
</dl>
</dd>
<dt><font face="helvetica, arial"><a href="geosolver.multimethod.html#MultiVariable">MultiVariable</a>
</font></dt></dl>
<p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="MultiMethod">class <strong>MultiMethod</strong></a>(<a href="geosolver.method.html#Method">geosolver.method.Method</a>)</font></td></tr>
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt>A&nbsp;<a href="geosolver.method.html#Method">Method</a>&nbsp;that&nbsp;is&nbsp;executed&nbsp;for&nbsp;multiple&nbsp;alternative&nbsp;inputs,&nbsp;resulting<br>
in&nbsp;multiple&nbsp;output&nbsp;values.&nbsp;<br>
&nbsp;<br>
Input&nbsp;may&nbsp;optionally&nbsp;contain&nbsp;<a href="#MultiVariable">MultiVariable</a>&nbsp;instances.<br>
There&nbsp;must&nbsp;be&nbsp;a&nbsp;single&nbsp;<a href="#MultiVariable">MultiVariable</a>&nbsp;output&nbsp;variable&nbsp;<br>
&nbsp;<br>
Subclasses&nbsp;should&nbsp;implement&nbsp;the&nbsp;'multi_execute'&nbsp;method,&nbsp;not&nbsp;overide&nbsp;the&nbsp;'execute'&nbsp;method.<br>
This&nbsp;method&nbsp;is&nbsp;called&nbsp;for&nbsp;every&nbsp;permutation&nbsp;of&nbsp;values&nbsp;of&nbsp;multi-valued&nbsp;input&nbsp;variables.<br>
&nbsp;<br>
Any&nbsp;input&nbsp;variables&nbsp;that&nbsp;are&nbsp;instances&nbsp;of&nbsp;<a href="#MultiVariable">MultiVariable</a>&nbsp;will&nbsp;be&nbsp;replaced&nbsp;by&nbsp;their<br>
shadowed&nbsp;counterpart&nbsp;in&nbsp;the&nbsp;input&nbsp;map&nbsp;for&nbsp;multi_execute.<br>
&nbsp;<br>
The&nbsp;'multi_execute'&nbsp;method&nbsp;must&nbsp;return&nbsp;a&nbsp;list&nbsp;of&nbsp;possible&nbsp;values&nbsp;for&nbsp;the&nbsp;output&nbsp;variable.<br>
The&nbsp;output&nbsp;values&nbsp;returned&nbsp;by&nbsp;subsequent&nbsp;calls&nbsp;multi-execute&nbsp;are&nbsp;collected&nbsp;and&nbsp;stored&nbsp;in&nbsp;the&nbsp;<br>
output&nbsp;<a href="#MultiVariable">MultiVariable</a>.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%">Methods defined here:<br>
<dl><dt><a name="MultiMethod-__init__"><strong>__init__</strong></a>(self)</dt><dd><tt>Call&nbsp;this&nbsp;initialize&nbsp;after&nbsp;_inputs&nbsp;and&nbsp;_outputs&nbsp;has&nbsp;been&nbsp;set</tt></dd></dl>
<dl><dt><a name="MultiMethod-execute"><strong>execute</strong></a>(self, inmap)</dt><dd><tt>calls&nbsp;multi_execute&nbsp;for&nbsp;each&nbsp;permutation&nbsp;of&nbsp;multi-valued&nbsp;input&nbsp;variables&nbsp;and&nbsp;collects<br>
result&nbsp;in&nbsp;multi-valued&nbsp;ouput&nbsp;variables.&nbsp;Subclasses&nbsp;should&nbsp;implement&nbsp;multi_execute.</tt></dd></dl>
<hr>
Methods inherited from <a href="geosolver.method.html#Method">geosolver.method.Method</a>:<br>
<dl><dt><a name="MultiMethod-inputs"><strong>inputs</strong></a>(self)</dt><dd><tt>return&nbsp;a&nbsp;list&nbsp;of&nbsp;input&nbsp;variables<br>
&nbsp;<br>
If&nbsp;an&nbsp;attribute&nbsp;'_inputs'&nbsp;has&nbsp;been&nbsp;defined,&nbsp;a&nbsp;new&nbsp;list<br>
with&nbsp;the&nbsp;contents&nbsp;of&nbsp;that&nbsp;attribute&nbsp;will&nbsp;be&nbsp;returned.&nbsp;<br>
Subclasses&nbsp;may&nbsp;choose&nbsp;to&nbsp;initialise&nbsp;this&nbsp;variable&nbsp;or&nbsp;to&nbsp;<br>
override&nbsp;this&nbsp;function.</tt></dd></dl>
<dl><dt><a name="MultiMethod-outputs"><strong>outputs</strong></a>(self)</dt><dd><tt>return&nbsp;a&nbsp;list&nbsp;of&nbsp;output&nbsp;variables<br>
&nbsp;<br>
If&nbsp;an&nbsp;attribute&nbsp;'_outputs'&nbsp;has&nbsp;been&nbsp;defined,&nbsp;a&nbsp;new&nbsp;list<br>
with&nbsp;the&nbsp;contents&nbsp;of&nbsp;that&nbsp;attribute&nbsp;will&nbsp;be&nbsp;returned.&nbsp;<br>
Subclasses&nbsp;may&nbsp;choose&nbsp;to&nbsp;initialise&nbsp;this&nbsp;variable&nbsp;or&nbsp;to&nbsp;<br>
override&nbsp;this&nbsp;function.</tt></dd></dl>
</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="MultiVariable">class <strong>MultiVariable</strong></a></font></td></tr>
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt>For&nbsp;representing&nbsp;multi-valued&nbsp;variables<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%">Methods defined here:<br>
<dl><dt><a name="MultiVariable-__init__"><strong>__init__</strong></a>(self, name<font color="#909090">=None</font>)</dt></dl>
<dl><dt><a name="MultiVariable-__repr__"><strong>__repr__</strong></a>(self)</dt></dl>
<dl><dt><a name="MultiVariable-__str__"><strong>__str__</strong></a>(self)</dt></dl>
</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="SumProdMethod">class <strong>SumProdMethod</strong></a>(<a href="geosolver.multimethod.html#MultiMethod">MultiMethod</a>)</font></td></tr>
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt>A&nbsp;<a href="#MultiMethod">MultiMethod</a>&nbsp;that&nbsp;assigns&nbsp;the&nbsp;sum&nbsp;and&nbsp;product&nbsp;of&nbsp;its&nbsp;input&nbsp;to&nbsp;it's&nbsp;ouput&nbsp;<a href="#MultiVariable">MultiVariable</a><br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="geosolver.multimethod.html#SumProdMethod">SumProdMethod</a></dd>
<dd><a href="geosolver.multimethod.html#MultiMethod">MultiMethod</a></dd>
<dd><a href="geosolver.method.html#Method">geosolver.method.Method</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="SumProdMethod-__init__"><strong>__init__</strong></a>(self, a, b, c)</dt></dl>
<dl><dt><a name="SumProdMethod-multi_execute"><strong>multi_execute</strong></a>(self, inmap)</dt></dl>
<hr>
Methods inherited from <a href="geosolver.multimethod.html#MultiMethod">MultiMethod</a>:<br>
<dl><dt><a name="SumProdMethod-execute"><strong>execute</strong></a>(self, inmap)</dt><dd><tt>calls&nbsp;multi_execute&nbsp;for&nbsp;each&nbsp;permutation&nbsp;of&nbsp;multi-valued&nbsp;input&nbsp;variables&nbsp;and&nbsp;collects<br>
result&nbsp;in&nbsp;multi-valued&nbsp;ouput&nbsp;variables.&nbsp;Subclasses&nbsp;should&nbsp;implement&nbsp;multi_execute.</tt></dd></dl>
<hr>
Methods inherited from <a href="geosolver.method.html#Method">geosolver.method.Method</a>:<br>
<dl><dt><a name="SumProdMethod-inputs"><strong>inputs</strong></a>(self)</dt><dd><tt>return&nbsp;a&nbsp;list&nbsp;of&nbsp;input&nbsp;variables<br>
&nbsp;<br>
If&nbsp;an&nbsp;attribute&nbsp;'_inputs'&nbsp;has&nbsp;been&nbsp;defined,&nbsp;a&nbsp;new&nbsp;list<br>
with&nbsp;the&nbsp;contents&nbsp;of&nbsp;that&nbsp;attribute&nbsp;will&nbsp;be&nbsp;returned.&nbsp;<br>
Subclasses&nbsp;may&nbsp;choose&nbsp;to&nbsp;initialise&nbsp;this&nbsp;variable&nbsp;or&nbsp;to&nbsp;<br>
override&nbsp;this&nbsp;function.</tt></dd></dl>
<dl><dt><a name="SumProdMethod-outputs"><strong>outputs</strong></a>(self)</dt><dd><tt>return&nbsp;a&nbsp;list&nbsp;of&nbsp;output&nbsp;variables<br>
&nbsp;<br>
If&nbsp;an&nbsp;attribute&nbsp;'_outputs'&nbsp;has&nbsp;been&nbsp;defined,&nbsp;a&nbsp;new&nbsp;list<br>
with&nbsp;the&nbsp;contents&nbsp;of&nbsp;that&nbsp;attribute&nbsp;will&nbsp;be&nbsp;returned.&nbsp;<br>
Subclasses&nbsp;may&nbsp;choose&nbsp;to&nbsp;initialise&nbsp;this&nbsp;variable&nbsp;or&nbsp;to&nbsp;<br>
override&nbsp;this&nbsp;function.</tt></dd></dl>
</td></tr></table></td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#eeaa77">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Functions</strong></big></font></td></tr>
<tr><td bgcolor="#eeaa77"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl><dt><a name="-test"><strong>test</strong></a>()</dt></dl>
</td></tr></table>
</body></html>