<!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::Location 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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="a00256.html">frepple</a>::<a class="el" href="a00108.html">Location</a> </div> </div> <div class="contents"> <h1>frepple::Location Class Reference</h1><!-- doxytag: class="frepple::Location" --><!-- doxytag: inherits="HasHierarchy< Location >,frepple::utils::HasDescription" --> <p>This abstract class is used to associate buffers and resources with a physical or logical location. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="a00218_source.html">model.h</a>></code></p> <div class="dynheader"> Inheritance diagram for frepple::Location:</div> <div class="dynsection"> <div class="center"><img src="a00449.png" border="0" usemap="#frepple_1_1_location_inherit__map" alt="Inheritance graph"/></div> <map name="frepple_1_1_location_inherit__map" id="frepple_1_1_location_inherit__map"> <area shape="rect" id="node17" href="a00109.html" title="This class implements the abstract Location class." alt="" coords="343,393,497,421"/> <area shape="rect" id="node2" href="a00083.html" title="frepple::utils::HasHierarchy\< Location \>" alt="" coords="173,238,424,266"/> <area shape="rect" id="node4" href="a00085.html" title="frepple::utils::HasName\< Location \>" alt="" coords="184,161,413,189"/> <area shape="rect" id="node6" href="a00119.html" title="Class NonCopyable is a base class. Derive your own class from it when you want to..." alt="" coords="5,83,181,111"/> <area shape="rect" id="node8" href="a00182.html" title="This class represents a node in the tree." alt="" coords="205,83,392,111"/> <area shape="rect" id="node10" href="a00120.html" title="Object is the abstract base class for the main entities." alt="" coords="416,83,552,111"/> <area shape="rect" id="node12" href="a00151.html" title="This is a base class for all Python extension types." alt="" coords="371,6,597,34"/> <area shape="rect" id="node14" href="a00082.html" title="This is a decorator class for the main objects." alt="" coords="448,238,635,266"/> </map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a00450.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">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a430a5428c04c0c1131466bc7de1dcb1f">beginElement</a> (<a class="el" href="a00186.html">XMLInput</a> &, const <a class="el" href="a00002.html">Attribute</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a4ed966c56ce9f0d36c2eafdf6d33c9a8">endElement</a> (<a class="el" href="a00186.html">XMLInput</a> &, const <a class="el" href="a00002.html">Attribute</a> &, const <a class="el" href="a00047.html">DataElement</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a2587326b700889cad3ce7db601943f33">extrasize</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual PyObject * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a15125fad576444b4360ef28cb6efa096">getattro</a> (const <a class="el" href="a00002.html">Attribute</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00014.html">CalendarBool</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a3a3b3ab670150640d5cd3bceeebefb1d">getAvailable</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00115.html">MetaClass</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#ae327550a752230556b704f37da5070a9">getType</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#ac9142801089c83ed1700a56f1ed46b32">Location</a> (const string &n)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#ab9d19fa69867261f7dc77acd98899421">setattro</a> (const <a class="el" href="a00002.html">Attribute</a> &, const <a class="el" href="a00154.html">PythonObject</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a503de87947b17b97a6bb01db34466681">setAvailable</a> (<a class="el" href="a00014.html">CalendarBool</a> *b)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a67e5982fe4bf68635fb5ebbaa3bed6df">writeElement</a> (<a class="el" href="a00189.html">XMLOutput</a> *, const <a class="el" href="a00096.html">Keyword</a> &, <a class="el" href="a00257.html#a20c2c7e4c6b668e71c154ae3eb18f398">mode</a>=DEFAULT) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a0041e9f0bbc42321f7b7eff988ebb422">~Location</a> ()</td></tr> <tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a390cebd05f89530a01f375169e77883f">initialize</a> ()</td></tr> <tr><td colspan="2"><h2>Static Public Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html#a92b7d2941cf8330f08acd95992dc89ad">metadata</a></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>This abstract class is used to associate buffers and resources with a physical or logical location. </p> <p>The 'available' calendar is used to model the working hours and holidays of resources, buffers and operations. </p> <p>Definition at line <a class="el" href="a00218_source.html#l01404">1404</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ac9142801089c83ed1700a56f1ed46b32"></a><!-- doxytag: member="frepple::Location::Location" ref="ac9142801089c83ed1700a56f1ed46b32" args="(const string &n)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">frepple::Location::Location </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>n</em></td> <td> ) </td> <td><code> [inline, explicit]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <p>Definition at line <a class="el" href="a00218_source.html#l01408">1408</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <a class="anchor" id="a0041e9f0bbc42321f7b7eff988ebb422"></a><!-- doxytag: member="frepple::Location::~Location" ref="a0041e9f0bbc42321f7b7eff988ebb422" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">frepple::Location::~Location </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Destructor. </p> <p>Definition at line <a class="el" href="a00214_source.html#l00113">113</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a430a5428c04c0c1131466bc7de1dcb1f"></a><!-- doxytag: member="frepple::Location::beginElement" ref="a430a5428c04c0c1131466bc7de1dcb1f" args="(XMLInput &, const Attribute &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void frepple::Location::beginElement </td> <td>(</td> <td class="paramtype"><a class="el" href="a00186.html">XMLInput</a> & </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> & </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Called while restoring the model from an XML-file.<br/> This is called for each element within the "this" element, for which the "this" element is immediate parent.<br/> It is called when the open element tag is encountered. </p> <p>Reimplemented from <a class="el" href="a00083.html#a41b02672884e4e1dcb08d64a46ad968d">frepple::utils::HasHierarchy< Location ></a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00080">80</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <a class="anchor" id="a4ed966c56ce9f0d36c2eafdf6d33c9a8"></a><!-- doxytag: member="frepple::Location::endElement" ref="a4ed966c56ce9f0d36c2eafdf6d33c9a8" args="(XMLInput &, const Attribute &, const DataElement &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void frepple::Location::endElement </td> <td>(</td> <td class="paramtype"><a class="el" href="a00186.html">XMLInput</a> & </td> <td class="paramname"> <em>pIn</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> & </td> <td class="paramname"> <em>pAttr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00047.html">DataElement</a> & </td> <td class="paramname"> <em>pElement</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented from <a class="el" href="a00082.html#ad6c2b65721b36431bcbb8d6e218fde7c">frepple::utils::HasDescription</a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00089">89</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <a class="anchor" id="a2587326b700889cad3ce7db601943f33"></a><!-- doxytag: member="frepple::Location::extrasize" ref="a2587326b700889cad3ce7db601943f33" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t frepple::Location::extrasize </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Returns the memory size in bytes. </p> <p>Reimplemented from <a class="el" href="a00082.html#a3cfae26eb004dfe977271fdedacbb5e3">frepple::utils::HasDescription</a>.</p> <p>Definition at line <a class="el" href="a00218_source.html#l01427">1427</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <a class="anchor" id="a15125fad576444b4360ef28cb6efa096"></a><!-- doxytag: member="frepple::Location::getattro" ref="a15125fad576444b4360ef28cb6efa096" args="(const Attribute &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">PyObject * frepple::Location::getattro </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> & </td> <td class="paramname"> <em>attr</em></td> <td> ) </td> <td><code> [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 from <a class="el" href="a00151.html#af3cfc29003472070ba9e133bcf5eb335">frepple::utils::PythonExtensionBase</a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00132">132</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <a class="anchor" id="a3a3b3ab670150640d5cd3bceeebefb1d"></a><!-- doxytag: member="frepple::Location::getAvailable" ref="a3a3b3ab670150640d5cd3bceeebefb1d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00014.html">CalendarBool</a>* frepple::Location::getAvailable </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Returns the availability calendar of the location.<br/> The availability calendar models the working hours and holidays. It applies to all operations, resources and buffers using this location. </p> <p>Definition at line <a class="el" href="a00218_source.html#l01417">1417</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <a class="anchor" id="ae327550a752230556b704f37da5070a9"></a><!-- doxytag: member="frepple::Location::getType" ref="ae327550a752230556b704f37da5070a9" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const <a class="el" href="a00115.html">MetaClass</a>& frepple::Location::getType </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>This returns the type information on the object, a bit similar to the standard type_info information. </p> <p>Implements <a class="el" href="a00120.html#a2e5ff5e5d9c32647f692abd04a0d72d2">frepple::utils::Object</a>.</p> <p>Reimplemented in <a class="el" href="a00109.html#aec32259b50fcb46e25d035f31376499b">frepple::LocationDefault</a>.</p> <p>Definition at line <a class="el" href="a00218_source.html#l01429">1429</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <a class="anchor" id="a390cebd05f89530a01f375169e77883f"></a><!-- doxytag: member="frepple::Location::initialize" ref="a390cebd05f89530a01f375169e77883f" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int frepple::Location::initialize </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented in <a class="el" href="a00109.html#a0b4d7b8e438e432528b5de92711321bf">frepple::LocationDefault</a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00039">39</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <a class="anchor" id="ab9d19fa69867261f7dc77acd98899421"></a><!-- doxytag: member="frepple::Location::setattro" ref="ab9d19fa69867261f7dc77acd98899421" args="(const Attribute &, const PythonObject &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int frepple::Location::setattro </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> & </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> & </td> <td class="paramname"> <em>field</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [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 from <a class="el" href="a00151.html#a0a1bd051198a1b82fd23d3ca04c3ee8d">frepple::utils::PythonExtensionBase</a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00152">152</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <a class="anchor" id="a503de87947b17b97a6bb01db34466681"></a><!-- doxytag: member="frepple::Location::setAvailable" ref="a503de87947b17b97a6bb01db34466681" args="(CalendarBool *b)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void frepple::Location::setAvailable </td> <td>(</td> <td class="paramtype"><a class="el" href="a00014.html">CalendarBool</a> * </td> <td class="paramname"> <em>b</em></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Updates the availability calend of the location. </p> <p>Definition at line <a class="el" href="a00218_source.html#l01420">1420</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <a class="anchor" id="a67e5982fe4bf68635fb5ebbaa3bed6df"></a><!-- doxytag: member="frepple::Location::writeElement" ref="a67e5982fe4bf68635fb5ebbaa3bed6df" args="(XMLOutput *, const Keyword &, mode=DEFAULT) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void frepple::Location::writeElement </td> <td>(</td> <td class="paramtype"><a class="el" href="a00189.html">XMLOutput</a> * </td> <td class="paramname"> <em>o</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00096.html">Keyword</a> & </td> <td class="paramname"> <em>tag</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00257.html#a20c2c7e4c6b668e71c154ae3eb18f398">mode</a> </td> <td class="paramname"> <em>m</em> = <code>DEFAULT</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented from <a class="el" href="a00082.html#aff43518d92c1ac8298ce3df9ad4c9fbb">frepple::utils::HasDescription</a>.</p> <p>Definition at line <a class="el" href="a00214_source.html#l00060">60</a> of file <a class="el" href="a00214_source.html">location.cpp</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a92b7d2941cf8330f08acd95992dc89ad"></a><!-- doxytag: member="frepple::Location::metadata" ref="a92b7d2941cf8330f08acd95992dc89ad" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * <a class="el" href="a00108.html#a92b7d2941cf8330f08acd95992dc89ad">frepple::Location::metadata</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented in <a class="el" href="a00109.html#a0a827067f3a01670c6dc4b4cb22ab709">frepple::LocationDefault</a>.</p> <p>Definition at line <a class="el" href="a00218_source.html#l01430">1430</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="a00218_source.html">model.h</a></li> <li><a class="el" href="a00214_source.html">location.cpp</a></li> </ul> </div> <hr size="1"/><address style="align: right;"><small>Documentation generated for frePPLe by <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>