Sophie

Sophie

distrib > Mageia > 4 > i586 > by-pkgid > 449803c2ef3315f9afd215efa4c6c5dc > files > 121

librevenge-doc-0.0.2-2.mga4.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>librevenge::DirTree Class Reference documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</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>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classlibrevenge_1_1DirTree.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classlibrevenge_1_1DirTree-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">librevenge::DirTree Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlibrevenge_1_1DirTree_1_1CompareEntryName.html">CompareEntryName</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">a comparaison funcion of <a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> used to sort the entry by name  <a href="structlibrevenge_1_1DirTree_1_1CompareEntryName.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2ef704ada56286603232d9edd5a33652"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a2ef704ada56286603232d9edd5a33652">DirTree</a> ()</td></tr>
<tr class="memdesc:a2ef704ada56286603232d9edd5a33652"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor  <a href="#a2ef704ada56286603232d9edd5a33652">More...</a><br/></td></tr>
<tr class="separator:a2ef704ada56286603232d9edd5a33652"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afba50f21334e062853c5e1ba41398bc2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#afba50f21334e062853c5e1ba41398bc2">clear</a> ()</td></tr>
<tr class="memdesc:afba50f21334e062853c5e1ba41398bc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">clear all entries, leaving only a root entries  <a href="#afba50f21334e062853c5e1ba41398bc2">More...</a><br/></td></tr>
<tr class="separator:afba50f21334e062853c5e1ba41398bc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf165479e5e706f78c4bc75801a0f1d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#abf165479e5e706f78c4bc75801a0f1d5">setRootType</a> (bool pc=true)</td></tr>
<tr class="memdesc:abf165479e5e706f78c4bc75801a0f1d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the root to a mac/pc root  <a href="#abf165479e5e706f78c4bc75801a0f1d5">More...</a><br/></td></tr>
<tr class="separator:abf165479e5e706f78c4bc75801a0f1d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a747695ad26172dcc4b8dda78e134dc05"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a747695ad26172dcc4b8dda78e134dc05">hasRootTypePc</a> () const </td></tr>
<tr class="memdesc:a747695ad26172dcc4b8dda78e134dc05"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns true if it is a pc file  <a href="#a747695ad26172dcc4b8dda78e134dc05">More...</a><br/></td></tr>
<tr class="separator:a747695ad26172dcc4b8dda78e134dc05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27d9d6940dc55d82ec12aca00aeebd73"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a27d9d6940dc55d82ec12aca00aeebd73">count</a> () const </td></tr>
<tr class="memdesc:a27d9d6940dc55d82ec12aca00aeebd73"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the number of entries  <a href="#a27d9d6940dc55d82ec12aca00aeebd73">More...</a><br/></td></tr>
<tr class="separator:a27d9d6940dc55d82ec12aca00aeebd73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ababbe93c0354bfa17c963a8d378c77f6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a> const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#ababbe93c0354bfa17c963a8d378c77f6">entry</a> (unsigned ind) const </td></tr>
<tr class="memdesc:ababbe93c0354bfa17c963a8d378c77f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the entry with a given index  <a href="#ababbe93c0354bfa17c963a8d378c77f6">More...</a><br/></td></tr>
<tr class="separator:ababbe93c0354bfa17c963a8d378c77f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba85dac56a6a396829df311f24363b65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#aba85dac56a6a396829df311f24363b65">entry</a> (unsigned ind)</td></tr>
<tr class="memdesc:aba85dac56a6a396829df311f24363b65"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the entry with a given index  <a href="#aba85dac56a6a396829df311f24363b65">More...</a><br/></td></tr>
<tr class="separator:aba85dac56a6a396829df311f24363b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e94da270e11d487f64369f8fc2f547a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a5e94da270e11d487f64369f8fc2f547a">entry</a> (const std::string &amp;name)</td></tr>
<tr class="memdesc:a5e94da270e11d487f64369f8fc2f547a"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the entry with a given name  <a href="#a5e94da270e11d487f64369f8fc2f547a">More...</a><br/></td></tr>
<tr class="separator:a5e94da270e11d487f64369f8fc2f547a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affb5f4daeb611185e93c924ee63bd6fc"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#affb5f4daeb611185e93c924ee63bd6fc">index</a> (const std::string &amp;name, bool create=false)</td></tr>
<tr class="memdesc:affb5f4daeb611185e93c924ee63bd6fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">given a fullname (e.g "/ObjectPool/_1020961869"), find the entry  <a href="#affb5f4daeb611185e93c924ee63bd6fc">More...</a><br/></td></tr>
<tr class="separator:affb5f4daeb611185e93c924ee63bd6fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab42a3588f8531faaae78b4fcf510bc71"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#ab42a3588f8531faaae78b4fcf510bc71">find_child</a> (unsigned ind, const std::string &amp;name) const </td></tr>
<tr class="memdesc:ab42a3588f8531faaae78b4fcf510bc71"><td class="mdescLeft">&#160;</td><td class="mdescRight">tries to find a child of ind with a given name  <a href="#ab42a3588f8531faaae78b4fcf510bc71">More...</a><br/></td></tr>
<tr class="separator:ab42a3588f8531faaae78b4fcf510bc71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b32d0008a59e5ff656f7b2884f08fca"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a1b32d0008a59e5ff656f7b2884f08fca">getSubStreamList</a> (unsigned ind=0, bool retrieveAll=false)</td></tr>
<tr class="memdesc:a1b32d0008a59e5ff656f7b2884f08fca"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns the list of ind substream  <a href="#a1b32d0008a59e5ff656f7b2884f08fca">More...</a><br/></td></tr>
<tr class="separator:a1b32d0008a59e5ff656f7b2884f08fca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ba3d9ccaa6c4f0ed1052dd241333fcd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a1ba3d9ccaa6c4f0ed1052dd241333fcd">load</a> (unsigned char *buffer, unsigned len)</td></tr>
<tr class="memdesc:a1ba3d9ccaa6c4f0ed1052dd241333fcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">tries to read the different entries  <a href="#a1ba3d9ccaa6c4f0ed1052dd241333fcd">More...</a><br/></td></tr>
<tr class="separator:a1ba3d9ccaa6c4f0ed1052dd241333fcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4444a42c65ed82de664cc7eeba0ec9ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a4444a42c65ed82de664cc7eeba0ec9ae">setInRedBlackTreeForm</a> ()</td></tr>
<tr class="memdesc:a4444a42c65ed82de664cc7eeba0ec9ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">check/update so that the sibling are store with a red black tree  <a href="#a4444a42c65ed82de664cc7eeba0ec9ae">More...</a><br/></td></tr>
<tr class="separator:a4444a42c65ed82de664cc7eeba0ec9ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c407dc2db18bea15fd05af0538f0ce8"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a7c407dc2db18bea15fd05af0538f0ce8">saveSize</a> () const </td></tr>
<tr class="memdesc:a7c407dc2db18bea15fd05af0538f0ce8"><td class="mdescLeft">&#160;</td><td class="mdescRight">return space required to save a dir entry  <a href="#a7c407dc2db18bea15fd05af0538f0ce8">More...</a><br/></td></tr>
<tr class="separator:a7c407dc2db18bea15fd05af0538f0ce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8268a67a0ba9a47448bd0984370da0c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a8268a67a0ba9a47448bd0984370da0c4">save</a> (unsigned char *buffer) const </td></tr>
<tr class="memdesc:a8268a67a0ba9a47448bd0984370da0c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">save the list of direntry in buffer  <a href="#a8268a67a0ba9a47448bd0984370da0c4">More...</a><br/></td></tr>
<tr class="separator:a8268a67a0ba9a47448bd0984370da0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a8c580d96bd204ae8bf71ff238809213a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a8c580d96bd204ae8bf71ff238809213a">get_siblings</a> (unsigned ind) const </td></tr>
<tr class="memdesc:a8c580d96bd204ae8bf71ff238809213a"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns a list of siblings corresponding to a node  <a href="#a8c580d96bd204ae8bf71ff238809213a">More...</a><br/></td></tr>
<tr class="separator:a8c580d96bd204ae8bf71ff238809213a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97b26475fa890d3a81cc65e369778c3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a97b26475fa890d3a81cc65e369778c3e">get_siblings</a> (unsigned ind, std::set&lt; unsigned &gt; &amp;seens) const </td></tr>
<tr class="memdesc:a97b26475fa890d3a81cc65e369778c3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructs the list of siblings ( by filling the seens set )  <a href="#a97b26475fa890d3a81cc65e369778c3e">More...</a><br/></td></tr>
<tr class="separator:a97b26475fa890d3a81cc65e369778c3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a66ab142fe29d08ab7242e5f510559b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a4a66ab142fe29d08ab7242e5f510559b">getSubStreamList</a> (unsigned ind, bool all, const std::string &amp;prefix, std::vector&lt; std::string &gt; &amp;res, std::set&lt; unsigned &gt; &amp;seen, bool isRoot=false) const </td></tr>
<tr class="memdesc:a4a66ab142fe29d08ab7242e5f510559b"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns a substream list  <a href="#a4a66ab142fe29d08ab7242e5f510559b">More...</a><br/></td></tr>
<tr class="separator:a4a66ab142fe29d08ab7242e5f510559b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1d85118b3bfda22065bd2ffd876ca57"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#ad1d85118b3bfda22065bd2ffd876ca57">setInRedBlackTreeForm</a> (unsigned id, std::set&lt; unsigned &gt; &amp;seen)</td></tr>
<tr class="memdesc:ad1d85118b3bfda22065bd2ffd876ca57"><td class="mdescLeft">&#160;</td><td class="mdescRight">check that the subtrees of index is a red black tree, if not rebuild it  <a href="#ad1d85118b3bfda22065bd2ffd876ca57">More...</a><br/></td></tr>
<tr class="separator:ad1d85118b3bfda22065bd2ffd876ca57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed4b1fffe0672dc59e0b4dffad734138"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#aed4b1fffe0672dc59e0b4dffad734138">setInRBTForm</a> (std::vector&lt; unsigned &gt; const &amp;childList, unsigned firstInd, unsigned lastInd, unsigned height)</td></tr>
<tr class="memdesc:aed4b1fffe0672dc59e0b4dffad734138"><td class="mdescLeft">&#160;</td><td class="mdescRight">rebuild all the childs m_left, m_right index as a red black tree, returns the root index.  <a href="#aed4b1fffe0672dc59e0b4dffad734138">More...</a><br/></td></tr>
<tr class="separator:aed4b1fffe0672dc59e0b4dffad734138"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a5b66aa057de36028ff26c58f993d037f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a5b66aa057de36028ff26c58f993d037f">DirTree</a> (const <a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> &amp;)</td></tr>
<tr class="separator:a5b66aa057de36028ff26c58f993d037f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1b169b02c2b2cc0847f54dafe82698f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#ad1b169b02c2b2cc0847f54dafe82698f">operator=</a> (const <a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> &amp;)</td></tr>
<tr class="separator:ad1b169b02c2b2cc0847f54dafe82698f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a7a67086cac3472eb00f1345f286d0328"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlibrevenge_1_1DirTree.html#a7a67086cac3472eb00f1345f286d0328">m_entries</a></td></tr>
<tr class="separator:a7a67086cac3472eb00f1345f286d0328"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a2ef704ada56286603232d9edd5a33652"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">librevenge::DirTree::DirTree </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>constructor </p>

</div>
</div>
<a class="anchor" id="a5b66aa057de36028ff26c58f993d037f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">librevenge::DirTree::DirTree </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="afba50f21334e062853c5e1ba41398bc2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::clear </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>clear all entries, leaving only a root entries </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1DirTree.html#a2ef704ada56286603232d9edd5a33652">DirTree()</a>.</p>

</div>
</div>
<a class="anchor" id="a27d9d6940dc55d82ec12aca00aeebd73"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned librevenge::DirTree::count </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns the number of entries </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1DirTree.html#ababbe93c0354bfa17c963a8d378c77f6">entry()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a97b26475fa890d3a81cc65e369778c3e">get_siblings()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a8268a67a0ba9a47448bd0984370da0c4">save()</a>, and <a class="el" href="classlibrevenge_1_1DirTree.html#a7c407dc2db18bea15fd05af0538f0ce8">saveSize()</a>.</p>

</div>
</div>
<a class="anchor" id="ababbe93c0354bfa17c963a8d378c77f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a> const* librevenge::DirTree::entry </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns the entry with a given index </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1OStorage.html#a85aab147389015791968055df3a8908c">librevenge::OStorage::createEntry()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a5e94da270e11d487f64369f8fc2f547a">entry()</a>, <a class="el" href="classlibrevenge_1_1IStorage.html#a59b5085029f94d00a2c99c0e7d4efb88">librevenge::IStorage::entry()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#ab42a3588f8531faaae78b4fcf510bc71">find_child()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a97b26475fa890d3a81cc65e369778c3e">get_siblings()</a>, <a class="el" href="structlibrevenge_1_1DirTree_1_1CompareEntryName.html#a910d90e4679cc0062e3264ae55c9ac75">librevenge::DirTree::CompareEntryName::operator()()</a>, and <a class="el" href="classlibrevenge_1_1OStorage.html#a730ae4d6d4b99c901298659b5a86c411">librevenge::OStorage::setInformation()</a>.</p>

</div>
</div>
<a class="anchor" id="aba85dac56a6a396829df311f24363b65"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a>* librevenge::DirTree::entry </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns the entry with a given index </p>

</div>
</div>
<a class="anchor" id="a5e94da270e11d487f64369f8fc2f547a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a>* librevenge::DirTree::entry </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns the entry with a given name </p>

</div>
</div>
<a class="anchor" id="ab42a3588f8531faaae78b4fcf510bc71"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned librevenge::DirTree::find_child </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>tries to find a child of ind with a given name </p>

</div>
</div>
<a class="anchor" id="a8c580d96bd204ae8bf71ff238809213a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;unsigned&gt; librevenge::DirTree::get_siblings </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns a list of siblings corresponding to a node </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1DirTree.html#ab42a3588f8531faaae78b4fcf510bc71">find_child()</a>, and <a class="el" href="classlibrevenge_1_1DirTree.html#a97b26475fa890d3a81cc65e369778c3e">get_siblings()</a>.</p>

</div>
</div>
<a class="anchor" id="a97b26475fa890d3a81cc65e369778c3e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::get_siblings </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::set&lt; unsigned &gt; &amp;&#160;</td>
          <td class="paramname"><em>seens</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>constructs the list of siblings ( by filling the seens set ) </p>

</div>
</div>
<a class="anchor" id="a1b32d0008a59e5ff656f7b2884f08fca"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;std::string&gt; librevenge::DirTree::getSubStreamList </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>retrieveAll</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns the list of ind substream </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1IStorage.html#aa073c96d89ae2ee72a6604e872bd60f6">librevenge::IStorage::getSubStreamList()</a>, and <a class="el" href="classlibrevenge_1_1OStorage.html#a7522acd3f297c17c291ac3f0496b6791">librevenge::OStorage::getSubStreamList()</a>.</p>

</div>
</div>
<a class="anchor" id="a4a66ab142fe29d08ab7242e5f510559b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::getSubStreamList </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>ind</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>all</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>prefix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; std::string &gt; &amp;&#160;</td>
          <td class="paramname"><em>res</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::set&lt; unsigned &gt; &amp;&#160;</td>
          <td class="paramname"><em>seen</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>isRoot</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns a substream list </p>

</div>
</div>
<a class="anchor" id="a747695ad26172dcc4b8dda78e134dc05"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool librevenge::DirTree::hasRootTypePc </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>returns true if it is a pc file </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1IStorage.html#a08b7f2704ab733f2673a197c2c44a26a">librevenge::IStorage::hasRootTypePc()</a>.</p>

</div>
</div>
<a class="anchor" id="affb5f4daeb611185e93c924ee63bd6fc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned librevenge::DirTree::index </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>create</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>given a fullname (e.g "/ObjectPool/_1020961869"), find the entry </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1OStorage.html#a85aab147389015791968055df3a8908c">librevenge::OStorage::createEntry()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a5e94da270e11d487f64369f8fc2f547a">entry()</a>, and <a class="el" href="classlibrevenge_1_1IStorage.html#ae767c9e849d609988eb91e5b2cebee8f">librevenge::IStorage::index()</a>.</p>

</div>
</div>
<a class="anchor" id="a1ba3d9ccaa6c4f0ed1052dd241333fcd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::load </td>
          <td>(</td>
          <td class="paramtype">unsigned char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>tries to read the different entries </p>

</div>
</div>
<a class="anchor" id="ad1b169b02c2b2cc0847f54dafe82698f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a>&amp; librevenge::DirTree::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classlibrevenge_1_1DirTree.html">DirTree</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a8268a67a0ba9a47448bd0984370da0c4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::save </td>
          <td>(</td>
          <td class="paramtype">unsigned char *&#160;</td>
          <td class="paramname"><em>buffer</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>save the list of direntry in buffer </p>

</div>
</div>
<a class="anchor" id="a7c407dc2db18bea15fd05af0538f0ce8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned librevenge::DirTree::saveSize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>return space required to save a dir entry </p>

</div>
</div>
<a class="anchor" id="aed4b1fffe0672dc59e0b4dffad734138"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned librevenge::DirTree::setInRBTForm </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; unsigned &gt; const &amp;&#160;</td>
          <td class="paramname"><em>childList</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>firstInd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>lastInd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>height</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>rebuild all the childs m_left, m_right index as a red black tree, returns the root index. </p>
<dl class="section note"><dt>Note</dt><dd>: this function supposes that the childs list is already sorted </dd></dl>

</div>
</div>
<a class="anchor" id="a4444a42c65ed82de664cc7eeba0ec9ae"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::setInRedBlackTreeForm </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>check/update so that the sibling are store with a red black tree </p>

</div>
</div>
<a class="anchor" id="ad1d85118b3bfda22065bd2ffd876ca57"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::setInRedBlackTreeForm </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::set&lt; unsigned &gt; &amp;&#160;</td>
          <td class="paramname"><em>seen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>check that the subtrees of index is a red black tree, if not rebuild it </p>

</div>
</div>
<a class="anchor" id="abf165479e5e706f78c4bc75801a0f1d5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void librevenge::DirTree::setRootType </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>pc</em> = <code>true</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set the root to a mac/pc root </p>

<p>Referenced by <a class="el" href="classlibrevenge_1_1OStorage.html#afc65bdff0e2ceabf0c3ac0d3b0314e8b">librevenge::OStorage::setRootType()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a7a67086cac3472eb00f1345f286d0328"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="classlibrevenge_1_1DirEntry.html">DirEntry</a>&gt; librevenge::DirTree::m_entries</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classlibrevenge_1_1DirTree.html#a27d9d6940dc55d82ec12aca00aeebd73">count()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#ababbe93c0354bfa17c963a8d378c77f6">entry()</a>, <a class="el" href="classlibrevenge_1_1DirTree.html#a747695ad26172dcc4b8dda78e134dc05">hasRootTypePc()</a>, and <a class="el" href="classlibrevenge_1_1DirTree.html#a8268a67a0ba9a47448bd0984370da0c4">save()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="RVNGOLEStream_8cpp.html">RVNGOLEStream.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<hr size="1"><address style="align: right;"><small>
Generated for librevenge by <a href="http://www.doxygen.org/index.html">
doxygen</a> 1.8.5</small></address>
</body>
</html>