<!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::Tree::TreeNode 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="a00257.html">utils</a>::<a class="el" href="a00181.html">Tree</a>::<a class="el" href="a00182.html">TreeNode</a> </div> </div> <div class="contents"> <h1>frepple::utils::Tree::TreeNode Class Reference</h1><!-- doxytag: class="frepple::utils::Tree::TreeNode" --> <p>This class represents a node in the tree. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="a00252_source.html">utils.h</a>></code></p> <div class="dynheader"> Inheritance diagram for frepple::utils::Tree::TreeNode:</div> <div class="dynsection"> <div class="center"><img src="a00648.png" border="0" usemap="#frepple_1_1utils_1_1_tree_1_1_tree_node_inherit__map" alt="Inheritance graph"/></div> <map name="frepple_1_1utils_1_1_tree_1_1_tree_node_inherit__map" id="frepple_1_1utils_1_1_tree_1_1_tree_node_inherit__map"> <area shape="rect" id="node3" href="a00085.html" title="Base class for objects using a string as their primary key." alt="" coords="275,271,461,299"/> <area shape="rect" id="node7" href="a00085.html" title="frepple::utils::HasName\< Buffer \>" alt="" coords="261,373,475,401"/> <area shape="rect" id="node19" href="a00085.html" title="frepple::utils::HasName\< Calendar \>" alt="" coords="252,449,484,477"/> <area shape="rect" id="node39" href="a00085.html" title="frepple::utils::HasName\< Customer \>" alt="" coords="251,511,485,539"/> <area shape="rect" id="node45" href="a00085.html" title="frepple::utils::HasName\< Demand \>" alt="" coords="255,562,481,590"/> <area shape="rect" id="node51" href="a00085.html" title="frepple::utils::HasName\< Item \>" alt="" coords="265,613,471,641"/> <area shape="rect" id="node57" href="a00085.html" title="frepple::utils::HasName\< Location \>" alt="" coords="253,663,483,691"/> <area shape="rect" id="node63" href="a00085.html" title="frepple::utils::HasName\< Operation \>" alt="" coords="251,765,485,793"/> <area shape="rect" id="node77" href="a00085.html" title="frepple::utils::HasName\< Resource \>" alt="" coords="251,891,485,919"/> <area shape="rect" id="node83" href="a00085.html" title="frepple::utils::HasName\< SetupMatrix \>" alt="" coords="243,979,493,1007"/> <area shape="rect" id="node89" href="a00085.html" title="frepple::utils::HasName\< Solver \>" alt="" coords="260,1074,476,1102"/> <area shape="rect" id="node5" href="a00083.html" title="This is a base class for the main objects." alt="" coords="567,233,775,261"/> <area shape="rect" id="node9" href="a00083.html" title="frepple::utils::HasHierarchy\< Buffer \>" alt="" coords="553,283,788,311"/> <area shape="rect" id="node11" href="a00008.html" title="A buffer represents a combination of a item and location.  It is the entity for keeping..." alt="" coords="919,55,1017,83"/> <area shape="rect" id="node13" href="a00009.html" title="This class is the default implementation of the abstract Buffer class." alt="" coords="1140,5,1279,33"/> <area shape="rect" id="node15" href="a00010.html" title="This class represents a material buffer with an infinite supply of extra material..." alt="" coords="1141,55,1277,83"/> <area shape="rect" id="node17" href="a00012.html" title="This class models a buffer that is replenish by an external supplier using a reorder-point..." alt="" coords="1137,106,1281,134"/> <area shape="rect" id="node21" href="a00013.html" title="This is the class used to represent variables that are varying over time." alt="" coords="612,334,729,362"/> <area shape="rect" id="node23" href="a00021.html" title="frepple::CalendarPointer\< Operation \>" alt="" coords="848,106,1088,134"/> <area shape="rect" id="node25" href="a00023.html" title="frepple::CalendarValue\< bool \>" alt="" coords="868,157,1068,185"/> <area shape="rect" id="node27" href="a00023.html" title="frepple::CalendarValue\< double \>" alt="" coords="861,207,1075,235"/> <area shape="rect" id="node29" href="a00023.html" title="frepple::CalendarValue\< int \>" alt="" coords="873,258,1063,286"/> <area shape="rect" id="node31" href="a00023.html" title="frepple::CalendarValue\< string \>" alt="" coords="864,309,1072,337"/> <area shape="rect" id="node33" href="a00021.html" title="This calendar type is used to store object pointers in its buckets." alt="" coords="873,359,1063,387"/> <area shape="rect" id="node35" href="a00023.html" title="This calendar type is used to store values in its buckets." alt="" coords="877,410,1059,438"/> <area shape="rect" id="node37" href="a00024.html" title="A calendar only defining time buckets and not storing any data fields." alt="" coords="896,461,1040,489"/> <area shape="rect" id="node41" href="a00083.html" title="frepple::utils::HasHierarchy\< Customer \>" alt="" coords="543,511,799,539"/> <area shape="rect" id="node43" href="a00044.html" title="This abstracts class represents customers." alt="" coords="907,511,1029,539"/> <area shape="rect" id="node47" href="a00083.html" title="frepple::utils::HasHierarchy\< Demand \>" alt="" coords="547,562,795,590"/> <area shape="rect" id="node49" href="a00051.html" title="Represents the (independent) demand in the system. It can represent a customer order..." alt="" coords="911,562,1025,590"/> <area shape="rect" id="node53" href="a00083.html" title="frepple::utils::HasHierarchy\< Item \>" alt="" coords="557,613,784,641"/> <area shape="rect" id="node55" href="a00088.html" title="An item defines the products being planned, sold, stored and/or manufactured. Buffers..." alt="" coords="923,613,1013,641"/> <area shape="rect" id="node59" href="a00083.html" title="frepple::utils::HasHierarchy\< Location \>" alt="" coords="545,663,796,691"/> <area shape="rect" id="node61" href="a00108.html" title="This abstract class is used to associate buffers and resources with a physical or..." alt="" coords="911,663,1025,691"/> <area shape="rect" id="node65" href="a00121.html" title="An operation represents an activity: these consume and produce material, take time..." alt="" coords="609,790,732,818"/> <area shape="rect" id="node67" href="a00122.html" title="This class represents a choice between multiple operations. The alternates are sorted..." alt="" coords="880,714,1056,742"/> <area shape="rect" id="node69" href="a00123.html" title="Models an operation that takes a fixed amount of time, independent of the quantity..." alt="" coords="876,765,1060,793"/> <area shape="rect" id="node71" href="a00128.html" title="Represents a routing operation, i.e. an operation consisting of multiple, sequential..." alt="" coords="884,815,1052,843"/> <area shape="rect" id="node73" href="a00129.html" title="Models an operation to convert a setup on a resource." alt="" coords="889,866,1047,894"/> <area shape="rect" id="node75" href="a00130.html" title="Models an operation whose duration is the sum of a constant time, plus a cetain time..." alt="" coords="883,917,1053,945"/> <area shape="rect" id="node79" href="a00083.html" title="frepple::utils::HasHierarchy\< Resource \>" alt="" coords="543,930,799,958"/> <area shape="rect" id="node81" href="a00156.html" title="This class represents a workcentre, a physical or logical representation of capacity..." alt="" coords="907,967,1029,995"/> <area shape="rect" id="node85" href="a00165.html" title="This class is used to represent a matrix defining the changeover times between setups..." alt="" coords="603,999,739,1027"/> <area shape="rect" id="node87" href="a00166.html" title="This class is the default implementation of the abstract SetupMatrix class." alt="" coords="880,1018,1056,1046"/> <area shape="rect" id="node91" href="a00171.html" title="This class is an implementation of the "visitor" design pattern. It is..." alt="" coords="620,1097,721,1125"/> <area shape="rect" id="node93" href="a00173.html" title="This solver implements a heuristic algorithm for planning demands." alt="" coords="903,1069,1033,1097"/> <area shape="rect" id="node95" href="a00075.html" title="Implementation of a forecast netting algorithm." alt="" coords="863,1119,1073,1147"/> <area shape="rect" id="node97" href="a00112.html" title="This class is a prototype of an Linear Programming (LP) Solver for the planning problem..." alt="" coords="879,1170,1057,1198"/> </map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a00649.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"><a class="el" href="a00182.html">TreeNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a6db43d544697fb8fef1bce4430143cd2">decrement</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">const string & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a7416ca220c55147bc1276becc5b9de01">getName</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00182.html">TreeNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a24b022755bde8a491a2985ec8e7da4ce">increment</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a103572e37c6d51208f911093fe86ca1d">operator<</a> (const <a class="el" href="a00182.html">TreeNode</a> &o)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#ab7d33745612edd2dab3165072fff63e3">TreeNode</a> (const string &n)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a0d17a4823a729cb4e3051bde2be3e200">~TreeNode</a> ()</td></tr> <tr><td colspan="2"><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00182.html#a4b682814d14447120dd184fd300deade">Tree</a></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>This class represents a node in the tree. </p> <p>Elements which we want to represent in the tree will need to inherit from this class, since this tree container is intrusive. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03446">3446</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a0d17a4823a729cb4e3051bde2be3e200"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::~TreeNode" ref="a0d17a4823a729cb4e3051bde2be3e200" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual frepple::utils::Tree::TreeNode::~TreeNode </td> <td>(</td> <td class="paramname"></td> <td> ) </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#l03452">3452</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="ab7d33745612edd2dab3165072fff63e3"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::TreeNode" ref="ab7d33745612edd2dab3165072fff63e3" args="(const string &n)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">frepple::utils::Tree::TreeNode::TreeNode </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>n</em></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03462">3462</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="a6db43d544697fb8fef1bce4430143cd2"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::decrement" ref="a6db43d544697fb8fef1bce4430143cd2" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00182.html">TreeNode</a>* frepple::utils::Tree::TreeNode::decrement </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return a pointer to the node preceding this one. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03491">3491</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a7416ca220c55147bc1276becc5b9de01"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::getName" ref="a7416ca220c55147bc1276becc5b9de01" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const string& frepple::utils::Tree::TreeNode::getName </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Returns the name of this node. This name is used to sort the nodes. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03456">3456</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a24b022755bde8a491a2985ec8e7da4ce"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::increment" ref="a24b022755bde8a491a2985ec8e7da4ce" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00182.html">TreeNode</a>* frepple::utils::Tree::TreeNode::increment </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return a pointer to the node following this one. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03469">3469</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a103572e37c6d51208f911093fe86ca1d"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::operator<" ref="a103572e37c6d51208f911093fe86ca1d" args="(const TreeNode &o)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool frepple::utils::Tree::TreeNode::operator< </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00182.html">TreeNode</a> & </td> <td class="paramname"> <em>o</em></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Comparison operator. </p> <p>Definition at line <a class="el" href="a00252_source.html#l03459">3459</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="a4b682814d14447120dd184fd300deade"></a><!-- doxytag: member="frepple::utils::Tree::TreeNode::Tree" ref="a4b682814d14447120dd184fd300deade" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="a00181.html">Tree</a><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="a00252_source.html#l03448">3448</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 file:<ul> <li><a class="el" href="a00252_source.html">utils.h</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>