<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00188">188</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<trclass="memdesc:"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Iterator class for traversing the incoming arcs associated to a given node. <ahref="classoperations__research_1_1EbertGraph_1_1IncomingArcIterator.html#details">More...</a><br/></td></tr>
<trclass="memdesc:"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Iterator class for traversing the arcs incident to a given node in the graph. <ahref="classoperations__research_1_1EbertGraph_1_1OutgoingOrOppositeIncomingArcIterator.html#details">More...</a><br/></td></tr>
<trclass="memdesc:a70424e6ef2e1bb8ac923679b32527f41"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Utility function to check that an arc index is within the bounds. <ahref="#a70424e6ef2e1bb8ac923679b32527f41">More...</a><br/></td></tr>
<trclass="memdesc:a93e854b7d8f6448efa30629052c1b835"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Utility function to check that an arc index is within the bounds AND different from kNilArc. <ahref="#a93e854b7d8f6448efa30629052c1b835">More...</a><br/></td></tr>
<trclass="memdesc:a8f4a674ce54ae70d858381ba3622c487"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the tail or start-node of arc. <ahref="#a8f4a674ce54ae70d858381ba3622c487">More...</a><br/></td></tr>
<trclass="memdesc:a9a55d0ed76944c652d73c1247db82996"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the tail or start-node of arc if it is positive (i.e. <ahref="#a9a55d0ed76944c652d73c1247db82996">More...</a><br/></td></tr>
<trclass="memdesc:a0f9cd34115afbe06ea269ee5bcc74ac5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the head or end-node of arc if it is positive (i.e. <ahref="#a0f9cd34115afbe06ea269ee5bcc74ac5">More...</a><br/></td></tr>
<trclass="memdesc:a964f5e0f6ead404b708f2113a5cdd67d"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the arc in normal/direct direction. <ahref="#a964f5e0f6ead404b708f2113a5cdd67d">More...</a><br/></td></tr>
<trclass="memdesc:ab6c2a8f285309e1325aa1a8b690d8011"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the arc in reverse direction. <ahref="#ab6c2a8f285309e1325aa1a8b690d8011">More...</a><br/></td></tr>
<trclass="memdesc:a02cadbddb2eabfe3a26a3af5f96cc6a5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the opposite arc, i.e the direct arc is the arc is in reverse direction, and the reverse arc if the arc is direct. <ahref="#a02cadbddb2eabfe3a26a3af5f96cc6a5">More...</a><br/></td></tr>
<trclass="memdesc:a9d0409b2867beb2739b7ae20c10395e1"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns true if the arc is direct. <ahref="#a9d0409b2867beb2739b7ae20c10395e1">More...</a><br/></td></tr>
<trclass="memdesc:a6b983fc03d4366ac2a697c45a0ba30fc"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns true if the arc is in the reverse direction. <ahref="#a6b983fc03d4366ac2a697c45a0ba30fc">More...</a><br/></td></tr>
<trclass="memdesc:a1672b2b1d01190e5b9f44a55dd48d2d9"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns true if arc is incident to node. <ahref="#a1672b2b1d01190e5b9f44a55dd48d2d9">More...</a><br/></td></tr>
<trclass="memdesc:aa0c2a078e397860fe425fba54cb5adae"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns true if arc is incoming to node. <ahref="#aa0c2a078e397860fe425fba54cb5adae">More...</a><br/></td></tr>
<trclass="memdesc:ae34257a5477fbac4642416580f237494"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns true if arc is outgoing from node. <ahref="#ae34257a5477fbac4642416580f237494">More...</a><br/></td></tr>
<trclass="memdesc:a95976397d32c3be512b959314745d176"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Recreates the next_adjacent_arc_ and first_incident_arc_ variables from the array head_ in O(n + m) time. <ahref="#a95976397d32c3be512b959314745d176">More...</a><br/></td></tr>
<trclass="memdesc:af943e2518d92aae9de9e682b2a3dbdd1"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns a debug std::string containing all the information contained in the data structure in raw form. <ahref="#af943e2518d92aae9de9e682b2a3dbdd1">More...</a><br/></td></tr>
<trclass="memdesc:aac64d5e43f89177ab46f7ef763bb3c64"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the head or end-node of arc. <ahref="#aac64d5e43f89177ab46f7ef763bb3c64">More...</a><br/></td></tr>
<trclass="memdesc:ad69ccdbdbceba88bf784e2add4964b5b"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Utility function to check that a node index is within the bounds AND different from kNilNode. <ahref="#ad69ccdbdbceba88bf784e2add4964b5b">More...</a><br/></td></tr>
<trclass="memdesc:a2b9709a996fb28b5572783b40e1067c5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Reserves memory needed for max_num_nodes nodes and max_num_arcs arcs. <ahref="#a2b9709a996fb28b5572783b40e1067c5">More...</a><br/></td></tr>
<trclass="memdesc:a96bf1fdcbfa88edabb7843b6142cb3bd"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Adds an arc to the graph and returns its index. <ahref="#a96bf1fdcbfa88edabb7843b6142cb3bd">More...</a><br/></td></tr>
<trclass="memdesc:a68a1d993a6371e6fbf6a8ffe5c944a45"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns one more than the largest index of an extant direct arc. <ahref="#a68a1d993a6371e6fbf6a8ffe5c944a45">More...</a><br/></td></tr>
<trclass="memdesc:a68a1d993a6371e6fbf6a8ffe5c944a45"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns one more than the largest index of an extant direct arc. <ahref="#a68a1d993a6371e6fbf6a8ffe5c944a45">More...</a><br/></td></tr>
<trclass="memdesc:ad69ccdbdbceba88bf784e2add4964b5b"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Utility function to check that a node index is within the bounds AND different from kNilNode. <ahref="#ad69ccdbdbceba88bf784e2add4964b5b">More...</a><br/></td></tr>
<trclass="memdesc:aa8a10d242f7088bfdee282e1246e00b8"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the number of nodes in the graph. <ahref="#aa8a10d242f7088bfdee282e1246e00b8">More...</a><br/></td></tr>
<trclass="memdesc:ac0ae30f08a54ea67bf295b446157aed3"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the number of original arcs in the graph (The ones with positive indices.) <ahref="#ac0ae30f08a54ea67bf295b446157aed3">More...</a><br/></td></tr>
<trclass="memdesc:a03cebcf1fdf356a8217ae2879100d324"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns one more than the largest index of an extant node, meaning a node that is mentioned as the head or tail of some arc in the graph. <ahref="#a03cebcf1fdf356a8217ae2879100d324">More...</a><br/></td></tr>
<trclass="memdesc:a51a5033049b63ee5ce35b531b8474f0a"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the maximum possible number of nodes in the graph. <ahref="#a51a5033049b63ee5ce35b531b8474f0a">More...</a><br/></td></tr>
<trclass="memdesc:a8aad937029f57b70efe059b908241685"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the maximum possible number of original arcs in the graph. <ahref="#a8aad937029f57b70efe059b908241685">More...</a><br/></td></tr>
<trclass="memdesc:a6aecaff5cd6eea0a7c93de644b8defc6"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns one more than the largest valid index of a node. <ahref="#a6aecaff5cd6eea0a7c93de644b8defc6">More...</a><br/></td></tr>
<trclass="memdesc:a7e2435063a7df2859f5b589852a8d4d3"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns one more than the largest valid index of a direct arc. <ahref="#a7e2435063a7df2859f5b589852a8d4d3">More...</a><br/></td></tr>
<trclass="memdesc:ad24fe35c2e3798137b42e1bc1c35e587"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the first arc going from tail to head, if it exists, or kNilArc if such an arc does not exist. <ahref="#ad24fe35c2e3798137b42e1bc1c35e587">More...</a><br/></td></tr>
<trclass="memdesc:aac64d5e43f89177ab46f7ef763bb3c64"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the head or end-node of arc. <ahref="#aac64d5e43f89177ab46f7ef763bb3c64">More...</a><br/></td></tr>
<trclass="memdesc:a3693e89df768c2f25a31d4b4ee64ee3a"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The index of the first arc in the graph. <ahref="#a3693e89df768c2f25a31d4b4ee64ee3a">More...</a><br/></td></tr>
<trclass="memdesc:a2c2ac42ee1d86e253e0a85f3f1321824"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The index of the first node in the graph. <ahref="#a2c2ac42ee1d86e253e0a85f3f1321824">More...</a><br/></td></tr>
<trclass="memdesc:a7174acc6507b365096d7122ef430b1dc"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The index of the 'nil' arc in the graph. <ahref="#a7174acc6507b365096d7122ef430b1dc">More...</a><br/></td></tr>
<trclass="memdesc:a2c3f7aa31326efb573187d321679cba6"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The index of the 'nil' node in the graph. <ahref="#a2c3f7aa31326efb573187d321679cba6">More...</a><br/></td></tr>
<trclass="memdesc:a043c924d609639e1cc5bea7d4a5a7fd3"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The maximum possible number of arcs in the graph. <ahref="#a043c924d609639e1cc5bea7d4a5a7fd3">More...</a><br/></td></tr>
<trclass="memdesc:aebc1c53cc0d7242f47f0cf971a105e20"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The maximum possible number of nodes in the graph. <ahref="#aebc1c53cc0d7242f47f0cf971a105e20">More...</a><br/></td></tr>
<trclass="memdesc:a68f767cda734319cc4f28e6a4d56b6d4"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the first arc in node's incidence list. <ahref="#a68f767cda734319cc4f28e6a4d56b6d4">More...</a><br/></td></tr>
<trclass="memdesc:a8ba11aca6997abd6ed8327ea9ea0e7b7"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the next arc following the passed argument in its adjacency list. <ahref="#a8ba11aca6997abd6ed8327ea9ea0e7b7">More...</a><br/></td></tr>
<trclass="memdesc:a40da052b528623a6e0f5404547693edf"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the outgoing arc following the argument in the adjacency list. <ahref="#a40da052b528623a6e0f5404547693edf">More...</a><br/></td></tr>
<trclass="memdesc:a7cf8fa1e0a3abc8179da6309a86097f5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns kNilNode if the graph has no nodes or node if it has at least one node. <ahref="#a7cf8fa1e0a3abc8179da6309a86097f5">More...</a><br/></td></tr>
<trclass="memdesc:aa58e05a2a30eb0b2b38cc366bba1d1ae"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns kNilArc if the graph has no arcs arc if it has at least one arc. <ahref="#aa58e05a2a30eb0b2b38cc366bba1d1ae">More...</a><br/></td></tr>
<trclass="memdesc:a8038f289c7e5558d1b4d264677c0f4be"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the node following the argument in the graph. <ahref="#a8038f289c7e5558d1b4d264677c0f4be">More...</a><br/></td></tr>
<trclass="memdesc:a30864ddfe33af3fe52a64d35bf298503"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the arc following the argument in the graph. <ahref="#a30864ddfe33af3fe52a64d35bf298503">More...</a><br/></td></tr>
<trclass="memdesc:ae83c0a0706d7c6bf85e08719e818c813"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns the first outgoing arc for node. <ahref="#ae83c0a0706d7c6bf85e08719e818c813">More...</a><br/></td></tr>
<trclass="memdesc:a26e62c6c3621ffd6cf953bb8e585a064"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Array of next indices. <ahref="#a26e62c6c3621ffd6cf953bb8e585a064">More...</a><br/></td></tr>
<trclass="memdesc:a82e436348dd462d71b362963129d4f7f"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Flag to indicate that BuildRepresentation() needs to be called before the adjacency lists are examined. <ahref="#a82e436348dd462d71b362963129d4f7f">More...</a><br/></td></tr>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01224">1224</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01223">1223</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
</div>
</div>
<h2class="groupheader">Constructor & Destructor Documentation</h2>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01226">1226</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01228">1228</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01232">1232</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
</div>
</div>
<h2class="groupheader">Member Function Documentation</h2>
<p>Adds an arc to the graph and returns its index. </p>
<p>Returns kNilArc if the arc could not be added. </p><dlclass="section note"><dt>Note</dt><dd>for a given pair (tail, head) AddArc does not overwrite an already-existing arc between tail and head: Another arc is created instead. This makes it possible to handle multi-graphs. </dd></dl>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01001">1001</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00310">310</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Recreates the next_adjacent_arc_ and first_incident_arc_ variables from the array head_ in O(n + m) time. </p>
<p>This is useful if head_ array has been sorted according to a given criterion, for example. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01448">1448</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Utility function to check that an arc index is within the bounds. </p>
<p>It is exported so that users of the <aclass="el"href="classoperations__research_1_1EbertGraph.html"title="Forward declarations.">EbertGraph</a> class can use it. To be used in a DCHECK. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01363">1363</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Utility function to check that an arc index is within the bounds AND different from kNilArc. </p>
<p>It is exported so that users of the <aclass="el"href="classoperations__research_1_1EbertGraph.html"title="Forward declarations.">EbertGraph</a> class can use it. To be used in a DCHECK. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01371">1371</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns a debug std::string containing all the information contained in the data structure in raw form. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01458">1458</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the arc in normal/direct direction. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01396">1396</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the head or end-node of arc if it is positive (i.e. </p>
<p>it is taken in the direction it was entered in the graph), and the tail or start-node otherwise. 'That' in Ebert's paper. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01391">1391</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the tail or start-node of arc if it is positive (i.e. </p>
<p>it is taken in the direction it was entered in the graph), and the head or end-node otherwise. 'This' in Ebert's paper. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01384">1384</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns one more than the largest index of an extant direct arc. </p>
<p>To be used as a helper when clients need to dimension or iterate over arrays of arc annotation information. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00252">252</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns one more than the largest index of an extant direct arc. </p>
<p>To be used as a helper when clients need to dimension or iterate over arrays of arc annotation information. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00252">252</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns one more than the largest index of an extant node, meaning a node that is mentioned as the head or tail of some arc in the graph. </p>
<p>To be used as a helper when clients need to dimension or iterate over arrays of node annotation information. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00247">247</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00479">479</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the first arc in node's incidence list. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01123">1123</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<dlclass="todo"><dt><b><aclass="el"href="todo.html#_todo000010">Todo:</a></b></dt><dd>(user): Configure SWIG to handle the GroupForwardArcsByFunctor member template and the CycleHandlerForAnnotatedArcs class.</dd></dl>
<p>Determine the permutation that groups arcs by their tail nodes.</p>
<p>Start with the identity permutation.</p>
<p>Now we actually permute the head_ array and the scaled_arc_cost_ array according to the sorting permutation.</p>
<p>Finally, rebuild the graph from its permuted head_ array. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01022">1022</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00297">297</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00297">297</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01112">1112</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01417">1417</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01435">1435</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Utility function to check that a node index is within the bounds AND different from kNilNode. </p>
<p>Returns true if node is in the range [kFirstNode .. max_num_nodes_). It is exported so that users of the DerivedGraph class can use it. To be used in a DCHECK; also used internally to validate arguments passed to our methods from clients (e.g., <aclass="el"href="classoperations__research_1_1EbertGraphBase.html#a96bf1fdcbfa88edabb7843b6142cb3bd"title="Adds an arc to the graph and returns its index.">AddArc()</a>). </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00279">279</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Utility function to check that a node index is within the bounds AND different from kNilNode. </p>
<p>Returns true if node is in the range [kFirstNode .. max_num_nodes_). It is exported so that users of the DerivedGraph class can use it. To be used in a DCHECK; also used internally to validate arguments passed to our methods from clients (e.g., <aclass="el"href="classoperations__research_1_1EbertGraphBase.html#a96bf1fdcbfa88edabb7843b6142cb3bd"title="Adds an arc to the graph and returns its index.">AddArc()</a>). </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00279">279</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns true if arc is outgoing from node. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01440">1440</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01429">1429</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns true if the arc is in the reverse direction. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01423">1423</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the first arc going from tail to head, if it exists, or kNilArc if such an arc does not exist. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00285">285</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns one more than the largest valid index of a direct arc. </p>
<p>To be used as a helper when clients need to dimension or iterate over arrays of arc annotation information. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00271">271</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns one more than the largest valid index of a node. </p>
<p>To be used as a helper when clients need to dimension or iterate over arrays of node annotation information. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00264">264</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the maximum possible number of original arcs in the graph. </p>
<p>(The ones with positive indices.) </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00259">259</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the maximum possible number of nodes in the graph. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00255">255</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the next arc following the passed argument in its adjacency list. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01131">1131</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the arc following the argument in the graph. </p>
<p>Returns kNilArc (= end) if the range of arcs has been exhausted. It is called by <aclass="el"href="classoperations__research_1_1StarGraphBase_1_1ArcIterator.html#a261b6e58a0dfd38d8d0c0d882c2ccf8d"title="Advances the current arc index.">ArcIterator::Next()</a> and as such does not expect to be passed an argument equal to kNilArc. This is why the return line is simplified from return ( arc == kNilArc || next_arc >= num_arcs_) ? kNilArc : next_arc; to return next_arc < num_arcs_ ? next_arc : kNilArc; </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00472">472</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the node following the argument in the graph. </p>
<p>Returns kNilNode (= end) if the range of nodes has been exhausted. It is called by <aclass="el"href="classoperations__research_1_1StarGraphBase_1_1NodeIterator.html#aa5e4893b57578a159709ea47eaddcad6"title="Advances the current node index.">NodeIterator::Next()</a> and as such does not expect to be passed an argument equal to kNilNode. This is why the return line is simplified from return (node == kNilNode || next_node >= num_nodes_) ? kNilNode : next_node; to return next_node < num_nodes_ ? next_node : kNilNode; </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00458">458</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the outgoing arc following the argument in the adjacency list. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01138">1138</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00302">302</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the number of original arcs in the graph (The ones with positive indices.) </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00241">241</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00237">237</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns the opposite arc, i.e the direct arc is the arc is in reverse direction, and the reverse arc if the arc is direct. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01409">1409</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Reserves memory needed for max_num_nodes nodes and max_num_arcs arcs. </p>
<p>Returns false if the parameters passed are not OK. It can be used to enlarge the graph, but does not shrink memory if called with smaller values. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00978">978</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01402">1402</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns kNilArc if the graph has no arcs arc if it has at least one arc. </p>
<p>Useful for initializing iterators correctly in the case of empty graphs. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00445">445</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Returns kNilNode if the graph has no nodes or node if it has at least one node. </p>
<p>Useful for initializing iterators correctly in the case of empty graphs. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00439">439</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01376">1376</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
</div>
</div>
<h2class="groupheader">Friends And Related Function Documentation</h2>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01193">1193</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01195">1195</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
</div>
</div>
<h2class="groupheader">Member Data Documentation</h2>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00225">225</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00222">222</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>The maximum possible number of arcs in the graph. </p>
<p>(The maximum index is kMaxNumArcs-1, since indices start at 0. Unfortunately we waste a value representing this and the max_num_arcs_ member.)</p>
<p>(The maximum index is kMaxNumArcs-1, since indices start at 0.) </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00235">235</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>The maximum possible number of nodes in the graph. </p>
<p>The maximum possible node index in the graph.</p>
<p>(The maximum index is kMaxNumNodes-1, since indices start at 0. Unfortunately we waste a value representing this and the max_num_nodes_ member.) </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00230">230</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00219">219</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l00216">216</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>next_adjacent_arc_[i] contains the next arc in the adjacency list of arc i. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01147">1147</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
<p>Flag to indicate that <aclass="el"href="classoperations__research_1_1EbertGraph.html#a95976397d32c3be512b959314745d176"title="Recreates the next_adjacent_arc_ and first_incident_arc_ variables from the array head_ in O(n + m) t...">BuildRepresentation()</a> needs to be called before the adjacency lists are examined. </p>
<p>Only for DCHECK in debug builds. </p>
<pclass="definition">Definition at line <aclass="el"href="ebert__graph_8h_source.html#l01152">1152</a> of file <aclass="el"href="ebert__graph_8h_source.html">ebert_graph.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>