Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 54cac1c2268db633d66eeff1b4faa585 > files > 427

frepple-doc-0.8.1-3.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>C++ API frePPLe: frepple::utils::PythonExtensionBase Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="../styles.css" rel="stylesheet"  type="text/css">
</head>
<body>
<div id="container">

<div id="menubar"> 
<div id="logo" align="center">
<br/><img src='../frepple.bmp' alt="frepple" /><br/>
<a href='http://www.frepple.com/'>
<strong>a Free<br/>Production Planning<br/>Library</strong>
</a>
</div>
<div id="menu">
<br/>
<h3><a href='../Main/HomePage.html'>Main</a></h3>
<h3><a href='../UI/Main.html'>User Manual</a></h3>
<h3><a href='../Tutorial/Main.html'>Tutorial</a></h3>
<h3><a href='../Frepple/Main.html'>Reference Manual</a></h3>
<h3><a href='../Main/FAQ.html'>FAQ</a></h3>
<h3><a href='index.html'>C++ API</a></h3>
<br/>
</div>  
</div>

<div id="content">
<br/>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="a00256.html">frepple</a>::<a class="el" href="a00257.html">utils</a>::<a class="el" href="a00151.html">PythonExtensionBase</a>
  </div>
</div>
<div class="contents">
<h1>frepple::utils::PythonExtensionBase Class Reference</h1><!-- doxytag: class="frepple::utils::PythonExtensionBase" -->
<p>This is a base class for all Python extension types.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00252_source.html">utils.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for frepple::utils::PythonExtensionBase:</div>
<div class="dynsection">
<div class="center"><img src="a00616.png" border="0" usemap="#frepple_1_1utils_1_1_python_extension_base_inherit__map" alt="Inheritance graph"/></div>
<map name="frepple_1_1utils_1_1_python_extension_base_inherit__map" id="frepple_1_1utils_1_1_python_extension_base_inherit__map">
<area shape="rect" id="node3" href="a00068.html" title="A flowplan represents a planned material flow in or out of a buffer." alt="" coords="416,410,536,438"/>
<area shape="rect" id="node5" href="a00105.html" title="This class represents the resource capacity of an operationplan." alt="" coords="416,461,536,489"/>
<area shape="rect" id="node7" href="a00120.html" title="Object is the abstract base class for the main entities." alt="" coords="408,511,544,539"/>
<area shape="rect" id="node47" href="a00150.html" title="Template class to define Python extensions." alt="" coords="361,562,591,590"/>
<area shape="rect" id="node49" href="a00150.html" title="frepple::utils::PythonExtension\&lt; BufferIterator \&gt;" alt="" coords="328,613,624,641"/>
<area shape="rect" id="node53" href="a00150.html" title="frepple::utils::PythonExtension\&lt; CalendarBucketIterator \&gt;" alt="" coords="299,663,653,691"/>
<area shape="rect" id="node57" href="a00150.html" title="frepple::utils::PythonExtension\&lt; CalendarEventIterator \&gt;" alt="" coords="304,714,648,742"/>
<area shape="rect" id="node59" href="a00150.html" title="frepple::utils::PythonExtension\&lt; CalendarIterator \&gt;" alt="" coords="320,765,632,793"/>
<area shape="rect" id="node61" href="a00150.html" title="frepple::utils::PythonExtension\&lt; CustomerIterator \&gt;" alt="" coords="317,815,635,843"/>
<area shape="rect" id="node63" href="a00150.html" title="frepple::utils::PythonExtension\&lt; DemandIterator \&gt;" alt="" coords="321,866,631,894"/>
<area shape="rect" id="node65" href="a00150.html" title="frepple::utils::PythonExtension\&lt; DemandPlanIterator \&gt;" alt="" coords="308,917,644,945"/>
<area shape="rect" id="node67" href="a00150.html" title="frepple::utils::PythonExtension\&lt; FlowIterator \&gt;" alt="" coords="332,967,620,995"/>
<area shape="rect" id="node69" href="a00150.html" title="frepple::utils::PythonExtension\&lt; FlowPlanIterator \&gt;" alt="" coords="319,1018,633,1046"/>
<area shape="rect" id="node71" href="a00150.html" title="frepple::utils::PythonExtension\&lt; FreppleCategory\&lt; T \&gt; \&gt;" alt="" coords="303,1069,649,1097"/>
<area shape="rect" id="node73" href="a00150.html" title="frepple::utils::PythonExtension\&lt; FreppleClass\&lt; ME, BASE \&gt; \&gt;" alt="" coords="283,1119,669,1147"/>
<area shape="rect" id="node75" href="a00150.html" title="frepple::utils::PythonExtension\&lt; ItemIterator \&gt;" alt="" coords="332,1170,620,1198"/>
<area shape="rect" id="node77" href="a00150.html" title="frepple::utils::PythonExtension\&lt; LoadIterator \&gt;" alt="" coords="331,1221,621,1249"/>
<area shape="rect" id="node79" href="a00150.html" title="frepple::utils::PythonExtension\&lt; LoadPlanIterator \&gt;" alt="" coords="319,1271,633,1299"/>
<area shape="rect" id="node81" href="a00150.html" title="frepple::utils::PythonExtension\&lt; LocationIterator \&gt;" alt="" coords="320,1322,632,1350"/>
<area shape="rect" id="node83" href="a00150.html" title="frepple::utils::PythonExtension\&lt; ME \&gt;" alt="" coords="355,1373,597,1401"/>
<area shape="rect" id="node85" href="a00150.html" title="frepple::utils::PythonExtension\&lt; OperationIterator \&gt;" alt="" coords="317,1423,635,1451"/>
<area shape="rect" id="node87" href="a00150.html" title="frepple::utils::PythonExtension\&lt; OperationPlanIterator \&gt;" alt="" coords="304,1474,648,1502"/>
<area shape="rect" id="node89" href="a00150.html" title="frepple::utils::PythonExtension\&lt; ProblemIterator \&gt;" alt="" coords="321,1525,631,1553"/>
<area shape="rect" id="node91" href="a00150.html" title="frepple::utils::PythonExtension\&lt; ResourceIterator \&gt;" alt="" coords="317,1575,635,1603"/>
<area shape="rect" id="node93" href="a00150.html" title="frepple::utils::PythonExtension\&lt; SetupMatrixIterator \&gt;" alt="" coords="311,1626,641,1654"/>
<area shape="rect" id="node95" href="a00150.html" title="frepple::utils::PythonExtension\&lt; SetupMatrixRuleIterator \&gt;" alt="" coords="297,1677,655,1705"/>
<area shape="rect" id="node97" href="a00150.html" title="frepple::utils::PythonExtension\&lt; SolverIterator \&gt;" alt="" coords="328,1727,624,1755"/>
<area shape="rect" id="node9" href="a00004.html" title="This class represents a time bucket as a part of a calendar." alt="" coords="839,5,1007,33"/>
<area shape="rect" id="node11" href="a00065.html" title="This class defines a material flow to/from a buffer, linked with an operation. This..." alt="" coords="876,55,969,83"/>
<area shape="rect" id="node13" href="a00103.html" title="This class links a resource to a certain operation." alt="" coords="875,106,971,134"/>
<area shape="rect" id="node15" href="a00125.html" title="An operationplan is the key dynamic element of a plan. It represents a certain quantity..." alt="" coords="848,157,997,185"/>
<area shape="rect" id="node17" href="a00131.html" title="This class allows upstream and downstream navigation through the plan." alt="" coords="845,207,1000,235"/>
<area shape="rect" id="node19" href="a00132.html" title="This is the (logical) top class of the complete model." alt="" coords="876,258,969,286"/>
<area shape="rect" id="node21" href="a00134.html" title="A problem represents infeasibilities, alerts and warnings in the plan." alt="" coords="865,309,980,337"/>
<area shape="rect" id="node23" href="a00160.html" title="An specific changeover rule in a setup matrix." alt="" coords="837,359,1008,387"/>
<area shape="rect" id="node25" href="a00085.html" title="Base class for objects using a string as their primary key." alt="" coords="829,410,1016,438"/>
<area shape="rect" id="node27" href="a00085.html" title="frepple::utils::HasName\&lt; Buffer \&gt;" alt="" coords="816,461,1029,489"/>
<area shape="rect" id="node29" href="a00085.html" title="frepple::utils::HasName\&lt; Calendar \&gt;" alt="" coords="807,511,1039,539"/>
<area shape="rect" id="node31" href="a00085.html" title="frepple::utils::HasName\&lt; Customer \&gt;" alt="" coords="805,562,1040,590"/>
<area shape="rect" id="node33" href="a00085.html" title="frepple::utils::HasName\&lt; Demand \&gt;" alt="" coords="809,613,1036,641"/>
<area shape="rect" id="node35" href="a00085.html" title="frepple::utils::HasName\&lt; Item \&gt;" alt="" coords="820,663,1025,691"/>
<area shape="rect" id="node37" href="a00085.html" title="frepple::utils::HasName\&lt; Location \&gt;" alt="" coords="808,714,1037,742"/>
<area shape="rect" id="node39" href="a00085.html" title="frepple::utils::HasName\&lt; Operation \&gt;" alt="" coords="805,765,1040,793"/>
<area shape="rect" id="node41" href="a00085.html" title="frepple::utils::HasName\&lt; Resource \&gt;" alt="" coords="805,815,1040,843"/>
<area shape="rect" id="node43" href="a00085.html" title="frepple::utils::HasName\&lt; SetupMatrix \&gt;" alt="" coords="797,866,1048,894"/>
<area shape="rect" id="node45" href="a00085.html" title="frepple::utils::HasName\&lt; Solver \&gt;" alt="" coords="815,917,1031,945"/>
<area shape="rect" id="node51" href="a00078.html" title="frepple::utils::FreppleIterator\&lt; BufferIterator, Buffer::iterator, Buffer \&gt;" alt="" coords="719,967,1127,995"/>
<area shape="rect" id="node55" href="a00015.html" title="frepple::CalendarBucketIterator" alt="" coords="823,1018,1023,1046"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a00617.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a685ab10593f4b278d0bf6915981dcb40">call</a> (const <a class="el" href="a00154.html">PythonObject</a> &amp;args, const <a class="el" href="a00154.html">PythonObject</a> &amp;kwds)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a5f7e4126cc181a0c359dba281f54e95f">compare</a> (const PyObject *other) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#af3cfc29003472070ba9e133bcf5eb335">getattro</a> (const <a class="el" href="a00002.html">Attribute</a> &amp;attr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a3810c6f2d325a75bd6c94eaae27448c3">initType</a> (PyTypeObject *t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#ae5f2cd7cfa5367e07b3de396fe98fbfd">initType</a> (const <a class="el" href="a00115.html">MetaClass</a> *t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a9f386d029e66cd76c317f5575abd4686">iternext</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#ac388f4ebbe0a1ef0c357c6716296ed56">PythonExtensionBase</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a0a1bd051198a1b82fd23d3ca04c3ee8d">setattro</a> (const <a class="el" href="a00002.html">Attribute</a> &amp;attr, const <a class="el" href="a00154.html">PythonObject</a> &amp;field)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a5107e1ef282ff7f6b4e9cd47e74bb069">str</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a97cfe271690b9dd3a2985c574cb8d912">~PythonExtensionBase</a> ()</td></tr>
<tr><td colspan="2"><h2>Static Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00155.html">PythonType</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a052b89b0a21ae6da1a4a8dbeb2a97a6c">registerPythonType</a> (int, const type_info *)</td></tr>
<tr><td colspan="2"><h2>Static Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static vector&lt; <a class="el" href="a00155.html">PythonType</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html#a67eb776e52371040a3b5eb76683a4760">table</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This is a base class for all Python extension types. </p>
<p>When creating you own extensions, inherit from the <a class="el" href="a00150.html" title="Template class to define Python extensions.">PythonExtension</a> template class instead of this one.</p>
<p>It inherits from the PyObject C struct, defined in the Python C API.<br/>
 These functions aren't called directly from Python. Python first calls a handler C-function and the handler function will use a virtual call to run the correct C++-method.</p>
<p>Our extensions don't use the usual Python heap allocator. They are created and initialized with the regular C++ new and delete. A special deallocator is called from Python to delete objects when their reference count reaches zero. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03149">3149</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ac388f4ebbe0a1ef0c357c6716296ed56"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::PythonExtensionBase" ref="ac388f4ebbe0a1ef0c357c6716296ed56" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">frepple::utils::PythonExtensionBase::PythonExtensionBase </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default constructor </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03153">3153</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a97cfe271690b9dd3a2985c574cb8d912"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::~PythonExtensionBase" ref="a97cfe271690b9dd3a2985c574cb8d912" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual frepple::utils::PythonExtensionBase::~PythonExtensionBase </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Destructor. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03156">3156</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a685ab10593f4b278d0bf6915981dcb40"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::call" ref="a685ab10593f4b278d0bf6915981dcb40" args="(const PythonObject &amp;args, const PythonObject &amp;kwds)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual PyObject* frepple::utils::PythonExtensionBase::call </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00154.html">PythonObject</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>args</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00154.html">PythonObject</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>kwds</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default call method. <br/>
 Subclasses are expected to implement an override if the type supports calls. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03220">3220</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5f7e4126cc181a0c359dba281f54e95f"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::compare" ref="a5f7e4126cc181a0c359dba281f54e95f" args="(const PyObject *other) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int frepple::utils::PythonExtensionBase::compare </td>
          <td>(</td>
          <td class="paramtype">const PyObject *&nbsp;</td>
          <td class="paramname"> <em>other</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default compare method. <br/>
 Subclasses are expected to implement an override if the type supports compare. </p>

<p>Reimplemented in <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; T &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Item &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Location &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Calendar &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Solver &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; SetupMatrix &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Demand &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Customer &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Resource &gt;</a>, <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Operation &gt;</a>, and <a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">frepple::utils::HasName&lt; Buffer &gt;</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l03200">3200</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="af3cfc29003472070ba9e133bcf5eb335"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::getattro" ref="af3cfc29003472070ba9e133bcf5eb335" args="(const Attribute &amp;attr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual PyObject* frepple::utils::PythonExtensionBase::getattro </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>attr</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default getattro method. <br/>
 Subclasses are expected to implement an override if the type supports gettattro. </p>

<p>Reimplemented in <a class="el" href="a00004.html#a05cd3bbccc162fb0b2f1f3b8b455fa20">frepple::Calendar::Bucket</a>, <a class="el" href="a00013.html#a6442a6ddc64df28e310a8ed23eee53ad">frepple::Calendar</a>, <a class="el" href="a00016.html#ac3d3a78412cbb6d7fba4dfc8bd75c4e2">frepple::CalendarDouble</a>, <a class="el" href="a00018.html#a9b7480fd3fde9bbd3223724dc4cccbce">frepple::CalendarInt</a>, <a class="el" href="a00014.html#a46a0799cf04a4f95cfd313c65bea577d">frepple::CalendarBool</a>, <a class="el" href="a00022.html#af64080a52d06472941bb0bc448d2744b">frepple::CalendarString</a>, <a class="el" href="a00020.html#a9db7563f67b7ed94af7d513e1607d4b1">frepple::CalendarOperation</a>, <a class="el" href="a00134.html#a0e4d549feb1341e3e0a24a6dc554ee4a">frepple::Problem</a>, <a class="el" href="a00171.html#adfd5b71beb06efcdd5f382734df6dcd9">frepple::Solver</a>, <a class="el" href="a00108.html#a15125fad576444b4360ef28cb6efa096">frepple::Location</a>, <a class="el" href="a00044.html#a047a380178082731d71876cd40051ff8">frepple::Customer</a>, <a class="el" href="a00121.html#a0681225944aef2db5421e5a5f7f710c1">frepple::Operation</a>, <a class="el" href="a00125.html#af0927db9852c532d8613b2aadf0caeb4">frepple::OperationPlan</a>, <a class="el" href="a00123.html#ac5f14aa11baf05605a6db60ecef1b288">frepple::OperationFixedTime</a>, <a class="el" href="a00130.html#ab848b039e95e902500a35497babc9cf5">frepple::OperationTimePer</a>, <a class="el" href="a00128.html#a5d33554349a36ca63ed8062504e8759c">frepple::OperationRouting</a>, <a class="el" href="a00122.html#aca0c41e63d37719114c08f1c0e709664">frepple::OperationAlternate</a>, <a class="el" href="a00088.html#a5892cc59203d5f3c815e39076d8e4cd3">frepple::Item</a>, <a class="el" href="a00008.html#ab843613e4155345fc443d514e2a5733c">frepple::Buffer</a>, <a class="el" href="a00012.html#af131c8bbe4797a65df984c7715ebb07a">frepple::BufferProcure</a>, <a class="el" href="a00160.html#ae9aef1dfff28ff034dfeee764a212f6b">frepple::SetupMatrix::Rule</a>, <a class="el" href="a00165.html#a95cfcffab5777c42c5594f52f54e24cf">frepple::SetupMatrix</a>, <a class="el" href="a00156.html#a9d6cf8567db1286e8903a9370010274d">frepple::Resource</a>, <a class="el" href="a00103.html#a9bcc4b30fb83164c39ffb294b86c2832">frepple::Load</a>, <a class="el" href="a00132.html#adb96bf22aea81017e5a22e1a79e66346">frepple::Plan</a>, <a class="el" href="a00051.html#a24cb2ab980abd3b6d69b4d8356c5df0d">frepple::Demand</a>, <a class="el" href="a00105.html#a9a3adbd225be3dac4ff62f622b1b6a66">frepple::LoadPlan</a>, <a class="el" href="a00173.html#a7cde63ea91a5b9a65e2454093c160b70">frepple::SolverMRP</a>, <a class="el" href="a00072.html#aec8f8c238a8cb202cd176332b71ebd3b">module_forecast::Forecast</a>, <a class="el" href="a00073.html#ade3f84f6ad92522fff6f76792b24c796">module_forecast::ForecastBucket</a>, and <a class="el" href="a00112.html#a05c791c87438080ee3dccf793d1d7e51">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l03180">3180</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3810c6f2d325a75bd6c94eaae27448c3"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::initType" ref="a3810c6f2d325a75bd6c94eaae27448c3" args="(PyTypeObject *t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::utils::PythonExtensionBase::initType </td>
          <td>(</td>
          <td class="paramtype">PyTypeObject *&nbsp;</td>
          <td class="paramname"> <em>t</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Initialize the object to a certain Python type. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03171">3171</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae5f2cd7cfa5367e07b3de396fe98fbfd"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::initType" ref="ae5f2cd7cfa5367e07b3de396fe98fbfd" args="(const MetaClass *t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::utils::PythonExtensionBase::initType </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00115.html">MetaClass</a> *&nbsp;</td>
          <td class="paramname"> <em>t</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Initialize the object to a certain Python type. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03165">3165</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9f386d029e66cd76c317f5575abd4686"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::iternext" ref="a9f386d029e66cd76c317f5575abd4686" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual PyObject* frepple::utils::PythonExtensionBase::iternext </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default iternext method. <br/>
 Subclasses are expected to implement an override if the type supports iteration. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l03210">3210</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a052b89b0a21ae6da1a4a8dbeb2a97a6c"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::registerPythonType" ref="a052b89b0a21ae6da1a4a8dbeb2a97a6c" args="(int, const type_info *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00155.html">PythonType</a> * frepple::utils::PythonExtensionBase::registerPythonType </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const type_info *&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00233_source.html#l00446">446</a> of file <a class="el" href="a00233_source.html">pythonutils.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0a1bd051198a1b82fd23d3ca04c3ee8d"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::setattro" ref="a0a1bd051198a1b82fd23d3ca04c3ee8d" args="(const Attribute &amp;attr, const PythonObject &amp;field)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int frepple::utils::PythonExtensionBase::setattro </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00154.html">PythonObject</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>field</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default setattro method. <br/>
 Subclasses are expected to implement an override if the type supports settattro. </p>

<p>Reimplemented in <a class="el" href="a00004.html#a970aa8fef3b7045bec049267f319a534">frepple::Calendar::Bucket</a>, <a class="el" href="a00013.html#a4de02e90183c800fa2adf3d12dfc88f3">frepple::Calendar</a>, <a class="el" href="a00016.html#ad2e6773d2dff5537d63bd47b7b68881f">frepple::CalendarDouble</a>, <a class="el" href="a00018.html#adc2a7dcf7eafdf8e600e82978587f836">frepple::CalendarInt</a>, <a class="el" href="a00014.html#aa7f58a34fede66c8807adc645f406813">frepple::CalendarBool</a>, <a class="el" href="a00022.html#a31b8b92061fd8874785b07356080b93e">frepple::CalendarString</a>, <a class="el" href="a00020.html#a0d49b6951511edf6574a258ecb943120">frepple::CalendarOperation</a>, <a class="el" href="a00171.html#a238d13fba4132fee44d612f3e2d5b335">frepple::Solver</a>, <a class="el" href="a00108.html#ab9d19fa69867261f7dc77acd98899421">frepple::Location</a>, <a class="el" href="a00044.html#a8157599f29ca0b90287dae1b194e0ab9">frepple::Customer</a>, <a class="el" href="a00121.html#a494bac93a19785d858ed4553eb444166">frepple::Operation</a>, <a class="el" href="a00125.html#aa8b58849f7ad109c44163e97cfb0676c">frepple::OperationPlan</a>, <a class="el" href="a00123.html#aa34a37033c58f0777fc76a3824f35586">frepple::OperationFixedTime</a>, <a class="el" href="a00130.html#a943a4be921c6a204fbd101a4878609d4">frepple::OperationTimePer</a>, <a class="el" href="a00122.html#a4adc5f876e7f8719b61f27770e0ed4e0">frepple::OperationAlternate</a>, <a class="el" href="a00088.html#a18892d863689b8ea0f87d2e8721fec5c">frepple::Item</a>, <a class="el" href="a00008.html#af128af0e9d1496b37f07f1c514e3772a">frepple::Buffer</a>, <a class="el" href="a00012.html#a658c30657777eef355b7207b9b1d13b1">frepple::BufferProcure</a>, <a class="el" href="a00160.html#ab36d248ccce512ee2687ed0912345a3b">frepple::SetupMatrix::Rule</a>, <a class="el" href="a00165.html#adf66d9dae820a2b0f1e7b1ae3b544232">frepple::SetupMatrix</a>, <a class="el" href="a00156.html#a3fc21124733af95e743bd8259a9f54ad">frepple::Resource</a>, <a class="el" href="a00103.html#af71ff01487d4c328888ff9730bc06d50">frepple::Load</a>, <a class="el" href="a00132.html#aaa8813a55cf233ef424fea26df99d12f">frepple::Plan</a>, <a class="el" href="a00051.html#a088c9f23e4be2ff8413c9de6449f4c74">frepple::Demand</a>, <a class="el" href="a00173.html#a0ff1f4d1312dca29b36e01ac052643ae">frepple::SolverMRP</a>, <a class="el" href="a00072.html#a2427de0bf9ce7f2ca779b8740deced52">module_forecast::Forecast</a>, <a class="el" href="a00073.html#ab457351555ddc014de20f2412411ea49">module_forecast::ForecastBucket</a>, and <a class="el" href="a00112.html#a4717526cb4db2ca217646e8af799de8b">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l03190">3190</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5107e1ef282ff7f6b4e9cd47e74bb069"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::str" ref="a5107e1ef282ff7f6b4e9cd47e74bb069" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual PyObject* frepple::utils::PythonExtensionBase::str </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default str method. <br/>
 Subclasses are expected to implement an override if the type supports conversion to a string. </p>

<p>Reimplemented in <a class="el" href="a00134.html#a9ce2fc49c64c0067e9e6c210bbcd1ce9">frepple::Problem</a>, <a class="el" href="a00125.html#a1b1f4e51ed96e2f9899b10d9ae124454">frepple::OperationPlan</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; T &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Item &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Location &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Calendar &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Solver &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; SetupMatrix &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Demand &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Customer &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Resource &gt;</a>, <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Operation &gt;</a>, and <a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">frepple::utils::HasName&lt; Buffer &gt;</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l03230">3230</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a67eb776e52371040a3b5eb76683a4760"></a><!-- doxytag: member="frepple::utils::PythonExtensionBase::table" ref="a67eb776e52371040a3b5eb76683a4760" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vector&lt; <a class="el" href="a00155.html">PythonType</a> * &gt; <a class="el" href="a00151.html#a67eb776e52371040a3b5eb76683a4760">frepple::utils::PythonExtensionBase::table</a><code> [static, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00252_source.html#l03237">3237</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a00252_source.html">utils.h</a></li>
<li><a class="el" href="a00211_source.html">utils/library.cpp</a></li>
<li><a class="el" href="a00233_source.html">pythonutils.cpp</a></li>
</ul>
</div>
<hr size="1"/><address style="align: right;"><small>Documentation generated for frePPLe by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"/></a></small></address>
</div>
</div>
</body>
</html>