<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Apache log4cxx: Class Members</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname"><a href="http://logging.apache.org/log4cxx">Apache log4cxx</a>
   &#160;<span id="projectnumber">Version 0.10.0</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</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>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </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 class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="navrow3" class="tabs2">
    <ul class="tablist">
      <li class="current"><a href="functions.html"><span>All</span></a></li>
      <li><a href="functions_func.html"><span>Functions</span></a></li>
      <li><a href="functions_vars.html"><span>Variables</span></a></li>
      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
    </ul>
  </div>
  <div id="navrow4" class="tabs3">
    <ul class="tablist">
      <li><a href="functions.html#index_a"><span>a</span></a></li>
      <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
      <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
      <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
      <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
      <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
      <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
      <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
      <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
      <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
      <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
      <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
      <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
      <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
      <li class="current"><a href="functions_0x70.html#index_p"><span>p</span></a></li>
      <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
      <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
      <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
      <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
      <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
      <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
      <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
      <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
      <li><a href="functions_0x7e.html#index_0x7e"><span>~</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('functions_0x70.html','');
</script>
<div id="doc-content">
<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>

<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
<li>palloc()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#a2fcc0beaac3f7eca4a84a090e565ce48">Pool</a>
</li>
<li>parent
: <a class="el" href="classlog4cxx_1_1helpers_1_1_resource_bundle.html#ae090af77c8e3054551ef69726b2adf1d">ResourceBundle</a>
, <a class="el" href="classlog4cxx_1_1_logger.html#a4ae81c31744b50c3f76dd7ec38f0d7de">Logger</a>
</li>
<li>parse()
: <a class="el" href="classlog4cxx_1_1pattern_1_1_pattern_parser.html#a0c644911df386cb5965a4fa1c107d912">PatternParser</a>
, <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a1e950336d11bacdf15d22e35da490172">DOMConfigurator</a>
</li>
<li>parseAdditivityForLogger()
: <a class="el" href="classlog4cxx_1_1_property_configurator.html#a7eed707b30677da6cc17f97e8354dd94">PropertyConfigurator</a>
</li>
<li>parseAppender()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a64f4453fc875493cda610aedf478caa3">DOMConfigurator</a>
, <a class="el" href="classlog4cxx_1_1_property_configurator.html#a19046f080534a70994a247a2529df392">PropertyConfigurator</a>
</li>
<li>parseCatsAndRenderers()
: <a class="el" href="classlog4cxx_1_1_property_configurator.html#a0309d5be5c7abc1413185db3f58d71fc">PropertyConfigurator</a>
</li>
<li>parseChildrenOfLoggerElement()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a92f2f01783a2959bc38c29995f1c36b9">DOMConfigurator</a>
</li>
<li>parseErrorHandler()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a4ce8230a98b7d37e8ab5c107f685df1d">DOMConfigurator</a>
</li>
<li>parseFileNamePattern()
: <a class="el" href="classlog4cxx_1_1rolling_1_1_rolling_policy_base.html#a9f299b192cd28319c3e5650c8a1ba43b">RollingPolicyBase</a>
</li>
<li>parseFilters()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a339c689d8a4381851fc3e3c32f68ed58">DOMConfigurator</a>
</li>
<li>parseLayout()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a4774874e7eebe13e5f9b3da6f8ce4d02">DOMConfigurator</a>
</li>
<li>parseLevel()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a70a68c5e4051d3da432fe503eebc9ad9">DOMConfigurator</a>
</li>
<li>parseLogger()
: <a class="el" href="classlog4cxx_1_1_property_configurator.html#a5584f913bf83f8914a69f0988d3927ef">PropertyConfigurator</a>
, <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a416d11ccdf44cbf77258cbbf48b30834">DOMConfigurator</a>
</li>
<li>parseLoggerFactory()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#ae8c2524fd015e7af6ad4464a5dd5e318">DOMConfigurator</a>
</li>
<li>parseRollingPolicy()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a3183f3c0f0a022b1c6be78f079e0bcd6">DOMConfigurator</a>
</li>
<li>parseRoot()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a5a2e136ae5cd923856e0a1117f3ceb21">DOMConfigurator</a>
</li>
<li>parseTriggeringPolicy()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#ab5761268219c5198babdbd4d8f65dc32">DOMConfigurator</a>
</li>
<li>PatternConverter()
: <a class="el" href="classlog4cxx_1_1pattern_1_1_pattern_converter.html#a25fcc227ebdb57c4c341466ea76b1239">PatternConverter</a>
</li>
<li>PatternLayout()
: <a class="el" href="classlog4cxx_1_1_pattern_layout.html#a8d222ae827db68cb2ec938d679c00b2f">PatternLayout</a>
</li>
<li>pCurrentUserSID
: <a class="el" href="classlog4cxx_1_1nt_1_1_n_t_event_log_appender.html#ac21f5f7e907ccd7944b5e7ee1793ad5c">NTEventLogAppender</a>
</li>
<li>peek()
: <a class="el" href="classlog4cxx_1_1_n_d_c.html#a79fee8d99de96898fbe985d692b5cfe1">NDC</a>
</li>
<li>Pool()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#a5871ad7236d3a9ab0165a6a67f703b4c">Pool</a>
</li>
<li>pool
: <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#a6c72571775abf91a74fade4e2c2b9af8">AppenderSkeleton</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#a35230907c170df5d4d7f0ca99274c574">Pool</a>
</li>
<li>Pool()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#af71e2c9e63c7a14525b20806f3c40c23">Pool</a>
</li>
<li>PoolException()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool_exception.html#a46b3fec5ae4675e6d35f31ca63e14d0b">PoolException</a>
</li>
<li>pop()
: <a class="el" href="classlog4cxx_1_1_n_d_c.html#a300d98eecc81234f5ed86cfb3b41b548">NDC</a>
</li>
<li>port
: <a class="el" href="classlog4cxx_1_1helpers_1_1_datagram_packet.html#a63c89c04d1feae07ca35558055155ffb">DatagramPacket</a>
</li>
<li>pos
: <a class="el" href="classlog4cxx_1_1helpers_1_1_string_tokenizer.html#a5438a597ee291f523ae04a9fe355924f">StringTokenizer</a>
</li>
<li>position()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_byte_buffer.html#abc4fb3efcf3c04d41d07fc2340a8f004">ByteBuffer</a>
</li>
<li>precision()
: <a class="el" href="classlog4cxx_1_1logstream__base.html#a1de59f1b10893c8c314b8fab5453d557">logstream_base</a>
</li>
<li>properties
: <a class="el" href="classlog4cxx_1_1helpers_1_1_property_resource_bundle.html#a0aeb5d8aa2b190f8360d442a4946b605">PropertyResourceBundle</a>
</li>
<li>Properties()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_properties.html#aa7321215b53f90ec4dc293e06ff79938">Properties</a>
</li>
<li>PropertyConfigurator()
: <a class="el" href="classlog4cxx_1_1_property_configurator.html#a5c45e80fd7fc7a76ec62476f22ea67f8">PropertyConfigurator</a>
</li>
<li>PropertyFilter()
: <a class="el" href="classlog4cxx_1_1filter_1_1_property_filter.html#a3df9ae6ce552b74e54f5fb8515722c31">PropertyFilter</a>
</li>
<li>propertyNames()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_properties.html#a83eddb29832a65abdb79a6e774a217a7">Properties</a>
</li>
<li>PropertyResourceBundle()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_property_resource_bundle.html#a5cd6e9ad27e731384eae5668a285ae26">PropertyResourceBundle</a>
</li>
<li>PropertySetter()
: <a class="el" href="classlog4cxx_1_1config_1_1_property_setter.html#af02b3cb9fb5e7d1cd28d93f8cb0572f2">PropertySetter</a>
</li>
<li>props
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a345ed9f28f6d95284d9132f12efd7772">DOMConfigurator</a>
</li>
<li>pstralloc()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#aa911e869420b6c7650f29fa793a80f20">Pool</a>
</li>
<li>pstrdup()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#a8e52576e782d5e91ca46245c30eb86f3">Pool</a>
</li>
<li>pstrndup()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html#ab957734246eb723f779df4c9cf876ba4">Pool</a>
</li>
<li>push()
: <a class="el" href="classlog4cxx_1_1_n_d_c.html#ae579f7b51f97fab7dfa2d3217b1ceaab">NDC</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_thread_specific_data.html#ab2bccca39863b34c2c691ffbf410094a">ThreadSpecificData</a>
, <a class="el" href="classlog4cxx_1_1_n_d_c.html#a67f283cbdbf951781c6f24f93b000fa1">NDC</a>
</li>
<li>pushLS()
: <a class="el" href="classlog4cxx_1_1_n_d_c.html#adb03ca6083676de6be2adf9346f12a89">NDC</a>
</li>
<li>put()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_byte_buffer.html#a9facc27749ce879a767f2224d8c50b22">ByteBuffer</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_thread_specific_data.html#a319af9b9a7936a31c33b5d17d09f582a">ThreadSpecificData</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_properties.html#ac76980995876f9dde00ce4e496beeddb">Properties</a>
, <a class="el" href="classlog4cxx_1_1_m_d_c.html#a79706ea375429084ed7628ca41d625f0">MDC</a>
</li>
<li>putLS()
: <a class="el" href="classlog4cxx_1_1_m_d_c.html#abc403a2ab4fb7b3baf41e833afa04ded">MDC</a>
</li>
</ul>
</div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div>
  <div id="nav-path" class="navpath">
    <ul>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
    </body>
</html>
