<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/abstraction-common.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">abstraction-common.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/abstraction-map.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">abstraction-map.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Data Structures</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
-<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">▼</span><span class="icona"><span class="icon">N</span></span><b>ftests</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">▼</span><span class="icona"><span class="icon">N</span></span><b>cgroup</b></td><td class="desc"></td></tr>
+<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">▼</span><span class="icona"><span class="icon">N</span></span><b>ftests</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_')">▼</span><span class="icona"><span class="icon">N</span></span><b>cgroup</b></td><td class="desc"></td></tr>
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html" target="_self">Cgroup</a></td><td class="desc"></td></tr>
<tr id="row_0_0_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupError.html" target="_self">CgroupError</a></td><td class="desc"></td></tr>
<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupMount.html" target="_self">CgroupMount</a></td><td class="desc"></td></tr>
<tr id="row_0_0_3_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupVersion.html" target="_self">CgroupVersion</a></td><td class="desc"></td></tr>
-<tr id="row_0_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_1_" class="arrow" onclick="toggleFolder('0_1_')">▼</span><span class="icona"><span class="icon">N</span></span><b>config</b></td><td class="desc"></td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_1_')">▼</span><span class="icona"><span class="icon">N</span></span><b>config</b></td><td class="desc"></td></tr>
<tr id="row_0_1_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1config_1_1Config.html" target="_self">Config</a></td><td class="desc"></td></tr>
<tr id="row_0_1_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1config_1_1ConfigError.html" target="_self">ConfigError</a></td><td class="desc"></td></tr>
-<tr id="row_0_2_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_2_" class="arrow" onclick="toggleFolder('0_2_')">▼</span><span class="icona"><span class="icon">N</span></span><b>container</b></td><td class="desc"></td></tr>
+<tr id="row_0_2_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_2_" class="arrow" onclick="dynsection.toggleFolder('0_2_')">▼</span><span class="icona"><span class="icon">N</span></span><b>container</b></td><td class="desc"></td></tr>
<tr id="row_0_2_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1container_1_1Container.html" target="_self">Container</a></td><td class="desc"></td></tr>
<tr id="row_0_2_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1container_1_1ContainerError.html" target="_self">ContainerError</a></td><td class="desc"></td></tr>
-<tr id="row_0_3_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_3_" class="arrow" onclick="toggleFolder('0_3_')">▼</span><span class="icona"><span class="icon">N</span></span><b>controller</b></td><td class="desc"></td></tr>
+<tr id="row_0_3_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_3_" class="arrow" onclick="dynsection.toggleFolder('0_3_')">▼</span><span class="icona"><span class="icon">N</span></span><b>controller</b></td><td class="desc"></td></tr>
<tr id="row_0_3_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1controller_1_1Controller.html" target="_self">Controller</a></td><td class="desc"></td></tr>
-<tr id="row_0_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_4_" class="arrow" onclick="toggleFolder('0_4_')">▼</span><span class="icona"><span class="icon">N</span></span><b>log</b></td><td class="desc"></td></tr>
+<tr id="row_0_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_4_" class="arrow" onclick="dynsection.toggleFolder('0_4_')">▼</span><span class="icona"><span class="icon">N</span></span><b>log</b></td><td class="desc"></td></tr>
<tr id="row_0_4_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1log_1_1Log.html" target="_self">Log</a></td><td class="desc"></td></tr>
-<tr id="row_0_5_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_5_" class="arrow" onclick="toggleFolder('0_5_')">▼</span><span class="icona"><span class="icon">N</span></span><b>process</b></td><td class="desc"></td></tr>
+<tr id="row_0_5_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_5_" class="arrow" onclick="dynsection.toggleFolder('0_5_')">▼</span><span class="icona"><span class="icon">N</span></span><b>process</b></td><td class="desc"></td></tr>
<tr id="row_0_5_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1process_1_1Process.html" target="_self">Process</a></td><td class="desc"></td></tr>
-<tr id="row_0_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_6_" class="arrow" onclick="toggleFolder('0_6_')">▼</span><span class="icona"><span class="icon">N</span></span><b>run</b></td><td class="desc"></td></tr>
+<tr id="row_0_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_6_" class="arrow" onclick="dynsection.toggleFolder('0_6_')">▼</span><span class="icona"><span class="icon">N</span></span><b>run</b></td><td class="desc"></td></tr>
<tr id="row_0_6_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1run_1_1Run.html" target="_self">Run</a></td><td class="desc"></td></tr>
<tr id="row_0_6_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1run_1_1RunError.html" target="_self">RunError</a></td><td class="desc"></td></tr>
-<tr id="row_0_7_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_7_" class="arrow" onclick="toggleFolder('0_7_')">▼</span><span class="icona"><span class="icon">N</span></span><b>systemd</b></td><td class="desc"></td></tr>
+<tr id="row_0_7_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_7_" class="arrow" onclick="dynsection.toggleFolder('0_7_')">▼</span><span class="icona"><span class="icon">N</span></span><b>systemd</b></td><td class="desc"></td></tr>
<tr id="row_0_7_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1systemd_1_1Systemd.html" target="_self">Systemd</a></td><td class="desc"></td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAPIArgsTest.html" target="_self">APIArgsTest</a></td><td class="desc"></td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structarray__parent__info.html" target="_self">array_parent_info</a></td><td class="desc"></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/daemon/cgrulesengd.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html">daemon</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">cgrulesengd.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: APIArgsTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: BuildPathV1Test Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
-<tr class="memitem:ae2d0708d4c36d3f8d1e24b311afe8fc3" id="r_ae2d0708d4c36d3f8d1e24b311afe8fc3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3">SetUp</a> () override</td></tr>
+<tr class="memitem:ae2d0708d4c36d3f8d1e24b311afe8fc3" id="r_ae2d0708d4c36d3f8d1e24b311afe8fc3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae2d0708d4c36d3f8d1e24b311afe8fc3">SetUp</a> () override</td></tr>
<tr class="separator:ae2d0708d4c36d3f8d1e24b311afe8fc3"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<tr>
<td class="memname">void BuildPathV1Test::SetUp </td>
<td>(</td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</table>
</div><div class="memdoc">
<p>Setup this test case</p>
-<p>This test case calls cg_build_path() to generate various cgroup paths. The <a class="el" href="classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3">SetUp()</a> routine creates a simple mount table that can be used to verify cg_build_path() behavior.</p>
+<p>This test case calls cg_build_path() to generate various cgroup paths. The <a class="el" href="#ae2d0708d4c36d3f8d1e24b311afe8fc3">SetUp()</a> routine creates a simple mount table that can be used to verify cg_build_path() behavior.</p>
<p>cg_mount_table for this test is as follows: </p>
<h2><a class="anchor" id="autotoc_md35"></a>
-name mount_point index</h2>
+name mount_point index</h2>
<p>controller0 /sys/fs/cgroup/controller0 0 controller1 /sys/fs/cgroup/controller1 1 controller2 /sys/fs/cgroup/controller2 2 controller3 /sys/fs/cgroup/controller3 3 controller4 /sys/fs/cgroup/controller4 4 controller5 /sys/fs/cgroup/controller5 5</p>
<p>Note that controllers 1 and 5 are also given namespaces </p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: BuildTasksProcPathTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
-<tr class="memitem:aba31e09a4df0a3cdb94d81985f2e86b7" id="r_aba31e09a4df0a3cdb94d81985f2e86b7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7">SetUp</a> () override</td></tr>
+<tr class="memitem:aba31e09a4df0a3cdb94d81985f2e86b7" id="r_aba31e09a4df0a3cdb94d81985f2e86b7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#aba31e09a4df0a3cdb94d81985f2e86b7">SetUp</a> () override</td></tr>
<tr class="separator:aba31e09a4df0a3cdb94d81985f2e86b7"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<tr>
<td class="memname">void BuildTasksProcPathTest::SetUp </td>
<td>(</td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</table>
</div><div class="memdoc">
<p>Setup this test case</p>
-<p>This test case calls cg_build_path() to generate various cgroup paths. The <a class="el" href="classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7">SetUp()</a> routine creates a simple mount table that can be used to verify cg_build_path() behavior.</p>
+<p>This test case calls cg_build_path() to generate various cgroup paths. The <a class="el" href="#aba31e09a4df0a3cdb94d81985f2e86b7">SetUp()</a> routine creates a simple mount table that can be used to verify cg_build_path() behavior.</p>
<p>cg_mount_table for this test is as follows: </p>
<h2><a class="anchor" id="autotoc_md36"></a>
-name mount_point index version</h2>
+name mount_point index version</h2>
<p>controller0 /sys/fs/cgroup/controller0 0 UNK controller1 /sys/fs/cgroup/controller1 1 2 controller2 /sys/fs/cgroup/controller2 2 1 controller3 /sys/fs/cgroup/controller3 3 2 controller4 /sys/fs/cgroup/controller4 4 1 controller5 /sys/fs/cgroup/controller5 5 2</p>
<p>Note that controllers 1 and 4 are also given namespaces </p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupCompareIgnoreRuleTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">CgroupCompareIgnoreRuleTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupCreateCgroupTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupGetCgroupTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupProcessV1MntTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">CgroupProcessV1MntTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupProcessV2MntTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgroupV2ControllerEnabled Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: CgsetParseRFlagTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">CgsetParseRFlagTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ChownChmodTasksTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: GetCgroupsFromProcCgroupsTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">GetCgroupsFromProcCgroupsTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: GetSubtreeControlTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ParseRulesOptionsTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">ParseRulesOptionsTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ProcnameWildcardTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">ProcnameWildcardTest Class Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: SetValuesRecursiveTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: SubtreeControlTest Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pro-methods">Protected Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Data Structure Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.cgroup.Cgroup Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>cgroup</b></li><li class="navelem"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html">Cgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="memitem:ac194e3d63f44bb4802633fc0fe0d52b8" id="r_ac194e3d63f44bb4802633fc0fe0d52b8"><td class="memItemLeft" align="right" valign="top"><a id="ac194e3d63f44bb4802633fc0fe0d52b8" name="ac194e3d63f44bb4802633fc0fe0d52b8"></a>
 </td><td class="memItemRight" valign="bottom"><b>delete</b> (config, controller_list, cgname, recursive=False, ignore_systemd=False)</td></tr>
<tr class="separator:ac194e3d63f44bb4802633fc0fe0d52b8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aafa420c27460164b65f904ec531ae2b1" id="r_aafa420c27460164b65f904ec531ae2b1"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#aafa420c27460164b65f904ec531ae2b1">set</a> (config, cgname=None, setting=None, value=None, copy_from=None, cghelp=False, ignore_systemd=False, recursive=False)</td></tr>
+<tr class="memitem:aafa420c27460164b65f904ec531ae2b1" id="r_aafa420c27460164b65f904ec531ae2b1"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#aafa420c27460164b65f904ec531ae2b1">set</a> (config, cgname=None, setting=None, value=None, copy_from=None, cghelp=False, ignore_systemd=False, recursive=False)</td></tr>
<tr class="separator:aafa420c27460164b65f904ec531ae2b1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a80f6ba6c76930d3b0c06c1d92991ee56" id="r_a80f6ba6c76930d3b0c06c1d92991ee56"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#a80f6ba6c76930d3b0c06c1d92991ee56">xset</a> (config, cgname=None, setting=None, value=None, copy_from=None, version=CgroupVersion.CGROUP_UNK, cghelp=False, ignore_unmappable=False, ignore_systemd=False, recursive=False)</td></tr>
+<tr class="memitem:a80f6ba6c76930d3b0c06c1d92991ee56" id="r_a80f6ba6c76930d3b0c06c1d92991ee56"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a80f6ba6c76930d3b0c06c1d92991ee56">xset</a> (config, cgname=None, setting=None, value=None, copy_from=None, version=CgroupVersion.CGROUP_UNK, cghelp=False, ignore_unmappable=False, ignore_systemd=False, recursive=False)</td></tr>
<tr class="separator:a80f6ba6c76930d3b0c06c1d92991ee56"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:afafc77bed8ae711de49d451be07aa0b1" id="r_afafc77bed8ae711de49d451be07aa0b1"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#afafc77bed8ae711de49d451be07aa0b1">get</a> (config, controller=None, cgname=None, setting=None, print_headers=True, values_only=False, all_controllers=False, cghelp=False, ignore_systemd=False)</td></tr>
+<tr class="memitem:afafc77bed8ae711de49d451be07aa0b1" id="r_afafc77bed8ae711de49d451be07aa0b1"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#afafc77bed8ae711de49d451be07aa0b1">get</a> (config, controller=None, cgname=None, setting=None, print_headers=True, values_only=False, all_controllers=False, cghelp=False, ignore_systemd=False)</td></tr>
<tr class="separator:afafc77bed8ae711de49d451be07aa0b1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a34cbac14b2e9f5ff1a63254298f9e0a6" id="r_a34cbac14b2e9f5ff1a63254298f9e0a6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#a34cbac14b2e9f5ff1a63254298f9e0a6">xget</a> (config, controller=None, cgname=None, setting=None, print_headers=True, values_only=False, all_controllers=False, version=CgroupVersion.CGROUP_UNK, cghelp=False, ignore_unmappable=False, ignore_systemd=False)</td></tr>
+<tr class="memitem:a34cbac14b2e9f5ff1a63254298f9e0a6" id="r_a34cbac14b2e9f5ff1a63254298f9e0a6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a34cbac14b2e9f5ff1a63254298f9e0a6">xget</a> (config, controller=None, cgname=None, setting=None, print_headers=True, values_only=False, all_controllers=False, version=CgroupVersion.CGROUP_UNK, cghelp=False, ignore_unmappable=False, ignore_systemd=False)</td></tr>
<tr class="separator:a34cbac14b2e9f5ff1a63254298f9e0a6"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a9e52a057533ea9dff3244a78efdce9ae" id="r_a9e52a057533ea9dff3244a78efdce9ae"><td class="memItemLeft" align="right" valign="top"><a id="a9e52a057533ea9dff3244a78efdce9ae" name="a9e52a057533ea9dff3244a78efdce9ae"></a>
 </td><td class="memItemRight" valign="bottom"><b>classify</b> (config, controller, cgname, pid_list, sticky=False, cancel_sticky=False, ignore_systemd=False, replace_idle=False)</td></tr>
<tr class="memitem:a2b29000305151ebe6d4903d0fa82f6d3" id="r_a2b29000305151ebe6d4903d0fa82f6d3"><td class="memItemLeft" align="right" valign="top"><a id="a2b29000305151ebe6d4903d0fa82f6d3" name="a2b29000305151ebe6d4903d0fa82f6d3"></a>
 </td><td class="memItemRight" valign="bottom"><b>init_cgrules</b> (config)</td></tr>
<tr class="separator:a2b29000305151ebe6d4903d0fa82f6d3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad02a62b22751f057e6befba23b820e8a" id="r_ad02a62b22751f057e6befba23b820e8a"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#ad02a62b22751f057e6befba23b820e8a">configparser</a> (config, load_file=None, load_dir=None, dflt_usr=None, dflt_grp=None, dperm=None, fperm=None, cghelp=False, tperm=None, tasks_usr=None, tasks_grp=None)</td></tr>
+<tr class="memitem:ad02a62b22751f057e6befba23b820e8a" id="r_ad02a62b22751f057e6befba23b820e8a"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad02a62b22751f057e6befba23b820e8a">configparser</a> (config, load_file=None, load_dir=None, dflt_usr=None, dflt_grp=None, dperm=None, fperm=None, cghelp=False, tperm=None, tasks_usr=None, tasks_grp=None)</td></tr>
<tr class="separator:ad02a62b22751f057e6befba23b820e8a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a90693279da27511d4dd1fa3a695918a5" id="r_a90693279da27511d4dd1fa3a695918a5"><td class="memItemLeft" align="right" valign="top"><a id="a90693279da27511d4dd1fa3a695918a5" name="a90693279da27511d4dd1fa3a695918a5"></a>
 </td><td class="memItemRight" valign="bottom"><b>get_controller_mount_point</b> (ctrl_name)</td></tr>
<tr class="memitem:af0cdebe50e1d9558e5eca789cf6b16f2" id="r_af0cdebe50e1d9558e5eca789cf6b16f2"><td class="memItemLeft" align="right" valign="top"><a id="af0cdebe50e1d9558e5eca789cf6b16f2" name="af0cdebe50e1d9558e5eca789cf6b16f2"></a>
 </td><td class="memItemRight" valign="bottom"><b>lscgroup</b> (config, cghelp=False, controller=None, path=None)</td></tr>
<tr class="separator:af0cdebe50e1d9558e5eca789cf6b16f2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aea70ccdeb742b83a428b90f85379bb6b" id="r_aea70ccdeb742b83a428b90f85379bb6b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#aea70ccdeb742b83a428b90f85379bb6b">cgexec</a> (config, controller, cgname, cmdline, sticky=False, cghelp=False, ignore_systemd=False, replace_idle=False)</td></tr>
+<tr class="memitem:aea70ccdeb742b83a428b90f85379bb6b" id="r_aea70ccdeb742b83a428b90f85379bb6b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#aea70ccdeb742b83a428b90f85379bb6b">cgexec</a> (config, controller, cgname, cmdline, sticky=False, cghelp=False, ignore_systemd=False, replace_idle=False)</td></tr>
<tr class="separator:aea70ccdeb742b83a428b90f85379bb6b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a671c1146a000d56ad5f5da50338e28f0" id="r_a671c1146a000d56ad5f5da50338e28f0"><td class="memItemLeft" align="right" valign="top"><a id="a671c1146a000d56ad5f5da50338e28f0" name="a671c1146a000d56ad5f5da50338e28f0"></a>
 </td><td class="memItemRight" valign="bottom"><b>get_pids_in_cgroup</b> (config, <a class="el" href="structcgroup.html">cgroup</a>, controller)</td></tr>
<tr class="separator:a671c1146a000d56ad5f5da50338e28f0"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af8c56ee1772c62284f70356710caf1ef" id="r_af8c56ee1772c62284f70356710caf1ef"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#af8c56ee1772c62284f70356710caf1ef">get_and_validate</a> (config, cgname, setting, expected_value, ignore_systemd=False)</td></tr>
+<tr class="memitem:af8c56ee1772c62284f70356710caf1ef" id="r_af8c56ee1772c62284f70356710caf1ef"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#af8c56ee1772c62284f70356710caf1ef">get_and_validate</a> (config, cgname, setting, expected_value, ignore_systemd=False)</td></tr>
<tr class="separator:af8c56ee1772c62284f70356710caf1ef"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6e776be252ad6a2fa0609d48ce71abd8" id="r_a6e776be252ad6a2fa0609d48ce71abd8"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html#a6e776be252ad6a2fa0609d48ce71abd8">set_and_validate</a> (config, cgname, setting, value, ignore_systemd=False)</td></tr>
+<tr class="memitem:a6e776be252ad6a2fa0609d48ce71abd8" id="r_a6e776be252ad6a2fa0609d48ce71abd8"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6e776be252ad6a2fa0609d48ce71abd8">set_and_validate</a> (config, cgname, setting, value, ignore_systemd=False)</td></tr>
<tr class="separator:a6e776be252ad6a2fa0609d48ce71abd8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a041c401b2fc3e6aa07a2e77f57dfdeb8" id="r_a041c401b2fc3e6aa07a2e77f57dfdeb8"><td class="memItemLeft" align="right" valign="top"><a id="a041c401b2fc3e6aa07a2e77f57dfdeb8" name="a041c401b2fc3e6aa07a2e77f57dfdeb8"></a>
 </td><td class="memItemRight" valign="bottom"><b>get_cgroup_mode</b> (config)</td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a50c89062debd7ca149ae5d0ab0574b26" id="r_a50c89062debd7ca149ae5d0ab0574b26"><td class="memItemLeft" align="right" valign="top"><a id="a50c89062debd7ca149ae5d0ab0574b26" name="a50c89062debd7ca149ae5d0ab0574b26"></a>
- </td><td class="memItemRight" valign="bottom"><b>name</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>name</b> = name</td></tr>
<tr class="separator:a50c89062debd7ca149ae5d0ab0574b26"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:adc43fac87256cb02a8bb0d8643449d64" id="r_adc43fac87256cb02a8bb0d8643449d64"><td class="memItemLeft" align="right" valign="top"><a id="adc43fac87256cb02a8bb0d8643449d64" name="adc43fac87256cb02a8bb0d8643449d64"></a>
- </td><td class="memItemRight" valign="bottom"><b>controllers</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>controllers</b> = dict()</td></tr>
<tr class="separator:adc43fac87256cb02a8bb0d8643449d64"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3a411a7fa6ac4da9c0d7f38b31d73728" id="r_a3a411a7fa6ac4da9c0d7f38b31d73728"><td class="memItemLeft" align="right" valign="top"><a id="a3a411a7fa6ac4da9c0d7f38b31d73728" name="a3a411a7fa6ac4da9c0d7f38b31d73728"></a>
- </td><td class="memItemRight" valign="bottom"><b>children</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>children</b> = list()</td></tr>
<tr class="separator:a3a411a7fa6ac4da9c0d7f38b31d73728"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<tr>
<td class="memname">ftests.cgroup.Cgroup.cgexec </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cmdline</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cmdline</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>sticky</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>sticky</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>replace_idle</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>replace_idle</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.configparser </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>load_file</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>load_file</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>load_dir</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>load_dir</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>dflt_usr</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>dflt_usr</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>dflt_grp</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>dflt_grp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>dperm</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>dperm</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>fperm</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>fperm</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>tperm</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>tperm</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>tasks_usr</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>tasks_usr</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>tasks_grp</em> = <code>None</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>tasks_grp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.get </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>controller</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>controller</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>print_headers</em> = <code>True</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>print_headers</em></span><span class="paramdefsep"> = </span><span class="paramdefval">True</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>values_only</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>values_only</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>all_controllers</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>all_controllers</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.get_and_validate </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>expected_value</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>expected_value</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.set </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>value</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>value</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>copy_from</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>copy_from</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>recursive</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>recursive</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.set_and_validate </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>value</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>value</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.xget </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>controller</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>controller</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>print_headers</em> = <code>True</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>print_headers</em></span><span class="paramdefsep"> = </span><span class="paramdefval">True</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>values_only</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>values_only</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>all_controllers</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>all_controllers</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>version</em> = <code>CgroupVersion.CGROUP_UNK</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>version</em></span><span class="paramdefsep"> = </span><span class="paramdefval">CgroupVersion.CGROUP_UNK</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_unmappable</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_unmappable</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">ftests.cgroup.Cgroup.xset </td>
<td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>config</em>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>config</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cgname</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cgname</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>setting</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>setting</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>value</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>value</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>copy_from</em> = <code>None</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>copy_from</em></span><span class="paramdefsep"> = </span><span class="paramdefval">None</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>version</em> = <code>CgroupVersion.CGROUP_UNK</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>version</em></span><span class="paramdefsep"> = </span><span class="paramdefval">CgroupVersion.CGROUP_UNK</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>cghelp</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>cghelp</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_unmappable</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_unmappable</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>ignore_systemd</em> = <code>False</code>, </td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>ignore_systemd</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>recursive</em> = <code>False</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>recursive</em></span><span class="paramdefsep"> = </span><span class="paramdefval">False</span> )</td>
</tr>
</table>
</td>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.cgroup.CgroupError Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>cgroup</b></li><li class="navelem"><a class="el" href="classftests_1_1cgroup_1_1CgroupError.html">CgroupError</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.cgroup.CgroupMount Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>cgroup</b></li><li class="navelem"><a class="el" href="classftests_1_1cgroup_1_1CgroupMount.html">CgroupMount</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a51df6ec9a190d1dbb8c9dc7414da7e00" id="r_a51df6ec9a190d1dbb8c9dc7414da7e00"><td class="memItemLeft" align="right" valign="top"><a id="a51df6ec9a190d1dbb8c9dc7414da7e00" name="a51df6ec9a190d1dbb8c9dc7414da7e00"></a>
- </td><td class="memItemRight" valign="bottom"><b>version</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>version</b> = CgroupVersion.CGROUP_V1</td></tr>
<tr class="separator:a51df6ec9a190d1dbb8c9dc7414da7e00"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aff4e0f3e26804ffaece38b8abe1eaf8d" id="r_aff4e0f3e26804ffaece38b8abe1eaf8d"><td class="memItemLeft" align="right" valign="top"><a id="aff4e0f3e26804ffaece38b8abe1eaf8d" name="aff4e0f3e26804ffaece38b8abe1eaf8d"></a>
- </td><td class="memItemRight" valign="bottom"><b>mount_point</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>mount_point</b> = entries[1]</td></tr>
<tr class="separator:aff4e0f3e26804ffaece38b8abe1eaf8d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2dec3077b0ccea1326dfd4d7da59f253" id="r_a2dec3077b0ccea1326dfd4d7da59f253"><td class="memItemLeft" align="right" valign="top"><a id="a2dec3077b0ccea1326dfd4d7da59f253" name="a2dec3077b0ccea1326dfd4d7da59f253"></a>
- </td><td class="memItemRight" valign="bottom"><b>controller</b></td></tr>
-<tr class="separator:a2dec3077b0ccea1326dfd4d7da59f253"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3ddde659aa4f5ce1a090740d658fe527" id="r_a3ddde659aa4f5ce1a090740d658fe527"><td class="memItemLeft" align="right" valign="top"><a id="a3ddde659aa4f5ce1a090740d658fe527" name="a3ddde659aa4f5ce1a090740d658fe527"></a>
+str </td><td class="memItemRight" valign="bottom"><b>controller</b> = controller</td></tr>
+<tr class="separator:a3ddde659aa4f5ce1a090740d658fe527"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>tests/ftests/<b>cgroup.py</b></li>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.cgroup.CgroupVersion Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>cgroup</b></li><li class="navelem"><a class="el" href="classftests_1_1cgroup_1_1CgroupVersion.html">CgroupVersion</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-static-methods">Static Public Member Functions</a> |
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.config.Config Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>config</b></li><li class="navelem"><a class="el" href="classftests_1_1config_1_1Config.html">Config</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:ae3f29ac3869fde219ff0e719e80ebdee" id="r_ae3f29ac3869fde219ff0e719e80ebdee"><td class="memItemLeft" align="right" valign="top"><a id="ae3f29ac3869fde219ff0e719e80ebdee" name="ae3f29ac3869fde219ff0e719e80ebdee"></a>
- </td><td class="memItemRight" valign="bottom"><b>args</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>args</b> = args</td></tr>
<tr class="separator:ae3f29ac3869fde219ff0e719e80ebdee"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a84e3f6abd76d110ca384a16f6eaf9332" id="r_a84e3f6abd76d110ca384a16f6eaf9332"><td class="memItemLeft" align="right" valign="top"><a id="a84e3f6abd76d110ca384a16f6eaf9332" name="a84e3f6abd76d110ca384a16f6eaf9332"></a>
- </td><td class="memItemRight" valign="bottom"><b>skip_list</b></td></tr>
-<tr class="separator:a84e3f6abd76d110ca384a16f6eaf9332"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7aab5762168a98d7f538d62b11bb3cb8" id="r_a7aab5762168a98d7f538d62b11bb3cb8"><td class="memItemLeft" align="right" valign="top"><a id="a7aab5762168a98d7f538d62b11bb3cb8" name="a7aab5762168a98d7f538d62b11bb3cb8"></a>
+list </td><td class="memItemRight" valign="bottom"><b>skip_list</b> = []</td></tr>
+<tr class="separator:a7aab5762168a98d7f538d62b11bb3cb8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac7c0409c8745931abfd3c62830c18dc7" id="r_ac7c0409c8745931abfd3c62830c18dc7"><td class="memItemLeft" align="right" valign="top"><a id="ac7c0409c8745931abfd3c62830c18dc7" name="ac7c0409c8745931abfd3c62830c18dc7"></a>
- </td><td class="memItemRight" valign="bottom"><b>container</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>container</b> = container</td></tr>
<tr class="separator:ac7c0409c8745931abfd3c62830c18dc7"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abc962ed296066d4a6e8a18db11a94587" id="r_abc962ed296066d4a6e8a18db11a94587"><td class="memItemLeft" align="right" valign="top"><a id="abc962ed296066d4a6e8a18db11a94587" name="abc962ed296066d4a6e8a18db11a94587"></a>
- </td><td class="memItemRight" valign="bottom"><b>process</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>process</b> = <a class="el" href="classftests_1_1process_1_1Process.html">Process</a>()</td></tr>
<tr class="separator:abc962ed296066d4a6e8a18db11a94587"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abf1e1ba08708bc1a7201ad6dd5f03137" id="r_abf1e1ba08708bc1a7201ad6dd5f03137"><td class="memItemLeft" align="right" valign="top"><a id="abf1e1ba08708bc1a7201ad6dd5f03137" name="abf1e1ba08708bc1a7201ad6dd5f03137"></a>
- </td><td class="memItemRight" valign="bottom"><b>ftest_dir</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>ftest_dir</b> = os.path.dirname(os.path.abspath(__file__))</td></tr>
<tr class="separator:abf1e1ba08708bc1a7201ad6dd5f03137"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac1745822089962488f39755977d49a14" id="r_ac1745822089962488f39755977d49a14"><td class="memItemLeft" align="right" valign="top"><a id="ac1745822089962488f39755977d49a14" name="ac1745822089962488f39755977d49a14"></a>
- </td><td class="memItemRight" valign="bottom"><b>libcg_dir</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>libcg_dir</b> = os.path.dirname(self.ftest_dir)</td></tr>
<tr class="separator:ac1745822089962488f39755977d49a14"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa41e96779a76328355510f306e94d7c0" id="r_aa41e96779a76328355510f306e94d7c0"><td class="memItemLeft" align="right" valign="top"><a id="aa41e96779a76328355510f306e94d7c0" name="aa41e96779a76328355510f306e94d7c0"></a>
- </td><td class="memItemRight" valign="bottom"><b>test_suite</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>test_suite</b> = consts.TESTS_RUN_ALL_SUITES</td></tr>
<tr class="separator:aa41e96779a76328355510f306e94d7c0"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aefb62f45143dc46518db2e7de197edb8" id="r_aefb62f45143dc46518db2e7de197edb8"><td class="memItemLeft" align="right" valign="top"><a id="aefb62f45143dc46518db2e7de197edb8" name="aefb62f45143dc46518db2e7de197edb8"></a>
- </td><td class="memItemRight" valign="bottom"><b>test_num</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>test_num</b> = consts.TESTS_RUN_ALL</td></tr>
<tr class="separator:aefb62f45143dc46518db2e7de197edb8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a47685cbaa155e0d0085fc6bddc176a31" id="r_a47685cbaa155e0d0085fc6bddc176a31"><td class="memItemLeft" align="right" valign="top"><a id="a47685cbaa155e0d0085fc6bddc176a31" name="a47685cbaa155e0d0085fc6bddc176a31"></a>
- </td><td class="memItemRight" valign="bottom"><b>verbose</b></td></tr>
-<tr class="separator:a47685cbaa155e0d0085fc6bddc176a31"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:acc6a86f70248cbc98ada641dc6a4009e" id="r_acc6a86f70248cbc98ada641dc6a4009e"><td class="memItemLeft" align="right" valign="top"><a id="acc6a86f70248cbc98ada641dc6a4009e" name="acc6a86f70248cbc98ada641dc6a4009e"></a>
+bool </td><td class="memItemRight" valign="bottom"><b>verbose</b> = False</td></tr>
+<tr class="separator:acc6a86f70248cbc98ada641dc6a4009e"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>tests/ftests/<b>config.py</b></li>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.config.ConfigError Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>config</b></li><li class="navelem"><a class="el" href="classftests_1_1config_1_1ConfigError.html">ConfigError</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.container.Container Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>container</b></li><li class="navelem"><a class="el" href="classftests_1_1container_1_1Container.html">Container</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a454c8910d43648683a609eabbdd5cdb6" id="r_a454c8910d43648683a609eabbdd5cdb6"><td class="memItemLeft" align="right" valign="top"><a id="a454c8910d43648683a609eabbdd5cdb6" name="a454c8910d43648683a609eabbdd5cdb6"></a>
- </td><td class="memItemRight" valign="bottom"><b>name</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>name</b> = name</td></tr>
<tr class="separator:a454c8910d43648683a609eabbdd5cdb6"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac824b126f513e8dec6882361a5a19c15" id="r_ac824b126f513e8dec6882361a5a19c15"><td class="memItemLeft" align="right" valign="top"><a id="ac824b126f513e8dec6882361a5a19c15" name="ac824b126f513e8dec6882361a5a19c15"></a>
- </td><td class="memItemRight" valign="bottom"><b>privileged</b></td></tr>
-<tr class="separator:ac824b126f513e8dec6882361a5a19c15"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8be4b839eaadebdb33718b01a298ef1a" id="r_a8be4b839eaadebdb33718b01a298ef1a"><td class="memItemLeft" align="right" valign="top"><a id="a8be4b839eaadebdb33718b01a298ef1a" name="a8be4b839eaadebdb33718b01a298ef1a"></a>
+bool </td><td class="memItemRight" valign="bottom"><b>privileged</b> = True</td></tr>
+<tr class="separator:a8be4b839eaadebdb33718b01a298ef1a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3d35c9f88b299e8697c776d68888930c" id="r_a3d35c9f88b299e8697c776d68888930c"><td class="memItemLeft" align="right" valign="top"><a id="a3d35c9f88b299e8697c776d68888930c" name="a3d35c9f88b299e8697c776d68888930c"></a>
- </td><td class="memItemRight" valign="bottom"><b>stop_timeout</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>stop_timeout</b> = stop_timeout</td></tr>
<tr class="separator:a3d35c9f88b299e8697c776d68888930c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a99dd5210ff368bb6864041c4da610e5a" id="r_a99dd5210ff368bb6864041c4da610e5a"><td class="memItemLeft" align="right" valign="top"><a id="a99dd5210ff368bb6864041c4da610e5a" name="a99dd5210ff368bb6864041c4da610e5a"></a>
- </td><td class="memItemRight" valign="bottom"><b>arch</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>arch</b> = arch</td></tr>
<tr class="separator:a99dd5210ff368bb6864041c4da610e5a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a602153b5564846eff475b92423eb163a" id="r_a602153b5564846eff475b92423eb163a"><td class="memItemLeft" align="right" valign="top"><a id="a602153b5564846eff475b92423eb163a" name="a602153b5564846eff475b92423eb163a"></a>
- </td><td class="memItemRight" valign="bottom"><b>distro</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>distro</b> = distro</td></tr>
<tr class="separator:a602153b5564846eff475b92423eb163a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a78c73ea1b994b8151b018a04b6ca75f0" id="r_a78c73ea1b994b8151b018a04b6ca75f0"><td class="memItemLeft" align="right" valign="top"><a id="a78c73ea1b994b8151b018a04b6ca75f0" name="a78c73ea1b994b8151b018a04b6ca75f0"></a>
- </td><td class="memItemRight" valign="bottom"><b>release</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>release</b> = release</td></tr>
<tr class="separator:a78c73ea1b994b8151b018a04b6ca75f0"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a51195ad4ba34ba7ba0b14414324f5055" id="r_a51195ad4ba34ba7ba0b14414324f5055"><td class="memItemLeft" align="right" valign="top"><a id="a51195ad4ba34ba7ba0b14414324f5055" name="a51195ad4ba34ba7ba0b14414324f5055"></a>
- </td><td class="memItemRight" valign="bottom"><b>libcg_dir</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>libcg_dir</b> = os.path.dirname(tests_dir)</td></tr>
<tr class="separator:a51195ad4ba34ba7ba0b14414324f5055"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.container.ContainerError Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>container</b></li><li class="navelem"><a class="el" href="classftests_1_1container_1_1ContainerError.html">ContainerError</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.controller.Controller Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>controller</b></li><li class="navelem"><a class="el" href="classftests_1_1controller_1_1Controller.html">Controller</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a985880c78320e1c069894b40a685f00e" id="r_a985880c78320e1c069894b40a685f00e"><td class="memItemLeft" align="right" valign="top"><a id="a985880c78320e1c069894b40a685f00e" name="a985880c78320e1c069894b40a685f00e"></a>
- </td><td class="memItemRight" valign="bottom"><b>name</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>name</b> = name</td></tr>
<tr class="separator:a985880c78320e1c069894b40a685f00e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a02c45c2a3242260dffdade59536391bf" id="r_a02c45c2a3242260dffdade59536391bf"><td class="memItemLeft" align="right" valign="top"><a id="a02c45c2a3242260dffdade59536391bf" name="a02c45c2a3242260dffdade59536391bf"></a>
- </td><td class="memItemRight" valign="bottom"><b>settings</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>settings</b> = dict()</td></tr>
<tr class="separator:a02c45c2a3242260dffdade59536391bf"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a49a593f5027e2d06f129f54c49d42cde" id="r_a49a593f5027e2d06f129f54c49d42cde"><td class="memItemLeft" align="right" valign="top">str </td><td class="memItemRight" valign="bottom"><a class="el" href="#a49a593f5027e2d06f129f54c49d42cde">settings</a></td></tr>
+<tr class="separator:a49a593f5027e2d06f129f54c49d42cde"><td class="memSeparator" colspan="2"> </td></tr>
</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a id="a49a593f5027e2d06f129f54c49d42cde" name="a49a593f5027e2d06f129f54c49d42cde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49a593f5027e2d06f129f54c49d42cde">◆ </a></span>settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">str ftests.controller.Controller.settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= <span class="stringliteral">' {} = {}\n'</span>.format(setting_key,</div>
+<div class="line"> self.settings[setting_key])</div>
+</div><!-- fragment -->
+</div>
+</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>tests/ftests/<b>controller.py</b></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.log.Log Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>log</b></li><li class="navelem"><a class="el" href="classftests_1_1log_1_1Log.html">Log</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.process.Process Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>process</b></li><li class="navelem"><a class="el" href="classftests_1_1process_1_1Process.html">Process</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a96e214ed0c0361034a39421d213335ee" id="r_a96e214ed0c0361034a39421d213335ee"><td class="memItemLeft" align="right" valign="top"><a id="a96e214ed0c0361034a39421d213335ee" name="a96e214ed0c0361034a39421d213335ee"></a>
- </td><td class="memItemRight" valign="bottom"><b>children</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>children</b> = list()</td></tr>
<tr class="separator:a96e214ed0c0361034a39421d213335ee"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2284ba3c36cca175dfa2265e89936221" id="r_a2284ba3c36cca175dfa2265e89936221"><td class="memItemLeft" align="right" valign="top"><a id="a2284ba3c36cca175dfa2265e89936221" name="a2284ba3c36cca175dfa2265e89936221"></a>
- </td><td class="memItemRight" valign="bottom"><b>children_pids</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>children_pids</b> = list()</td></tr>
<tr class="separator:a2284ba3c36cca175dfa2265e89936221"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.run.Run Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>run</b></li><li class="navelem"><a class="el" href="classftests_1_1run_1_1Run.html">Run</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.run.RunError Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>run</b></li><li class="navelem"><a class="el" href="classftests_1_1run_1_1RunError.html">RunError</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a948fceb3b6aac427e4acc4bbc25155a4" id="r_a948fceb3b6aac427e4acc4bbc25155a4"><td class="memItemLeft" align="right" valign="top"><a id="a948fceb3b6aac427e4acc4bbc25155a4" name="a948fceb3b6aac427e4acc4bbc25155a4"></a>
- </td><td class="memItemRight" valign="bottom"><b>command</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>command</b> = command</td></tr>
<tr class="separator:a948fceb3b6aac427e4acc4bbc25155a4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae10f4a17123a2aafa5a6732a90061d31" id="r_ae10f4a17123a2aafa5a6732a90061d31"><td class="memItemLeft" align="right" valign="top"><a id="ae10f4a17123a2aafa5a6732a90061d31" name="ae10f4a17123a2aafa5a6732a90061d31"></a>
- </td><td class="memItemRight" valign="bottom"><b>ret</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>ret</b> = ret</td></tr>
<tr class="separator:ae10f4a17123a2aafa5a6732a90061d31"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:afadb8af78ae818e09a2e8a7e1c394217" id="r_afadb8af78ae818e09a2e8a7e1c394217"><td class="memItemLeft" align="right" valign="top"><a id="afadb8af78ae818e09a2e8a7e1c394217" name="afadb8af78ae818e09a2e8a7e1c394217"></a>
- </td><td class="memItemRight" valign="bottom"><b>stdout</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>stdout</b> = stdout</td></tr>
<tr class="separator:afadb8af78ae818e09a2e8a7e1c394217"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:af92270c6ac9a7e75c2d45b61222bb72c" id="r_af92270c6ac9a7e75c2d45b61222bb72c"><td class="memItemLeft" align="right" valign="top"><a id="af92270c6ac9a7e75c2d45b61222bb72c" name="af92270c6ac9a7e75c2d45b61222bb72c"></a>
- </td><td class="memItemRight" valign="bottom"><b>stderr</b></td></tr>
+ </td><td class="memItemRight" valign="bottom"><b>stderr</b> = stderr</td></tr>
<tr class="separator:af92270c6ac9a7e75c2d45b61222bb72c"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ftests.systemd.Systemd Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><b>ftests</b></li><li class="navelem"><b>systemd</b></li><li class="navelem"><a class="el" href="classftests_1_1systemd_1_1Systemd.html">Systemd</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
--- /dev/null
+/**
+
+The code below is based on the Doxygen Awesome project, see
+https://github.com/jothepro/doxygen-awesome-css
+
+MIT License
+
+Copyright (c) 2021 - 2022 jothepro
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+*/
+
+let clipboard_title = "Copy to clipboard"
+let clipboard_icon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`
+let clipboard_successIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>`
+let clipboard_successDuration = 1000
+
+$(function() {
+ if(navigator.clipboard) {
+ const fragments = document.getElementsByClassName("fragment")
+ for(const fragment of fragments) {
+ const clipboard_div = document.createElement("div")
+ clipboard_div.classList.add("clipboard")
+ clipboard_div.innerHTML = clipboard_icon
+ clipboard_div.title = clipboard_title
+ $(clipboard_div).click(function() {
+ const content = this.parentNode.cloneNode(true)
+ // filter out line number and folded fragments from file listings
+ content.querySelectorAll(".lineno, .ttc, .foldclosed").forEach((node) => { node.remove() })
+ let text = content.textContent
+ // remove trailing newlines and trailing spaces from empty lines
+ text = text.replace(/^\s*\n/gm,'\n').replace(/\n*$/,'')
+ navigator.clipboard.writeText(text);
+ this.classList.add("success")
+ this.innerHTML = clipboard_successIcon
+ window.setTimeout(() => { // switch back to normal icon after timeout
+ this.classList.remove("success")
+ this.innerHTML = clipboard_icon
+ }, clipboard_successDuration);
+ })
+ fragment.insertBefore(clipboard_div, fragment.firstChild)
+ }
+ }
+})
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/config.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">config.h</div></div>
</div><!--header-->
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><span class="preprocessor">#endif </span><span class="comment">/*_LIBCGROUP_CONFIG_H*/</span><span class="preprocessor"></span></div>
-<div class="ttc" id="agroup__group__config_html_ga2d3a252b2c0c61c8f64cb1fc41e370ea"><div class="ttname"><a href="group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea">cgroup_config_set_default</a></div><div class="ttdeci">int cgroup_config_set_default(struct cgroup *new_default)</div><div class="ttdef"><b>Definition</b> config.c:1622</div></div>
-<div class="ttc" id="agroup__group__config_html_ga37d49cceb927c44292e3137bceeeb5eb"><div class="ttname"><a href="group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb">cgroup_config_create_template_group</a></div><div class="ttdeci">int cgroup_config_create_template_group(struct cgroup *cgrp, char *template_name, int flags)</div><div class="ttdef"><b>Definition</b> config.c:1894</div></div>
-<div class="ttc" id="agroup__group__config_html_ga6f8c41bb920565e674787fe6dabaef00"><div class="ttname"><a href="group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00">cgroup_init_templates_cache</a></div><div class="ttdeci">int cgroup_init_templates_cache(char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1700</div></div>
-<div class="ttc" id="agroup__group__config_html_ga85b285712354faca495193075035938d"><div class="ttname"><a href="group__group__config.html#ga85b285712354faca495193075035938d">cgroup_unload_cgroups</a></div><div class="ttdeci">int cgroup_unload_cgroups(void)</div><div class="ttdef"><b>Definition</b> config.c:1535</div></div>
-<div class="ttc" id="agroup__group__config_html_ga89fe0d7943b29cc10d57b07abcdfa7b5"><div class="ttname"><a href="group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5">cgroup_reload_cached_templates</a></div><div class="ttdeci">int cgroup_reload_cached_templates(char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1645</div></div>
-<div class="ttc" id="agroup__group__config_html_ga8adfaca013333acf922a167f55b84140"><div class="ttname"><a href="group__group__config.html#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config</a></div><div class="ttdeci">int cgroup_config_load_config(const char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1249</div></div>
-<div class="ttc" id="agroup__group__config_html_ga924860998c37da53cababe24163fc89b"><div class="ttname"><a href="group__group__config.html#ga924860998c37da53cababe24163fc89b">cgroup_load_templates_cache_from_files</a></div><div class="ttdeci">int cgroup_load_templates_cache_from_files(int *file_index)</div><div class="ttdef"><b>Definition</b> config.c:1818</div></div>
-<div class="ttc" id="agroup__group__config_html_gacb09024dc469a1a1ff8cdebd8d0ab422"><div class="ttname"><a href="group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422">cgroup_templates_cache_set_source_files</a></div><div class="ttdeci">void cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files)</div><div class="ttdef"><b>Definition</b> config.c:1756</div></div>
-<div class="ttc" id="agroup__group__config_html_gaff77affa0b80ccf507b4b46cc0a8c085"><div class="ttname"><a href="group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085">cgroup_config_unload_config</a></div><div class="ttdeci">int cgroup_config_unload_config(const char *pathname, int flags)</div><div class="ttdef"><b>Definition</b> config.c:1414</div></div>
+<div class="ttc" id="agroup__group__config_html_ga2d3a252b2c0c61c8f64cb1fc41e370ea"><div class="ttname"><a href="group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea">cgroup_config_set_default</a></div><div class="ttdeci">int cgroup_config_set_default(struct cgroup *new_default)</div><div class="ttdef"><b>Definition</b> config.c:1624</div></div>
+<div class="ttc" id="agroup__group__config_html_ga37d49cceb927c44292e3137bceeeb5eb"><div class="ttname"><a href="group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb">cgroup_config_create_template_group</a></div><div class="ttdeci">int cgroup_config_create_template_group(struct cgroup *cgrp, char *template_name, int flags)</div><div class="ttdef"><b>Definition</b> config.c:1896</div></div>
+<div class="ttc" id="agroup__group__config_html_ga6f8c41bb920565e674787fe6dabaef00"><div class="ttname"><a href="group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00">cgroup_init_templates_cache</a></div><div class="ttdeci">int cgroup_init_templates_cache(char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1702</div></div>
+<div class="ttc" id="agroup__group__config_html_ga85b285712354faca495193075035938d"><div class="ttname"><a href="group__group__config.html#ga85b285712354faca495193075035938d">cgroup_unload_cgroups</a></div><div class="ttdeci">int cgroup_unload_cgroups(void)</div><div class="ttdef"><b>Definition</b> config.c:1537</div></div>
+<div class="ttc" id="agroup__group__config_html_ga89fe0d7943b29cc10d57b07abcdfa7b5"><div class="ttname"><a href="group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5">cgroup_reload_cached_templates</a></div><div class="ttdeci">int cgroup_reload_cached_templates(char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1647</div></div>
+<div class="ttc" id="agroup__group__config_html_ga8adfaca013333acf922a167f55b84140"><div class="ttname"><a href="group__group__config.html#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config</a></div><div class="ttdeci">int cgroup_config_load_config(const char *pathname)</div><div class="ttdef"><b>Definition</b> config.c:1251</div></div>
+<div class="ttc" id="agroup__group__config_html_ga924860998c37da53cababe24163fc89b"><div class="ttname"><a href="group__group__config.html#ga924860998c37da53cababe24163fc89b">cgroup_load_templates_cache_from_files</a></div><div class="ttdeci">int cgroup_load_templates_cache_from_files(int *file_index)</div><div class="ttdef"><b>Definition</b> config.c:1820</div></div>
+<div class="ttc" id="agroup__group__config_html_gacb09024dc469a1a1ff8cdebd8d0ab422"><div class="ttname"><a href="group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422">cgroup_templates_cache_set_source_files</a></div><div class="ttdeci">void cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files)</div><div class="ttdef"><b>Definition</b> config.c:1758</div></div>
+<div class="ttc" id="agroup__group__config_html_gaff77affa0b80ccf507b4b46cc0a8c085"><div class="ttname"><a href="group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085">cgroup_config_unload_config</a></div><div class="ttdeci">int cgroup_config_unload_config(const char *pathname, int flags)</div><div class="ttdef"><b>Definition</b> config.c:1416</div></div>
<div class="ttc" id="astructcgroup__string__list_html"><div class="ttname"><a href="structcgroup__string__list.html">cgroup_string_list</a></div><div class="ttdef"><b>Definition</b> tools-common.h:44</div></div>
<div class="ttc" id="astructcgroup_html"><div class="ttname"><a href="structcgroup.html">cgroup</a></div><div class="ttdef"><b>Definition</b> libcgroup-internal.h:121</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
--- /dev/null
+/*!
+ Cookie helper functions
+ Copyright (c) 2023 Dimitri van Heesch
+ Released under MIT license.
+*/
+let Cookie = {
+ cookie_namespace: 'doxygen_',
+
+ readSetting(cookie,defVal) {
+ if (window.chrome) {
+ const val = localStorage.getItem(this.cookie_namespace+cookie) ||
+ sessionStorage.getItem(this.cookie_namespace+cookie);
+ if (val) return val;
+ } else {
+ let myCookie = this.cookie_namespace+cookie+"=";
+ if (document.cookie) {
+ const index = document.cookie.indexOf(myCookie);
+ if (index != -1) {
+ const valStart = index + myCookie.length;
+ let valEnd = document.cookie.indexOf(";", valStart);
+ if (valEnd == -1) {
+ valEnd = document.cookie.length;
+ }
+ return document.cookie.substring(valStart, valEnd);
+ }
+ }
+ }
+ return defVal;
+ },
+
+ writeSetting(cookie,val,days=10*365) { // default days='forever', 0=session cookie, -1=delete
+ if (window.chrome) {
+ if (days==0) {
+ sessionStorage.setItem(this.cookie_namespace+cookie,val);
+ } else {
+ localStorage.setItem(this.cookie_namespace+cookie,val);
+ }
+ } else {
+ let date = new Date();
+ date.setTime(date.getTime()+(days*24*60*60*1000));
+ const expiration = days!=0 ? "expires="+date.toGMTString()+";" : "";
+ document.cookie = this.cookie_namespace + cookie + "=" +
+ val + "; SameSite=Lax;" + expiration + "path=/";
+ }
+ },
+
+ eraseSetting(cookie) {
+ if (window.chrome) {
+ if (localStorage.getItem(this.cookie_namespace+cookie)) {
+ localStorage.removeItem(this.cookie_namespace+cookie);
+ } else if (sessionStorage.getItem(this.cookie_namespace+cookie)) {
+ sessionStorage.removeItem(this.cookie_namespace+cookie);
+ }
+ } else {
+ this.writeSetting(cookie,'',-1);
+ }
+ },
+}
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/tools Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html">tools</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">tools Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: tests/ftests Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_59425e443f801f1f2fd8bbe4959a3ccf.html">tests</a></li><li class="navelem"><a class="el" href="dir_186aed7d9ed997e3f7419a7f20ba31e5.html">ftests</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">ftests Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: tests/gunit Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_59425e443f801f1f2fd8bbe4959a3ccf.html">tests</a></li><li class="navelem"><a class="el" href="dir_2a08be305b9505374e987b3bf409b5f6.html">gunit</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">gunit Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/daemon Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html">daemon</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">daemon Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/pam Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_501cbd49daf77f17c121ad0979f93200.html">pam</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">pam Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: tests Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_59425e443f801f1f2fd8bbe4959a3ccf.html">tests</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">tests Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: samples/python Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_6f9635d4fbfa321d4c00f29df5cd540c.html">samples</a></li><li class="navelem"><a class="el" href="dir_5a61c96bdb8d8040ef93b1d687e1e467.html">python</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">python Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">libcgroup Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">src Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: samples Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_6f9635d4fbfa321d4c00f29df5cd540c.html">samples</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">samples Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: samples/c Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_6f9635d4fbfa321d4c00f29df5cd540c.html">samples</a></li><li class="navelem"><a class="el" href="dir_a6674828538ab5f03c09771a856fdcec.html">c</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">c Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: samples/cmdline Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_6f9635d4fbfa321d4c00f29df5cd540c.html">samples</a></li><li class="navelem"><a class="el" href="dir_a9876c7102db9acca678b90c36d1e873.html">cmdline</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">cmdline Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: doc/internal Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_e68e8157741866f444e17edd764ebbae.html">doc</a></li><li class="navelem"><a class="el" href="dir_bad69804d7d66cc6351273e8c931723c.html">internal</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">internal Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">include Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: doc Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li class="navelem"><a class="el" href="dir_e68e8157741866f444e17edd764ebbae.html">doc</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">doc Directory Reference</div></div>
</div><!--header-->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
-/* The standard CSS for doxygen 1.9.8*/
+/* The standard CSS for doxygen 1.12.0*/
html {
/* page base colors */
--fragment-lineno-link-bg-color: #D8D8D8;
--fragment-lineno-link-hover-fg-color: #4665A2;
--fragment-lineno-link-hover-bg-color: #C8C8C8;
+--fragment-copy-ok-color: #2EC82E;
--tooltip-foreground-color: black;
--tooltip-background-color: white;
--tooltip-border-color: gray;
--font-family-icon: Arial,Helvetica;
--font-family-tooltip: Roboto,sans-serif;
+/** special sections */
+--warning-color-bg: #f8d1cc;
+--warning-color-hl: #b61825;
+--warning-color-text: #75070f;
+--note-color-bg: #faf3d8;
+--note-color-hl: #f3a600;
+--note-color-text: #5f4204;
+--todo-color-bg: #e4f3ff;
+--todo-color-hl: #1879C4;
+--todo-color-text: #274a5c;
+--test-color-bg: #e8e8ff;
+--test-color-hl: #3939C4;
+--test-color-text: #1a1a5c;
+--deprecated-color-bg: #ecf0f3;
+--deprecated-color-hl: #5b6269;
+--deprecated-color-text: #43454a;
+--bug-color-bg: #e4dafd;
+--bug-color-hl: #5b2bdd;
+--bug-color-text: #2a0d72;
+--invariant-color-bg: #d8f1e3;
+--invariant-color-hl: #44b86f;
+--invariant-color-text: #265532;
}
@media (prefers-color-scheme: dark) {
--code-link-color: #79C0FF;
--code-external-link-color: #79C0FF;
--fragment-foreground-color: #C9D1D9;
---fragment-background-color: black;
+--fragment-background-color: #090D16;
--fragment-border-color: #30363D;
--fragment-lineno-border-color: #30363D;
--fragment-lineno-background-color: black;
--fragment-lineno-link-bg-color: #303030;
--fragment-lineno-link-hover-fg-color: #8E96A1;
--fragment-lineno-link-hover-bg-color: #505050;
+--fragment-copy-ok-color: #0EA80E;
--tooltip-foreground-color: #C9D1D9;
--tooltip-background-color: #202020;
--tooltip-border-color: #C9D1D9;
--font-family-icon: Arial,Helvetica;
--font-family-tooltip: Roboto,sans-serif;
+/** special sections */
+--warning-color-bg: #2e1917;
+--warning-color-hl: #ad2617;
+--warning-color-text: #f5b1aa;
+--note-color-bg: #3b2e04;
+--note-color-hl: #f1b602;
+--note-color-text: #ceb670;
+--todo-color-bg: #163750;
+--todo-color-hl: #1982D2;
+--todo-color-text: #dcf0fa;
+--test-color-bg: #121258;
+--test-color-hl: #4242cf;
+--test-color-text: #c0c0da;
+--deprecated-color-bg: #2e323b;
+--deprecated-color-hl: #738396;
+--deprecated-color-text: #abb0bd;
+--bug-color-bg: #2a2536;
+--bug-color-hl: #7661b3;
+--bug-color-text: #ae9ed6;
+--invariant-color-bg: #303a35;
+--invariant-color-hl: #76ce96;
+--invariant-color-text: #cceed5;
}}
body {
background-color: var(--page-background-color);
/* @group Heading Levels */
.title {
- font-weight: 400;
- font-size: 14px;
font-family: var(--font-family-normal);
line-height: 28px;
font-size: 150%;
}
a:hover {
- text-decoration: underline;
+ text-decoration: none;
+ background: linear-gradient(to bottom, transparent 0,transparent calc(100% - 1px), currentColor 100%);
+}
+
+a:hover > span.arrow {
+ text-decoration: none;
+ background : var(--nav-background-color);
}
a.el {
margin-left: -1cm;
}
+ul.check {
+ list-style:none;
+ text-indent: -16px;
+ padding-left: 38px;
+}
+li.unchecked:before {
+ content: "\2610\A0";
+}
+li.checked:before {
+ content: "\2611\A0";
+}
+
+ol {
+ text-indent: 0px;
+}
+
ul {
+ text-indent: 0px;
overflow: visible;
}
.fragment {
text-align: left;
direction: ltr;
- overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/
+ overflow-x: auto;
overflow-y: hidden;
+ position: relative;
+ min-height: 12px;
+ margin: 10px 0px;
+ padding: 10px 10px;
+ border: 1px solid var(--fragment-border-color);
+ border-radius: 4px;
+ background-color: var(--fragment-background-color);
+ color: var(--fragment-foreground-color);
}
pre.fragment {
- border: 1px solid var(--fragment-border-color);
- background-color: var(--fragment-background-color);
- color: var(--fragment-foreground-color);
- padding: 4px 6px;
- margin: 4px 8px 4px 2px;
+ word-wrap: break-word;
+ font-size: 10pt;
+ line-height: 125%;
+ font-family: var(--font-family-monospace);
+}
+
+.clipboard {
+ width: 24px;
+ height: 24px;
+ right: 5px;
+ top: 5px;
+ opacity: 0;
+ position: absolute;
+ display: inline;
overflow: auto;
- word-wrap: break-word;
- font-size: 9pt;
- line-height: 125%;
- font-family: var(--font-family-monospace);
- font-size: 105%;
+ fill: var(--fragment-foreground-color);
+ justify-content: center;
+ align-items: center;
+ cursor: pointer;
+}
+
+.clipboard.success {
+ border: 1px solid var(--fragment-foreground-color);
+ border-radius: 4px;
+}
+
+.fragment:hover .clipboard, .clipboard.success {
+ opacity: .28;
+}
+
+.clipboard:hover, .clipboard.success {
+ opacity: 1 !important;
+}
+
+.clipboard:active:not([class~=success]) svg {
+ transform: scale(.91);
}
-div.fragment {
- padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/
- margin: 4px 8px 4px 2px;
- color: var(--fragment-foreground-color);
- background-color: var(--fragment-background-color);
- border: 1px solid var(--fragment-border-color);
+.clipboard.success svg {
+ fill: var(--fragment-copy-ok-color);
+}
+
+.clipboard.success {
+ border-color: var(--fragment-copy-ok-color);
}
div.line {
display: none;
}
-img.formulaDsp {
-
-}
-
img.formulaInl, img.inline {
vertical-align: middle;
}
.paramtype {
white-space: nowrap;
+ padding: 0px;
+ padding-bottom: 1px;
}
.paramname {
- color: var(--memdef-param-name-color);
white-space: nowrap;
+ padding: 0px;
+ padding-bottom: 1px;
+ margin-left: 2px;
}
+
.paramname em {
+ color: var(--memdef-param-name-color);
font-style: normal;
+ margin-right: 1px;
}
-.paramname code {
- line-height: 14px;
+
+.paramname .paramdefval {
+ font-family: var(--font-family-monospace);
}
.params, .retval, .exception, .tparams {
padding: 3px 7px 2px;
}
-.fieldtable td.fieldtype, .fieldtable td.fieldname {
+.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fieldinit {
white-space: nowrap;
border-right: 1px solid var(--memdef-border-color);
border-bottom: 1px solid var(--memdef-border-color);
padding-top: 3px;
}
+.fieldtable td.fieldinit {
+ padding-top: 3px;
+ text-align: right;
+}
+
+
.fieldtable td.fielddoc {
border-bottom: 1px solid var(--memdef-border-color);
}
{
height:32px;
display:block;
- text-decoration: none;
outline: none;
color: var(--nav-text-normal-color);
font-family: var(--font-family-nav);
padding: 0 0 0 0;
}
-/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */
+/*
+
dl.section {
margin-left: 0px;
padding-left: 0px;
border-color: #D0C000;
}
-dl.warning, dl.attention {
+dl.warning, dl.attention, dl.important {
margin-left: -7px;
padding-left: 3px;
border-left: 4px solid;
border-color: #C08050;
}
+*/
+
+dl.bug dt a, dl.deprecated dt a, dl.todo dt a, dl.test a {
+ font-weight: bold !important;
+}
+
+dl.warning, dl.attention, dl.important, dl.note, dl.deprecated, dl.bug,
+dl.invariant, dl.pre, dl.post, dl.todo, dl.test, dl.remark {
+ padding: 10px;
+ margin: 10px 0px;
+ overflow: hidden;
+ margin-left: 0;
+ border-radius: 4px;
+}
+
dl.section dd {
- margin-bottom: 6px;
+ margin-bottom: 2px;
+}
+
+dl.warning, dl.attention, dl.important {
+ background: var(--warning-color-bg);
+ border-left: 8px solid var(--warning-color-hl);
+ color: var(--warning-color-text);
+}
+
+dl.warning dt, dl.attention dt, dl.important dt {
+ color: var(--warning-color-hl);
+}
+
+dl.note, dl.remark {
+ background: var(--note-color-bg);
+ border-left: 8px solid var(--note-color-hl);
+ color: var(--note-color-text);
+}
+
+dl.note dt, dl.remark dt {
+ color: var(--note-color-hl);
+}
+
+dl.todo {
+ background: var(--todo-color-bg);
+ border-left: 8px solid var(--todo-color-hl);
+ color: var(--todo-color-text);
+}
+
+dl.todo dt {
+ color: var(--todo-color-hl);
+}
+
+dl.test {
+ background: var(--test-color-bg);
+ border-left: 8px solid var(--test-color-hl);
+ color: var(--test-color-text);
+}
+
+dl.test dt {
+ color: var(--test-color-hl);
+}
+
+dl.bug dt a {
+ color: var(--bug-color-hl) !important;
+}
+
+dl.bug {
+ background: var(--bug-color-bg);
+ border-left: 8px solid var(--bug-color-hl);
+ color: var(--bug-color-text);
+}
+
+dl.bug dt a {
+ color: var(--bug-color-hl) !important;
+}
+
+dl.deprecated {
+ background: var(--deprecated-color-bg);
+ border-left: 8px solid var(--deprecated-color-hl);
+ color: var(--deprecated-color-text);
+}
+
+dl.deprecated dt a {
+ color: var(--deprecated-color-hl) !important;
+}
+
+dl.note dd, dl.warning dd, dl.pre dd, dl.post dd,
+dl.remark dd, dl.attention dd, dl.important dd, dl.invariant dd,
+dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd {
+ margin-inline-start: 0px;
+}
+
+dl.invariant, dl.pre, dl.post {
+ background: var(--invariant-color-bg);
+ border-left: 8px solid var(--invariant-color-hl);
+ color: var(--invariant-color-text);
+}
+
+dl.invariant dt, dl.pre dt, dl.post dt {
+ color: var(--invariant-color-hl);
}
vertical-align: bottom;
border-collapse: separate;
}
-
+
#projectlogo img
-{
+{
border: 0px none;
}
-
+
#projectalign
{
vertical-align: middle;
padding: 0px;
}
-div.toc li.level1 {
- margin-left: 0px;
-}
-
-div.toc li.level2 {
+div.toc li[class^='level'] {
margin-left: 15px;
}
-div.toc li.level3 {
- margin-left: 15px;
+div.toc li.level1 {
+ margin-left: 0px;
}
-div.toc li.level4 {
- margin-left: 15px;
+div.toc li.empty {
+ background-image: none;
+ margin-top: 0px;
}
span.emoji {
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
+<head>
+<title>Validator / crawler helper</title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+</head>
+<body>
+<a href="libcgroup_8h_source.html"/>
+<a href="config_8h_source.html"/>
+<a href="error_8h_source.html"/>
+<a href="groups_8h_source.html"/>
+<a href="iterators_8h_source.html"/>
+<a href="log_8h_source.html"/>
+<a href="systemd_8h_source.html"/>
+<a href="tasks_8h_source.html"/>
+<a href="tools_8h_source.html"/>
+<a href="abstraction-common_8h_source.html"/>
+<a href="abstraction-map_8h_source.html"/>
+<a href="cgrulesengd_8h_source.html"/>
+<a href="libcgroup-internal_8h_source.html"/>
+<a href="tools-common_8h_source.html"/>
+<a href="md_CONTRIBUTING.html"/>
+<a href="md_doc_2internal_2release-github.html"/>
+<a href="md_README.html"/>
+<a href="md_samples_2cmdline_2systemd-with-idle-process.html"/>
+<a href="md_SECURITY.html"/>
+<a href="md_tests_2ftests_2README.html"/>
+<a href="md_tests_2README.html"/>
+<a href="todo.html"/>
+<a href="group__group__config.html"/>
+<a href="group__group__errors.html"/>
+<a href="group__group__groups.html"/>
+<a href="group__group__iterators.html"/>
+<a href="group__group__log.html"/>
+<a href="group__group__tasks.html"/>
+<a href="classAPIArgsTest.html"/>
+<a href="structarray__parent__info.html"/>
+<a href="structarray__unchanged.html"/>
+<a href="classBuildPathV1Test.html"/>
+<a href="classBuildTasksProcPathTest.html"/>
+<a href="structcg__mount__point.html"/>
+<a href="structcg__mount__table__s.html"/>
+<a href="structcgroup.html"/>
+<a href="structcgroup__abstraction__map.html"/>
+<a href="structcgroup__controller.html"/>
+<a href="structcgroup__dictionary.html"/>
+<a href="structcgroup__dictionary__item.html"/>
+<a href="structcgroup__dictionary__iterator.html"/>
+<a href="structcgroup__file__info.html"/>
+<a href="structcgroup__group__spec.html"/>
+<a href="structcgroup__info.html"/>
+<a href="structcgroup__mount__point.html"/>
+<a href="structcgroup__rule.html"/>
+<a href="structcgroup__rule__list.html"/>
+<a href="structcgroup__rules__data.html"/>
+<a href="structcgroup__stat.html"/>
+<a href="structcgroup__string__list.html"/>
+<a href="structcgroup__systemd__opts.html"/>
+<a href="structcgroup__systemd__scope__opts.html"/>
+<a href="structcgroup__tree__handle.html"/>
+<a href="classCgroupCompareIgnoreRuleTest.html"/>
+<a href="classCgroupCreateCgroupTest.html"/>
+<a href="classCgroupGetCgroupTest.html"/>
+<a href="classCgroupProcessV1MntTest.html"/>
+<a href="classCgroupProcessV2MntTest.html"/>
+<a href="classCgroupV2ControllerEnabled.html"/>
+<a href="classCgsetParseRFlagTest.html"/>
+<a href="classChownChmodTasksTest.html"/>
+<a href="structcontrol__value.html"/>
+<a href="structcontroller__data.html"/>
+<a href="structdeny__list__type.html"/>
+<a href="structexample__opts.html"/>
+<a href="structext__cgroup__record.html"/>
+<a href="classGetCgroupsFromProcCgroupsTest.html"/>
+<a href="classGetSubtreeControlTest.html"/>
+<a href="structparent__info.html"/>
+<a href="classParseRulesOptionsTest.html"/>
+<a href="classProcnameWildcardTest.html"/>
+<a href="classSetValuesRecursiveTest.html"/>
+<a href="classSubtreeControlTest.html"/>
+<a href="structunchanged__pid.html"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html"/>
+<a href="classftests_1_1cgroup_1_1CgroupError.html"/>
+<a href="classftests_1_1cgroup_1_1CgroupMount.html"/>
+<a href="classftests_1_1cgroup_1_1CgroupVersion.html"/>
+<a href="classftests_1_1config_1_1Config.html"/>
+<a href="classftests_1_1config_1_1ConfigError.html"/>
+<a href="classftests_1_1container_1_1Container.html"/>
+<a href="classftests_1_1container_1_1ContainerError.html"/>
+<a href="classftests_1_1controller_1_1Controller.html"/>
+<a href="classftests_1_1log_1_1Log.html"/>
+<a href="classftests_1_1process_1_1Process.html"/>
+<a href="classftests_1_1run_1_1Run.html"/>
+<a href="classftests_1_1run_1_1RunError.html"/>
+<a href="classftests_1_1systemd_1_1Systemd.html"/>
+<a href="dir_a6674828538ab5f03c09771a856fdcec.html"/>
+<a href="dir_a9876c7102db9acca678b90c36d1e873.html"/>
+<a href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html"/>
+<a href="dir_e68e8157741866f444e17edd764ebbae.html"/>
+<a href="dir_186aed7d9ed997e3f7419a7f20ba31e5.html"/>
+<a href="dir_2a08be305b9505374e987b3bf409b5f6.html"/>
+<a href="dir_d44c64559bbebec7f509842c48db8b23.html"/>
+<a href="dir_bad69804d7d66cc6351273e8c931723c.html"/>
+<a href="dir_66a7763e2a9b96033a682558820d533e.html"/>
+<a href="dir_501cbd49daf77f17c121ad0979f93200.html"/>
+<a href="dir_5a61c96bdb8d8040ef93b1d687e1e467.html"/>
+<a href="dir_6f9635d4fbfa321d4c00f29df5cd540c.html"/>
+<a href="dir_68267d1309a1af8e8297ef4c3efbcdba.html"/>
+<a href="dir_59425e443f801f1f2fd8bbe4959a3ccf.html"/>
+<a href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html"/>
+<a href="index.html"/>
+<a href="doxygen_crawl.html"/>
+<a href="pages.html"/>
+<a href="topics.html"/>
+<a href="annotated.html"/>
+<a href="classes.html"/>
+<a href="hierarchy.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions.html"/>
+<a href="functions_func.html"/>
+<a href="functions_func.html"/>
+<a href="functions_func.html"/>
+<a href="functions_func.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="functions_vars.html"/>
+<a href="files.html"/>
+<a href="abstraction-common_8h_source.html"/>
+<a href="abstraction-map_8h_source.html"/>
+<a href="annotated.html"/>
+<a href="cgrulesengd_8h_source.html"/>
+<a href="classAPIArgsTest.html"/>
+<a href="classBuildPathV1Test.html"/>
+<a href="classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3"/>
+<a href="classBuildTasksProcPathTest.html"/>
+<a href="classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7"/>
+<a href="classCgroupCompareIgnoreRuleTest.html"/>
+<a href="classCgroupCreateCgroupTest.html"/>
+<a href="classCgroupGetCgroupTest.html"/>
+<a href="classCgroupProcessV1MntTest.html"/>
+<a href="classCgroupProcessV2MntTest.html"/>
+<a href="classCgroupV2ControllerEnabled.html"/>
+<a href="classCgsetParseRFlagTest.html"/>
+<a href="classChownChmodTasksTest.html"/>
+<a href="classGetCgroupsFromProcCgroupsTest.html"/>
+<a href="classGetSubtreeControlTest.html"/>
+<a href="classParseRulesOptionsTest.html"/>
+<a href="classProcnameWildcardTest.html"/>
+<a href="classSetValuesRecursiveTest.html"/>
+<a href="classSubtreeControlTest.html"/>
+<a href="classes.html"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#a34cbac14b2e9f5ff1a63254298f9e0a6"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#a6e776be252ad6a2fa0609d48ce71abd8"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#a80f6ba6c76930d3b0c06c1d92991ee56"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#aafa420c27460164b65f904ec531ae2b1"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#ad02a62b22751f057e6befba23b820e8a"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#aea70ccdeb742b83a428b90f85379bb6b"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#af8c56ee1772c62284f70356710caf1ef"/>
+<a href="classftests_1_1cgroup_1_1Cgroup.html#afafc77bed8ae711de49d451be07aa0b1"/>
+<a href="classftests_1_1cgroup_1_1CgroupError.html"/>
+<a href="classftests_1_1cgroup_1_1CgroupMount.html"/>
+<a href="classftests_1_1cgroup_1_1CgroupVersion.html"/>
+<a href="classftests_1_1config_1_1Config.html"/>
+<a href="classftests_1_1config_1_1ConfigError.html"/>
+<a href="classftests_1_1container_1_1Container.html"/>
+<a href="classftests_1_1container_1_1ContainerError.html"/>
+<a href="classftests_1_1controller_1_1Controller.html"/>
+<a href="classftests_1_1log_1_1Log.html"/>
+<a href="classftests_1_1process_1_1Process.html"/>
+<a href="classftests_1_1run_1_1Run.html"/>
+<a href="classftests_1_1run_1_1RunError.html"/>
+<a href="classftests_1_1systemd_1_1Systemd.html"/>
+<a href="config_8h_source.html"/>
+<a href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html"/>
+<a href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html"/>
+<a href="dir_66a7763e2a9b96033a682558820d533e.html"/>
+<a href="dir_68267d1309a1af8e8297ef4c3efbcdba.html"/>
+<a href="dir_d44c64559bbebec7f509842c48db8b23.html"/>
+<a href="error_8h_source.html"/>
+<a href="files.html"/>
+<a href="functions.html"/>
+<a href="functions_func.html"/>
+<a href="functions_vars.html"/>
+<a href="group__group__config.html"/>
+<a href="group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea"/>
+<a href="group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb"/>
+<a href="group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00"/>
+<a href="group__group__config.html#ga85b285712354faca495193075035938d"/>
+<a href="group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5"/>
+<a href="group__group__config.html#ga8adfaca013333acf922a167f55b84140"/>
+<a href="group__group__config.html#ga924860998c37da53cababe24163fc89b"/>
+<a href="group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422"/>
+<a href="group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085"/>
+<a href="group__group__errors.html"/>
+<a href="group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46"/>
+<a href="group__group__errors.html#ga515eba7218b187ffe263b7d9ecb3ac1b"/>
+<a href="group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba24a6584dd4238475a4e247bdf6956def"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba2724c2f0af0d3e3cea66027f6bf2e436"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba33cc635e4cc4055b2c487f027fbdd960"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba7c23c1a7cbfb7e8e9c66dd96b5c66d21"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba94dbe90328ef8a212633ec464b9b9b11"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39"/>
+<a href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55baf808b0e31be4bfbe8a21f800f913f9c0"/>
+<a href="group__group__groups.html"/>
+<a href="group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82"/>
+<a href="group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526"/>
+<a href="group__group__groups.html#ga11a48a466c0d4b03d3480cd4d8c830f8"/>
+<a href="group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d"/>
+<a href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f"/>
+<a href="group__group__groups.html#ga2a7954a987e3fbf8eabcc94cf381353e"/>
+<a href="group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412"/>
+<a href="group__group__groups.html#ga4104e108e85a8576c878822f353b4e39"/>
+<a href="group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3"/>
+<a href="group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f"/>
+<a href="group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029"/>
+<a href="group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3"/>
+<a href="group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841"/>
+<a href="group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16"/>
+<a href="group__group__groups.html#ga5103da236354f658697c730cc6834f07"/>
+<a href="group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040"/>
+<a href="group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300"/>
+<a href="group__group__groups.html#ga65ece0f619100492d758fbeb3788358a"/>
+<a href="group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1"/>
+<a href="group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087"/>
+<a href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd"/>
+<a href="group__group__groups.html#ga7d360d903d69dfffd6d7a2904882f707"/>
+<a href="group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054"/>
+<a href="group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80"/>
+<a href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5"/>
+<a href="group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82"/>
+<a href="group__group__groups.html#ga951861259c0373895bfb637fce337312"/>
+<a href="group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b"/>
+<a href="group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956"/>
+<a href="group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a"/>
+<a href="group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7"/>
+<a href="group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8"/>
+<a href="group__group__groups.html#gab95007148eac89b7e935d93a4524787b"/>
+<a href="group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a"/>
+<a href="group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e"/>
+<a href="group__group__groups.html#gac9e669d8e0994bfbbdef630b6fe41c76"/>
+<a href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7"/>
+<a href="group__group__groups.html#gad4ffad2eccf9fcbfa8a551e269e0ad58"/>
+<a href="group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb"/>
+<a href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed"/>
+<a href="group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5"/>
+<a href="group__group__groups.html#gae8c8f601680e79150608073a55afcac0"/>
+<a href="group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da"/>
+<a href="group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353"/>
+<a href="group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9"/>
+<a href="group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7"/>
+<a href="group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6"/>
+<a href="group__group__iterators.html"/>
+<a href="group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde"/>
+<a href="group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8"/>
+<a href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de"/>
+<a href="group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8"/>
+<a href="group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3"/>
+<a href="group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789"/>
+<a href="group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809"/>
+<a href="group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1"/>
+<a href="group__group__iterators.html#ga55d2eac2af703794651d344c073566f5"/>
+<a href="group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44"/>
+<a href="group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444"/>
+<a href="group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8"/>
+<a href="group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68"/>
+<a href="group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d"/>
+<a href="group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236"/>
+<a href="group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb"/>
+<a href="group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c"/>
+<a href="group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb"/>
+<a href="group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc"/>
+<a href="group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6"/>
+<a href="group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21"/>
+<a href="group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e"/>
+<a href="group__group__iterators.html#gaeb955e5f4da551268380b1271d478816"/>
+<a href="group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e"/>
+<a href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7"/>
+<a href="group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3abf3c31227768960bd6622d2562aae3e1"/>
+<a href="group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3af865296e6a0e55cff574fbb132b9f913"/>
+<a href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b"/>
+<a href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3"/>
+<a href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444ad925cc45f1b34fe80e14fc6b05269740"/>
+<a href="group__group__log.html"/>
+<a href="group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4"/>
+<a href="group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0"/>
+<a href="group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a"/>
+<a href="group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794"/>
+<a href="group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c"/>
+<a href="group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7"/>
+<a href="group__group__log.html#gab514ad5d83422ddfe479bdf651e80958"/>
+<a href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa4dd44215cd3553e79dbf91eb9ca418a2"/>
+<a href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa86b4157fb38d9f8053c6b7429bd26c72"/>
+<a href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa915b87fe26cc45572e40508dc6d62e88"/>
+<a href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aaa99ec9e854a543901bddf854d1960057"/>
+<a href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aad66ab51dba078ffc3b1c6d397053f9e2"/>
+<a href="group__group__tasks.html"/>
+<a href="group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d"/>
+<a href="group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7"/>
+<a href="group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2"/>
+<a href="group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea"/>
+<a href="group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be"/>
+<a href="group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c"/>
+<a href="group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e"/>
+<a href="group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee"/>
+<a href="group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a"/>
+<a href="group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d"/>
+<a href="group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb"/>
+<a href="group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce"/>
+<a href="group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2"/>
+<a href="groups_8h_source.html"/>
+<a href="hierarchy.html"/>
+<a href="index.html"/>
+<a href="index.html#intro_sec"/>
+<a href="iterators_8h_source.html"/>
+<a href="libcgroup-internal_8h_source.html"/>
+<a href="libcgroup_8h_source.html"/>
+<a href="log_8h_source.html"/>
+<a href="md_CONTRIBUTING.html"/>
+<a href="md_CONTRIBUTING.html#autotoc_md0"/>
+<a href="md_CONTRIBUTING.html#autotoc_md1"/>
+<a href="md_CONTRIBUTING.html#autotoc_md2"/>
+<a href="md_CONTRIBUTING.html#autotoc_md3"/>
+<a href="md_CONTRIBUTING.html#autotoc_md4"/>
+<a href="md_CONTRIBUTING.html#autotoc_md5"/>
+<a href="md_CONTRIBUTING.html#autotoc_md6"/>
+<a href="md_CONTRIBUTING.html#autotoc_md7"/>
+<a href="md_CONTRIBUTING.html#autotoc_md8"/>
+<a href="md_README.html"/>
+<a href="md_SECURITY.html"/>
+<a href="md_SECURITY.html#autotoc_md29"/>
+<a href="md_SECURITY.html#autotoc_md30"/>
+<a href="md_SECURITY.html#autotoc_md31"/>
+<a href="md_doc_2internal_2release-github.html"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md10"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md11"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md12"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md13"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md14"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md15"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md16"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md17"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md18"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md19"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md20"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md21"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md22"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md23"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md24"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md25"/>
+<a href="md_doc_2internal_2release-github.html#autotoc_md9"/>
+<a href="md_samples_2cmdline_2systemd-with-idle-process.html"/>
+<a href="md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26"/>
+<a href="md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md27"/>
+<a href="md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md28"/>
+<a href="md_tests_2README.html"/>
+<a href="md_tests_2ftests_2README.html"/>
+<a href="md_tests_2ftests_2README.html#autotoc_md33"/>
+<a href="md_tests_2ftests_2README.html#autotoc_md34"/>
+<a href="structarray__parent__info.html"/>
+<a href="structarray__unchanged.html"/>
+<a href="structcg__mount__point.html"/>
+<a href="structcg__mount__table__s.html"/>
+<a href="structcg__mount__table__s.html#a9704fa3ec3674f6d433345ea52b6aeef"/>
+<a href="structcg__mount__table__s.html#a9fc6421ae21cb12127b3c1f5af3a7d4a"/>
+<a href="structcgroup.html"/>
+<a href="structcgroup__abstraction__map.html"/>
+<a href="structcgroup__controller.html"/>
+<a href="structcgroup__dictionary.html"/>
+<a href="structcgroup__dictionary__item.html"/>
+<a href="structcgroup__dictionary__iterator.html"/>
+<a href="structcgroup__file__info.html"/>
+<a href="structcgroup__file__info.html#a4c61dc7f726ba0784ff8c71473dbc6e6"/>
+<a href="structcgroup__file__info.html#a739c7f87593e36d8589d3ffa80b57059"/>
+<a href="structcgroup__file__info.html#a801424e68139c930e40ea24be4d96a68"/>
+<a href="structcgroup__file__info.html#a955506601f440d05cb11e4ee6b455c55"/>
+<a href="structcgroup__file__info.html#ad56dca35266f0f5f5c2666b946d72709"/>
+<a href="structcgroup__group__spec.html"/>
+<a href="structcgroup__info.html"/>
+<a href="structcgroup__mount__point.html"/>
+<a href="structcgroup__mount__point.html#a849ccf1e77fffd5d45304c6adf0d2100"/>
+<a href="structcgroup__mount__point.html#ad1e89dfc02cfd7341e2296086a4f251e"/>
+<a href="structcgroup__rule.html"/>
+<a href="structcgroup__rule__list.html"/>
+<a href="structcgroup__rules__data.html"/>
+<a href="structcgroup__stat.html"/>
+<a href="structcgroup__string__list.html"/>
+<a href="structcgroup__systemd__opts.html"/>
+<a href="structcgroup__systemd__scope__opts.html"/>
+<a href="structcgroup__systemd__scope__opts.html#a73b472fe4247f194a78ffb9fd0f57008"/>
+<a href="structcgroup__systemd__scope__opts.html#aadb235f6712172bd4e7c6485ad7f30f9"/>
+<a href="structcgroup__systemd__scope__opts.html#afeebc7db4b83ce4a7d2aeefb8089df86"/>
+<a href="structcgroup__tree__handle.html"/>
+<a href="structcontrol__value.html"/>
+<a href="structcontroller__data.html"/>
+<a href="structcontroller__data.html#a24be412cfb6c19f7a13a4bff9e55206e"/>
+<a href="structcontroller__data.html#a25e316f55473ca2b333b0d7e0ca644b4"/>
+<a href="structcontroller__data.html#a5474be4d8cc4553c94ca81c6a93f5a18"/>
+<a href="structcontroller__data.html#acd075c0bb48062bf720b68d0a30116eb"/>
+<a href="structdeny__list__type.html"/>
+<a href="structexample__opts.html"/>
+<a href="structext__cgroup__record.html"/>
+<a href="structparent__info.html"/>
+<a href="structunchanged__pid.html"/>
+<a href="systemd_8h_source.html"/>
+<a href="tasks_8h_source.html"/>
+<a href="todo.html"/>
+<a href="tools-common_8h_source.html"/>
+<a href="tools_8h_source.html"/>
+<a href="topics.html"/>
+</body>
+</html>
@licend The above is the entire license notice for the JavaScript code in this file
*/
-function toggleVisibility(linkObj)
-{
- var base = $(linkObj).attr('id');
- var summary = $('#'+base+'-summary');
- var content = $('#'+base+'-content');
- var trigger = $('#'+base+'-trigger');
- var src=$(trigger).attr('src');
- if (content.is(':visible')===true) {
- content.hide();
- summary.show();
- $(linkObj).addClass('closed').removeClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- content.show();
- summary.hide();
- $(linkObj).removeClass('closed').addClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
- }
- return false;
-}
-function updateStripes()
-{
- $('table.directory tr').
- removeClass('even').filter(':visible:even').addClass('even');
- $('table.directory tr').
- removeClass('odd').filter(':visible:odd').addClass('odd');
+function toggleVisibility(linkObj) {
+ return dynsection.toggleVisibility(linkObj);
}
-function toggleLevel(level)
-{
- $('table.directory tr').each(function() {
- var l = this.id.split('_').length-1;
- var i = $('#img'+this.id.substring(3));
- var a = $('#arr'+this.id.substring(3));
- if (l<level+1) {
- i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
- a.html('▼');
- $(this).show();
- } else if (l==level+1) {
- i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
- a.html('►');
- $(this).show();
+let dynsection = {
+
+ // helper function
+ updateStripes : function() {
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+ $('table.directory tr').
+ removeClass('odd').filter(':visible:odd').addClass('odd');
+ },
+
+ toggleVisibility : function(linkObj) {
+ const base = $(linkObj).attr('id');
+ const summary = $('#'+base+'-summary');
+ const content = $('#'+base+'-content');
+ const trigger = $('#'+base+'-trigger');
+ const src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
} else {
- $(this).hide();
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
}
- });
- updateStripes();
-}
-
-function toggleFolder(id)
-{
- // the clicked row
- var currentRow = $('#row_'+id);
-
- // all rows after the clicked row
- var rows = currentRow.nextAll("tr");
-
- var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
-
- // only match elements AFTER this one (can't hide elements before)
- var childRows = rows.filter(function() { return this.id.match(re); });
-
- // first row is visible we are HIDING
- if (childRows.filter(':first').is(':visible')===true) {
- // replace down arrow by right arrow for current row
- var currentRowSpans = currentRow.find("span");
- currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
- currentRowSpans.filter(".arrow").html('►');
- rows.filter("[id^=row_"+id+"]").hide(); // hide all children
- } else { // we are SHOWING
- // replace right arrow by down arrow for current row
- var currentRowSpans = currentRow.find("span");
- currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
- currentRowSpans.filter(".arrow").html('▼');
- // replace down arrows by right arrows for child rows
- var childRowsSpans = childRows.find("span");
- childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
- childRowsSpans.filter(".arrow").html('►');
- childRows.show(); //show all children
- }
- updateStripes();
-}
-
-
-function toggleInherit(id)
-{
- var rows = $('tr.inherit.'+id);
- var img = $('tr.inherit_header.'+id+' img');
- var src = $(img).attr('src');
- if (rows.filter(':first').is(':visible')===true) {
- rows.css('display','none');
- $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- rows.css('display','table-row'); // using show() causes jump in firefox
- $(img).attr('src',src.substring(0,src.length-10)+'open.png');
- }
-}
-
-var opened=true;
-// in case HTML_COLORSTYLE is LIGHT or DARK the vars will be replaced, so we write them out explicitly and use double quotes
-var plusImg = [ "var(--fold-plus-image)", "var(--fold-plus-image-relpath)" ];
-var minusImg = [ "var(--fold-minus-image)", "var(--fold-minus-image-relpath)" ];
-
-// toggle all folding blocks
-function codefold_toggle_all(relPath) {
- if (opened) {
- $('#fold_all').css('background-image',plusImg[relPath]);
- $('div[id^=foldopen]').hide();
- $('div[id^=foldclosed]').show();
- } else {
- $('#fold_all').css('background-image',minusImg[relPath]);
- $('div[id^=foldopen]').show();
- $('div[id^=foldclosed]').hide();
- }
- opened=!opened;
-}
-
-// toggle single folding block
-function codefold_toggle(id) {
- $('#foldopen'+id).toggle();
- $('#foldclosed'+id).toggle();
-}
-function init_codefold(relPath) {
- $('span[class=lineno]').css(
- {'padding-right':'4px',
- 'margin-right':'2px',
- 'display':'inline-block',
- 'width':'54px',
- 'background':'linear-gradient(var(--fold-line-color),var(--fold-line-color)) no-repeat 46px/2px 100%'
+ return false;
+ },
+
+ toggleLevel : function(level) {
+ $('table.directory tr').each(function() {
+ const l = this.id.split('_').length-1;
+ const i = $('#img'+this.id.substring(3));
+ const a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+ a.html('▼');
+ $(this).show();
+ } else if (l==level+1) {
+ i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+ a.html('►');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
});
- // add global toggle to first line
- $('span[class=lineno]:first').append('<span class="fold" id="fold_all" '+
- 'onclick="javascript:codefold_toggle_all('+relPath+');" '+
- 'style="background-image:'+minusImg[relPath]+';"></span>');
- // add vertical lines to other rows
- $('span[class=lineno]').not(':eq(0)').append('<span class="fold"></span>');
- // add toggle controls to lines with fold divs
- $('div[class=foldopen]').each(function() {
- // extract specific id to use
- var id = $(this).attr('id').replace('foldopen','');
- // extract start and end foldable fragment attributes
- var start = $(this).attr('data-start');
- var end = $(this).attr('data-end');
- // replace normal fold span with controls for the first line of a foldable fragment
- $(this).find('span[class=fold]:first').replaceWith('<span class="fold" '+
- 'onclick="javascript:codefold_toggle(\''+id+'\');" '+
- 'style="background-image:'+minusImg[relPath]+';"></span>');
- // append div for folded (closed) representation
- $(this).after('<div id="foldclosed'+id+'" class="foldclosed" style="display:none;"></div>');
- // extract the first line from the "open" section to represent closed content
- var line = $(this).children().first().clone();
- // remove any glow that might still be active on the original line
- $(line).removeClass('glow');
- if (start) {
- // if line already ends with a start marker (e.g. trailing {), remove it
- $(line).html($(line).html().replace(new RegExp('\\s*'+start+'\\s*$','g'),''));
+ this.updateStripes();
+ },
+
+ toggleFolder : function(id) {
+ // the clicked row
+ const currentRow = $('#row_'+id);
+
+ // all rows after the clicked row
+ const rows = currentRow.nextAll("tr");
+
+ const re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+ // only match elements AFTER this one (can't hide elements before)
+ const childRows = rows.filter(function() { return this.id.match(re); });
+
+ // first row is visible we are HIDING
+ if (childRows.filter(':first').is(':visible')===true) {
+ // replace down arrow by right arrow for current row
+ const currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ currentRowSpans.filter(".arrow").html('►');
+ rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+ } else { // we are SHOWING
+ // replace right arrow by down arrow for current row
+ const currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+ currentRowSpans.filter(".arrow").html('▼');
+ // replace down arrows by right arrows for child rows
+ const childRowsSpans = childRows.find("span");
+ childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ childRowsSpans.filter(".arrow").html('►');
+ childRows.show(); //show all children
}
- // replace minus with plus symbol
- $(line).find('span[class=fold]').css('background-image',plusImg[relPath]);
- // append ellipsis
- $(line).append(' '+start+'<a href="javascript:codefold_toggle(\''+id+'\')">…</a>'+end);
- // insert constructed line into closed div
- $('#foldclosed'+id).html(line);
- });
-}
-
+ this.updateStripes();
+ },
+
+ toggleInherit : function(id) {
+ const rows = $('tr.inherit.'+id);
+ const img = $('tr.inherit_header.'+id+' img');
+ const src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ },
+};
+
+let codefold = {
+ opened : true,
+
+ // in case HTML_COLORSTYLE is LIGHT or DARK the vars will be replaced, so we write them out explicitly and use double quotes
+ plusImg: [ "var(--fold-plus-image)", "var(--fold-plus-image-relpath)" ],
+ minusImg: [ "var(--fold-minus-image)", "var(--fold-minus-image-relpath)" ],
+
+ // toggle all folding blocks
+ toggle_all : function(relPath) {
+ if (this.opened) {
+ $('#fold_all').css('background-image',this.plusImg[relPath]);
+ $('div[id^=foldopen]').hide();
+ $('div[id^=foldclosed]').show();
+ } else {
+ $('#fold_all').css('background-image',this.minusImg[relPath]);
+ $('div[id^=foldopen]').show();
+ $('div[id^=foldclosed]').hide();
+ }
+ this.opened=!this.opened;
+ },
+
+ // toggle single folding block
+ toggle : function(id) {
+ $('#foldopen'+id).toggle();
+ $('#foldclosed'+id).toggle();
+ },
+
+ init : function(relPath) {
+ $('span[class=lineno]').css({
+ 'padding-right':'4px',
+ 'margin-right':'2px',
+ 'display':'inline-block',
+ 'width':'54px',
+ 'background':'linear-gradient(var(--fold-line-color),var(--fold-line-color)) no-repeat 46px/2px 100%'
+ });
+ // add global toggle to first line
+ $('span[class=lineno]:first').append('<span class="fold" id="fold_all" '+
+ 'onclick="javascript:codefold.toggle_all('+relPath+');" '+
+ 'style="background-image:'+this.minusImg[relPath]+';"></span>');
+ // add vertical lines to other rows
+ $('span[class=lineno]').not(':eq(0)').append('<span class="fold"></span>');
+ // add toggle controls to lines with fold divs
+ $('div[class=foldopen]').each(function() {
+ // extract specific id to use
+ const id = $(this).attr('id').replace('foldopen','');
+ // extract start and end foldable fragment attributes
+ const start = $(this).attr('data-start');
+ const end = $(this).attr('data-end');
+ // replace normal fold span with controls for the first line of a foldable fragment
+ $(this).find('span[class=fold]:first').replaceWith('<span class="fold" '+
+ 'onclick="javascript:codefold.toggle(\''+id+'\');" '+
+ 'style="background-image:'+codefold.minusImg[relPath]+';"></span>');
+ // append div for folded (closed) representation
+ $(this).after('<div id="foldclosed'+id+'" class="foldclosed" style="display:none;"></div>');
+ // extract the first line from the "open" section to represent closed content
+ const line = $(this).children().first().clone();
+ // remove any glow that might still be active on the original line
+ $(line).removeClass('glow');
+ if (start) {
+ // if line already ends with a start marker (e.g. trailing {), remove it
+ $(line).html($(line).html().replace(new RegExp('\\s*'+start+'\\s*$','g'),''));
+ }
+ // replace minus with plus symbol
+ $(line).find('span[class=fold]').css('background-image',codefold.plusImg[relPath]);
+ // append ellipsis
+ $(line).append(' '+start+'<a href="javascript:codefold.toggle(\''+id+'\')">…</a>'+end);
+ // insert constructed line into closed div
+ $('#foldclosed'+id).html(line);
+ });
+ },
+};
/* @license-end */
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/error.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">error.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: File List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
-<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">▼</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')"> </span><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">▼</span><span id="img_0_0_" class="iconfopen" onclick="toggleFolder('0_0_')"> </span><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html" target="_self">libcgroup</a></td><td class="desc"></td></tr>
+<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">▼</span><span id="img_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_')"> </span><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_')">▼</span><span id="img_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_')"> </span><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html" target="_self">libcgroup</a></td><td class="desc"></td></tr>
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="config_8h_source.html"><span class="icondoc"></span></a><b>config.h</b></td><td class="desc"></td></tr>
<tr id="row_0_0_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="error_8h_source.html"><span class="icondoc"></span></a><b>error.h</b></td><td class="desc"></td></tr>
<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="groups_8h_source.html"><span class="icondoc"></span></a><b>groups.h</b></td><td class="desc"></td></tr>
<tr id="row_0_0_6_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="tasks_8h_source.html"><span class="icondoc"></span></a><b>tasks.h</b></td><td class="desc"></td></tr>
<tr id="row_0_0_7_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="tools_8h_source.html"><span class="icondoc"></span></a><b>tools.h</b></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><a href="libcgroup_8h_source.html"><span class="icondoc"></span></a><b>libcgroup.h</b></td><td class="desc"></td></tr>
-<tr id="row_1_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">▼</span><span id="img_1_" class="iconfopen" onclick="toggleFolder('1_')"> </span><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
-<tr id="row_1_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_1_0_" class="arrow" onclick="toggleFolder('1_0_')">▼</span><span id="img_1_0_" class="iconfopen" onclick="toggleFolder('1_0_')"> </span><a class="el" href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html" target="_self">daemon</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_1_" class="arrow" onclick="dynsection.toggleFolder('1_')">▼</span><span id="img_1_" class="iconfopen" onclick="dynsection.toggleFolder('1_')"> </span><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_1_0_" class="arrow" onclick="dynsection.toggleFolder('1_0_')">▼</span><span id="img_1_0_" class="iconfopen" onclick="dynsection.toggleFolder('1_0_')"> </span><a class="el" href="dir_2d094300ae4f2c55dd459b9ec7dd0ad3.html" target="_self">daemon</a></td><td class="desc"></td></tr>
<tr id="row_1_0_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="cgrulesengd_8h_source.html"><span class="icondoc"></span></a><b>cgrulesengd.h</b></td><td class="desc"></td></tr>
-<tr id="row_1_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_1_1_" class="arrow" onclick="toggleFolder('1_1_')">▼</span><span id="img_1_1_" class="iconfopen" onclick="toggleFolder('1_1_')"> </span><a class="el" href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html" target="_self">tools</a></td><td class="desc"></td></tr>
+<tr id="row_1_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_1_1_" class="arrow" onclick="dynsection.toggleFolder('1_1_')">▼</span><span id="img_1_1_" class="iconfopen" onclick="dynsection.toggleFolder('1_1_')"> </span><a class="el" href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html" target="_self">tools</a></td><td class="desc"></td></tr>
<tr id="row_1_1_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;"> </span><a href="tools-common_8h_source.html"><span class="icondoc"></span></a><b>tools-common.h</b></td><td class="desc"></td></tr>
<tr id="row_1_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><a href="abstraction-common_8h_source.html"><span class="icondoc"></span></a><b>abstraction-common.h</b></td><td class="desc"></td></tr>
<tr id="row_1_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><a href="abstraction-map_8h_source.html"><span class="icondoc"></span></a><b>abstraction-map.h</b></td><td class="desc"></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Data Fields</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Data Fields - Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Data Fields - Variables</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 5. Configuration</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Configuration file</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><code>libcgroup</code> can mount and create control groups and set their parameters as specified in a configuration file.</p>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>add this description?: These functions are mostly intended to be used by internal <code>libcgroup</code> tools, however they are fully supported and applications can benefit from them. </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo</a></b></dt><dd>add this description?: These functions are mostly intended to be used by internal <code>libcgroup</code> tools, however they are fully supported and applications can benefit from them. </dd></dl>
</td></tr>
-<tr class="memitem:ga8adfaca013333acf922a167f55b84140" id="r_ga8adfaca013333acf922a167f55b84140"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config</a> (const char *pathname)</td></tr>
+<tr class="memitem:ga8adfaca013333acf922a167f55b84140" id="r_ga8adfaca013333acf922a167f55b84140"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config</a> (const char *pathname)</td></tr>
<tr class="separator:ga8adfaca013333acf922a167f55b84140"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga85b285712354faca495193075035938d" id="r_ga85b285712354faca495193075035938d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga85b285712354faca495193075035938d">cgroup_unload_cgroups</a> (void)</td></tr>
+<tr class="memitem:ga85b285712354faca495193075035938d" id="r_ga85b285712354faca495193075035938d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga85b285712354faca495193075035938d">cgroup_unload_cgroups</a> (void)</td></tr>
<tr class="separator:ga85b285712354faca495193075035938d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaff77affa0b80ccf507b4b46cc0a8c085" id="r_gaff77affa0b80ccf507b4b46cc0a8c085"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085">cgroup_config_unload_config</a> (const char *pathname, int flags)</td></tr>
+<tr class="memitem:gaff77affa0b80ccf507b4b46cc0a8c085" id="r_gaff77affa0b80ccf507b4b46cc0a8c085"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaff77affa0b80ccf507b4b46cc0a8c085">cgroup_config_unload_config</a> (const char *pathname, int flags)</td></tr>
<tr class="separator:gaff77affa0b80ccf507b4b46cc0a8c085"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga2d3a252b2c0c61c8f64cb1fc41e370ea" id="r_ga2d3a252b2c0c61c8f64cb1fc41e370ea"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea">cgroup_config_set_default</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *new_default)</td></tr>
+<tr class="memitem:ga2d3a252b2c0c61c8f64cb1fc41e370ea" id="r_ga2d3a252b2c0c61c8f64cb1fc41e370ea"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga2d3a252b2c0c61c8f64cb1fc41e370ea">cgroup_config_set_default</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *new_default)</td></tr>
<tr class="separator:ga2d3a252b2c0c61c8f64cb1fc41e370ea"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga6f8c41bb920565e674787fe6dabaef00" id="r_ga6f8c41bb920565e674787fe6dabaef00"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00">cgroup_init_templates_cache</a> (char *pathname)</td></tr>
+<tr class="memitem:ga6f8c41bb920565e674787fe6dabaef00" id="r_ga6f8c41bb920565e674787fe6dabaef00"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga6f8c41bb920565e674787fe6dabaef00">cgroup_init_templates_cache</a> (char *pathname)</td></tr>
<tr class="separator:ga6f8c41bb920565e674787fe6dabaef00"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga89fe0d7943b29cc10d57b07abcdfa7b5" id="r_ga89fe0d7943b29cc10d57b07abcdfa7b5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5">cgroup_reload_cached_templates</a> (char *pathname)</td></tr>
+<tr class="memitem:ga89fe0d7943b29cc10d57b07abcdfa7b5" id="r_ga89fe0d7943b29cc10d57b07abcdfa7b5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga89fe0d7943b29cc10d57b07abcdfa7b5">cgroup_reload_cached_templates</a> (char *pathname)</td></tr>
<tr class="separator:ga89fe0d7943b29cc10d57b07abcdfa7b5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga924860998c37da53cababe24163fc89b" id="r_ga924860998c37da53cababe24163fc89b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga924860998c37da53cababe24163fc89b">cgroup_load_templates_cache_from_files</a> (int *file_index)</td></tr>
+<tr class="memitem:ga924860998c37da53cababe24163fc89b" id="r_ga924860998c37da53cababe24163fc89b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga924860998c37da53cababe24163fc89b">cgroup_load_templates_cache_from_files</a> (int *file_index)</td></tr>
<tr class="separator:ga924860998c37da53cababe24163fc89b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gacb09024dc469a1a1ff8cdebd8d0ab422" id="r_gacb09024dc469a1a1ff8cdebd8d0ab422"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422">cgroup_templates_cache_set_source_files</a> (struct <a class="el" href="structcgroup__string__list.html">cgroup_string_list</a> *tmpl_files)</td></tr>
+<tr class="memitem:gacb09024dc469a1a1ff8cdebd8d0ab422" id="r_gacb09024dc469a1a1ff8cdebd8d0ab422"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gacb09024dc469a1a1ff8cdebd8d0ab422">cgroup_templates_cache_set_source_files</a> (struct <a class="el" href="structcgroup__string__list.html">cgroup_string_list</a> *tmpl_files)</td></tr>
<tr class="separator:gacb09024dc469a1a1ff8cdebd8d0ab422"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga37d49cceb927c44292e3137bceeeb5eb" id="r_ga37d49cceb927c44292e3137bceeeb5eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb">cgroup_config_create_template_group</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, char *template_name, int flags)</td></tr>
+<tr class="memitem:ga37d49cceb927c44292e3137bceeeb5eb" id="r_ga37d49cceb927c44292e3137bceeeb5eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga37d49cceb927c44292e3137bceeeb5eb">cgroup_config_create_template_group</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, char *template_name, int flags)</td></tr>
<tr class="separator:ga37d49cceb927c44292e3137bceeeb5eb"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<tr>
<td class="memname">int cgroup_config_create_template_group </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>template_name</em>, </td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>template_name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_config_load_config </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>pathname</em></td><td>)</td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>pathname</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_config_set_default </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>new_default</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>new_default</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
-<p>Sets default permissions of groups created by subsequent <a class="el" href="group__group__config.html#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config()</a> calls. If a config file contains a 'default {}' section, the default permissions from the config file is then used.</p>
+<p>Sets default permissions of groups created by subsequent <a class="el" href="#ga8adfaca013333acf922a167f55b84140">cgroup_config_load_config()</a> calls. If a config file contains a 'default {}' section, the default permissions from the config file is then used.</p>
<p>Use <a class="el" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup()</a> to create a dummy group and <a class="el" href="group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid()</a> and <a class="el" href="group__group__groups.html#gae8c8f601680e79150608073a55afcac0">cgroup_set_permissions()</a> to set its permissions. Use NO_UID_GID instead of GID/UID and NO_PERMS instead of file/directory permissions to let kernel decide the default permissions where you don't want specific user and/or permissions. Kernel then uses current user/group and permissions from umask then.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr>
<td class="memname">int cgroup_config_unload_config </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>pathname</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>pathname</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_init_templates_cache </td>
<td>(</td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>pathname</em></td><td>)</td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>pathname</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_load_templates_cache_from_files </td>
<td>(</td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>file_index</em></td><td>)</td>
+ <td class="paramtype">int *</td> <td class="paramname"><span class="paramname"><em>file_index</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_reload_cached_templates </td>
<td>(</td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>pathname</em></td><td>)</td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>pathname</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">void cgroup_templates_cache_set_source_files </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__string__list.html">cgroup_string_list</a> * </td>
- <td class="paramname"><em>tmpl_files</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__string__list.html">cgroup_string_list</a> *</td> <td class="paramname"><span class="paramname"><em>tmpl_files</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_unload_cgroups </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 6. Error handling</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Error handling</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Unless states otherwise in documentation of a function, all functions return <code>int</code>, which is zero (0) when the function succeeds, and positive number if the function fails.</p>
-<p>The returned integer is one of the ECG* values described below. Value <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a> means that the error was caused by underlying OS and the real cause can be found by calling <a class="el" href="group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a>. </p>
+<p>The returned integer is one of the ECG* values described below. Value <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a> means that the error was caused by underlying OS and the real cause can be found by calling <a class="el" href="#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a>. </p>
</td></tr>
<tr class="memitem:ga06fc87d81c62e9abb8790b6e5713c55b" id="r_ga06fc87d81c62e9abb8790b6e5713c55b"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <br />
  <b>ECGROUPNOTCOMPILED</b> = 50000
, <br />
  <b>ECGROUPSUBSYSNOTMOUNTED</b>
, <b>ECGROUPNOTOWNER</b>
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba24a6584dd4238475a4e247bdf6956def">ECGROUPMULTIMOUNTED</a>
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba24a6584dd4238475a4e247bdf6956def">ECGROUPMULTIMOUNTED</a>
, <b>ECGROUPNOTALLOWED</b>
, <br />
  <b>ECGMAXVALUESEXCEEDED</b>
, <b>ECGROUPNOTINITIALIZED</b>
, <b>ECGROUPVALUENOTEXIST</b>
, <br />
-  <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a>
+  <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a>
, <b>ECGROUPNOTEQUAL</b>
, <b>ECGCONTROLLERNOTEQUAL</b>
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a>
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a>
, <br />
-  <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba7c23c1a7cbfb7e8e9c66dd96b5c66d21">ECGROUPNORULES</a>
+  <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba7c23c1a7cbfb7e8e9c66dd96b5c66d21">ECGROUPNORULES</a>
, <b>ECGMOUNTFAIL</b>
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba2724c2f0af0d3e3cea66027f6bf2e436">ECGEOF</a> = 50023
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55baf808b0e31be4bfbe8a21f800f913f9c0">ECGCONFIGPARSEFAIL</a>
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba2724c2f0af0d3e3cea66027f6bf2e436">ECGEOF</a> = 50023
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55baf808b0e31be4bfbe8a21f800f913f9c0">ECGCONFIGPARSEFAIL</a>
, <br />
  <b>ECGNAMESPACEPATHS</b>
, <b>ECGNAMESPACECONTROLLER</b>
, <b>ECGROUPUNSUPP</b>
, <br />
  <b>ECGCANTSETVALUE</b>
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba94dbe90328ef8a212633ec464b9b9b11">ECGNONEMPTY</a>
-, <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba33cc635e4cc4055b2c487f027fbdd960">ECGNOVERSIONCONVERT</a>
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba94dbe90328ef8a212633ec464b9b9b11">ECGNONEMPTY</a>
+, <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba33cc635e4cc4055b2c487f027fbdd960">ECGNOVERSIONCONVERT</a>
<br />
}</td></tr>
<tr class="separator:ga06fc87d81c62e9abb8790b6e5713c55b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga7ee3be57533b25d597a2bfd19819307a" id="r_ga7ee3be57533b25d597a2bfd19819307a"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a">cgroup_strerror</a> (int code)</td></tr>
+<tr class="memitem:ga7ee3be57533b25d597a2bfd19819307a" id="r_ga7ee3be57533b25d597a2bfd19819307a"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7ee3be57533b25d597a2bfd19819307a">cgroup_strerror</a> (int code)</td></tr>
<tr class="separator:ga7ee3be57533b25d597a2bfd19819307a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga29057c4aec05bef2b6bf2855ae5d5d46" id="r_ga29057c4aec05bef2b6bf2855ae5d5d46"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno</a> (void)</td></tr>
+<tr class="memitem:ga29057c4aec05bef2b6bf2855ae5d5d46" id="r_ga29057c4aec05bef2b6bf2855ae5d5d46"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno</a> (void)</td></tr>
<tr class="separator:ga29057c4aec05bef2b6bf2855ae5d5d46"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga515eba7218b187ffe263b7d9ecb3ac1b" id="r_ga515eba7218b187ffe263b7d9ecb3ac1b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__errors.html#ga515eba7218b187ffe263b7d9ecb3ac1b">ECGRULESPARSEFAIL</a>   <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a></td></tr>
+<tr class="memitem:ga515eba7218b187ffe263b7d9ecb3ac1b" id="r_ga515eba7218b187ffe263b7d9ecb3ac1b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga515eba7218b187ffe263b7d9ecb3ac1b">ECGRULESPARSEFAIL</a>   <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a></td></tr>
<tr class="separator:ga515eba7218b187ffe263b7d9ecb3ac1b"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">#define ECGRULESPARSEFAIL   <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a></td>
+ <td class="memname">#define ECGRULESPARSEFAIL   <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39">ECGROUPPARSEFAIL</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga06fc87d81c62e9abb8790b6e5713c55ba24a6584dd4238475a4e247bdf6956def" name="gga06fc87d81c62e9abb8790b6e5713c55ba24a6584dd4238475a4e247bdf6956def"></a>ECGROUPMULTIMOUNTED </td><td class="fielddoc"><p>Controllers bound to different mount points </p>
</td></tr>
-<tr><td class="fieldname"><a id="gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193" name="gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193"></a>ECGOTHER </td><td class="fielddoc"><p>Represents error coming from other libraries like glibc. <code>libcgroup</code> users need to check <a class="el" href="group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a> upon encountering this error. </p>
+<tr><td class="fieldname"><a id="gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193" name="gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193"></a>ECGOTHER </td><td class="fielddoc"><p>Represents error coming from other libraries like glibc. <code>libcgroup</code> users need to check <a class="el" href="#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a> upon encountering this error. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39" name="gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39"></a>ECGROUPPARSEFAIL </td><td class="fielddoc"><p>Failed to parse rules configuration file. </p>
</td></tr>
<tr>
<td class="memname">int cgroup_get_last_errno </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">const char * cgroup_strerror </td>
<td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>code</em></td><td>)</td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>code</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Format error code to a human-readable English string. No internationalization is currently done. Returned pointer leads to <code>libcgroup</code> memory and must not be freed nor modified. The memory is rewritten by subsequent call to this function. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
- <tr><td class="paramname">code</td><td>Error code for which the corresponding error string is returned. When <a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a> is used, text with glibc's description of <a class="el" href="group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a> value is returned. </td></tr>
+ <tr><td class="paramname">code</td><td>Error code for which the corresponding error string is returned. When <a class="el" href="#gga06fc87d81c62e9abb8790b6e5713c55ba88111f9ca2e967cbf7565724444c0193">ECGOTHER</a> is used, text with glibc's description of <a class="el" href="#ga29057c4aec05bef2b6bf2855ae5d5d46">cgroup_get_last_errno()</a> value is returned. </td></tr>
</table>
</dd>
</dl>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 2. Group manipulation API</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Basic infrastructure</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><code>struct cgroup*</code> is the heart of <code>libcgroup</code> API. The structure is opaque to applications, all access to the structure is through appropriate functions.</p>
-<p>The most important information is that <b> one <code>struct cgroup*</code> can represent zero, one or more real control groups in kernel</b>. The <code>struct cgroup*</code> is identified by name of the group, which must be set by <a class="el" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup()</a>. Multiple controllers (aka subsystems) can be attached to one <code>struct cgroup*</code> using <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>. These controllers <b>can belong to different hierarchies</b>.</p>
+<p>The most important information is that <b> one <code>struct cgroup*</code> can represent zero, one or more real control groups in kernel</b>. The <code>struct cgroup*</code> is identified by name of the group, which must be set by <a class="el" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup()</a>. Multiple controllers (aka subsystems) can be attached to one <code>struct cgroup*</code> using <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>. These controllers <b>can belong to different hierarchies</b>.</p>
<p>This approach is different to the one in the Linux kernel - a control group must be part of exactly one hierarchy there. In <code>libcgroup</code>, a group can be part of multiple hierarchies, as long as the group name is the same.</p>
<dl class="section user"><dt>Example:</dt><dd>Let there be following control groups: <div class="fragment"><div class="line">cpu,cpuacct:/</div>
<div class="line">cpu,cpuacct:/foo</div>
<div class="line">freezer:/</div>
<div class="line">freezer:/foo</div>
</div><!-- fragment --> I.e. there is <code>cpu</code> and <code>cpuacct</code> controller mounted together in one hierarchy, with <code>foo</code> and <code>bar</code> groups. In addition, <code>freezer</code> is mounted as separate hierarchy, with only one <code>foo</code> group.</dd></dl>
-<dl class="section user"><dt></dt><dd>Following code creates <code>struct cgroup*</code> structure, which represents one group <code>cpu,cpuacct:/foo</code>: <div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
-<div class="line"><a class="code hl_function" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"cpu"</span>);</div>
-<div class="ttc" id="agroup__group__groups_html_ga86b514fe6f99ded356eb5e799787f3f5"><div class="ttname"><a href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a></div><div class="ttdeci">struct cgroup_controller * cgroup_add_controller(struct cgroup *cgrp, const char *name)</div><div class="ttdef"><b>Definition</b> wrapper.c:61</div></div>
-<div class="ttc" id="agroup__group__groups_html_gad34c82ead174988d418f3dcb003aaca7"><div class="ttname"><a href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a></div><div class="ttdeci">struct cgroup * cgroup_new_cgroup(const char *name)</div><div class="ttdef"><b>Definition</b> wrapper.c:43</div></div>
+<dl class="section user"><dt></dt><dd>Following code creates <code>struct cgroup*</code> structure, which represents one group <code>cpu,cpuacct:/foo</code>: <div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
+<div class="line"><a class="code hl_function" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"cpu"</span>);</div>
+<div class="ttc" id="agroup__group__groups_html_ga86b514fe6f99ded356eb5e799787f3f5"><div class="ttname"><a href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a></div><div class="ttdeci">struct cgroup_controller * cgroup_add_controller(struct cgroup *cgrp, const char *name)</div><div class="ttdef"><b>Definition</b> wrapper.c:61</div></div>
+<div class="ttc" id="agroup__group__groups_html_gad34c82ead174988d418f3dcb003aaca7"><div class="ttname"><a href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a></div><div class="ttdeci">struct cgroup * cgroup_new_cgroup(const char *name)</div><div class="ttdef"><b>Definition</b> wrapper.c:43</div></div>
<div class="ttc" id="astructcgroup_html"><div class="ttname"><a href="structcgroup.html">cgroup</a></div><div class="ttdef"><b>Definition</b> libcgroup-internal.h:121</div></div>
-</div><!-- fragment --> Now, you can call e.g. <a class="el" href="group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup()</a> and the group is deleted from the hierarchy. You can note that it's enough to add only one controller to the group to fully identify a group in <code>cpu,cpuacct</code> hierarchy.</dd></dl>
-<dl class="section user"><dt></dt><dd>Following code creates <code>struct cgroup*</code> structure, which represents <b>two</b> groups, <code>cpu,cpuacct:/foo</code> and <code>freezer:/foo</code>: <div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
-<div class="line"><a class="code hl_function" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"cpu"</span>);</div>
-<div class="line"><a class="code hl_function" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"freezer"</span>);</div>
-</div><!-- fragment --> Now, if you call e.g. <a class="el" href="group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup()</a>, the group gets deleted from <b>both</b> hierarchies.</dd></dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>add some propaganda what's so great on this approach... I personally think it is broken and confusing (see TODOs below).</dd></dl>
+</div><!-- fragment --> Now, you can call e.g. <a class="el" href="#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup()</a> and the group is deleted from the hierarchy. You can note that it's enough to add only one controller to the group to fully identify a group in <code>cpu,cpuacct</code> hierarchy.</dd></dl>
+<dl class="section user"><dt></dt><dd>Following code creates <code>struct cgroup*</code> structure, which represents <b>two</b> groups, <code>cpu,cpuacct:/foo</code> and <code>freezer:/foo</code>: <div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
+<div class="line"><a class="code hl_function" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"cpu"</span>);</div>
+<div class="line"><a class="code hl_function" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a>(foo, <span class="stringliteral">"freezer"</span>);</div>
+</div><!-- fragment --> Now, if you call e.g. <a class="el" href="#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup()</a>, the group gets deleted from <b>both</b> hierarchies.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo</a></b></dt><dd>add some propaganda what's so great on this approach... I personally think it is broken and confusing (see TODOs below).</dd></dl>
<p>Following functions are provided to create/destroy various libcgroup structures. Please note that none of these functions actually create or delete a cgroup in kernel! </p>
</td></tr>
-<tr class="memitem:gad34c82ead174988d418f3dcb003aaca7" id="r_gad34c82ead174988d418f3dcb003aaca7"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup.html">cgroup</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a> (const char *name)</td></tr>
+<tr class="memitem:gad34c82ead174988d418f3dcb003aaca7" id="r_gad34c82ead174988d418f3dcb003aaca7"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup.html">cgroup</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a> (const char *name)</td></tr>
<tr class="separator:gad34c82ead174988d418f3dcb003aaca7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga86b514fe6f99ded356eb5e799787f3f5" id="r_ga86b514fe6f99ded356eb5e799787f3f5"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, const char *name)</td></tr>
+<tr class="memitem:ga86b514fe6f99ded356eb5e799787f3f5" id="r_ga86b514fe6f99ded356eb5e799787f3f5"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, const char *name)</td></tr>
<tr class="separator:ga86b514fe6f99ded356eb5e799787f3f5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga68f90377f6183dc8b326876cd1ecf4b1" id="r_ga68f90377f6183dc8b326876cd1ecf4b1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1">cgroup_add_all_controllers</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga68f90377f6183dc8b326876cd1ecf4b1" id="r_ga68f90377f6183dc8b326876cd1ecf4b1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga68f90377f6183dc8b326876cd1ecf4b1">cgroup_add_all_controllers</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga68f90377f6183dc8b326876cd1ecf4b1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gafbc8bd483ee6fbd3b1ccbbd159beccf6" id="r_gafbc8bd483ee6fbd3b1ccbbd159beccf6"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6">cgroup_get_controller</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, const char *name)</td></tr>
+<tr class="memitem:gafbc8bd483ee6fbd3b1ccbbd159beccf6" id="r_gafbc8bd483ee6fbd3b1ccbbd159beccf6"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#gafbc8bd483ee6fbd3b1ccbbd159beccf6">cgroup_get_controller</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, const char *name)</td></tr>
<tr class="separator:gafbc8bd483ee6fbd3b1ccbbd159beccf6"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga7e719c74424040d0d8d3a13d66080a80" id="r_ga7e719c74424040d0d8d3a13d66080a80"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80">cgroup_free</a> (struct <a class="el" href="structcgroup.html">cgroup</a> **cgrp)</td></tr>
+<tr class="memitem:ga7e719c74424040d0d8d3a13d66080a80" id="r_ga7e719c74424040d0d8d3a13d66080a80"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7e719c74424040d0d8d3a13d66080a80">cgroup_free</a> (struct <a class="el" href="structcgroup.html">cgroup</a> **cgrp)</td></tr>
<tr class="separator:ga7e719c74424040d0d8d3a13d66080a80"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga4104e108e85a8576c878822f353b4e39" id="r_ga4104e108e85a8576c878822f353b4e39"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga4104e108e85a8576c878822f353b4e39">cgroup_free_controllers</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga4104e108e85a8576c878822f353b4e39" id="r_ga4104e108e85a8576c878822f353b4e39"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4104e108e85a8576c878822f353b4e39">cgroup_free_controllers</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga4104e108e85a8576c878822f353b4e39"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gad4ffad2eccf9fcbfa8a551e269e0ad58" id="r_gad4ffad2eccf9fcbfa8a551e269e0ad58"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gad4ffad2eccf9fcbfa8a551e269e0ad58">NO_PERMS</a>   (-1U)</td></tr>
+<tr class="memitem:gad4ffad2eccf9fcbfa8a551e269e0ad58" id="r_gad4ffad2eccf9fcbfa8a551e269e0ad58"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad4ffad2eccf9fcbfa8a551e269e0ad58">NO_PERMS</a>   (-1U)</td></tr>
<tr class="separator:gad4ffad2eccf9fcbfa8a551e269e0ad58"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga2a7954a987e3fbf8eabcc94cf381353e" id="r_ga2a7954a987e3fbf8eabcc94cf381353e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga2a7954a987e3fbf8eabcc94cf381353e">NO_UID_GID</a>   (-1U)</td></tr>
+<tr class="memitem:ga2a7954a987e3fbf8eabcc94cf381353e" id="r_ga2a7954a987e3fbf8eabcc94cf381353e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga2a7954a987e3fbf8eabcc94cf381353e">NO_UID_GID</a>   (-1U)</td></tr>
<tr class="separator:ga2a7954a987e3fbf8eabcc94cf381353e"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Group manipulation API</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Using following functions you can create and remove control groups and change their parameters. </p><dl class="section note"><dt>Note</dt><dd>All access to kernel is through previously mounted cgroup filesystems. <code>libcgroup</code> does not mount/unmount anything for you. </dd></dl>
</td></tr>
-<tr class="memitem:ga74c5b4a1d3bc7729af1383c131254fbd" id="r_ga74c5b4a1d3bc7729af1383c131254fbd"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_ownership)</td></tr>
+<tr class="memitem:ga74c5b4a1d3bc7729af1383c131254fbd" id="r_ga74c5b4a1d3bc7729af1383c131254fbd"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_ownership)</td></tr>
<tr class="separator:ga74c5b4a1d3bc7729af1383c131254fbd"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga4d1f015f3fe8bad80fec2abb69e69841" id="r_ga4d1f015f3fe8bad80fec2abb69e69841"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_ownership)</td></tr>
+<tr class="memitem:ga4d1f015f3fe8bad80fec2abb69e69841" id="r_ga4d1f015f3fe8bad80fec2abb69e69841"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_ownership)</td></tr>
<tr class="separator:ga4d1f015f3fe8bad80fec2abb69e69841"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gadadc95782f82d1e4265ece226ee0a9ed" id="r_gadadc95782f82d1e4265ece226ee0a9ed"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:gadadc95782f82d1e4265ece226ee0a9ed" id="r_gadadc95782f82d1e4265ece226ee0a9ed"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:gadadc95782f82d1e4265ece226ee0a9ed"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga4e21815cc612604cdf3d58fa2b34db16" id="r_ga4e21815cc612604cdf3d58fa2b34db16"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_migration)</td></tr>
+<tr class="memitem:ga4e21815cc612604cdf3d58fa2b34db16" id="r_ga4e21815cc612604cdf3d58fa2b34db16"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4e21815cc612604cdf3d58fa2b34db16">cgroup_delete_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int ignore_migration)</td></tr>
<tr class="separator:ga4e21815cc612604cdf3d58fa2b34db16"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab70ff2b86d261411262c4be31e3140e8" id="r_gab70ff2b86d261411262c4be31e3140e8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8">cgroup_delete_cgroup_ext</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int flags)</td></tr>
+<tr class="memitem:gab70ff2b86d261411262c4be31e3140e8" id="r_gab70ff2b86d261411262c4be31e3140e8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab70ff2b86d261411262c4be31e3140e8">cgroup_delete_cgroup_ext</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int flags)</td></tr>
<tr class="separator:gab70ff2b86d261411262c4be31e3140e8"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Other functions</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Helper functions to manipulate with control groups. </p>
</td></tr>
-<tr class="memitem:ga25ef7e1c839c682e4bb6bab4bd24c37f" id="r_ga25ef7e1c839c682e4bb6bab4bd24c37f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga25ef7e1c839c682e4bb6bab4bd24c37f" id="r_ga25ef7e1c839c682e4bb6bab4bd24c37f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga25ef7e1c839c682e4bb6bab4bd24c37f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaa981a95e0917d3167601a4c1b392336a" id="r_gaa981a95e0917d3167601a4c1b392336a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a">cgroup_copy_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *dst, struct <a class="el" href="structcgroup.html">cgroup</a> *src)</td></tr>
+<tr class="memitem:gaa981a95e0917d3167601a4c1b392336a" id="r_gaa981a95e0917d3167601a4c1b392336a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaa981a95e0917d3167601a4c1b392336a">cgroup_copy_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *dst, struct <a class="el" href="structcgroup.html">cgroup</a> *src)</td></tr>
<tr class="separator:gaa981a95e0917d3167601a4c1b392336a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaf066e538ebf4aa1f32a654f302a8c353" id="r_gaf066e538ebf4aa1f32a654f302a8c353"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353">cgroup_compare_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp_a, struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp_b)</td></tr>
+<tr class="memitem:gaf066e538ebf4aa1f32a654f302a8c353" id="r_gaf066e538ebf4aa1f32a654f302a8c353"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaf066e538ebf4aa1f32a654f302a8c353">cgroup_compare_cgroup</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp_a, struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp_b)</td></tr>
<tr class="separator:gaf066e538ebf4aa1f32a654f302a8c353"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab1725c50c49cec4b0bdad1f26b150ca7" id="r_gab1725c50c49cec4b0bdad1f26b150ca7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7">cgroup_compare_controllers</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *cgca, struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *cgcb)</td></tr>
+<tr class="memitem:gab1725c50c49cec4b0bdad1f26b150ca7" id="r_gab1725c50c49cec4b0bdad1f26b150ca7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab1725c50c49cec4b0bdad1f26b150ca7">cgroup_compare_controllers</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *cgca, struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *cgcb)</td></tr>
<tr class="separator:gab1725c50c49cec4b0bdad1f26b150ca7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga51f539b526d2a4939f03f0b4d4ed9040" id="r_ga51f539b526d2a4939f03f0b4d4ed9040"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid)</td></tr>
+<tr class="memitem:ga51f539b526d2a4939f03f0b4d4ed9040" id="r_ga51f539b526d2a4939f03f0b4d4ed9040"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid)</td></tr>
<tr class="separator:ga51f539b526d2a4939f03f0b4d4ed9040"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga3b560f12d9d50c177cc48d5016c93412" id="r_ga3b560f12d9d50c177cc48d5016c93412"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412">cgroup_get_uid_gid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid)</td></tr>
+<tr class="memitem:ga3b560f12d9d50c177cc48d5016c93412" id="r_ga3b560f12d9d50c177cc48d5016c93412"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga3b560f12d9d50c177cc48d5016c93412">cgroup_get_uid_gid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid)</td></tr>
<tr class="separator:ga3b560f12d9d50c177cc48d5016c93412"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gae8c8f601680e79150608073a55afcac0" id="r_gae8c8f601680e79150608073a55afcac0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gae8c8f601680e79150608073a55afcac0">cgroup_set_permissions</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm)</td></tr>
+<tr class="memitem:gae8c8f601680e79150608073a55afcac0" id="r_gae8c8f601680e79150608073a55afcac0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gae8c8f601680e79150608073a55afcac0">cgroup_set_permissions</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm)</td></tr>
<tr class="separator:gae8c8f601680e79150608073a55afcac0"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Group parameters</h2></td></tr>
-<tr><td class="ititle" colspan="2"><p>These are functions can read or modify parameter of a group. </p><dl class="section note"><dt>Note</dt><dd>All these functions read/write parameters to <code>libcgorup</code> internal structures. Use <a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to load parameters from kernel to these internal structures and <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write changes to kernel. </dd></dl>
+<tr><td class="ititle" colspan="2"><p>These are functions can read or modify parameter of a group. </p><dl class="section note"><dt>Note</dt><dd>All these functions read/write parameters to <code>libcgorup</code> internal structures. Use <a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to load parameters from kernel to these internal structures and <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write changes to kernel. </dd></dl>
</td></tr>
-<tr class="memitem:ga4817c68ab791c09c07b663c29b3fb029" id="r_ga4817c68ab791c09c07b663c29b3fb029"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029">cgroup_add_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, const char *value)</td></tr>
+<tr class="memitem:ga4817c68ab791c09c07b663c29b3fb029" id="r_ga4817c68ab791c09c07b663c29b3fb029"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4817c68ab791c09c07b663c29b3fb029">cgroup_add_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, const char *value)</td></tr>
<tr class="separator:ga4817c68ab791c09c07b663c29b3fb029"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga6c973bb5ce99e7a91def2032f23d7087" id="r_ga6c973bb5ce99e7a91def2032f23d7087"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087">cgroup_add_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t value)</td></tr>
+<tr class="memitem:ga6c973bb5ce99e7a91def2032f23d7087" id="r_ga6c973bb5ce99e7a91def2032f23d7087"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga6c973bb5ce99e7a91def2032f23d7087">cgroup_add_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t value)</td></tr>
<tr class="separator:ga6c973bb5ce99e7a91def2032f23d7087"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gad9d2216205b96278c626122f8d5e63bb" id="r_gad9d2216205b96278c626122f8d5e63bb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb">cgroup_add_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t value)</td></tr>
+<tr class="memitem:gad9d2216205b96278c626122f8d5e63bb" id="r_gad9d2216205b96278c626122f8d5e63bb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad9d2216205b96278c626122f8d5e63bb">cgroup_add_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t value)</td></tr>
<tr class="separator:gad9d2216205b96278c626122f8d5e63bb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga4b191a600f84b00ea7afd12c01d918f3" id="r_ga4b191a600f84b00ea7afd12c01d918f3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3">cgroup_add_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool value)</td></tr>
+<tr class="memitem:ga4b191a600f84b00ea7afd12c01d918f3" id="r_ga4b191a600f84b00ea7afd12c01d918f3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4b191a600f84b00ea7afd12c01d918f3">cgroup_add_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool value)</td></tr>
<tr class="separator:ga4b191a600f84b00ea7afd12c01d918f3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gafaa51e5ffe09f8ad05585a1d3b6f7fa9" id="r_gafaa51e5ffe09f8ad05585a1d3b6f7fa9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9">cgroup_get_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, char **value)</td></tr>
+<tr class="memitem:gafaa51e5ffe09f8ad05585a1d3b6f7fa9" id="r_gafaa51e5ffe09f8ad05585a1d3b6f7fa9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gafaa51e5ffe09f8ad05585a1d3b6f7fa9">cgroup_get_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, char **value)</td></tr>
<tr class="separator:gafaa51e5ffe09f8ad05585a1d3b6f7fa9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga0fe9b05f26b3cab21fc446c9a2700526" id="r_ga0fe9b05f26b3cab21fc446c9a2700526"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526">cgroup_get_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t *value)</td></tr>
+<tr class="memitem:ga0fe9b05f26b3cab21fc446c9a2700526" id="r_ga0fe9b05f26b3cab21fc446c9a2700526"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga0fe9b05f26b3cab21fc446c9a2700526">cgroup_get_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t *value)</td></tr>
<tr class="separator:ga0fe9b05f26b3cab21fc446c9a2700526"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga951861259c0373895bfb637fce337312" id="r_ga951861259c0373895bfb637fce337312"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga951861259c0373895bfb637fce337312">cgroup_get_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t *value)</td></tr>
+<tr class="memitem:ga951861259c0373895bfb637fce337312" id="r_ga951861259c0373895bfb637fce337312"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga951861259c0373895bfb637fce337312">cgroup_get_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t *value)</td></tr>
<tr class="separator:ga951861259c0373895bfb637fce337312"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab95007148eac89b7e935d93a4524787b" id="r_gab95007148eac89b7e935d93a4524787b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gab95007148eac89b7e935d93a4524787b">cgroup_get_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool *value)</td></tr>
+<tr class="memitem:gab95007148eac89b7e935d93a4524787b" id="r_gab95007148eac89b7e935d93a4524787b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab95007148eac89b7e935d93a4524787b">cgroup_get_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool *value)</td></tr>
<tr class="separator:gab95007148eac89b7e935d93a4524787b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga938febc02b59cbeb8e4ceb2dc7fdac82" id="r_ga938febc02b59cbeb8e4ceb2dc7fdac82"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82">cgroup_set_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, const char *value)</td></tr>
+<tr class="memitem:ga938febc02b59cbeb8e4ceb2dc7fdac82" id="r_ga938febc02b59cbeb8e4ceb2dc7fdac82"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga938febc02b59cbeb8e4ceb2dc7fdac82">cgroup_set_value_string</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, const char *value)</td></tr>
<tr class="separator:ga938febc02b59cbeb8e4ceb2dc7fdac82"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaa5c39e51035cc43dd26a3c620441a956" id="r_gaa5c39e51035cc43dd26a3c620441a956"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956">cgroup_set_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t value)</td></tr>
+<tr class="memitem:gaa5c39e51035cc43dd26a3c620441a956" id="r_gaa5c39e51035cc43dd26a3c620441a956"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaa5c39e51035cc43dd26a3c620441a956">cgroup_set_value_int64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, int64_t value)</td></tr>
<tr class="separator:gaa5c39e51035cc43dd26a3c620441a956"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gade01aa1fe30ccc968af9fe8a3bc821e5" id="r_gade01aa1fe30ccc968af9fe8a3bc821e5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5">cgroup_set_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t value)</td></tr>
+<tr class="memitem:gade01aa1fe30ccc968af9fe8a3bc821e5" id="r_gade01aa1fe30ccc968af9fe8a3bc821e5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gade01aa1fe30ccc968af9fe8a3bc821e5">cgroup_set_value_uint64</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, u_int64_t value)</td></tr>
<tr class="separator:gade01aa1fe30ccc968af9fe8a3bc821e5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gafb24892bc221cffee0f5fe07f64d54d7" id="r_gafb24892bc221cffee0f5fe07f64d54d7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7">cgroup_set_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool value)</td></tr>
+<tr class="memitem:gafb24892bc221cffee0f5fe07f64d54d7" id="r_gafb24892bc221cffee0f5fe07f64d54d7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gafb24892bc221cffee0f5fe07f64d54d7">cgroup_set_value_bool</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, const char *name, bool value)</td></tr>
<tr class="separator:gafb24892bc221cffee0f5fe07f64d54d7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga25115085978ce2a8d671e7876cc49c1d" id="r_ga25115085978ce2a8d671e7876cc49c1d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d">cgroup_get_value_name_count</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller)</td></tr>
+<tr class="memitem:ga25115085978ce2a8d671e7876cc49c1d" id="r_ga25115085978ce2a8d671e7876cc49c1d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga25115085978ce2a8d671e7876cc49c1d">cgroup_get_value_name_count</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller)</td></tr>
<tr class="separator:ga25115085978ce2a8d671e7876cc49c1d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga9d01743fd3f97014e08fc67149ec5f0b" id="r_ga9d01743fd3f97014e08fc67149ec5f0b"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b">cgroup_get_value_name</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, int index)</td></tr>
+<tr class="memitem:ga9d01743fd3f97014e08fc67149ec5f0b" id="r_ga9d01743fd3f97014e08fc67149ec5f0b"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga9d01743fd3f97014e08fc67149ec5f0b">cgroup_get_value_name</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller, int index)</td></tr>
<tr class="separator:ga9d01743fd3f97014e08fc67149ec5f0b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga65ece0f619100492d758fbeb3788358a" id="r_ga65ece0f619100492d758fbeb3788358a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga65ece0f619100492d758fbeb3788358a">cgroup_get_procs</a> (const char *name, const char *controller, pid_t **pids, int *size)</td></tr>
+<tr class="memitem:ga65ece0f619100492d758fbeb3788358a" id="r_ga65ece0f619100492d758fbeb3788358a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga65ece0f619100492d758fbeb3788358a">cgroup_get_procs</a> (const char *name, const char *controller, pid_t **pids, int *size)</td></tr>
<tr class="separator:ga65ece0f619100492d758fbeb3788358a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga5a9cb81b0a1e0f3bd08599084d4ae300" id="r_ga5a9cb81b0a1e0f3bd08599084d4ae300"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300">cgroup_get_threads</a> (const char *name, const char *controller, pid_t **pids, int *size)</td></tr>
+<tr class="memitem:ga5a9cb81b0a1e0f3bd08599084d4ae300" id="r_ga5a9cb81b0a1e0f3bd08599084d4ae300"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga5a9cb81b0a1e0f3bd08599084d4ae300">cgroup_get_threads</a> (const char *name, const char *controller, pid_t **pids, int *size)</td></tr>
<tr class="separator:ga5a9cb81b0a1e0f3bd08599084d4ae300"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gac9e669d8e0994bfbbdef630b6fe41c76" id="r_gac9e669d8e0994bfbbdef630b6fe41c76"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gac9e669d8e0994bfbbdef630b6fe41c76">cg_chmod_recursive</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, mode_t dir_mode, int dirm_change, mode_t file_mode, int filem_change)</td></tr>
+<tr class="memitem:gac9e669d8e0994bfbbdef630b6fe41c76" id="r_gac9e669d8e0994bfbbdef630b6fe41c76"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gac9e669d8e0994bfbbdef630b6fe41c76">cg_chmod_recursive</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, mode_t dir_mode, int dirm_change, mode_t file_mode, int filem_change)</td></tr>
<tr class="separator:gac9e669d8e0994bfbbdef630b6fe41c76"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga7d759f21861ed546c12094cabc0b7054" id="r_ga7d759f21861ed546c12094cabc0b7054"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054">cgroup_get_cgroup_name</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga7d759f21861ed546c12094cabc0b7054" id="r_ga7d759f21861ed546c12094cabc0b7054"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7d759f21861ed546c12094cabc0b7054">cgroup_get_cgroup_name</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga7d759f21861ed546c12094cabc0b7054"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga9b3eab74e8f65212790f434fce931fd9" id="r_ga9b3eab74e8f65212790f434fce931fd9"><td class="memItemLeft" align="right" valign="top"><a id="ga9b3eab74e8f65212790f434fce931fd9" name="ga9b3eab74e8f65212790f434fce931fd9"></a>
int </td><td class="memItemRight" valign="bottom"><b>cgroup_convert_cgroup</b> (struct <a class="el" href="structcgroup.html">cgroup</a> *const out_cgrp, enum cg_version_t out_version, const struct <a class="el" href="structcgroup.html">cgroup</a> *const in_cgrp, enum cg_version_t in_version)</td></tr>
<tr class="separator:ga9b3eab74e8f65212790f434fce931fd9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga0fd537a3ba09c497378dc494fa405f82" id="r_ga0fd537a3ba09c497378dc494fa405f82"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82">cgroup_list_mount_points</a> (const enum cg_version_t cgrp_version, char ***mount_paths)</td></tr>
+<tr class="memitem:ga0fd537a3ba09c497378dc494fa405f82" id="r_ga0fd537a3ba09c497378dc494fa405f82"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga0fd537a3ba09c497378dc494fa405f82">cgroup_list_mount_points</a> (const enum cg_version_t cgrp_version, char ***mount_paths)</td></tr>
<tr class="separator:ga0fd537a3ba09c497378dc494fa405f82"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga452d8c5e95c8d694e26e7efda045360f" id="r_ga452d8c5e95c8d694e26e7efda045360f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f">cgroup_get_controller_version</a> (const char *const controller, enum cg_version_t *const version)</td></tr>
+<tr class="memitem:ga452d8c5e95c8d694e26e7efda045360f" id="r_ga452d8c5e95c8d694e26e7efda045360f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga452d8c5e95c8d694e26e7efda045360f">cgroup_get_controller_version</a> (const char *const controller, enum cg_version_t *const version)</td></tr>
<tr class="separator:ga452d8c5e95c8d694e26e7efda045360f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaebf0c15818fa8201b8a458f3e3e044da" id="r_gaebf0c15818fa8201b8a458f3e3e044da"><td class="memItemLeft" align="right" valign="top">enum cg_setup_mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da">cgroup_setup_mode</a> (void)</td></tr>
+<tr class="memitem:gaebf0c15818fa8201b8a458f3e3e044da" id="r_gaebf0c15818fa8201b8a458f3e3e044da"><td class="memItemLeft" align="right" valign="top">enum cg_setup_mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaebf0c15818fa8201b8a458f3e3e044da">cgroup_setup_mode</a> (void)</td></tr>
<tr class="separator:gaebf0c15818fa8201b8a458f3e3e044da"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga42d5c13ecb8d9d7e625bb473034a26c3" id="r_ga42d5c13ecb8d9d7e625bb473034a26c3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3">cgroup_get_controller_count</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga42d5c13ecb8d9d7e625bb473034a26c3" id="r_ga42d5c13ecb8d9d7e625bb473034a26c3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga42d5c13ecb8d9d7e625bb473034a26c3">cgroup_get_controller_count</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga42d5c13ecb8d9d7e625bb473034a26c3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaba11ac0b3b74400501a1b030dfd7be9a" id="r_gaba11ac0b3b74400501a1b030dfd7be9a"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a">cgroup_get_controller_by_index</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int index)</td></tr>
+<tr class="memitem:gaba11ac0b3b74400501a1b030dfd7be9a" id="r_gaba11ac0b3b74400501a1b030dfd7be9a"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaba11ac0b3b74400501a1b030dfd7be9a">cgroup_get_controller_by_index</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, int index)</td></tr>
<tr class="separator:gaba11ac0b3b74400501a1b030dfd7be9a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gac13c5570894e6581bd1ebbdcbb73c74e" id="r_gac13c5570894e6581bd1ebbdcbb73c74e"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e">cgroup_get_controller_name</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller)</td></tr>
+<tr class="memitem:gac13c5570894e6581bd1ebbdcbb73c74e" id="r_gac13c5570894e6581bd1ebbdcbb73c74e"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#gac13c5570894e6581bd1ebbdcbb73c74e">cgroup_get_controller_name</a> (struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *controller)</td></tr>
<tr class="separator:gac13c5570894e6581bd1ebbdcbb73c74e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga5103da236354f658697c730cc6834f07" id="r_ga5103da236354f658697c730cc6834f07"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga5103da236354f658697c730cc6834f07">is_cgroup_mode_legacy</a> (void)</td></tr>
+<tr class="memitem:ga5103da236354f658697c730cc6834f07" id="r_ga5103da236354f658697c730cc6834f07"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga5103da236354f658697c730cc6834f07">is_cgroup_mode_legacy</a> (void)</td></tr>
<tr class="separator:ga5103da236354f658697c730cc6834f07"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga11a48a466c0d4b03d3480cd4d8c830f8" id="r_ga11a48a466c0d4b03d3480cd4d8c830f8"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga11a48a466c0d4b03d3480cd4d8c830f8">is_cgroup_mode_hybrid</a> (void)</td></tr>
+<tr class="memitem:ga11a48a466c0d4b03d3480cd4d8c830f8" id="r_ga11a48a466c0d4b03d3480cd4d8c830f8"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga11a48a466c0d4b03d3480cd4d8c830f8">is_cgroup_mode_hybrid</a> (void)</td></tr>
<tr class="separator:ga11a48a466c0d4b03d3480cd4d8c830f8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga7d360d903d69dfffd6d7a2904882f707" id="r_ga7d360d903d69dfffd6d7a2904882f707"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__groups.html#ga7d360d903d69dfffd6d7a2904882f707">is_cgroup_mode_unified</a> (void)</td></tr>
+<tr class="memitem:ga7d360d903d69dfffd6d7a2904882f707" id="r_ga7d360d903d69dfffd6d7a2904882f707"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7d360d903d69dfffd6d7a2904882f707">is_cgroup_mode_unified</a> (void)</td></tr>
<tr class="separator:ga7d360d903d69dfffd6d7a2904882f707"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<tr>
<td class="memname">int cg_chmod_recursive </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">mode_t </td>
- <td class="paramname"><em>dir_mode</em>, </td>
+ <td class="paramtype">mode_t</td> <td class="paramname"><span class="paramname"><em>dir_mode</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>dirm_change</em>, </td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>dirm_change</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">mode_t </td>
- <td class="paramname"><em>file_mode</em>, </td>
+ <td class="paramtype">mode_t</td> <td class="paramname"><span class="paramname"><em>file_mode</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>filem_change</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>filem_change</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_add_all_controllers </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * cgroup_add_controller </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_add_value_bool </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">bool </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_add_value_int64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int64_t </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int64_t</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel. Content of the value is copied to internal structures and is not needed after return from the function.</p>
+<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel. Content of the value is copied to internal structures and is not needed after return from the function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_add_value_string </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_add_value_uint64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">u_int64_t </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">u_int64_t</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Add parameter and its value to internal <code>libcgroup</code> structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_compare_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp_a</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp_a</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp_b</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp_b</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_compare_controllers </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>cgca</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>cgca</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>cgcb</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>cgcb</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_copy_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>dst</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>dst</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>src</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>src</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_create_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>ignore_ownership</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>ignore_ownership</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Physically create a control group in kernel. The group is created in all hierarchies, which cover controllers added by <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>. All parameters set by cgroup_add_value_* functions are written. The created groups has owner which was set by <a class="el" href="group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid()</a> and permissions set by cgroup_set_permissions. </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Physically create a control group in kernel. The group is created in all hierarchies, which cover controllers added by <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>. All parameters set by cgroup_add_value_* functions are written. The created groups has owner which was set by <a class="el" href="#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid()</a> and permissions set by cgroup_set_permissions. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td></td></tr>
<tr><td class="paramname">ignore_ownership</td><td>When nozero, all errors are ignored when setting owner of the group and/or its tasks file. </td></tr>
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>what is ignore_ownership good for? </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo</a></b></dt><dd>what is ignore_ownership good for? </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">ECGROUPNOTEQUAL</td><td>if not all specified controller parameters were successfully set.</td></tr>
<tr>
<td class="memname">int cgroup_create_cgroup_from_parent </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>ignore_ownership</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>ignore_ownership</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Physically create new control group in kernel, with all parameters and values copied from its parent group. The group is created in all hierarchies, where the parent group exists. I.e. following code creates subgroup in all hierarchies, because all of them have root (=parent) group. </p><div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
-<div class="line"><a class="code hl_function" href="group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a>(foo, 0);</div>
-<div class="ttc" id="agroup__group__groups_html_ga4d1f015f3fe8bad80fec2abb69e69841"><div class="ttname"><a href="group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a></div><div class="ttdeci">int cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership)</div><div class="ttdef"><b>Definition</b> api.c:3233</div></div>
-</div><!-- fragment --> <dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>what is this good for? Why the list of controllers added by <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> is not used, like in <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a>? I can't create subgroup of root group in just one hierarchy with this function!</dd></dl>
+<p>Physically create new control group in kernel, with all parameters and values copied from its parent group. The group is created in all hierarchies, where the parent group exists. I.e. following code creates subgroup in all hierarchies, because all of them have root (=parent) group. </p><div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *foo = <a class="code hl_function" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"foo"</span>);</div>
+<div class="line"><a class="code hl_function" href="#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a>(foo, 0);</div>
+<div class="ttc" id="agroup__group__groups_html_ga4d1f015f3fe8bad80fec2abb69e69841"><div class="ttname"><a href="#ga4d1f015f3fe8bad80fec2abb69e69841">cgroup_create_cgroup_from_parent</a></div><div class="ttdeci">int cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership)</div><div class="ttdef"><b>Definition</b> api.c:3233</div></div>
+</div><!-- fragment --> <dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo</a></b></dt><dd>what is this good for? Why the list of controllers added by <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> is not used, like in <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a>? I can't create subgroup of root group in just one hierarchy with this function!</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td>The cgroup to create. Only it's name is used, everything else is discarded. </td></tr>
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>what is ignore_ownership good for? </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo</a></b></dt><dd>what is ignore_ownership good for? </dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">ECGROUPNOTEQUAL</td><td>if not all inherited controller parameters were successfully set (this is expected).</td></tr>
<tr>
<td class="memname">int cgroup_delete_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>ignore_migration</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>ignore_migration</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Physically remove a control group from kernel. The group is removed from all hierarchies, which cover controllers added by <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> or <a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a>. All tasks inside the group are automatically moved to parent group.</p>
-<p>The group being removed must be empty, i.e. without subgroups. Use <a class="el" href="group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8">cgroup_delete_cgroup_ext()</a> for recursive delete.</p>
+<p>Physically remove a control group from kernel. The group is removed from all hierarchies, which cover controllers added by <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> or <a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a>. All tasks inside the group are automatically moved to parent group.</p>
+<p>The group being removed must be empty, i.e. without subgroups. Use <a class="el" href="#gab70ff2b86d261411262c4be31e3140e8">cgroup_delete_cgroup_ext()</a> for recursive delete.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td></td></tr>
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">Todo:</a></b></dt><dd>what is ignore_migration good for? rmdir() will fail if tasks were not moved. </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">Todo</a></b></dt><dd>what is ignore_migration good for? rmdir() will fail if tasks were not moved. </dd></dl>
<p>cgroup_delete cgroup deletes a control group. struct cgroup *cgrp takes the group which is to be deleted.</p>
<p>returns 0 on success. </p>
<tr>
<td class="memname">int cgroup_delete_cgroup_ext </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">void cgroup_free </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> ** </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> **</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">void cgroup_free_controllers </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
-<p>Free internal list of controllers from the group. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>should this function be public??? </dd></dl>
+<p>Free internal list of controllers from the group. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo</a></b></dt><dd>should this function be public??? </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td></td></tr>
<tr>
<td class="memname">int cgroup_get_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read all information regarding the group from kernel. Based on name of the group, list of controllers and all parameters and their values are read from all hierarchies, where a group with given name exists. All existing controllers are replaced. I.e. following code will fill <code>root</code> with controllers from all hierarchies, because the root group is available in all of them. </p><div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *root = <a class="code hl_function" href="group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"/"</span>);</div>
-<div class="line"><a class="code hl_function" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a>(root);</div>
-<div class="ttc" id="agroup__group__groups_html_ga25ef7e1c839c682e4bb6bab4bd24c37f"><div class="ttname"><a href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a></div><div class="ttdeci">int cgroup_get_cgroup(struct cgroup *cgrp)</div><div class="ttdef"><b>Definition</b> api.c:3767</div></div>
-</div><!-- fragment --><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000009">Todo:</a></b></dt><dd>what is this function good for? Why is not considered only the list of controllers attached by <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>? What owners will return <a class="el" href="group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412">cgroup_get_uid_gid()</a> if the group is in multiple hierarchies, each with different owner of tasks file?</dd></dl>
+<p>Read all information regarding the group from kernel. Based on name of the group, list of controllers and all parameters and their values are read from all hierarchies, where a group with given name exists. All existing controllers are replaced. I.e. following code will fill <code>root</code> with controllers from all hierarchies, because the root group is available in all of them. </p><div class="fragment"><div class="line"><span class="keyword">struct </span><a class="code hl_struct" href="structcgroup.html">cgroup</a> *root = <a class="code hl_function" href="#gad34c82ead174988d418f3dcb003aaca7">cgroup_new_cgroup</a>(<span class="stringliteral">"/"</span>);</div>
+<div class="line"><a class="code hl_function" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a>(root);</div>
+<div class="ttc" id="agroup__group__groups_html_ga25ef7e1c839c682e4bb6bab4bd24c37f"><div class="ttname"><a href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup</a></div><div class="ttdeci">int cgroup_get_cgroup(struct cgroup *cgrp)</div><div class="ttdef"><b>Definition</b> api.c:3767</div></div>
+</div><!-- fragment --><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000009">Todo</a></b></dt><dd>what is this function good for? Why is not considered only the list of controllers attached by <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a>? What owners will return <a class="el" href="#ga3b560f12d9d50c177cc48d5016c93412">cgroup_get_uid_gid()</a> if the group is in multiple hierarchies, each with different owner of tasks file?</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td>The cgroup to load. Only it's name is used, everything else is replaced. </td></tr>
<tr>
<td class="memname">char * cgroup_get_cgroup_name </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * cgroup_get_controller </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Return appropriate controller from given group. The controller must be added before using <a class="el" href="group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> or loaded from kernel using <a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a>. </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Return appropriate controller from given group. The controller must be added before using <a class="el" href="#ga86b514fe6f99ded356eb5e799787f3f5">cgroup_add_controller()</a> or loaded from kernel using <a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a>. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td></td></tr>
<tr><td class="paramname">name</td><td>The name of the controller, e.g. "freezer". </td></tr>
<tr>
<td class="memname">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * cgroup_get_controller_by_index </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>index</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>index</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_controller_count </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">char * cgroup_get_controller_name </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_get_controller_version </td>
<td>(</td>
- <td class="paramtype">const char *const </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *const</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">enum cg_version_t *const </td>
- <td class="paramname"><em>version</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">enum cg_version_t *const</td> <td class="paramname"><span class="paramname"><em>version</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_procs </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t ** </td>
- <td class="paramname"><em>pids</em>, </td>
+ <td class="paramtype">pid_t **</td> <td class="paramname"><span class="paramname"><em>pids</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>size</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int *</td> <td class="paramname"><span class="paramname"><em>size</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_threads </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t ** </td>
- <td class="paramname"><em>pids</em>, </td>
+ <td class="paramtype">pid_t **</td> <td class="paramname"><span class="paramname"><em>pids</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>size</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int *</td> <td class="paramname"><span class="paramname"><em>size</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_uid_gid </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">uid_t * </td>
- <td class="paramname"><em>tasks_uid</em>, </td>
+ <td class="paramtype">uid_t *</td> <td class="paramname"><span class="paramname"><em>tasks_uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t * </td>
- <td class="paramname"><em>tasks_gid</em>, </td>
+ <td class="paramtype">gid_t *</td> <td class="paramname"><span class="paramname"><em>tasks_gid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">uid_t * </td>
- <td class="paramname"><em>control_uid</em>, </td>
+ <td class="paramtype">uid_t *</td> <td class="paramname"><span class="paramname"><em>control_uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t * </td>
- <td class="paramname"><em>control_gid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">gid_t *</td> <td class="paramname"><span class="paramname"><em>control_gid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Return owners of the group's <code>tasks</code> file and control files. The data is read from <code>libcgroup</code> internal <code>cgroup</code> structure, use <a class="el" href="group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid()</a> or <a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to fill it. </p>
+<p>Return owners of the group's <code>tasks</code> file and control files. The data is read from <code>libcgroup</code> internal <code>cgroup</code> structure, use <a class="el" href="#ga51f539b526d2a4939f03f0b4d4ed9040">cgroup_set_uid_gid()</a> or <a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to fill it. </p>
</div>
</div>
<tr>
<td class="memname">int cgroup_get_value_bool </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">bool * </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">bool *</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
+<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_get_value_int64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int64_t * </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int64_t *</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
+<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">char * cgroup_get_value_name </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>index</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>index</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Return the name of parameter of controller at given index. The index goes from 0 to <a class="el" href="group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d">cgroup_get_value_name_count()</a>-1. Use this function to list all parameter of the controller.</p>
+<p>Return the name of parameter of controller at given index. The index goes from 0 to <a class="el" href="#ga25115085978ce2a8d671e7876cc49c1d">cgroup_get_value_name_count()</a>-1. Use this function to list all parameter of the controller.</p>
<dl class="section note"><dt>Note</dt><dd>The returned value is pointer to internal <code>libcgroup</code> structure, do not free it.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr>
<td class="memname">int cgroup_get_value_name_count </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
-<p>Return the number of variables for the specified controller in <code>libcgroup</code> internal structures. Use <a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to fill these structures with data from kernel. Use this function together with <a class="el" href="group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b">cgroup_get_value_name()</a> to list all parameters of a group.</p>
+<p>Return the number of variables for the specified controller in <code>libcgroup</code> internal structures. Use <a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a> to fill these structures with data from kernel. Use this function together with <a class="el" href="#ga9d01743fd3f97014e08fc67149ec5f0b">cgroup_get_value_name()</a> to list all parameters of a group.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_get_value_string </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">char **</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel. It's up to the caller to free returned value.</p>
-<p>This function works only for 'short' parameters. Use <a class="el" href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a>, <a class="el" href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> and <a class="el" href="group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb">cgroup_read_stats_end()</a> to read <code>stats</code> parameter, which can be longer than libcgroup's internal buffers. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000010">Todo:</a></b></dt><dd>rephrase, it's too vague... How big is the buffer actually?</dd></dl>
+<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel. It's up to the caller to free returned value.</p>
+<p>This function works only for 'short' parameters. Use <a class="el" href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a>, <a class="el" href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> and <a class="el" href="group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb">cgroup_read_stats_end()</a> to read <code>stats</code> parameter, which can be longer than libcgroup's internal buffers. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000010">Todo</a></b></dt><dd>rephrase, it's too vague... How big is the buffer actually?</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_get_value_uint64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">u_int64_t * </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">u_int64_t *</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
+<p>Read a parameter value from <code>libcgroup</code> internal structures. Use <code><a class="el" href="#ga25ef7e1c839c682e4bb6bab4bd24c37f">cgroup_get_cgroup()</a></code> to fill these structures with data from kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_list_mount_points </td>
<td>(</td>
- <td class="paramtype">const enum cg_version_t </td>
- <td class="paramname"><em>cgrp_version</em>, </td>
+ <td class="paramtype">const enum cg_version_t</td> <td class="paramname"><span class="paramname"><em>cgrp_version</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char *** </td>
- <td class="paramname"><em>mount_paths</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">char ***</td> <td class="paramname"><span class="paramname"><em>mount_paths</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_modify_cgroup </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">struct <a class="el" href="structcgroup.html">cgroup</a> * cgroup_new_cgroup </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em></td><td>)</td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>suggest one preferred way, either "/foo" or "foo". </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo</a></b></dt><dd>suggest one preferred way, either "/foo" or "foo". </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Created group or NULL on error. </dd></dl>
</div>
<tr>
<td class="memname">void cgroup_set_permissions </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">mode_t </td>
- <td class="paramname"><em>control_dperm</em>, </td>
+ <td class="paramtype">mode_t</td> <td class="paramname"><span class="paramname"><em>control_dperm</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">mode_t </td>
- <td class="paramname"><em>control_fperm</em>, </td>
+ <td class="paramtype">mode_t</td> <td class="paramname"><span class="paramname"><em>control_fperm</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">mode_t </td>
- <td class="paramname"><em>task_fperm</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">mode_t</td> <td class="paramname"><span class="paramname"><em>task_fperm</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_set_uid_gid </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">uid_t </td>
- <td class="paramname"><em>tasks_uid</em>, </td>
+ <td class="paramtype">uid_t</td> <td class="paramname"><span class="paramname"><em>tasks_uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t </td>
- <td class="paramname"><em>tasks_gid</em>, </td>
+ <td class="paramtype">gid_t</td> <td class="paramname"><span class="paramname"><em>tasks_gid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">uid_t </td>
- <td class="paramname"><em>control_uid</em>, </td>
+ <td class="paramtype">uid_t</td> <td class="paramname"><span class="paramname"><em>control_uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t </td>
- <td class="paramname"><em>control_gid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">gid_t</td> <td class="paramname"><span class="paramname"><em>control_gid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set owner of the group control files and the <code>tasks</code> file. This function modifies only <code>libcgroup</code> internal <code>cgroup</code> structure, use <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> afterwards to create the group with given owners.</p>
+<p>Set owner of the group control files and the <code>tasks</code> file. This function modifies only <code>libcgroup</code> internal <code>cgroup</code> structure, use <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> afterwards to create the group with given owners.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cgrp</td><td></td></tr>
<tr>
<td class="memname">int cgroup_set_value_bool </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">bool </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_set_value_int64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int64_t </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int64_t</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel. Content of the value is copied to internal structures and is not needed after return from the function.</p>
+<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel. Content of the value is copied to internal structures and is not needed after return from the function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_set_value_string </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">int cgroup_set_value_uint64 </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__controller.html">cgroup_controller</a> *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">u_int64_t </td>
- <td class="paramname"><em>value</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">u_int64_t</td> <td class="paramname"><span class="paramname"><em>value</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
+<p>Set a parameter value in <code>libcgroup</code> internal structures. Use <a class="el" href="#gadadc95782f82d1e4265ece226ee0a9ed">cgroup_modify_cgroup()</a> or <a class="el" href="#ga74c5b4a1d3bc7729af1383c131254fbd">cgroup_create_cgroup()</a> to write it to kernel.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td></td></tr>
<tr>
<td class="memname">enum cg_setup_mode_t cgroup_setup_mode </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">bool is_cgroup_mode_hybrid </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">bool is_cgroup_mode_legacy </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">bool is_cgroup_mode_unified </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 3. Iterators</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<tr class="heading"><td colspan="2"><h2 class="groupheader">Walk through control group filesystem</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>This iterator returns all subgroups of given control group. It can be used to return all groups in given hierarchy, when root control group is provided. </p>
</td></tr>
-<tr class="memitem:ga29a572cbc0c07e2b02dfa0f1ac0067d3" id="r_ga29a572cbc0c07e2b02dfa0f1ac0067d3"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a> { <a class="el" href="group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3af865296e6a0e55cff574fbb132b9f913">CGROUP_WALK_TYPE_PRE_DIR</a> = 0x1
-, <a class="el" href="group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3abf3c31227768960bd6622d2562aae3e1">CGROUP_WALK_TYPE_POST_DIR</a> = 0x2
+<tr class="memitem:ga29a572cbc0c07e2b02dfa0f1ac0067d3" id="r_ga29a572cbc0c07e2b02dfa0f1ac0067d3"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a> { <a class="el" href="#gga29a572cbc0c07e2b02dfa0f1ac0067d3af865296e6a0e55cff574fbb132b9f913">CGROUP_WALK_TYPE_PRE_DIR</a> = 0x1
+, <a class="el" href="#gga29a572cbc0c07e2b02dfa0f1ac0067d3abf3c31227768960bd6622d2562aae3e1">CGROUP_WALK_TYPE_POST_DIR</a> = 0x2
}</td></tr>
<tr class="separator:ga29a572cbc0c07e2b02dfa0f1ac0067d3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga608b4aa32e2db58fed34771a6a272444" id="r_ga608b4aa32e2db58fed34771a6a272444"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a> { <a class="el" href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444ad925cc45f1b34fe80e14fc6b05269740">CGROUP_FILE_TYPE_FILE</a>
-, <a class="el" href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3">CGROUP_FILE_TYPE_DIR</a>
-, <a class="el" href="group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b">CGROUP_FILE_TYPE_OTHER</a>
+<tr class="memitem:ga608b4aa32e2db58fed34771a6a272444" id="r_ga608b4aa32e2db58fed34771a6a272444"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a> { <a class="el" href="#gga608b4aa32e2db58fed34771a6a272444ad925cc45f1b34fe80e14fc6b05269740">CGROUP_FILE_TYPE_FILE</a>
+, <a class="el" href="#gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3">CGROUP_FILE_TYPE_DIR</a>
+, <a class="el" href="#gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b">CGROUP_FILE_TYPE_OTHER</a>
}</td></tr>
<tr class="separator:ga608b4aa32e2db58fed34771a6a272444"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga7b19f10c06abb96d8c8ae88a04888a68" id="r_ga7b19f10c06abb96d8c8ae88a04888a68"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin</a> (const char *controller, const char *base_path, int depth, void **handle, struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *info, int *base_level)</td></tr>
+<tr class="memitem:ga7b19f10c06abb96d8c8ae88a04888a68" id="r_ga7b19f10c06abb96d8c8ae88a04888a68"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin</a> (const char *controller, const char *base_path, int depth, void **handle, struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *info, int *base_level)</td></tr>
<tr class="separator:ga7b19f10c06abb96d8c8ae88a04888a68"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga527f5499b0aa04d325074435baebdff1" id="r_ga527f5499b0aa04d325074435baebdff1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1">cgroup_walk_tree_next</a> (int depth, void **handle, struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *info, int base_level)</td></tr>
+<tr class="memitem:ga527f5499b0aa04d325074435baebdff1" id="r_ga527f5499b0aa04d325074435baebdff1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga527f5499b0aa04d325074435baebdff1">cgroup_walk_tree_next</a> (int depth, void **handle, struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *info, int base_level)</td></tr>
<tr class="separator:ga527f5499b0aa04d325074435baebdff1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga09a70990837a58e506a264f8c50d4cde" id="r_ga09a70990837a58e506a264f8c50d4cde"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end</a> (void **handle)</td></tr>
+<tr class="memitem:ga09a70990837a58e506a264f8c50d4cde" id="r_ga09a70990837a58e506a264f8c50d4cde"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end</a> (void **handle)</td></tr>
<tr class="separator:ga09a70990837a58e506a264f8c50d4cde"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga645ec7a6206dffb32667e7a0e148edc8" id="r_ga645ec7a6206dffb32667e7a0e148edc8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8">cgroup_walk_tree_set_flags</a> (void **handle, int flags)</td></tr>
+<tr class="memitem:ga645ec7a6206dffb32667e7a0e148edc8" id="r_ga645ec7a6206dffb32667e7a0e148edc8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga645ec7a6206dffb32667e7a0e148edc8">cgroup_walk_tree_set_flags</a> (void **handle, int flags)</td></tr>
<tr class="separator:ga645ec7a6206dffb32667e7a0e148edc8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga9378ee0f1f6e65900df8e25b3d7ce236" id="r_ga9378ee0f1f6e65900df8e25b3d7ce236"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236">cgroup_read_value_begin</a> (const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max)</td></tr>
+<tr class="memitem:ga9378ee0f1f6e65900df8e25b3d7ce236" id="r_ga9378ee0f1f6e65900df8e25b3d7ce236"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga9378ee0f1f6e65900df8e25b3d7ce236">cgroup_read_value_begin</a> (const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max)</td></tr>
<tr class="separator:ga9378ee0f1f6e65900df8e25b3d7ce236"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaced2fe331f19d599a3270db2440847cc" id="r_gaced2fe331f19d599a3270db2440847cc"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc">cgroup_read_value_next</a> (void **handle, char *buffer, int max)</td></tr>
+<tr class="memitem:gaced2fe331f19d599a3270db2440847cc" id="r_gaced2fe331f19d599a3270db2440847cc"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaced2fe331f19d599a3270db2440847cc">cgroup_read_value_next</a> (void **handle, char *buffer, int max)</td></tr>
<tr class="separator:gaced2fe331f19d599a3270db2440847cc"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gad348f041e283860cbf6bcea567e23a21" id="r_gad348f041e283860cbf6bcea567e23a21"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21">cgroup_read_value_end</a> (void **handle)</td></tr>
+<tr class="memitem:gad348f041e283860cbf6bcea567e23a21" id="r_gad348f041e283860cbf6bcea567e23a21"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad348f041e283860cbf6bcea567e23a21">cgroup_read_value_end</a> (void **handle)</td></tr>
<tr class="separator:gad348f041e283860cbf6bcea567e23a21"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Read group stats</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>libcgroup's <a class="el" href="group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9">cgroup_get_value_string()</a> reads only relatively short parameters of a group. Use following functions to read <code>stats</code> parameter, which can be quite long. </p>
</td></tr>
-<tr class="memitem:ga1138e47f124f0f634586db5e0c4ae5de" id="r_ga1138e47f124f0f634586db5e0c4ae5de"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin</a> (const char *controller, const char *path, void **handle, struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *stat)</td></tr>
+<tr class="memitem:ga1138e47f124f0f634586db5e0c4ae5de" id="r_ga1138e47f124f0f634586db5e0c4ae5de"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin</a> (const char *controller, const char *path, void **handle, struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *stat)</td></tr>
<tr class="separator:ga1138e47f124f0f634586db5e0c4ae5de"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaf95587508fc15d74fd5ed0df58024be7" id="r_gaf95587508fc15d74fd5ed0df58024be7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next</a> (void **handle, struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *stat)</td></tr>
+<tr class="memitem:gaf95587508fc15d74fd5ed0df58024be7" id="r_gaf95587508fc15d74fd5ed0df58024be7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next</a> (void **handle, struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *stat)</td></tr>
<tr class="separator:gaf95587508fc15d74fd5ed0df58024be7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaba386d9db6cadc6ad85c2552f63447bb" id="r_gaba386d9db6cadc6ad85c2552f63447bb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb">cgroup_read_stats_end</a> (void **handle)</td></tr>
+<tr class="memitem:gaba386d9db6cadc6ad85c2552f63447bb" id="r_gaba386d9db6cadc6ad85c2552f63447bb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaba386d9db6cadc6ad85c2552f63447bb">cgroup_read_stats_end</a> (void **handle)</td></tr>
<tr class="separator:gaba386d9db6cadc6ad85c2552f63447bb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga55d2eac2af703794651d344c073566f5" id="r_ga55d2eac2af703794651d344c073566f5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga55d2eac2af703794651d344c073566f5">CG_VALUE_MAX</a>   100</td></tr>
+<tr class="memitem:ga55d2eac2af703794651d344c073566f5" id="r_ga55d2eac2af703794651d344c073566f5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga55d2eac2af703794651d344c073566f5">CG_VALUE_MAX</a>   100</td></tr>
<tr class="separator:ga55d2eac2af703794651d344c073566f5"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">List all tasks in a group</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Use following functions to read <code>tasks</code> file of a group. </p>
</td></tr>
-<tr class="memitem:gad194c8c62288dd37349ed947c91217d6" id="r_gad194c8c62288dd37349ed947c91217d6"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6">cgroup_get_task_begin</a> (const char *cgrp, const char *controller, void **handle, pid_t *pid)</td></tr>
+<tr class="memitem:gad194c8c62288dd37349ed947c91217d6" id="r_gad194c8c62288dd37349ed947c91217d6"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad194c8c62288dd37349ed947c91217d6">cgroup_get_task_begin</a> (const char *cgrp, const char *controller, void **handle, pid_t *pid)</td></tr>
<tr class="separator:gad194c8c62288dd37349ed947c91217d6"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaf3a0364682b7449ddccfb0862bbb565e" id="r_gaf3a0364682b7449ddccfb0862bbb565e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e">cgroup_get_task_next</a> (void **handle, pid_t *pid)</td></tr>
+<tr class="memitem:gaf3a0364682b7449ddccfb0862bbb565e" id="r_gaf3a0364682b7449ddccfb0862bbb565e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaf3a0364682b7449ddccfb0862bbb565e">cgroup_get_task_next</a> (void **handle, pid_t *pid)</td></tr>
<tr class="separator:gaf3a0364682b7449ddccfb0862bbb565e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaeb955e5f4da551268380b1271d478816" id="r_gaeb955e5f4da551268380b1271d478816"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gaeb955e5f4da551268380b1271d478816">cgroup_get_task_end</a> (void **handle)</td></tr>
+<tr class="memitem:gaeb955e5f4da551268380b1271d478816" id="r_gaeb955e5f4da551268380b1271d478816"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaeb955e5f4da551268380b1271d478816">cgroup_get_task_end</a> (void **handle)</td></tr>
<tr class="separator:gaeb955e5f4da551268380b1271d478816"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">List mounted controllers</h2></td></tr>
-<tr><td class="ititle" colspan="2"><p>Use following function to list mounted controllers and to see, how they are mounted together in hierarchies. Use <a class="el" href="group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e">cgroup_get_all_controller_begin()</a> (see later) to list all controllers, including those which are not mounted. </p>
+<tr><td class="ititle" colspan="2"><p>Use following function to list mounted controllers and to see, how they are mounted together in hierarchies. Use <a class="el" href="#gad48ef653388ca6739a9b6bbb9d7da82e">cgroup_get_all_controller_begin()</a> (see later) to list all controllers, including those which are not mounted. </p>
</td></tr>
-<tr class="memitem:ga5f9f21138f9b18912a16b21a45b53c44" id="r_ga5f9f21138f9b18912a16b21a45b53c44"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44">cgroup_get_controller_begin</a> (void **handle, struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *info)</td></tr>
+<tr class="memitem:ga5f9f21138f9b18912a16b21a45b53c44" id="r_ga5f9f21138f9b18912a16b21a45b53c44"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga5f9f21138f9b18912a16b21a45b53c44">cgroup_get_controller_begin</a> (void **handle, struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *info)</td></tr>
<tr class="separator:ga5f9f21138f9b18912a16b21a45b53c44"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga926b70423b6c087c21a14670cd23cd7d" id="r_ga926b70423b6c087c21a14670cd23cd7d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d">cgroup_get_controller_next</a> (void **handle, struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *info)</td></tr>
+<tr class="memitem:ga926b70423b6c087c21a14670cd23cd7d" id="r_ga926b70423b6c087c21a14670cd23cd7d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga926b70423b6c087c21a14670cd23cd7d">cgroup_get_controller_next</a> (void **handle, struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *info)</td></tr>
<tr class="separator:ga926b70423b6c087c21a14670cd23cd7d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab485cda2bc9640bacbf61f1953ae750c" id="r_gab485cda2bc9640bacbf61f1953ae750c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c">cgroup_get_controller_end</a> (void **handle)</td></tr>
+<tr class="memitem:gab485cda2bc9640bacbf61f1953ae750c" id="r_gab485cda2bc9640bacbf61f1953ae750c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab485cda2bc9640bacbf61f1953ae750c">cgroup_get_controller_end</a> (void **handle)</td></tr>
<tr class="separator:gab485cda2bc9640bacbf61f1953ae750c"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">List all controllers</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Use following functions to list all controllers, including those which are not mounted. The controllers are returned in the same order as in /proc/cgroups file, i.e. mostly random. </p>
</td></tr>
-<tr class="memitem:gad48ef653388ca6739a9b6bbb9d7da82e" id="r_gad48ef653388ca6739a9b6bbb9d7da82e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e">cgroup_get_all_controller_begin</a> (void **handle, struct <a class="el" href="structcontroller__data.html">controller_data</a> *info)</td></tr>
+<tr class="memitem:gad48ef653388ca6739a9b6bbb9d7da82e" id="r_gad48ef653388ca6739a9b6bbb9d7da82e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad48ef653388ca6739a9b6bbb9d7da82e">cgroup_get_all_controller_begin</a> (void **handle, struct <a class="el" href="structcontroller__data.html">controller_data</a> *info)</td></tr>
<tr class="separator:gad48ef653388ca6739a9b6bbb9d7da82e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga3d98a04b29b1fe409db1114b7aa76809" id="r_ga3d98a04b29b1fe409db1114b7aa76809"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809">cgroup_get_all_controller_next</a> (void **handle, struct <a class="el" href="structcontroller__data.html">controller_data</a> *info)</td></tr>
+<tr class="memitem:ga3d98a04b29b1fe409db1114b7aa76809" id="r_ga3d98a04b29b1fe409db1114b7aa76809"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga3d98a04b29b1fe409db1114b7aa76809">cgroup_get_all_controller_next</a> (void **handle, struct <a class="el" href="structcontroller__data.html">controller_data</a> *info)</td></tr>
<tr class="separator:ga3d98a04b29b1fe409db1114b7aa76809"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga0c467d42a2c9a916a0edd339a6d7afc8" id="r_ga0c467d42a2c9a916a0edd339a6d7afc8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8">cgroup_get_all_controller_end</a> (void **handle)</td></tr>
+<tr class="memitem:ga0c467d42a2c9a916a0edd339a6d7afc8" id="r_ga0c467d42a2c9a916a0edd339a6d7afc8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga0c467d42a2c9a916a0edd339a6d7afc8">cgroup_get_all_controller_end</a> (void **handle)</td></tr>
<tr class="separator:ga0c467d42a2c9a916a0edd339a6d7afc8"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">List all mount points of a controller.</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Use following functions to list all mount points of a hierarchy with given controller. </p>
</td></tr>
-<tr class="memitem:ga18a3c6fe7da42b9da96ce34dce1e31b8" id="r_ga18a3c6fe7da42b9da96ce34dce1e31b8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8">cgroup_get_subsys_mount_point_begin</a> (const char *controller, void **handle, char *path)</td></tr>
+<tr class="memitem:ga18a3c6fe7da42b9da96ce34dce1e31b8" id="r_ga18a3c6fe7da42b9da96ce34dce1e31b8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga18a3c6fe7da42b9da96ce34dce1e31b8">cgroup_get_subsys_mount_point_begin</a> (const char *controller, void **handle, char *path)</td></tr>
<tr class="separator:ga18a3c6fe7da42b9da96ce34dce1e31b8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga3d66997158cb8a334317923ad94cc789" id="r_ga3d66997158cb8a334317923ad94cc789"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789">cgroup_get_subsys_mount_point_next</a> (void **handle, char *path)</td></tr>
+<tr class="memitem:ga3d66997158cb8a334317923ad94cc789" id="r_ga3d66997158cb8a334317923ad94cc789"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga3d66997158cb8a334317923ad94cc789">cgroup_get_subsys_mount_point_next</a> (void **handle, char *path)</td></tr>
<tr class="separator:ga3d66997158cb8a334317923ad94cc789"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga9c9b0f1921c205bd25bfc6c1d20486eb" id="r_ga9c9b0f1921c205bd25bfc6c1d20486eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb">cgroup_get_subsys_mount_point_end</a> (void **handle)</td></tr>
+<tr class="memitem:ga9c9b0f1921c205bd25bfc6c1d20486eb" id="r_ga9c9b0f1921c205bd25bfc6c1d20486eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga9c9b0f1921c205bd25bfc6c1d20486eb">cgroup_get_subsys_mount_point_end</a> (void **handle)</td></tr>
<tr class="separator:ga9c9b0f1921c205bd25bfc6c1d20486eb"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<li><p class="startli"><code>void <em>iterator_name</em>_end(void **handle)</code></p><ul>
<li>Free any data associated with the iterator. This function must be called even when <code><em>iterator_name</em>_begin()</code> fails.</li>
</ul>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>not all iterators follow this pattern, e.g. <a class="el" href="group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin()</a> can result both in a state that <a class="el" href="group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end()</a> is not needed and will SIGSEGV and in a state that <a class="el" href="group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end()</a> is needed to free allocated memory. Complete review is needed! </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo</a></b></dt><dd>not all iterators follow this pattern, e.g. <a class="el" href="#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin()</a> can result both in a state that <a class="el" href="#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end()</a> is not needed and will SIGSEGV and in a state that <a class="el" href="#ga09a70990837a58e506a264f8c50d4cde">cgroup_walk_tree_end()</a> is needed to free allocated memory. Complete review is needed! </dd></dl>
<dl class="section user"><dt>Example of iterator usage:</dt><dd><div class="fragment"><div class="line"><span class="keywordtype">void</span> *handle; <span class="comment">// our iterator handle</span></div>
<div class="line">my_type item; <span class="comment">// the data returned by the iterator</span></div>
<div class="line"><span class="keywordtype">int</span> ret;</div>
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">enum <a class="el" href="group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a></td>
+ <td class="memname">enum <a class="el" href="#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a></td>
</tr>
</table>
</div><div class="memdoc">
</td></tr>
<tr><td class="fieldname"><a id="gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3" name="gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3"></a>CGROUP_FILE_TYPE_DIR </td><td class="fielddoc"><p>Directory. </p>
</td></tr>
-<tr><td class="fieldname"><a id="gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b" name="gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b"></a>CGROUP_FILE_TYPE_OTHER </td><td class="fielddoc"><p>Directory. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo:</a></b></dt><dd>really? </dd></dl>
+<tr><td class="fieldname"><a id="gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b" name="gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b"></a>CGROUP_FILE_TYPE_OTHER </td><td class="fielddoc"><p>Directory. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo</a></b></dt><dd>really? </dd></dl>
</td></tr>
</table>
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">enum <a class="el" href="group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a></td>
+ <td class="memname">enum <a class="el" href="#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a></td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_all_controller_begin </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcontroller__data.html">controller_data</a> * </td>
- <td class="paramname"><em>info</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcontroller__data.html">controller_data</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_all_controller_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_get_all_controller_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcontroller__data.html">controller_data</a> * </td>
- <td class="paramname"><em>info</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcontroller__data.html">controller_data</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_controller_begin </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> * </td>
- <td class="paramname"><em>info</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_controller_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_get_controller_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> * </td>
- <td class="paramname"><em>info</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__mount__point.html">cgroup_mount_point</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_subsys_mount_point_begin </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>path</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>path</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_subsys_mount_point_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_get_subsys_mount_point_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>path</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>path</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_task_begin </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>cgrp</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>cgrp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t * </td>
- <td class="paramname"><em>pid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">pid_t *</td> <td class="paramname"><span class="paramname"><em>pid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_task_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_get_task_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t * </td>
- <td class="paramname"><em>pid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">pid_t *</td> <td class="paramname"><span class="paramname"><em>pid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_read_stats_begin </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>path</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>path</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> * </td>
- <td class="paramname"><em>stat</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *</td> <td class="paramname"><span class="paramname"><em>stat</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read the statistics values (= <code>stats</code> parameter) for the specified controller and control group. One line is returned per <a class="el" href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a> and <a class="el" href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> call. </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Read the statistics values (= <code>stats</code> parameter) for the specified controller and control group. One line is returned per <a class="el" href="#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a> and <a class="el" href="#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> call. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td>Name of the controller for which stats are requested. </td></tr>
<tr><td class="paramname">path</td><td>The path to control group, relative to hierarchy root. </td></tr>
<tr>
<td class="memname">int cgroup_read_stats_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_read_stats_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> * </td>
- <td class="paramname"><em>stat</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__stat.html">cgroup_stat</a> *</td> <td class="paramname"><span class="paramname"><em>stat</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_read_value_begin </td>
<td>(</td>
- <td class="paramtype">const char *const </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *const</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>path</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>path</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *const </td>
- <td class="paramname"><em>name</em>, </td>
+ <td class="paramtype">const char *const</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>buffer</em>, </td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>buffer</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>max</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>max</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_read_value_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_read_value_next </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char * </td>
- <td class="paramname"><em>buffer</em>, </td>
+ <td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>buffer</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>max</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>max</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Read the next string from the given variable handle which is generated by <a class="el" href="group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a> function. the value is read up to newline character or at most max-1 characters, whichever comes first (i.e. similar to fgets()) per <a class="el" href="group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> call </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Read the next string from the given variable handle which is generated by <a class="el" href="#ga1138e47f124f0f634586db5e0c4ae5de">cgroup_read_stats_begin()</a> function. the value is read up to newline character or at most max-1 characters, whichever comes first (i.e. similar to fgets()) per <a class="el" href="#gaf95587508fc15d74fd5ed0df58024be7">cgroup_read_stats_next()</a> call </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>The handle to be used during iteration. </td></tr>
<tr><td class="paramname">data</td><td>returned the string. </td></tr>
<tr>
<td class="memname">int cgroup_walk_tree_begin </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>base_path</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>base_path</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>depth</em>, </td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>depth</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> * </td>
- <td class="paramname"><em>info</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>base_level</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int *</td> <td class="paramname"><span class="paramname"><em>base_level</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Walk through the directory tree for the specified controller. The directory representing <code>base_path</code> is returned in <code>info</code>. Use <a class="el" href="group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8">cgroup_walk_tree_set_flags()</a> to specify, in which order should be next directories returned. </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Walk through the directory tree for the specified controller. The directory representing <code>base_path</code> is returned in <code>info</code>. Use <a class="el" href="#ga645ec7a6206dffb32667e7a0e148edc8">cgroup_walk_tree_set_flags()</a> to specify, in which order should be next directories returned. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">controller</td><td>Name of the controller, for which we want to walk the directory tree. </td></tr>
<tr><td class="paramname">base_path</td><td>Begin walking from this path. Use "/" to walk through full hierarchy. </td></tr>
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>why base_level is not hidden in **handle? </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000012">Todo</a></b></dt><dd>why base_level is not hidden in **handle? </dd></dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55ba2724c2f0af0d3e3cea66027f6bf2e436">ECGEOF</a> when there is no node. </dd></dl>
</div>
<tr>
<td class="memname">int cgroup_walk_tree_end </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em></td><td>)</td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_walk_tree_next </td>
<td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>depth</em>, </td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>depth</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> * </td>
- <td class="paramname"><em>info</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup__file__info.html">cgroup_file_info</a> *</td> <td class="paramname"><span class="paramname"><em>info</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>base_level</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>base_level</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr><td class="paramname">depth</td><td>The maximum depth to which the function should walk, 0 implies all the way down. </td></tr>
<tr><td class="paramname">handle</td><td>The handle to be used during iteration. </td></tr>
<tr><td class="paramname">info</td><td>The info filled and returned about the next directory. </td></tr>
- <tr><td class="paramname">base_level</td><td>Value of base_level returned by <a class="el" href="group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin()</a>. </td></tr>
+ <tr><td class="paramname">base_level</td><td>Value of base_level returned by <a class="el" href="#ga7b19f10c06abb96d8c8ae88a04888a68">cgroup_walk_tree_begin()</a>. </td></tr>
</table>
</dd>
</dl>
<tr>
<td class="memname">int cgroup_walk_tree_set_flags </td>
<td>(</td>
- <td class="paramtype">void ** </td>
- <td class="paramname"><em>handle</em>, </td>
+ <td class="paramtype">void **</td> <td class="paramname"><span class="paramname"><em>handle</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Set the flags for walk_tree. Currently available flags are in <a class="el" href="group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a> enum. </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Set the flags for walk_tree. Currently available flags are in <a class="el" href="#ga29a572cbc0c07e2b02dfa0f1ac0067d3">cgroup_walk_type</a> enum. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>The handle of the iterator. </td></tr>
<tr><td class="paramname">flags</td><td></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 7. Logging</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<tr class="heading"><td colspan="2"><h2 class="groupheader">Logging</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Libcgroup allows applications to register a callback function which libcgroup will call when it wants to log something. Each log message has associated a log level. As described in previous chapter, most libcgroup functions return an error code, which described root cause of the failure and log messages might provide further details about these failures and other notable events.</p>
<dl class="section user"><dt></dt><dd>The logging callback can be set at any time, but setting the callback before any other libcgroup function (including cgroup_init()) is highly recommended. If no logger is set before cgroup_init() is called, default logger is automatically set, logging CGROUP_LOG_ERROR messages to stdout.</dd></dl>
-<dl class="section user"><dt>Setting log level</dt><dd>Some of the functions below set the log level as integer. Application can set directly a value of enum <a class="el" href="group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a> or use value <code>-1</code> to set the log level automatically. In this case, libcgroup inspects environment variable <code>CGROUP_LOGLEVEL</code> if it is set and contains any of these values: <code>ERROR</code>, <code>WARNING</code>, <code>INFO</code>, <code>DEBUG</code> or integer number representing value from enum <a class="el" href="group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a>. If <code>CGROUP_LOGLEVEL</code> is not set or its value is not valid, <code>CGROUP_LOG_ERROR</code> is set as default log level.</dd></dl>
+<dl class="section user"><dt>Setting log level</dt><dd>Some of the functions below set the log level as integer. Application can set directly a value of enum <a class="el" href="#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a> or use value <code>-1</code> to set the log level automatically. In this case, libcgroup inspects environment variable <code>CGROUP_LOGLEVEL</code> if it is set and contains any of these values: <code>ERROR</code>, <code>WARNING</code>, <code>INFO</code>, <code>DEBUG</code> or integer number representing value from enum <a class="el" href="#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a>. If <code>CGROUP_LOGLEVEL</code> is not set or its value is not valid, <code>CGROUP_LOG_ERROR</code> is set as default log level.</dd></dl>
<dl class="section user"><dt>Example:</dt><dd>Following short example shows custom libcgroup logger sending all log messages to <code>stderr</code>: <div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keywordtype">void</span> my_logger(<span class="keywordtype">void</span> *userdata, <span class="keywordtype">int</span> level, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list ap)</div>
<div class="line">{</div>
<div class="line"> vfprintf(stderr, fmt, ap);</div>
<div class="line">{</div>
<div class="line"> <span class="keywordtype">int</span> ret;</div>
<div class="line"> </div>
-<div class="line"> <a class="code hl_function" href="group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a>(my_logger, -1, NULL);</div>
+<div class="line"> <a class="code hl_function" href="#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a>(my_logger, -1, NULL);</div>
<div class="line"> ret = cgroup_init();</div>
<div class="line"> <span class="keywordflow">if</span> (ret) {</div>
<div class="line"> ...</div>
<div class="line"> }</div>
<div class="line"> ...</div>
-<div class="ttc" id="agroup__group__log_html_ga76d7032206f9b9d1c0be1a71a68c43d0"><div class="ttname"><a href="group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a></div><div class="ttdeci">void cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata)</div><div class="ttdef"><b>Definition</b> log.c:42</div></div>
+<div class="ttc" id="agroup__group__log_html_ga76d7032206f9b9d1c0be1a71a68c43d0"><div class="ttname"><a href="#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a></div><div class="ttdeci">void cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata)</div><div class="ttdef"><b>Definition</b> log.c:42</div></div>
</div><!-- fragment --> </dd></dl>
</td></tr>
-<tr class="memitem:ga98b7aea5d23411e70c7e3da54d90233a" id="r_ga98b7aea5d23411e70c7e3da54d90233a"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a> { <br />
-  <a class="el" href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa915b87fe26cc45572e40508dc6d62e88">CGROUP_LOG_CONT</a> = 0
-, <a class="el" href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa4dd44215cd3553e79dbf91eb9ca418a2">CGROUP_LOG_ERROR</a>
-, <a class="el" href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aaa99ec9e854a543901bddf854d1960057">CGROUP_LOG_WARNING</a>
-, <a class="el" href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aad66ab51dba078ffc3b1c6d397053f9e2">CGROUP_LOG_INFO</a>
+<tr class="memitem:ga98b7aea5d23411e70c7e3da54d90233a" id="r_ga98b7aea5d23411e70c7e3da54d90233a"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a> { <br />
+  <a class="el" href="#gga98b7aea5d23411e70c7e3da54d90233aa915b87fe26cc45572e40508dc6d62e88">CGROUP_LOG_CONT</a> = 0
+, <a class="el" href="#gga98b7aea5d23411e70c7e3da54d90233aa4dd44215cd3553e79dbf91eb9ca418a2">CGROUP_LOG_ERROR</a>
+, <a class="el" href="#gga98b7aea5d23411e70c7e3da54d90233aaa99ec9e854a543901bddf854d1960057">CGROUP_LOG_WARNING</a>
+, <a class="el" href="#gga98b7aea5d23411e70c7e3da54d90233aad66ab51dba078ffc3b1c6d397053f9e2">CGROUP_LOG_INFO</a>
, <br />
-  <a class="el" href="group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa86b4157fb38d9f8053c6b7429bd26c72">CGROUP_LOG_DEBUG</a>
+  <a class="el" href="#gga98b7aea5d23411e70c7e3da54d90233aa86b4157fb38d9f8053c6b7429bd26c72">CGROUP_LOG_DEBUG</a>
<br />
}</td></tr>
<tr class="separator:ga98b7aea5d23411e70c7e3da54d90233a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaa1da90e8ef64cc58c7ad523bdd6679e6" id="r_gaa1da90e8ef64cc58c7ad523bdd6679e6"><td class="memItemLeft" align="right" valign="top"><a id="gaa1da90e8ef64cc58c7ad523bdd6679e6" name="gaa1da90e8ef64cc58c7ad523bdd6679e6"></a>
typedef void(* </td><td class="memItemRight" valign="bottom"><b>cgroup_logger_callback</b>) (void *userdata, int level, const char *fmt, va_list ap)</td></tr>
<tr class="separator:gaa1da90e8ef64cc58c7ad523bdd6679e6"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga76d7032206f9b9d1c0be1a71a68c43d0" id="r_ga76d7032206f9b9d1c0be1a71a68c43d0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a> (cgroup_logger_callback logger, int loglevel, void *userdata)</td></tr>
+<tr class="memitem:ga76d7032206f9b9d1c0be1a71a68c43d0" id="r_ga76d7032206f9b9d1c0be1a71a68c43d0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger</a> (cgroup_logger_callback logger, int loglevel, void *userdata)</td></tr>
<tr class="separator:ga76d7032206f9b9d1c0be1a71a68c43d0"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab1457ce518dcde0b9f3c14ec9efa2de7" id="r_gab1457ce518dcde0b9f3c14ec9efa2de7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7">cgroup_set_default_logger</a> (int loglevel)</td></tr>
+<tr class="memitem:gab1457ce518dcde0b9f3c14ec9efa2de7" id="r_gab1457ce518dcde0b9f3c14ec9efa2de7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab1457ce518dcde0b9f3c14ec9efa2de7">cgroup_set_default_logger</a> (int loglevel)</td></tr>
<tr class="separator:gab1457ce518dcde0b9f3c14ec9efa2de7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaac5fe2352800ff62465a5abe649d5b8c" id="r_gaac5fe2352800ff62465a5abe649d5b8c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c">cgroup_set_loglevel</a> (int loglevel)</td></tr>
+<tr class="memitem:gaac5fe2352800ff62465a5abe649d5b8c" id="r_gaac5fe2352800ff62465a5abe649d5b8c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaac5fe2352800ff62465a5abe649d5b8c">cgroup_set_loglevel</a> (int loglevel)</td></tr>
<tr class="separator:gaac5fe2352800ff62465a5abe649d5b8c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga75c24d59f2fcf3320575a40befcd66d4" id="r_ga75c24d59f2fcf3320575a40befcd66d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4">cgroup_get_loglevel</a> (void)</td></tr>
+<tr class="memitem:ga75c24d59f2fcf3320575a40befcd66d4" id="r_ga75c24d59f2fcf3320575a40befcd66d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga75c24d59f2fcf3320575a40befcd66d4">cgroup_get_loglevel</a> (void)</td></tr>
<tr class="separator:ga75c24d59f2fcf3320575a40befcd66d4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gab514ad5d83422ddfe479bdf651e80958" id="r_gab514ad5d83422ddfe479bdf651e80958"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#gab514ad5d83422ddfe479bdf651e80958">cgroup_log</a> (int loglevel, const char *fmt,...)</td></tr>
+<tr class="memitem:gab514ad5d83422ddfe479bdf651e80958" id="r_gab514ad5d83422ddfe479bdf651e80958"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gab514ad5d83422ddfe479bdf651e80958">cgroup_log</a> (int loglevel, const char *fmt,...)</td></tr>
<tr class="separator:gab514ad5d83422ddfe479bdf651e80958"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaa364a06aee0e99228a1e6a26b25a9794" id="r_gaa364a06aee0e99228a1e6a26b25a9794"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794">cgroup_parse_log_level_str</a> (const char *levelstr)</td></tr>
+<tr class="memitem:gaa364a06aee0e99228a1e6a26b25a9794" id="r_gaa364a06aee0e99228a1e6a26b25a9794"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaa364a06aee0e99228a1e6a26b25a9794">cgroup_parse_log_level_str</a> (const char *levelstr)</td></tr>
<tr class="separator:gaa364a06aee0e99228a1e6a26b25a9794"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">enum <a class="el" href="group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a></td>
+ <td class="memname">enum <a class="el" href="#ga98b7aea5d23411e70c7e3da54d90233a">cgroup_log_level</a></td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_get_loglevel </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">void cgroup_log </td>
<td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>loglevel</em>, </td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>loglevel</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>fmt</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>fmt</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype"> </td>
- <td class="paramname"><em>...</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype"></td> <td class="paramname"><span class="paramname"><em>...</em></span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">int cgroup_parse_log_level_str </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>levelstr</em></td><td>)</td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>levelstr</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">void cgroup_set_default_logger </td>
<td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>loglevel</em></td><td>)</td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>loglevel</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</tr>
</table>
</div><div class="memdoc">
-<p>Set libcgroup logging to stdout. All messages with the given loglevel or below will be sent to standard output. Previous logger set by <a class="el" href="group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger()</a> is replaced.</p>
+<p>Set libcgroup logging to stdout. All messages with the given loglevel or below will be sent to standard output. Previous logger set by <a class="el" href="#ga76d7032206f9b9d1c0be1a71a68c43d0">cgroup_set_logger()</a> is replaced.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">loglevel</td><td>The log level. Use value -1 to automatically discover the level from CGROUP_LOGLEVEL environment variable. </td></tr>
<tr>
<td class="memname">void cgroup_set_logger </td>
<td>(</td>
- <td class="paramtype">cgroup_logger_callback </td>
- <td class="paramname"><em>logger</em>, </td>
+ <td class="paramtype">cgroup_logger_callback</td> <td class="paramname"><span class="paramname"><em>logger</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>loglevel</em>, </td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>loglevel</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>userdata</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>userdata</em></span> )</td>
</tr>
</table>
</td>
<tr>
<td class="memname">void cgroup_set_loglevel </td>
<td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>loglevel</em></td><td>)</td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>loglevel</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: 4. Manipulation with tasks</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<tr class="heading"><td colspan="2"><h2 class="groupheader">Simple task assignment</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Applications can use following functions to simply put a task into given control group and find a groups where given tasks is. </p>
</td></tr>
-<tr class="memitem:ga221ec5280a475ef096b3604a2e4a32e7" id="r_ga221ec5280a475ef096b3604a2e4a32e7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7">cgroup_attach_task</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
+<tr class="memitem:ga221ec5280a475ef096b3604a2e4a32e7" id="r_ga221ec5280a475ef096b3604a2e4a32e7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga221ec5280a475ef096b3604a2e4a32e7">cgroup_attach_task</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp)</td></tr>
<tr class="separator:ga221ec5280a475ef096b3604a2e4a32e7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga1fcd62dd6fcfb7b6c9361702d374a96d" id="r_ga1fcd62dd6fcfb7b6c9361702d374a96d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d">cgroup_attach_task_pid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, pid_t tid)</td></tr>
+<tr class="memitem:ga1fcd62dd6fcfb7b6c9361702d374a96d" id="r_ga1fcd62dd6fcfb7b6c9361702d374a96d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga1fcd62dd6fcfb7b6c9361702d374a96d">cgroup_attach_task_pid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *cgrp, pid_t tid)</td></tr>
<tr class="separator:ga1fcd62dd6fcfb7b6c9361702d374a96d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga2d4677baef780c003fc6fba6b5dc78f2" id="r_ga2d4677baef780c003fc6fba6b5dc78f2"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2">cgroup_change_cgroup_path</a> (const char *path, pid_t pid, const char *const controllers[])</td></tr>
+<tr class="memitem:ga2d4677baef780c003fc6fba6b5dc78f2" id="r_ga2d4677baef780c003fc6fba6b5dc78f2"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga2d4677baef780c003fc6fba6b5dc78f2">cgroup_change_cgroup_path</a> (const char *path, pid_t pid, const char *const controllers[])</td></tr>
<tr class="separator:ga2d4677baef780c003fc6fba6b5dc78f2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga6f2c17b99cf2526cb46df4769eb3f46e" id="r_ga6f2c17b99cf2526cb46df4769eb3f46e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e">cgroup_get_current_controller_path</a> (pid_t pid, const char *controller, char **current_path)</td></tr>
+<tr class="memitem:ga6f2c17b99cf2526cb46df4769eb3f46e" id="r_ga6f2c17b99cf2526cb46df4769eb3f46e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga6f2c17b99cf2526cb46df4769eb3f46e">cgroup_get_current_controller_path</a> (pid_t pid, const char *controller, char **current_path)</td></tr>
<tr class="separator:ga6f2c17b99cf2526cb46df4769eb3f46e"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Rules</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><code>libcgroup</code> can move tasks to control groups using simple rules, loaded from configuration file. See cgrules.conf man page to see format of the file. Following functions can be used to load these rules from a file. </p>
</td></tr>
-<tr class="memitem:gad7fa5a2c4db08d31da5bfbecaf482d3d" id="r_gad7fa5a2c4db08d31da5bfbecaf482d3d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d">cgroup_init_rules_cache</a> (void)</td></tr>
+<tr class="memitem:gad7fa5a2c4db08d31da5bfbecaf482d3d" id="r_gad7fa5a2c4db08d31da5bfbecaf482d3d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gad7fa5a2c4db08d31da5bfbecaf482d3d">cgroup_init_rules_cache</a> (void)</td></tr>
<tr class="separator:gad7fa5a2c4db08d31da5bfbecaf482d3d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gaf81ebd9cb5575c75b4c85f385ebda1ce" id="r_gaf81ebd9cb5575c75b4c85f385ebda1ce"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce">cgroup_reload_cached_rules</a> (void)</td></tr>
+<tr class="memitem:gaf81ebd9cb5575c75b4c85f385ebda1ce" id="r_gaf81ebd9cb5575c75b4c85f385ebda1ce"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gaf81ebd9cb5575c75b4c85f385ebda1ce">cgroup_reload_cached_rules</a> (void)</td></tr>
<tr class="separator:gaf81ebd9cb5575c75b4c85f385ebda1ce"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gac4e3f29cfbdc3d77f08c9fe60857274a" id="r_gac4e3f29cfbdc3d77f08c9fe60857274a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a">cgroup_print_rules_config</a> (FILE *fp)</td></tr>
+<tr class="memitem:gac4e3f29cfbdc3d77f08c9fe60857274a" id="r_gac4e3f29cfbdc3d77f08c9fe60857274a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#gac4e3f29cfbdc3d77f08c9fe60857274a">cgroup_print_rules_config</a> (FILE *fp)</td></tr>
<tr class="separator:gac4e3f29cfbdc3d77f08c9fe60857274a"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Rule based task assignment</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><code>libcgroup</code> can move tasks to control groups using simple rules, loaded from configuration file. See cgrules.conf man page to see format of the file. Applications can move tasks to control groups based on these rules using following functions. </p>
</td></tr>
-<tr class="memitem:gafc69658b012b6f1c11ba078ffccd70a2" id="r_gafc69658b012b6f1c11ba078ffccd70a2"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2">cgroup_change_all_cgroups</a> (void)</td></tr>
+<tr class="memitem:gafc69658b012b6f1c11ba078ffccd70a2" id="r_gafc69658b012b6f1c11ba078ffccd70a2"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gafc69658b012b6f1c11ba078ffccd70a2">cgroup_change_all_cgroups</a> (void)</td></tr>
<tr class="separator:gafc69658b012b6f1c11ba078ffccd70a2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga368e7b8e19b3943ab6fb50e76a09e6ea" id="r_ga368e7b8e19b3943ab6fb50e76a09e6ea"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea">cgroup_change_cgroup_flags</a> (uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags)</td></tr>
+<tr class="memitem:ga368e7b8e19b3943ab6fb50e76a09e6ea" id="r_ga368e7b8e19b3943ab6fb50e76a09e6ea"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga368e7b8e19b3943ab6fb50e76a09e6ea">cgroup_change_cgroup_flags</a> (uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags)</td></tr>
<tr class="separator:ga368e7b8e19b3943ab6fb50e76a09e6ea"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gae472183a7c9a37826ef15c77014c47fb" id="r_gae472183a7c9a37826ef15c77014c47fb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags</a> (uid_t uid, gid_t gid, pid_t pid, int flags)</td></tr>
+<tr class="memitem:gae472183a7c9a37826ef15c77014c47fb" id="r_gae472183a7c9a37826ef15c77014c47fb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags</a> (uid_t uid, gid_t gid, pid_t pid, int flags)</td></tr>
<tr class="separator:gae472183a7c9a37826ef15c77014c47fb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ga5eab78a922dbacd368360f03c70146be" id="r_ga5eab78a922dbacd368360f03c70146be"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be">cgroup_change_cgroup_uid_gid</a> (uid_t uid, gid_t gid, pid_t pid)</td></tr>
+<tr class="memitem:ga5eab78a922dbacd368360f03c70146be" id="r_ga5eab78a922dbacd368360f03c70146be"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga5eab78a922dbacd368360f03c70146be">cgroup_change_cgroup_uid_gid</a> (uid_t uid, gid_t gid, pid_t pid)</td></tr>
<tr class="separator:ga5eab78a922dbacd368360f03c70146be"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">Communication with cgrulesengd daemon</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>Users can use cgrulesengd daemon to move tasks to groups based on the rules automatically when they change their UID, GID or executable name. The daemon allows tasks to be 'sticky', i.e. all rules are ignored for these tasks and the daemon never moves them. </p>
</td></tr>
-<tr class="memitem:ga64f7967d6d5edfff9afddaa6a6974b1c" id="r_ga64f7967d6d5edfff9afddaa6a6974b1c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c">cgroup_register_unchanged_process</a> (pid_t pid, int flags)</td></tr>
+<tr class="memitem:ga64f7967d6d5edfff9afddaa6a6974b1c" id="r_ga64f7967d6d5edfff9afddaa6a6974b1c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ga64f7967d6d5edfff9afddaa6a6974b1c">cgroup_register_unchanged_process</a> (pid_t pid, int flags)</td></tr>
<tr class="separator:ga64f7967d6d5edfff9afddaa6a6974b1c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:gabdb49127e5959831abb3a03e384c3dee" id="r_gabdb49127e5959831abb3a03e384c3dee"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee">cgroup_attach_thread_tid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *<a class="el" href="structcgroup.html">cgroup</a>, pid_t tid)</td></tr>
+<tr class="memitem:gabdb49127e5959831abb3a03e384c3dee" id="r_gabdb49127e5959831abb3a03e384c3dee"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#gabdb49127e5959831abb3a03e384c3dee">cgroup_attach_thread_tid</a> (struct <a class="el" href="structcgroup.html">cgroup</a> *<a class="el" href="structcgroup.html">cgroup</a>, pid_t tid)</td></tr>
<tr class="separator:gabdb49127e5959831abb3a03e384c3dee"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<tr>
<td class="memname">int cgroup_attach_task </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgroup</em></td><td>)</td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgroup</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_attach_task_pid </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgroup</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgroup</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>tid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>tid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_attach_thread_tid </td>
<td>(</td>
- <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> * </td>
- <td class="paramname"><em>cgroup</em>, </td>
+ <td class="paramtype">struct <a class="el" href="structcgroup.html">cgroup</a> *</td> <td class="paramname"><span class="paramname"><em>cgroup</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>tid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>tid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_change_all_cgroups </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_change_cgroup_flags </td>
<td>(</td>
- <td class="paramtype">uid_t </td>
- <td class="paramname"><em>uid</em>, </td>
+ <td class="paramtype">uid_t</td> <td class="paramname"><span class="paramname"><em>uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t </td>
- <td class="paramname"><em>gid</em>, </td>
+ <td class="paramtype">gid_t</td> <td class="paramname"><span class="paramname"><em>gid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>procname</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>procname</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em>, </td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000016">Todo:</a></b></dt><dd>Determine thread-safeness and fix of not safe. </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000016">Todo</a></b></dt><dd>Determine thread-safeness and fix of not safe. </dd></dl>
</div>
</div>
<tr>
<td class="memname">int cgroup_change_cgroup_path </td>
<td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>dest</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>dest</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em>, </td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *const </td>
- <td class="paramname"><em>controllers</em>[] </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">const char *const</td> <td class="paramname"><span class="paramname"><em>controllers</em></span>[] )</td>
</tr>
</table>
</div><div class="memdoc">
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000014">Todo:</a></b></dt><dd>should this function be really public? </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000014">Todo</a></b></dt><dd>should this function be really public? </dd></dl>
<p>Changes the cgroup of a program based on the path provided. In this case, the user must already know into which cgroup the task should be placed and no rules will be parsed.</p>
<p>returns 0 on success. </p>
<tr>
<td class="memname">int cgroup_change_cgroup_uid_gid </td>
<td>(</td>
- <td class="paramtype">uid_t </td>
- <td class="paramname"><em>uid</em>, </td>
+ <td class="paramtype">uid_t</td> <td class="paramname"><span class="paramname"><em>uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t </td>
- <td class="paramname"><em>gid</em>, </td>
+ <td class="paramtype">gid_t</td> <td class="paramname"><span class="paramname"><em>gid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
-<p>Provides backwards-compatibility with older versions of the API. This function is deprecated, and <a class="el" href="group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags()</a> should be used instead. In fact, this function simply calls the newer one with flags set to 0 (none). </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Provides backwards-compatibility with older versions of the API. This function is deprecated, and <a class="el" href="#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags()</a> should be used instead. In fact, this function simply calls the newer one with flags set to 0 (none). </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">uid</td><td>The UID to match. </td></tr>
<tr><td class="paramname">gid</td><td>The GID to match. </td></tr>
</table>
</dd>
</dl>
-<p>Provides backwards-compatibility with older versions of the API. This function is deprecated, and <a class="el" href="group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags()</a> should be used instead. In fact, this function simply calls the newer one with flags set to 0 (none). </p><dl class="params"><dt>Parameters</dt><dd>
+<p>Provides backwards-compatibility with older versions of the API. This function is deprecated, and <a class="el" href="#gae472183a7c9a37826ef15c77014c47fb">cgroup_change_cgroup_uid_gid_flags()</a> should be used instead. In fact, this function simply calls the newer one with flags set to 0 (none). </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">uid</td><td>The UID to match </td></tr>
<tr><td class="paramname">gid</td><td>The GID to match </td></tr>
<tr>
<td class="memname">int cgroup_change_cgroup_uid_gid_flags </td>
<td>(</td>
- <td class="paramtype">uid_t </td>
- <td class="paramname"><em>uid</em>, </td>
+ <td class="paramtype">uid_t</td> <td class="paramname"><span class="paramname"><em>uid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">gid_t </td>
- <td class="paramname"><em>gid</em>, </td>
+ <td class="paramtype">gid_t</td> <td class="paramname"><span class="paramname"><em>gid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em>, </td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
</table>
</dd>
</dl>
-<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000017">Todo:</a></b></dt><dd>Determine thread-safeness and fix if not safe. </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000017">Todo</a></b></dt><dd>Determine thread-safeness and fix if not safe. </dd></dl>
</div>
</div>
<tr>
<td class="memname">int cgroup_get_current_controller_path </td>
<td>(</td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em>, </td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>controller</em>, </td>
+ <td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>controller</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>current_path</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">char **</td> <td class="paramname"><span class="paramname"><em>current_path</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_init_rules_cache </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
-<p>Initializes the rules cache and load it from /etc/cgrules.conf. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000015">Todo:</a></b></dt><dd>add parameter with the filename? </dd></dl>
+<p>Initializes the rules cache and load it from /etc/cgrules.conf. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000015">Todo</a></b></dt><dd>add parameter with the filename? </dd></dl>
<p>Initializes the rules cache. </p><dl class="section return"><dt>Returns</dt><dd>0 on success, > 0 on error </dd></dl>
</div>
<tr>
<td class="memname">void cgroup_print_rules_config </td>
<td>(</td>
- <td class="paramtype">FILE * </td>
- <td class="paramname"><em>fp</em></td><td>)</td>
+ <td class="paramtype">FILE *</td> <td class="paramname"><span class="paramname"><em>fp</em></span></td><td>)</td>
<td></td>
</tr>
</table>
<tr>
<td class="memname">int cgroup_register_unchanged_process </td>
<td>(</td>
- <td class="paramtype">pid_t </td>
- <td class="paramname"><em>pid</em>, </td>
+ <td class="paramtype">pid_t</td> <td class="paramname"><span class="paramname"><em>pid</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
+ <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>flags</em></span> )</td>
</tr>
</table>
</div><div class="memdoc">
<tr>
<td class="memname">int cgroup_reload_cached_rules </td>
<td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
+ <td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/groups.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">groups.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Class Hierarchy</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!--header-->
<div class="contents">
<div class="textblock">This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
-<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
+<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structarray__parent__info.html" target="_self">array_parent_info</a></td><td class="desc"></td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structarray__unchanged.html" target="_self">array_unchanged</a></td><td class="desc"></td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structcg__mount__point.html" target="_self">cg_mount_point</a></td><td class="desc"></td></tr>
<tr id="row_23_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structcontroller__data.html" target="_self">controller_data</a></td><td class="desc"></td></tr>
<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structdeny__list__type.html" target="_self">deny_list_type</a></td><td class="desc"></td></tr>
<tr id="row_25_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structexample__opts.html" target="_self">example_opts</a></td><td class="desc"></td></tr>
-<tr id="row_26_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_26_" class="arrow" onclick="toggleFolder('26_')">▼</span><span class="icona"><span class="icon">C</span></span><b>Exception</b></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_26_" class="arrow" onclick="dynsection.toggleFolder('26_')">▼</span><span class="icona"><span class="icon">C</span></span><b>Exception</b></td><td class="desc"></td></tr>
<tr id="row_26_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupError.html" target="_self">ftests.cgroup.CgroupError</a></td><td class="desc"></td></tr>
<tr id="row_26_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1config_1_1ConfigError.html" target="_self">ftests.config.ConfigError</a></td><td class="desc"></td></tr>
<tr id="row_26_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1container_1_1ContainerError.html" target="_self">ftests.container.ContainerError</a></td><td class="desc"></td></tr>
<tr id="row_26_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1run_1_1RunError.html" target="_self">ftests.run.RunError</a></td><td class="desc"></td></tr>
<tr id="row_27_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structext__cgroup__record.html" target="_self">ext_cgroup_record</a></td><td class="desc"></td></tr>
-<tr id="row_28_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_28_" class="arrow" onclick="toggleFolder('28_')">▼</span><span class="icona"><span class="icon">C</span></span><b>object</b></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_28_" class="arrow" onclick="dynsection.toggleFolder('28_')">▼</span><span class="icona"><span class="icon">C</span></span><b>object</b></td><td class="desc"></td></tr>
<tr id="row_28_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1Cgroup.html" target="_self">ftests.cgroup.Cgroup</a></td><td class="desc"></td></tr>
<tr id="row_28_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupMount.html" target="_self">ftests.cgroup.CgroupMount</a></td><td class="desc"></td></tr>
<tr id="row_28_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1config_1_1Config.html" target="_self">ftests.config.Config</a></td><td class="desc"></td></tr>
<tr id="row_28_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1run_1_1Run.html" target="_self">ftests.run.Run</a></td><td class="desc"></td></tr>
<tr id="row_28_8_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1systemd_1_1Systemd.html" target="_self">ftests.systemd.Systemd</a></td><td class="desc"></td></tr>
<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structparent__info.html" target="_self">parent_info</a></td><td class="desc"></td></tr>
-<tr id="row_30_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_30_" class="arrow" onclick="toggleFolder('30_')">▼</span><span class="icona"><span class="icon">C</span></span><b>testing::Test</b></td><td class="desc"></td></tr>
+<tr id="row_30_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_30_" class="arrow" onclick="dynsection.toggleFolder('30_')">▼</span><span class="icona"><span class="icon">C</span></span><b>testing::Test</b></td><td class="desc"></td></tr>
<tr id="row_30_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAPIArgsTest.html" target="_self">APIArgsTest</a></td><td class="desc"></td></tr>
<tr id="row_30_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBuildPathV1Test.html" target="_self">BuildPathV1Test</a></td><td class="desc"></td></tr>
<tr id="row_30_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBuildTasksProcPathTest.html" target="_self">BuildTasksProcPathTest</a></td><td class="desc"></td></tr>
<tr id="row_30_15_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSetValuesRecursiveTest.html" target="_self">SetValuesRecursiveTest</a></td><td class="desc"></td></tr>
<tr id="row_30_16_" class="even"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSubtreeControlTest.html" target="_self">SubtreeControlTest</a></td><td class="desc"></td></tr>
<tr id="row_31_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="structunchanged__pid.html" target="_self">unchanged_pid</a></td><td class="desc"></td></tr>
-<tr id="row_32_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_32_" class="arrow" onclick="toggleFolder('32_')">▼</span><span class="icona"><span class="icon">C</span></span><b>Enum</b></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_32_" class="arrow" onclick="dynsection.toggleFolder('32_')">▼</span><span class="icona"><span class="icon">C</span></span><b>Enum</b></td><td class="desc"></td></tr>
<tr id="row_32_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftests_1_1cgroup_1_1CgroupVersion.html" target="_self">ftests.cgroup.CgroupVersion</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: libcgroup</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
<li><a class="el" href="group__group__errors.html">Error Handling</a> </li>
</ol>
</div></div><!-- PageDoc -->
+<a href="doxygen_crawl.html"></a>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/iterators.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">iterators.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */
-!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}
+var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},
+push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(
+e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,
+O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp(
+"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType
+}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c
+)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){
+return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(
+":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id")
+)&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push(
+"\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(
+a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,
+null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if(
+"string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne
+).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType
+)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(
+function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){
+return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);
+for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n
+){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(
+e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);
+break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(
+function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){
+for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(
+this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(
+var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){
+return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(
+){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),
+S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,
+r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,
+o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(
+"object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){
+var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),
+1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){
+Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t
+){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c
+].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;
+return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),
+"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n
+)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,
+f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(
+arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i
+]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(
+e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;
+this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t
+}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,
+r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),
+r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){
+1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(
+"string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t
+,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(
+l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[
+0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(
+!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(
+e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(
+e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(
+this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},
+S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),
+originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}
+S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(
+le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),
+null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"
+],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},
+S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{
+set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o
+)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(
+" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;
+t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode
+,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),
+e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(
+new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};
+var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();
+return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",
+isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(
+t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global
+)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(
+v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();
+while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))
+}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),
+t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){
+return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(
+e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r]
+,C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(
+function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,
+"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}
+),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each(
+"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){
+return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
/*! jQuery UI - v1.13.2 - 2022-08-01
* http://jqueryui.com
* Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-patch.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/resizable.js, widgets/mouse.js
-* Copyright jQuery Foundation and other contributors; Licensed MIT */
-
-!function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(y){"use strict";y.ui=y.ui||{};y.ui.version="1.13.2";var n,i=0,h=Array.prototype.hasOwnProperty,a=Array.prototype.slice;y.cleanData=(n=y.cleanData,function(t){for(var e,i,s=0;null!=(i=t[s]);s++)(e=y._data(i,"events"))&&e.remove&&y(i).triggerHandler("remove");n(t)}),y.widget=function(t,i,e){var s,n,o,h={},a=t.split(".")[0],r=a+"-"+(t=t.split(".")[1]);return e||(e=i,i=y.Widget),Array.isArray(e)&&(e=y.extend.apply(null,[{}].concat(e))),y.expr.pseudos[r.toLowerCase()]=function(t){return!!y.data(t,r)},y[a]=y[a]||{},s=y[a][t],n=y[a][t]=function(t,e){if(!this||!this._createWidget)return new n(t,e);arguments.length&&this._createWidget(t,e)},y.extend(n,s,{version:e.version,_proto:y.extend({},e),_childConstructors:[]}),(o=new i).options=y.widget.extend({},o.options),y.each(e,function(e,s){function n(){return i.prototype[e].apply(this,arguments)}function o(t){return i.prototype[e].apply(this,t)}h[e]="function"==typeof s?function(){var t,e=this._super,i=this._superApply;return this._super=n,this._superApply=o,t=s.apply(this,arguments),this._super=e,this._superApply=i,t}:s}),n.prototype=y.widget.extend(o,{widgetEventPrefix:s&&o.widgetEventPrefix||t},h,{constructor:n,namespace:a,widgetName:t,widgetFullName:r}),s?(y.each(s._childConstructors,function(t,e){var i=e.prototype;y.widget(i.namespace+"."+i.widgetName,n,e._proto)}),delete s._childConstructors):i._childConstructors.push(n),y.widget.bridge(t,n),n},y.widget.extend=function(t){for(var e,i,s=a.call(arguments,1),n=0,o=s.length;n<o;n++)for(e in s[n])i=s[n][e],h.call(s[n],e)&&void 0!==i&&(y.isPlainObject(i)?t[e]=y.isPlainObject(t[e])?y.widget.extend({},t[e],i):y.widget.extend({},i):t[e]=i);return t},y.widget.bridge=function(o,e){var h=e.prototype.widgetFullName||o;y.fn[o]=function(i){var t="string"==typeof i,s=a.call(arguments,1),n=this;return t?this.length||"instance"!==i?this.each(function(){var t,e=y.data(this,h);return"instance"===i?(n=e,!1):e?"function"!=typeof e[i]||"_"===i.charAt(0)?y.error("no such method '"+i+"' for "+o+" widget instance"):(t=e[i].apply(e,s))!==e&&void 0!==t?(n=t&&t.jquery?n.pushStack(t.get()):t,!1):void 0:y.error("cannot call methods on "+o+" prior to initialization; attempted to call method '"+i+"'")}):n=void 0:(s.length&&(i=y.widget.extend.apply(null,[i].concat(s))),this.each(function(){var t=y.data(this,h);t?(t.option(i||{}),t._init&&t._init()):y.data(this,h,new e(i,this))})),n}},y.Widget=function(){},y.Widget._childConstructors=[],y.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=y(e||this.defaultElement||this)[0],this.element=y(e),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=y(),this.hoverable=y(),this.focusable=y(),this.classesElementLookup={},e!==this&&(y.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=y(e.style?e.ownerDocument:e.document||e),this.window=y(this.document[0].defaultView||this.document[0].parentWindow)),this.options=y.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:y.noop,_create:y.noop,_init:y.noop,destroy:function(){var i=this;this._destroy(),y.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:y.noop,widget:function(){return this.element},option:function(t,e){var i,s,n,o=t;if(0===arguments.length)return y.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(i=t.split(".")).shift(),i.length){for(s=o[t]=y.widget.extend({},this.options[t]),n=0;n<i.length-1;n++)s[i[n]]=s[i[n]]||{},s=s[i[n]];if(t=i.pop(),1===arguments.length)return void 0===s[t]?null:s[t];s[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=e}return this._setOptions(o),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,i,s;for(e in t)s=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&s&&s.length&&(i=y(s.get()),this._removeClass(s,e),i.addClass(this._classes({element:i,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(n){var o=[],h=this;function t(t,e){for(var i,s=0;s<t.length;s++)i=h.classesElementLookup[t[s]]||y(),i=n.add?(function(){var i=[];n.element.each(function(t,e){y.map(h.classesElementLookup,function(t){return t}).some(function(t){return t.is(e)})||i.push(e)}),h._on(y(i),{remove:"_untrackClassesElement"})}(),y(y.uniqueSort(i.get().concat(n.element.get())))):y(i.not(n.element).get()),h.classesElementLookup[t[s]]=i,o.push(t[s]),e&&n.classes[t[s]]&&o.push(n.classes[t[s]])}return(n=y.extend({element:this.element,classes:this.options.classes||{}},n)).keys&&t(n.keys.match(/\S+/g)||[],!0),n.extra&&t(n.extra.match(/\S+/g)||[]),o.join(" ")},_untrackClassesElement:function(i){var s=this;y.each(s.classesElementLookup,function(t,e){-1!==y.inArray(i.target,e)&&(s.classesElementLookup[t]=y(e.not(i.target).get()))}),this._off(y(i.target))},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){var n="string"==typeof t||null===t,i={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s="boolean"==typeof s?s:i};return i.element.toggleClass(this._classes(i),s),this},_on:function(n,o,t){var h,a=this;"boolean"!=typeof n&&(t=o,o=n,n=!1),t?(o=h=y(o),this.bindings=this.bindings.add(o)):(t=o,o=this.element,h=this.widget()),y.each(t,function(t,e){function i(){if(n||!0!==a.options.disabled&&!y(this).hasClass("ui-state-disabled"))return("string"==typeof e?a[e]:e).apply(a,arguments)}"string"!=typeof e&&(i.guid=e.guid=e.guid||i.guid||y.guid++);var s=t.match(/^([\w:-]*)\s*(.*)$/),t=s[1]+a.eventNamespace,s=s[2];s?h.on(t,s,i):o.on(t,i)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e),this.bindings=y(this.bindings.not(t).get()),this.focusable=y(this.focusable.not(t).get()),this.hoverable=y(this.hoverable.not(t).get())},_delay:function(t,e){var i=this;return setTimeout(function(){return("string"==typeof t?i[t]:t).apply(i,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(y(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(y(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,i){var s,n,o=this.options[t];if(i=i||{},(e=y.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],n=e.originalEvent)for(s in n)s in e||(e[s]=n[s]);return this.element.trigger(e,i),!("function"==typeof o&&!1===o.apply(this.element[0],[e].concat(i))||e.isDefaultPrevented())}},y.each({show:"fadeIn",hide:"fadeOut"},function(o,h){y.Widget.prototype["_"+o]=function(e,t,i){var s,n=(t="string"==typeof t?{effect:t}:t)?!0!==t&&"number"!=typeof t&&t.effect||h:o;"number"==typeof(t=t||{})?t={duration:t}:!0===t&&(t={}),s=!y.isEmptyObject(t),t.complete=i,t.delay&&e.delay(t.delay),s&&y.effects&&y.effects.effect[n]?e[o](t):n!==o&&e[n]?e[n](t.duration,t.easing,i):e.queue(function(t){y(this)[o](),i&&i.call(e[0]),t()})}});var s,x,D,o,r,l,u,p,W;y.widget;function E(t,e,i){return[parseFloat(t[0])*(p.test(t[0])?e/100:1),parseFloat(t[1])*(p.test(t[1])?i/100:1)]}function H(t,e){return parseInt(y.css(t,e),10)||0}function S(t){return null!=t&&t===t.window}x=Math.max,D=Math.abs,o=/left|center|right/,r=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,u=/^\w+/,p=/%$/,W=y.fn.position,y.position={scrollbarWidth:function(){if(void 0!==s)return s;var t,e=y("<div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'><div style='height:300px;width:auto;'></div></div>"),i=e.children()[0];return y("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),s=t-i},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&&t.height<t.element[0].scrollHeight?y.position.scrollbarWidth():0,height:e?y.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=y(t||window),i=S(e[0]),s=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:i,isDocument:s,offset:!i&&!s?y(t).offset():{left:0,top:0},scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},y.fn.position=function(p){if(!p||!p.of)return W.apply(this,arguments);var d,c,f,g,m,t,_="string"==typeof(p=y.extend({},p)).of?y(document).find(p.of):y(p.of),w=y.position.getWithinInfo(p.within),v=y.position.getScrollInfo(w),b=(p.collision||"flip").split(" "),z={},e=9===(t=(e=_)[0]).nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:S(t)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:t.preventDefault?{width:0,height:0,offset:{top:t.pageY,left:t.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()};return _[0].preventDefault&&(p.at="left top"),c=e.width,f=e.height,m=y.extend({},g=e.offset),y.each(["my","at"],function(){var t,e,i=(p[this]||"").split(" ");(i=1===i.length?o.test(i[0])?i.concat(["center"]):r.test(i[0])?["center"].concat(i):["center","center"]:i)[0]=o.test(i[0])?i[0]:"center",i[1]=r.test(i[1])?i[1]:"center",t=l.exec(i[0]),e=l.exec(i[1]),z[this]=[t?t[0]:0,e?e[0]:0],p[this]=[u.exec(i[0])[0],u.exec(i[1])[0]]}),1===b.length&&(b[1]=b[0]),"right"===p.at[0]?m.left+=c:"center"===p.at[0]&&(m.left+=c/2),"bottom"===p.at[1]?m.top+=f:"center"===p.at[1]&&(m.top+=f/2),d=E(z.at,c,f),m.left+=d[0],m.top+=d[1],this.each(function(){var i,t,h=y(this),a=h.outerWidth(),r=h.outerHeight(),e=H(this,"marginLeft"),s=H(this,"marginTop"),n=a+e+H(this,"marginRight")+v.width,o=r+s+H(this,"marginBottom")+v.height,l=y.extend({},m),u=E(z.my,h.outerWidth(),h.outerHeight());"right"===p.my[0]?l.left-=a:"center"===p.my[0]&&(l.left-=a/2),"bottom"===p.my[1]?l.top-=r:"center"===p.my[1]&&(l.top-=r/2),l.left+=u[0],l.top+=u[1],i={marginLeft:e,marginTop:s},y.each(["left","top"],function(t,e){y.ui.position[b[t]]&&y.ui.position[b[t]][e](l,{targetWidth:c,targetHeight:f,elemWidth:a,elemHeight:r,collisionPosition:i,collisionWidth:n,collisionHeight:o,offset:[d[0]+u[0],d[1]+u[1]],my:p.my,at:p.at,within:w,elem:h})}),p.using&&(t=function(t){var e=g.left-l.left,i=e+c-a,s=g.top-l.top,n=s+f-r,o={target:{element:_,left:g.left,top:g.top,width:c,height:f},element:{element:h,left:l.left,top:l.top,width:a,height:r},horizontal:i<0?"left":0<e?"right":"center",vertical:n<0?"top":0<s?"bottom":"middle"};c<a&&D(e+i)<c&&(o.horizontal="center"),f<r&&D(s+n)<f&&(o.vertical="middle"),x(D(e),D(i))>x(D(s),D(n))?o.important="horizontal":o.important="vertical",p.using.call(this,t,o)}),h.offset(y.extend(l,{using:t}))})},y.ui.position={fit:{left:function(t,e){var i=e.within,s=i.isWindow?i.scrollLeft:i.offset.left,n=i.width,o=t.left-e.collisionPosition.marginLeft,h=s-o,a=o+e.collisionWidth-n-s;e.collisionWidth>n?0<h&&a<=0?(i=t.left+h+e.collisionWidth-n-s,t.left+=h-i):t.left=!(0<a&&h<=0)&&a<h?s+n-e.collisionWidth:s:0<h?t.left+=h:0<a?t.left-=a:t.left=x(t.left-o,t.left)},top:function(t,e){var i=e.within,s=i.isWindow?i.scrollTop:i.offset.top,n=e.within.height,o=t.top-e.collisionPosition.marginTop,h=s-o,a=o+e.collisionHeight-n-s;e.collisionHeight>n?0<h&&a<=0?(i=t.top+h+e.collisionHeight-n-s,t.top+=h-i):t.top=!(0<a&&h<=0)&&a<h?s+n-e.collisionHeight:s:0<h?t.top+=h:0<a?t.top-=a:t.top=x(t.top-o,t.top)}},flip:{left:function(t,e){var i=e.within,s=i.offset.left+i.scrollLeft,n=i.width,o=i.isWindow?i.scrollLeft:i.offset.left,h=t.left-e.collisionPosition.marginLeft,a=h-o,r=h+e.collisionWidth-n-o,l="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,i="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,h=-2*e.offset[0];a<0?((s=t.left+l+i+h+e.collisionWidth-n-s)<0||s<D(a))&&(t.left+=l+i+h):0<r&&(0<(o=t.left-e.collisionPosition.marginLeft+l+i+h-o)||D(o)<r)&&(t.left+=l+i+h)},top:function(t,e){var i=e.within,s=i.offset.top+i.scrollTop,n=i.height,o=i.isWindow?i.scrollTop:i.offset.top,h=t.top-e.collisionPosition.marginTop,a=h-o,r=h+e.collisionHeight-n-o,l="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,i="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,h=-2*e.offset[1];a<0?((s=t.top+l+i+h+e.collisionHeight-n-s)<0||s<D(a))&&(t.top+=l+i+h):0<r&&(0<(o=t.top-e.collisionPosition.marginTop+l+i+h-o)||D(o)<r)&&(t.top+=l+i+h)}},flipfit:{left:function(){y.ui.position.flip.left.apply(this,arguments),y.ui.position.fit.left.apply(this,arguments)},top:function(){y.ui.position.flip.top.apply(this,arguments),y.ui.position.fit.top.apply(this,arguments)}}};var t;y.ui.position,y.extend(y.expr.pseudos,{data:y.expr.createPseudo?y.expr.createPseudo(function(e){return function(t){return!!y.data(t,e)}}):function(t,e,i){return!!y.data(t,i[3])}}),y.fn.extend({disableSelection:(t="onselectstart"in document.createElement("div")?"selectstart":"mousedown",function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}),enableSelection:function(){return this.off(".ui-disableSelection")}});y.ui.focusable=function(t,e){var i,s,n,o,h=t.nodeName.toLowerCase();return"area"===h?(s=(i=t.parentNode).name,!(!t.href||!s||"map"!==i.nodeName.toLowerCase())&&(0<(s=y("img[usemap='#"+s+"']")).length&&s.is(":visible"))):(/^(input|select|textarea|button|object)$/.test(h)?(n=!t.disabled)&&(o=y(t).closest("fieldset")[0])&&(n=!o.disabled):n="a"===h&&t.href||e,n&&y(t).is(":visible")&&function(t){var e=t.css("visibility");for(;"inherit"===e;)t=t.parent(),e=t.css("visibility");return"visible"===e}(y(t)))},y.extend(y.expr.pseudos,{focusable:function(t){return y.ui.focusable(t,null!=y.attr(t,"tabindex"))}});var e,d;y.ui.focusable,y.fn._form=function(){return"string"==typeof this[0].form?this.closest("form"):y(this[0].form)},y.ui.formResetMixin={_formResetHandler:function(){var e=y(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");y.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element._form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(y.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}};y.expr.pseudos||(y.expr.pseudos=y.expr[":"]),y.uniqueSort||(y.uniqueSort=y.unique),y.escapeSelector||(e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,d=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},y.escapeSelector=function(t){return(t+"").replace(e,d)}),y.fn.even&&y.fn.odd||y.fn.extend({even:function(){return this.filter(function(t){return t%2==0})},odd:function(){return this.filter(function(t){return t%2==1})}});y.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},y.fn.labels=function(){var t,e,i;return this.length?this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(i=(i=this.eq(0).parents().last()).add((i.length?i:this).siblings()),t="label[for='"+y.escapeSelector(t)+"']",e=e.add(i.find(t).addBack(t))),this.pushStack(e)):this.pushStack([])},y.fn.scrollParent=function(t){var e=this.css("position"),i="absolute"===e,s=t?/(auto|scroll|hidden)/:/(auto|scroll)/,t=this.parents().filter(function(){var t=y(this);return(!i||"static"!==t.css("position"))&&s.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==e&&t.length?t:y(this[0].ownerDocument||document)},y.extend(y.expr.pseudos,{tabbable:function(t){var e=y.attr(t,"tabindex"),i=null!=e;return(!i||0<=e)&&y.ui.focusable(t,i)}}),y.fn.extend({uniqueId:(c=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++c)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&y(this).removeAttr("id")})}}),y.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var c,f=!1;y(document).on("mouseup",function(){f=!1});y.widget("ui.mouse",{version:"1.13.2",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(t){if(!0===y.data(t.target,e.widgetName+".preventClickEvent"))return y.removeData(t.target,e.widgetName+".preventClickEvent"),t.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!f){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var e=this,i=1===t.which,s=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&y(t.target).closest(this.options.cancel).length;return i&&!s&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===y.data(t.target,this.widgetName+".preventClickEvent")&&y.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return e._mouseMove(t)},this._mouseUpDelegate=function(t){return e._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),f=!0)):!0}},_mouseMove:function(t){if(this._mouseMoved){if(y.ui.ie&&(!document.documentMode||document.documentMode<9)&&!t.button)return this._mouseUp(t);if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&y.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,f=!1,t.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),y.ui.plugin={add:function(t,e,i){var s,n=y.ui[t].prototype;for(s in i)n.plugins[s]=n.plugins[s]||[],n.plugins[s].push([e,i[s]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;n<o.length;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}};y.widget("ui.resizable",y.ui.mouse,{version:"1.13.2",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(t,e){if("hidden"===y(t).css("overflow"))return!1;var i=e&&"left"===e?"scrollLeft":"scrollTop",e=!1;if(0<t[i])return!0;try{t[i]=1,e=0<t[i],t[i]=0}catch(t){}return e},_create:function(){var t,e=this.options,i=this;this._addClass("ui-resizable"),y.extend(this,{_aspectRatio:!!e.aspectRatio,aspectRatio:e.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:e.helper||e.ghost||e.animate?e.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(y("<div class='ui-wrapper'></div>").css({overflow:"hidden",position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,t={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(t),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(t),this._proportionallyResize()),this._setupHandles(),e.autoHide&&y(this.element).on("mouseenter",function(){e.disabled||(i._removeClass("ui-resizable-autohide"),i._handles.show())}).on("mouseleave",function(){e.disabled||i.resizing||(i._addClass("ui-resizable-autohide"),i._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy(),this._addedHandles.remove();function t(t){y(t).removeData("resizable").removeData("ui-resizable").off(".resizable")}var e;return this.elementIsWrapper&&(t(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),t(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;case"aspectRatio":this._aspectRatio=!!e}},_setupHandles:function(){var t,e,i,s,n,o=this.options,h=this;if(this.handles=o.handles||(y(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=y(),this._addedHandles=y(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),i=this.handles.split(","),this.handles={},e=0;e<i.length;e++)s="ui-resizable-"+(t=String.prototype.trim.call(i[e])),n=y("<div>"),this._addClass(n,"ui-resizable-handle "+s),n.css({zIndex:o.zIndex}),this.handles[t]=".ui-resizable-"+t,this.element.children(this.handles[t]).length||(this.element.append(n),this._addedHandles=this._addedHandles.add(n));this._renderAxis=function(t){var e,i,s;for(e in t=t||this.element,this.handles)this.handles[e].constructor===String?this.handles[e]=this.element.children(this.handles[e]).first().show():(this.handles[e].jquery||this.handles[e].nodeType)&&(this.handles[e]=y(this.handles[e]),this._on(this.handles[e],{mousedown:h._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(i=y(this.handles[e],this.element),s=/sw|ne|nw|se|n|s/.test(e)?i.outerHeight():i.outerWidth(),i=["padding",/ne|nw|n/.test(e)?"Top":/se|sw|s/.test(e)?"Bottom":/^e$/.test(e)?"Right":"Left"].join(""),t.css(i,s),this._proportionallyResize()),this._handles=this._handles.add(this.handles[e])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){h.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),h.axis=n&&n[1]?n[1]:"se")}),o.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._addedHandles.remove()},_mouseCapture:function(t){var e,i,s=!1;for(e in this.handles)(i=y(this.handles[e])[0])!==t.target&&!y.contains(i,t.target)||(s=!0);return!this.options.disabled&&s},_mouseStart:function(t){var e,i,s=this.options,n=this.element;return this.resizing=!0,this._renderProxy(),e=this._num(this.helper.css("left")),i=this._num(this.helper.css("top")),s.containment&&(e+=y(s.containment).scrollLeft()||0,i+=y(s.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:e,top:i},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:n.width(),height:n.height()},this.originalSize=this._helper?{width:n.outerWidth(),height:n.outerHeight()}:{width:n.width(),height:n.height()},this.sizeDiff={width:n.outerWidth()-n.width(),height:n.outerHeight()-n.height()},this.originalPosition={left:e,top:i},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof s.aspectRatio?s.aspectRatio:this.originalSize.width/this.originalSize.height||1,s=y(".ui-resizable-"+this.axis).css("cursor"),y("body").css("cursor","auto"===s?this.axis+"-resize":s),this._addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var e=this.originalMousePosition,i=this.axis,s=t.pageX-e.left||0,e=t.pageY-e.top||0,i=this._change[i];return this._updatePrevProperties(),i&&(e=i.apply(this,[t,s,e]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(e=this._updateRatio(e,t)),e=this._respectSize(e,t),this._updateCache(e),this._propagate("resize",t),e=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),y.isEmptyObject(e)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges())),!1},_mouseStop:function(t){this.resizing=!1;var e,i,s,n=this.options,o=this;return this._helper&&(s=(e=(i=this._proportionallyResizeElements).length&&/textarea/i.test(i[0].nodeName))&&this._hasScroll(i[0],"left")?0:o.sizeDiff.height,i=e?0:o.sizeDiff.width,e={width:o.helper.width()-i,height:o.helper.height()-s},i=parseFloat(o.element.css("left"))+(o.position.left-o.originalPosition.left)||null,s=parseFloat(o.element.css("top"))+(o.position.top-o.originalPosition.top)||null,n.animate||this.element.css(y.extend(e,{top:s,left:i})),o.helper.height(o.size.height),o.helper.width(o.size.width),this._helper&&!n.animate&&this._proportionallyResize()),y("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s=this.options,n={minWidth:this._isNumber(s.minWidth)?s.minWidth:0,maxWidth:this._isNumber(s.maxWidth)?s.maxWidth:1/0,minHeight:this._isNumber(s.minHeight)?s.minHeight:0,maxHeight:this._isNumber(s.maxHeight)?s.maxHeight:1/0};(this._aspectRatio||t)&&(e=n.minHeight*this.aspectRatio,i=n.minWidth/this.aspectRatio,s=n.maxHeight*this.aspectRatio,t=n.maxWidth/this.aspectRatio,e>n.minWidth&&(n.minWidth=e),i>n.minHeight&&(n.minHeight=i),s<n.maxWidth&&(n.maxWidth=s),t<n.maxHeight&&(n.maxHeight=t)),this._vBoundaries=n},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,h=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,a=this.originalPosition.left+this.originalSize.width,r=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),i=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),h&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=a-e.minWidth),s&&l&&(t.left=a-e.maxWidth),h&&i&&(t.top=r-e.minHeight),n&&i&&(t.top=r-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];e<4;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;e<this._proportionallyResizeElements.length;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,e=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||y("<div></div>").css({overflow:"hidden"}),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++e.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize;return{left:this.originalPosition.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize;return{top:this.originalPosition.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},sw:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,e,i]))},ne:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},nw:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,e,i]))}},_propagate:function(t,e){y.ui.plugin.call(this,t,[e,this.ui()]),"resize"!==t&&this._trigger(t,e,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),y.ui.plugin.add("resizable","animate",{stop:function(e){var i=y(this).resizable("instance"),t=i.options,s=i._proportionallyResizeElements,n=s.length&&/textarea/i.test(s[0].nodeName),o=n&&i._hasScroll(s[0],"left")?0:i.sizeDiff.height,h=n?0:i.sizeDiff.width,n={width:i.size.width-h,height:i.size.height-o},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,o=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(y.extend(n,o&&h?{top:o,left:h}:{}),{duration:t.animateDuration,easing:t.animateEasing,step:function(){var t={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};s&&s.length&&y(s[0]).css({width:t.width,height:t.height}),i._updateCache(t),i._propagate("resize",e)}})}}),y.ui.plugin.add("resizable","containment",{start:function(){var i,s,n=y(this).resizable("instance"),t=n.options,e=n.element,o=t.containment,h=o instanceof y?o.get(0):/parent/.test(o)?e.parent().get(0):o;h&&(n.containerElement=y(h),/document/.test(o)||o===document?(n.containerOffset={left:0,top:0},n.containerPosition={left:0,top:0},n.parentData={element:y(document),left:0,top:0,width:y(document).width(),height:y(document).height()||document.body.parentNode.scrollHeight}):(i=y(h),s=[],y(["Top","Right","Left","Bottom"]).each(function(t,e){s[t]=n._num(i.css("padding"+e))}),n.containerOffset=i.offset(),n.containerPosition=i.position(),n.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},t=n.containerOffset,e=n.containerSize.height,o=n.containerSize.width,o=n._hasScroll(h,"left")?h.scrollWidth:o,e=n._hasScroll(h)?h.scrollHeight:e,n.parentData={element:h,left:t.left,top:t.top,width:o,height:e}))},resize:function(t){var e=y(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.position,o=e._aspectRatio||t.shiftKey,h={top:0,left:0},a=e.containerElement,t=!0;a[0]!==document&&/static/.test(a.css("position"))&&(h=s),n.left<(e._helper?s.left:0)&&(e.size.width=e.size.width+(e._helper?e.position.left-s.left:e.position.left-h.left),o&&(e.size.height=e.size.width/e.aspectRatio,t=!1),e.position.left=i.helper?s.left:0),n.top<(e._helper?s.top:0)&&(e.size.height=e.size.height+(e._helper?e.position.top-s.top:e.position.top),o&&(e.size.width=e.size.height*e.aspectRatio,t=!1),e.position.top=e._helper?s.top:0),i=e.containerElement.get(0)===e.element.parent().get(0),n=/relative|absolute/.test(e.containerElement.css("position")),i&&n?(e.offset.left=e.parentData.left+e.position.left,e.offset.top=e.parentData.top+e.position.top):(e.offset.left=e.element.offset().left,e.offset.top=e.element.offset().top),n=Math.abs(e.sizeDiff.width+(e._helper?e.offset.left-h.left:e.offset.left-s.left)),s=Math.abs(e.sizeDiff.height+(e._helper?e.offset.top-h.top:e.offset.top-s.top)),n+e.size.width>=e.parentData.width&&(e.size.width=e.parentData.width-n,o&&(e.size.height=e.size.width/e.aspectRatio,t=!1)),s+e.size.height>=e.parentData.height&&(e.size.height=e.parentData.height-s,o&&(e.size.width=e.size.height*e.aspectRatio,t=!1)),t||(e.position.left=e.prevPosition.left,e.position.top=e.prevPosition.top,e.size.width=e.prevSize.width,e.size.height=e.prevSize.height)},stop:function(){var t=y(this).resizable("instance"),e=t.options,i=t.containerOffset,s=t.containerPosition,n=t.containerElement,o=y(t.helper),h=o.offset(),a=o.outerWidth()-t.sizeDiff.width,o=o.outerHeight()-t.sizeDiff.height;t._helper&&!e.animate&&/relative/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o}),t._helper&&!e.animate&&/static/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o})}}),y.ui.plugin.add("resizable","alsoResize",{start:function(){var t=y(this).resizable("instance").options;y(t.alsoResize).each(function(){var t=y(this);t.data("ui-resizable-alsoresize",{width:parseFloat(t.width()),height:parseFloat(t.height()),left:parseFloat(t.css("left")),top:parseFloat(t.css("top"))})})},resize:function(t,i){var e=y(this).resizable("instance"),s=e.options,n=e.originalSize,o=e.originalPosition,h={height:e.size.height-n.height||0,width:e.size.width-n.width||0,top:e.position.top-o.top||0,left:e.position.left-o.left||0};y(s.alsoResize).each(function(){var t=y(this),s=y(this).data("ui-resizable-alsoresize"),n={},e=t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];y.each(e,function(t,e){var i=(s[e]||0)+(h[e]||0);i&&0<=i&&(n[e]=i||null)}),t.css(n)})},stop:function(){y(this).removeData("ui-resizable-alsoresize")}}),y.ui.plugin.add("resizable","ghost",{start:function(){var t=y(this).resizable("instance"),e=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}),t._addClass(t.ghost,"ui-resizable-ghost"),!1!==y.uiBackCompat&&"string"==typeof t.options.ghost&&t.ghost.addClass(this.options.ghost),t.ghost.appendTo(t.helper)},resize:function(){var t=y(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=y(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),y.ui.plugin.add("resizable","grid",{resize:function(){var t,e=y(this).resizable("instance"),i=e.options,s=e.size,n=e.originalSize,o=e.originalPosition,h=e.axis,a="number"==typeof i.grid?[i.grid,i.grid]:i.grid,r=a[0]||1,l=a[1]||1,u=Math.round((s.width-n.width)/r)*r,p=Math.round((s.height-n.height)/l)*l,d=n.width+u,c=n.height+p,f=i.maxWidth&&i.maxWidth<d,g=i.maxHeight&&i.maxHeight<c,m=i.minWidth&&i.minWidth>d,s=i.minHeight&&i.minHeight>c;i.grid=a,m&&(d+=r),s&&(c+=l),f&&(d-=r),g&&(c-=l),/^(se|s|e)$/.test(h)?(e.size.width=d,e.size.height=c):/^(ne)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.top=o.top-p):/^(sw)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.left=o.left-u):((c-l<=0||d-r<=0)&&(t=e._getPaddingPlusBorderDimensions(this)),0<c-l?(e.size.height=c,e.position.top=o.top-p):(c=l-t.height,e.size.height=c,e.position.top=o.top+n.height-c),0<d-r?(e.size.width=d,e.position.left=o.left-u):(d=r-t.width,e.size.width=d,e.position.left=o.left+n.width-d))}});y.ui.resizable});/**
+* Copyright jQuery Foundation and other contributors; Licensed MIT */!function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(y){"use strict";y.ui=y.ui||{};y.ui.version="1.13.2";var n,i=0,h=Array.prototype.hasOwnProperty,a=Array.prototype.slice;y.cleanData=(n=y.cleanData,function(t){for(var e,i,s=0;null!=(i=t[s]);s++)(e=y._data(i,"events"))&&e.remove&&y(i).triggerHandler("remove");n(t)}),y.widget=function(t,i,e){var s,n,o,h={},a=t.split(".")[0],r=a+"-"+(t=t.split(".")[1]);return e||(e=i,i=y.Widget),Array.isArray(e)&&(e=y.extend.apply(null,[{}].concat(e))),y.expr.pseudos[r.toLowerCase()]=function(t){return!!y.data(t,r)},y[a]=y[a]||{},s=y[a][t],n=y[a][t]=function(t,e){if(!this||!this._createWidget)return new n(t,e);arguments.length&&this._createWidget(t,e)},y.extend(n,s,{version:e.version,_proto:y.extend({},e),_childConstructors:[]}),(o=new i).options=y.widget.extend({},o.options),y.each(e,function(e,s){function n(){return i.prototype[e].apply(this,arguments)}
+function o(t){return i.prototype[e].apply(this,t)}h[e]="function"==typeof s?function(){var t,e=this._super,i=this._superApply;return this._super=n,this._superApply=o,t=s.apply(this,arguments),this._super=e,this._superApply=i,t}:s}),n.prototype=y.widget.extend(o,{widgetEventPrefix:s&&o.widgetEventPrefix||t},h,{constructor:n,namespace:a,widgetName:t,widgetFullName:r}),s?(y.each(s._childConstructors,function(t,e){var i=e.prototype;y.widget(i.namespace+"."+i.widgetName,n,e._proto)}),delete s._childConstructors):i._childConstructors.push(n),y.widget.bridge(t,n),n},y.widget.extend=function(t){for(var e,i,s=a.call(arguments,1),n=0,o=s.length;n<o;n++)for(e in s[n])i=s[n][e],h.call(s[n],e)&&void 0!==i&&(y.isPlainObject(i)?t[e]=y.isPlainObject(t[e])?y.widget.extend({},t[e],i):y.widget.extend({},i):t[e]=i);return t},y.widget.bridge=function(o,e){var h=e.prototype.widgetFullName||o;y.fn[o]=function(i){var t="string"==typeof i,s=a.call(arguments,1),n=this;return t?this.length||"instance"!==i?this.each(function(){var t,
+e=y.data(this,h);return"instance"===i?(n=e,!1):e?"function"!=typeof e[i]||"_"===i.charAt(0)?y.error("no such method '"+i+"' for "+o+" widget instance"):(t=e[i].apply(e,s))!==e&&void 0!==t?(n=t&&t.jquery?n.pushStack(t.get()):t,!1):void 0:y.error("cannot call methods on "+o+" prior to initialization; attempted to call method '"+i+"'")}):n=void 0:(s.length&&(i=y.widget.extend.apply(null,[i].concat(s))),this.each(function(){var t=y.data(this,h);t?(t.option(i||{}),t._init&&t._init()):y.data(this,h,new e(i,this))})),n}},y.Widget=function(){},y.Widget._childConstructors=[],y.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=y(e||this.defaultElement||this)[0],this.element=y(e),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=y(),this.hoverable=y(),this.focusable=y(),this.classesElementLookup={},e!==this&&(y.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t
+){t.target===e&&this.destroy()}}),this.document=y(e.style?e.ownerDocument:e.document||e),this.window=y(this.document[0].defaultView||this.document[0].parentWindow)),this.options=y.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:y.noop,_create:y.noop,_init:y.noop,destroy:function(){var i=this;this._destroy(),y.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:y.noop,widget:function(){return this.element},option:function(t,e){var i,s,n,o=t;if(0===arguments.length)return y.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(i=t.split(".")).shift(),i.length){for(s=o[t
+]=y.widget.extend({},this.options[t]),n=0;n<i.length-1;n++)s[i[n]]=s[i[n]]||{},s=s[i[n]];if(t=i.pop(),1===arguments.length)return void 0===s[t]?null:s[t];s[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=e}return this._setOptions(o),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,i,s;for(e in t)s=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&s&&s.length&&(i=y(s.get()),this._removeClass(s,e),i.addClass(this._classes({element:i,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},
+disable:function(){return this._setOptions({disabled:!0})},_classes:function(n){var o=[],h=this;function t(t,e){for(var i,s=0;s<t.length;s++)i=h.classesElementLookup[t[s]]||y(),i=n.add?(function(){var i=[];n.element.each(function(t,e){y.map(h.classesElementLookup,function(t){return t}).some(function(t){return t.is(e)})||i.push(e)}),h._on(y(i),{remove:"_untrackClassesElement"})}(),y(y.uniqueSort(i.get().concat(n.element.get())))):y(i.not(n.element).get()),h.classesElementLookup[t[s]]=i,o.push(t[s]),e&&n.classes[t[s]]&&o.push(n.classes[t[s]])}return(n=y.extend({element:this.element,classes:this.options.classes||{}},n)).keys&&t(n.keys.match(/\S+/g)||[],!0),n.extra&&t(n.extra.match(/\S+/g)||[]),o.join(" ")},_untrackClassesElement:function(i){var s=this;y.each(s.classesElementLookup,function(t,e){-1!==y.inArray(i.target,e)&&(s.classesElementLookup[t]=y(e.not(i.target).get()))}),this._off(y(i.target))},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){
+return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){var n="string"==typeof t||null===t,i={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s="boolean"==typeof s?s:i};return i.element.toggleClass(this._classes(i),s),this},_on:function(n,o,t){var h,a=this;"boolean"!=typeof n&&(t=o,o=n,n=!1),t?(o=h=y(o),this.bindings=this.bindings.add(o)):(t=o,o=this.element,h=this.widget()),y.each(t,function(t,e){function i(){if(n||!0!==a.options.disabled&&!y(this).hasClass("ui-state-disabled"))return("string"==typeof e?a[e]:e).apply(a,arguments)}"string"!=typeof e&&(i.guid=e.guid=e.guid||i.guid||y.guid++);var s=t.match(/^([\w:-]*)\s*(.*)$/),t=s[1]+a.eventNamespace,s=s[2];s?h.on(t,s,i):o.on(t,i)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e),this.bindings=y(this.bindings.not(t).get()),this.focusable=y(this.focusable.not(t).get()),this.hoverable=y(this.hoverable.not(t).get())},_delay:function(t,e){var i=this;return setTimeout(function(){return(
+"string"==typeof t?i[t]:t).apply(i,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(y(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(y(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,i){var s,n,o=this.options[t];if(i=i||{},(e=y.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],n=e.originalEvent)for(s in n)s in e||(e[s]=n[s]);return this.element.trigger(e,i),!("function"==typeof o&&!1===o.apply(this.element[0],[e].concat(i))||e.isDefaultPrevented())}},y.each({show:"fadeIn",hide:"fadeOut"},function(o,h){y.Widget.prototype["_"+o]=function(e,t,i){var s,n=(t="string"==typeof t?{effect:t}:t
+)?!0!==t&&"number"!=typeof t&&t.effect||h:o;"number"==typeof(t=t||{})?t={duration:t}:!0===t&&(t={}),s=!y.isEmptyObject(t),t.complete=i,t.delay&&e.delay(t.delay),s&&y.effects&&y.effects.effect[n]?e[o](t):n!==o&&e[n]?e[n](t.duration,t.easing,i):e.queue(function(t){y(this)[o](),i&&i.call(e[0]),t()})}});var s,x,D,o,r,l,u,p,W;y.widget;function E(t,e,i){return[parseFloat(t[0])*(p.test(t[0])?e/100:1),parseFloat(t[1])*(p.test(t[1])?i/100:1)]}function H(t,e){return parseInt(y.css(t,e),10)||0}function S(t){return null!=t&&t===t.window}x=Math.max,D=Math.abs,o=/left|center|right/,r=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,u=/^\w+/,p=/%$/,W=y.fn.position,y.position={scrollbarWidth:function(){if(void 0!==s)return s;var t,e=y("<div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'><div style='height:300px;width:auto;'></div></div>"),i=e.children()[0];return y("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),s=t-i},
+getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&&t.height<t.element[0].scrollHeight?y.position.scrollbarWidth():0,height:e?y.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=y(t||window),i=S(e[0]),s=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:i,isDocument:s,offset:!i&&!s?y(t).offset():{left:0,top:0},scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},y.fn.position=function(p){if(!p||!p.of)return W.apply(this,arguments);var d,c,f,g,m,t,_="string"==typeof(p=y.extend({},p)).of?y(document).find(p.of):y(p.of),w=y.position.getWithinInfo(p.within),v=y.position.getScrollInfo(w),b=(p.collision||"flip").split(" "),z={},e=9===(t=(e=_)[0]).nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:S(t)?{width:e.width(),height:e.height(),offset:{
+top:e.scrollTop(),left:e.scrollLeft()}}:t.preventDefault?{width:0,height:0,offset:{top:t.pageY,left:t.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()};return _[0].preventDefault&&(p.at="left top"),c=e.width,f=e.height,m=y.extend({},g=e.offset),y.each(["my","at"],function(){var t,e,i=(p[this]||"").split(" ");(i=1===i.length?o.test(i[0])?i.concat(["center"]):r.test(i[0])?["center"].concat(i):["center","center"]:i)[0]=o.test(i[0])?i[0]:"center",i[1]=r.test(i[1])?i[1]:"center",t=l.exec(i[0]),e=l.exec(i[1]),z[this]=[t?t[0]:0,e?e[0]:0],p[this]=[u.exec(i[0])[0],u.exec(i[1])[0]]}),1===b.length&&(b[1]=b[0]),"right"===p.at[0]?m.left+=c:"center"===p.at[0]&&(m.left+=c/2),"bottom"===p.at[1]?m.top+=f:"center"===p.at[1]&&(m.top+=f/2),d=E(z.at,c,f),m.left+=d[0],m.top+=d[1],this.each(function(){var i,t,h=y(this),a=h.outerWidth(),r=h.outerHeight(),e=H(this,"marginLeft"),s=H(this,"marginTop"),n=a+e+H(this,"marginRight")+v.width,o=r+s+H(this,"marginBottom")+v.height,l=y.extend({},m),u=E(z.my,h.outerWidth()
+,h.outerHeight());"right"===p.my[0]?l.left-=a:"center"===p.my[0]&&(l.left-=a/2),"bottom"===p.my[1]?l.top-=r:"center"===p.my[1]&&(l.top-=r/2),l.left+=u[0],l.top+=u[1],i={marginLeft:e,marginTop:s},y.each(["left","top"],function(t,e){y.ui.position[b[t]]&&y.ui.position[b[t]][e](l,{targetWidth:c,targetHeight:f,elemWidth:a,elemHeight:r,collisionPosition:i,collisionWidth:n,collisionHeight:o,offset:[d[0]+u[0],d[1]+u[1]],my:p.my,at:p.at,within:w,elem:h})}),p.using&&(t=function(t){var e=g.left-l.left,i=e+c-a,s=g.top-l.top,n=s+f-r,o={target:{element:_,left:g.left,top:g.top,width:c,height:f},element:{element:h,left:l.left,top:l.top,width:a,height:r},horizontal:i<0?"left":0<e?"right":"center",vertical:n<0?"top":0<s?"bottom":"middle"};c<a&&D(e+i)<c&&(o.horizontal="center"),f<r&&D(s+n)<f&&(o.vertical="middle"),x(D(e),D(i))>x(D(s),D(n))?o.important="horizontal":o.important="vertical",p.using.call(this,t,o)}),h.offset(y.extend(l,{using:t}))})},y.ui.position={fit:{left:function(t,e){var i=e.within,
+s=i.isWindow?i.scrollLeft:i.offset.left,n=i.width,o=t.left-e.collisionPosition.marginLeft,h=s-o,a=o+e.collisionWidth-n-s;e.collisionWidth>n?0<h&&a<=0?(i=t.left+h+e.collisionWidth-n-s,t.left+=h-i):t.left=!(0<a&&h<=0)&&a<h?s+n-e.collisionWidth:s:0<h?t.left+=h:0<a?t.left-=a:t.left=x(t.left-o,t.left)},top:function(t,e){var i=e.within,s=i.isWindow?i.scrollTop:i.offset.top,n=e.within.height,o=t.top-e.collisionPosition.marginTop,h=s-o,a=o+e.collisionHeight-n-s;e.collisionHeight>n?0<h&&a<=0?(i=t.top+h+e.collisionHeight-n-s,t.top+=h-i):t.top=!(0<a&&h<=0)&&a<h?s+n-e.collisionHeight:s:0<h?t.top+=h:0<a?t.top-=a:t.top=x(t.top-o,t.top)}},flip:{left:function(t,e){var i=e.within,s=i.offset.left+i.scrollLeft,n=i.width,o=i.isWindow?i.scrollLeft:i.offset.left,h=t.left-e.collisionPosition.marginLeft,a=h-o,r=h+e.collisionWidth-n-o,l="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,i="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,h=-2*e.offset[0];a<0?((s=t.left+l+i+h+e.collisionWidth-n-s)<0||s<D(a)
+)&&(t.left+=l+i+h):0<r&&(0<(o=t.left-e.collisionPosition.marginLeft+l+i+h-o)||D(o)<r)&&(t.left+=l+i+h)},top:function(t,e){var i=e.within,s=i.offset.top+i.scrollTop,n=i.height,o=i.isWindow?i.scrollTop:i.offset.top,h=t.top-e.collisionPosition.marginTop,a=h-o,r=h+e.collisionHeight-n-o,l="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,i="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,h=-2*e.offset[1];a<0?((s=t.top+l+i+h+e.collisionHeight-n-s)<0||s<D(a))&&(t.top+=l+i+h):0<r&&(0<(o=t.top-e.collisionPosition.marginTop+l+i+h-o)||D(o)<r)&&(t.top+=l+i+h)}},flipfit:{left:function(){y.ui.position.flip.left.apply(this,arguments),y.ui.position.fit.left.apply(this,arguments)},top:function(){y.ui.position.flip.top.apply(this,arguments),y.ui.position.fit.top.apply(this,arguments)}}};var t;y.ui.position,y.extend(y.expr.pseudos,{data:y.expr.createPseudo?y.expr.createPseudo(function(e){return function(t){return!!y.data(t,e)}}):function(t,e,i){return!!y.data(t,i[3])}}),y.fn.extend({
+disableSelection:(t="onselectstart"in document.createElement("div")?"selectstart":"mousedown",function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}),enableSelection:function(){return this.off(".ui-disableSelection")}});y.ui.focusable=function(t,e){var i,s,n,o,h=t.nodeName.toLowerCase();return"area"===h?(s=(i=t.parentNode).name,!(!t.href||!s||"map"!==i.nodeName.toLowerCase())&&(0<(s=y("img[usemap='#"+s+"']")).length&&s.is(":visible"))):(/^(input|select|textarea|button|object)$/.test(h)?(n=!t.disabled)&&(o=y(t).closest("fieldset")[0])&&(n=!o.disabled):n="a"===h&&t.href||e,n&&y(t).is(":visible")&&function(t){var e=t.css("visibility");for(;"inherit"===e;)t=t.parent(),e=t.css("visibility");return"visible"===e}(y(t)))},y.extend(y.expr.pseudos,{focusable:function(t){return y.ui.focusable(t,null!=y.attr(t,"tabindex"))}});var e,d;y.ui.focusable,y.fn._form=function(){return"string"==typeof this[0].form?this.closest("form"):y(this[0].form)},y.ui.formResetMixin={_formResetHandler:function(
+){var e=y(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");y.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element._form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(y.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}};y.expr.pseudos||(y.expr.pseudos=y.expr[":"]),y.uniqueSort||(y.uniqueSort=y.unique),y.escapeSelector||(e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,d=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},y.escapeSelector=function(t){return(t+"").replace(e,d)}),y.fn.even&&y.fn.odd||y.fn.extend({even:function(){
+return this.filter(function(t){return t%2==0})},odd:function(){return this.filter(function(t){return t%2==1})}});y.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},y.fn.labels=function(){var t,e,i;return this.length?this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(i=(i=this.eq(0).parents().last()).add((i.length?i:this).siblings()),t="label[for='"+y.escapeSelector(t)+"']",e=e.add(i.find(t).addBack(t))),this.pushStack(e)):this.pushStack([])},y.fn.scrollParent=function(t){var e=this.css("position"),i="absolute"===e,s=t?/(auto|scroll|hidden)/:/(auto|scroll)/,t=this.parents().filter(function(){var t=y(this);return(!i||"static"!==t.css("position"))&&s.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==e&&t.length?t:y(this[0].ownerDocument||document)},y.extend(y.expr.pseudos,{tabbable:function(t){
+var e=y.attr(t,"tabindex"),i=null!=e;return(!i||0<=e)&&y.ui.focusable(t,i)}}),y.fn.extend({uniqueId:(c=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++c)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&y(this).removeAttr("id")})}}),y.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var c,f=!1;y(document).on("mouseup",function(){f=!1});y.widget("ui.mouse",{version:"1.13.2",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(t){if(!0===y.data(t.target,e.widgetName+".preventClickEvent"))return y.removeData(t.target,e.widgetName+".preventClickEvent"),t.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off(
+"mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!f){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var e=this,i=1===t.which,s=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&y(t.target).closest(this.options.cancel).length;return i&&!s&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===y.data(t.target,this.widgetName+".preventClickEvent")&&y.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return e._mouseMove(t)},this._mouseUpDelegate=function(t){return e._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),f=!0)):!0}},
+_mouseMove:function(t){if(this._mouseMoved){if(y.ui.ie&&(!document.documentMode||document.documentMode<9)&&!t.button)return this._mouseUp(t);if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&y.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),
+delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,f=!1,t.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),y.ui.plugin={add:function(t,e,i){var s,n=y.ui[t].prototype;for(s in i)n.plugins[s]=n.plugins[s]||[],n.plugins[s].push([e,i[s]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;n<o.length;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}};y.widget("ui.resizable",y.ui.mouse,{version:"1.13.2",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,
+handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(t,e){if("hidden"===y(t).css("overflow"))return!1;var i=e&&"left"===e?"scrollLeft":"scrollTop",e=!1;if(0<t[i])return!0;try{t[i]=1,e=0<t[i],t[i]=0}catch(t){}return e},_create:function(){var t,e=this.options,i=this;this._addClass("ui-resizable"),y.extend(this,{_aspectRatio:!!e.aspectRatio,aspectRatio:e.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:e.helper||e.ghost||e.animate?e.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(y("<div class='ui-wrapper'></div>").css({overflow:"hidden",position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),
+this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,t={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(t),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(t),this._proportionallyResize()),this._setupHandles(),e.autoHide&&y(this.element).on("mouseenter",function(){e.disabled||(i._removeClass("ui-resizable-autohide"),i._handles.show())}).on("mouseleave",function(){e.disabled||i.resizing||(i._addClass("ui-resizable-autohide"),i._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy(),this._addedHandles.remove();function t(t){y(t
+).removeData("resizable").removeData("ui-resizable").off(".resizable")}var e;return this.elementIsWrapper&&(t(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),t(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;case"aspectRatio":this._aspectRatio=!!e}},_setupHandles:function(){var t,e,i,s,n,o=this.options,h=this;if(this.handles=o.handles||(y(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=y(),this._addedHandles=y(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),i=this.handles.split(
+","),this.handles={},e=0;e<i.length;e++)s="ui-resizable-"+(t=String.prototype.trim.call(i[e])),n=y("<div>"),this._addClass(n,"ui-resizable-handle "+s),n.css({zIndex:o.zIndex}),this.handles[t]=".ui-resizable-"+t,this.element.children(this.handles[t]).length||(this.element.append(n),this._addedHandles=this._addedHandles.add(n));this._renderAxis=function(t){var e,i,s;for(e in t=t||this.element,this.handles)this.handles[e].constructor===String?this.handles[e]=this.element.children(this.handles[e]).first().show():(this.handles[e].jquery||this.handles[e].nodeType)&&(this.handles[e]=y(this.handles[e]),this._on(this.handles[e],{mousedown:h._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(i=y(this.handles[e],this.element),s=/sw|ne|nw|se|n|s/.test(e)?i.outerHeight():i.outerWidth(),i=["padding",/ne|nw|n/.test(e)?"Top":/se|sw|s/.test(e)?"Bottom":/^e$/.test(e)?"Right":"Left"].join(""),t.css(i,s),this._proportionallyResize()),this._handles=this._handles.add(
+this.handles[e])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){h.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),h.axis=n&&n[1]?n[1]:"se")}),o.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._addedHandles.remove()},_mouseCapture:function(t){var e,i,s=!1;for(e in this.handles)(i=y(this.handles[e])[0])!==t.target&&!y.contains(i,t.target)||(s=!0);return!this.options.disabled&&s},_mouseStart:function(t){var e,i,s=this.options,n=this.element;return this.resizing=!0,this._renderProxy(),e=this._num(this.helper.css("left")),i=this._num(this.helper.css("top")),s.containment&&(e+=y(s.containment).scrollLeft()||0,i+=y(s.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:e,top:i},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{
+width:n.width(),height:n.height()},this.originalSize=this._helper?{width:n.outerWidth(),height:n.outerHeight()}:{width:n.width(),height:n.height()},this.sizeDiff={width:n.outerWidth()-n.width(),height:n.outerHeight()-n.height()},this.originalPosition={left:e,top:i},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof s.aspectRatio?s.aspectRatio:this.originalSize.width/this.originalSize.height||1,s=y(".ui-resizable-"+this.axis).css("cursor"),y("body").css("cursor","auto"===s?this.axis+"-resize":s),this._addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var e=this.originalMousePosition,i=this.axis,s=t.pageX-e.left||0,e=t.pageY-e.top||0,i=this._change[i];return this._updatePrevProperties(),i&&(e=i.apply(this,[t,s,e]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(e=this._updateRatio(e,t)),e=this._respectSize(e,t),this._updateCache(e),this._propagate("resize",t),e=this._applyChanges(),
+!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),y.isEmptyObject(e)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges())),!1},_mouseStop:function(t){this.resizing=!1;var e,i,s,n=this.options,o=this;return this._helper&&(s=(e=(i=this._proportionallyResizeElements).length&&/textarea/i.test(i[0].nodeName))&&this._hasScroll(i[0],"left")?0:o.sizeDiff.height,i=e?0:o.sizeDiff.width,e={width:o.helper.width()-i,height:o.helper.height()-s},i=parseFloat(o.element.css("left"))+(o.position.left-o.originalPosition.left)||null,s=parseFloat(o.element.css("top"))+(o.position.top-o.originalPosition.top)||null,n.animate||this.element.css(y.extend(e,{top:s,left:i})),o.helper.height(o.size.height),o.helper.width(o.size.width),this._helper&&!n.animate&&this._proportionallyResize()),y("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){
+this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s=this.options,n={minWidth:this._isNumber(s.minWidth)?s.minWidth:0,maxWidth:this._isNumber(s.maxWidth)?s.maxWidth:1/0,minHeight:this._isNumber(s.minHeight)?s.minHeight:0,maxHeight:this._isNumber(s.maxHeight)?s.maxHeight:1/0};(this._aspectRatio||t)&&(e=n.minHeight*this.aspectRatio,i=n.minWidth/this.aspectRatio,s=n.maxHeight*this.aspectRatio,t=n.maxWidth/this.aspectRatio,e>n.minWidth&&(n.minWidth=e),i>n.minHeight&&(n.minHeight=i),s<n.maxWidth&&(n.maxWidth=s),t<n.maxHeight&&(n.maxHeight=t)
+),this._vBoundaries=n},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,h=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,a=this.originalPosition.left+this.originalSize.width,r=this.originalPosition.top+this.originalSize.height
+,l=/sw|nw|w/.test(i),i=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),h&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=a-e.minWidth),s&&l&&(t.left=a-e.maxWidth),h&&i&&(t.top=r-e.minHeight),n&&i&&(t.top=r-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];e<4;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;e<this._proportionallyResizeElements.length;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({
+height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,e=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||y("<div></div>").css({overflow:"hidden"}),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++e.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize;return{left:this.originalPosition.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize;return{top:this.originalPosition.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},sw:function(t,e,
+i){return y.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,e,i]))},ne:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},nw:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,e,i]))}},_propagate:function(t,e){y.ui.plugin.call(this,t,[e,this.ui()]),"resize"!==t&&this._trigger(t,e,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),y.ui.plugin.add("resizable","animate",{stop:function(e){var i=y(this).resizable("instance"),t=i.options,s=i._proportionallyResizeElements,n=s.length&&/textarea/i.test(s[0].nodeName),o=n&&i._hasScroll(s[0],"left")?0:i.sizeDiff.height,h=n?0:i.sizeDiff.width,n={width:i.size.width-h,height:i.size.height-o},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left
+)||null,o=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(y.extend(n,o&&h?{top:o,left:h}:{}),{duration:t.animateDuration,easing:t.animateEasing,step:function(){var t={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};s&&s.length&&y(s[0]).css({width:t.width,height:t.height}),i._updateCache(t),i._propagate("resize",e)}})}}),y.ui.plugin.add("resizable","containment",{start:function(){var i,s,n=y(this).resizable("instance"),t=n.options,e=n.element,o=t.containment,h=o instanceof y?o.get(0):/parent/.test(o)?e.parent().get(0):o;h&&(n.containerElement=y(h),/document/.test(o)||o===document?(n.containerOffset={left:0,top:0},n.containerPosition={left:0,top:0},n.parentData={element:y(document),left:0,top:0,width:y(document).width(),height:y(document).height()||document.body.parentNode.scrollHeight}):(i=y(h),s=[],y(["Top","Right","Left","Bottom"]).each(function(t,e
+){s[t]=n._num(i.css("padding"+e))}),n.containerOffset=i.offset(),n.containerPosition=i.position(),n.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},t=n.containerOffset,e=n.containerSize.height,o=n.containerSize.width,o=n._hasScroll(h,"left")?h.scrollWidth:o,e=n._hasScroll(h)?h.scrollHeight:e,n.parentData={element:h,left:t.left,top:t.top,width:o,height:e}))},resize:function(t){var e=y(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.position,o=e._aspectRatio||t.shiftKey,h={top:0,left:0},a=e.containerElement,t=!0;a[0]!==document&&/static/.test(a.css("position"))&&(h=s),n.left<(e._helper?s.left:0)&&(e.size.width=e.size.width+(e._helper?e.position.left-s.left:e.position.left-h.left),o&&(e.size.height=e.size.width/e.aspectRatio,t=!1),e.position.left=i.helper?s.left:0),n.top<(e._helper?s.top:0)&&(e.size.height=e.size.height+(e._helper?e.position.top-s.top:e.position.top),o&&(e.size.width=e.size.height*e.aspectRatio,t=!1),e.position.top=e._helper?s.top:0),
+i=e.containerElement.get(0)===e.element.parent().get(0),n=/relative|absolute/.test(e.containerElement.css("position")),i&&n?(e.offset.left=e.parentData.left+e.position.left,e.offset.top=e.parentData.top+e.position.top):(e.offset.left=e.element.offset().left,e.offset.top=e.element.offset().top),n=Math.abs(e.sizeDiff.width+(e._helper?e.offset.left-h.left:e.offset.left-s.left)),s=Math.abs(e.sizeDiff.height+(e._helper?e.offset.top-h.top:e.offset.top-s.top)),n+e.size.width>=e.parentData.width&&(e.size.width=e.parentData.width-n,o&&(e.size.height=e.size.width/e.aspectRatio,t=!1)),s+e.size.height>=e.parentData.height&&(e.size.height=e.parentData.height-s,o&&(e.size.width=e.size.height*e.aspectRatio,t=!1)),t||(e.position.left=e.prevPosition.left,e.position.top=e.prevPosition.top,e.size.width=e.prevSize.width,e.size.height=e.prevSize.height)},stop:function(){var t=y(this).resizable("instance"),e=t.options,i=t.containerOffset,s=t.containerPosition,n=t.containerElement,o=y(t.helper),h=o.offset(),a=o.outerWidth(
+)-t.sizeDiff.width,o=o.outerHeight()-t.sizeDiff.height;t._helper&&!e.animate&&/relative/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o}),t._helper&&!e.animate&&/static/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o})}}),y.ui.plugin.add("resizable","alsoResize",{start:function(){var t=y(this).resizable("instance").options;y(t.alsoResize).each(function(){var t=y(this);t.data("ui-resizable-alsoresize",{width:parseFloat(t.width()),height:parseFloat(t.height()),left:parseFloat(t.css("left")),top:parseFloat(t.css("top"))})})},resize:function(t,i){var e=y(this).resizable("instance"),s=e.options,n=e.originalSize,o=e.originalPosition,h={height:e.size.height-n.height||0,width:e.size.width-n.width||0,top:e.position.top-o.top||0,left:e.position.left-o.left||0};y(s.alsoResize).each(function(){var t=y(this),s=y(this).data("ui-resizable-alsoresize"),n={},e=t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];y.each(e,
+function(t,e){var i=(s[e]||0)+(h[e]||0);i&&0<=i&&(n[e]=i||null)}),t.css(n)})},stop:function(){y(this).removeData("ui-resizable-alsoresize")}}),y.ui.plugin.add("resizable","ghost",{start:function(){var t=y(this).resizable("instance"),e=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}),t._addClass(t.ghost,"ui-resizable-ghost"),!1!==y.uiBackCompat&&"string"==typeof t.options.ghost&&t.ghost.addClass(this.options.ghost),t.ghost.appendTo(t.helper)},resize:function(){var t=y(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=y(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),y.ui.plugin.add("resizable","grid",{resize:function(){var t,e=y(this).resizable("instance"),i=e.options,s=e.size,n=e.originalSize,o=e.originalPosition,h=e.axis,a="number"==typeof i.grid?[i.grid,i.grid]:i.grid,r=a[0
+]||1,l=a[1]||1,u=Math.round((s.width-n.width)/r)*r,p=Math.round((s.height-n.height)/l)*l,d=n.width+u,c=n.height+p,f=i.maxWidth&&i.maxWidth<d,g=i.maxHeight&&i.maxHeight<c,m=i.minWidth&&i.minWidth>d,s=i.minHeight&&i.minHeight>c;i.grid=a,m&&(d+=r),s&&(c+=l),f&&(d-=r),g&&(c-=l),/^(se|s|e)$/.test(h)?(e.size.width=d,e.size.height=c):/^(ne)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.top=o.top-p):/^(sw)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.left=o.left-u):((c-l<=0||d-r<=0)&&(t=e._getPaddingPlusBorderDimensions(this)),0<c-l?(e.size.height=c,e.position.top=o.top-p):(c=l-t.height,e.size.height=c,e.position.top=o.top+n.height-c),0<d-r?(e.size.width=d,e.position.left=o.left-u):(d=r-t.width,e.size.width=d,e.position.left=o.left+n.width-d))}});y.ui.resizable});
+/**
* Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler
* Licensed under MIT
* @author Ariel Flesler
* @version 2.1.2
- */
-;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case "number":case "string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e= h(e);break}e=l?$(e):$(e,q);case "object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&& "%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()}, set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
+ */(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"===typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9e9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case"number":case"string":if(
+/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e=h(e);break}e=l?$(e):$(e,q);case"object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&&"%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};
+$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()},set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
/*!
PowerTip v1.3.1 (2018-04-15)
https://stevenbenner.github.io/jquery-powertip/
Released under MIT license.
https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
*/
-(function(root,factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"))}else{factory(root.jQuery)}})(this,function($){var $document=$(document),$window=$(window),$body=$("body");var DATA_DISPLAYCONTROLLER="displayController",DATA_HASACTIVEHOVER="hasActiveHover",DATA_FORCEDOPEN="forcedOpen",DATA_HASMOUSEMOVE="hasMouseMove",DATA_MOUSEONTOTIP="mouseOnToPopup",DATA_ORIGINALTITLE="originalTitle",DATA_POWERTIP="powertip",DATA_POWERTIPJQ="powertipjq",DATA_POWERTIPTARGET="powertiptarget",EVENT_NAMESPACE=".powertip",RAD2DEG=180/Math.PI,MOUSE_EVENTS=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","mouseenter","mouseleave","contextmenu"];var session={tooltips:null,isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,closeDelayTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var Collision={none:0,top:1,bottom:2,left:4,right:8};$.fn.powerTip=function(opts,arg){var targetElements=this,options,tipController;if(!targetElements.length){return targetElements}if($.type(opts)==="string"&&$.powerTip[opts]){return $.powerTip[opts].call(targetElements,targetElements,arg)}options=$.extend({},$.fn.powerTip.defaults,opts);tipController=new TooltipController(options);initTracking();targetElements.each(function elementSetup(){var $this=$(this),dataPowertip=$this.data(DATA_POWERTIP),dataElem=$this.data(DATA_POWERTIPJQ),dataTarget=$this.data(DATA_POWERTIPTARGET),title=$this.attr("title");if(!dataPowertip&&!dataTarget&&!dataElem&&title){$this.data(DATA_POWERTIP,title);$this.data(DATA_ORIGINALTITLE,title);$this.removeAttr("title")}$this.data(DATA_DISPLAYCONTROLLER,new DisplayController($this,options,tipController))});if(!options.manual){$.each(options.openEvents,function(idx,evt){if($.inArray(evt,options.closeEvents)>-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference<options.intentSensitivity){cancelClose();closeAnyDelayed();tipController.showTip(element)}else{session.previousX=session.currentX;session.previousY=session.currentY;openTooltip()}}function cancelTimer(stopClose){hoverTimer=clearTimeout(hoverTimer);if(session.closeDelayTimeout&&myCloseDelay===session.closeDelayTimeout||stopClose){cancelClose()}}function cancelClose(){session.closeDelayTimeout=clearTimeout(session.closeDelayTimeout);session.delayInProgress=false}function closeAnyDelayed(){if(session.delayInProgress&&session.activeHover&&!session.activeHover.is(element)){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide(true)}}function repositionTooltip(){tipController.resetPosition(element)}this.show=openTooltip;this.hide=closeTooltip;this.cancel=cancelTimer;this.resetPosition=repositionTooltip}function PlacementCalculator(){function computePlacementCoords(element,placement,tipWidth,tipHeight,offset){var placementBase=placement.split("-")[0],coords=new CSSCoordinates,position;if(isSvgElement(element)){position=getSvgPlacement(element,placementBase)}else{position=getHtmlPlacement(element,placementBase)}switch(placement){case"n":coords.set("left",position.left-tipWidth/2);coords.set("bottom",session.windowHeight-position.top+offset);break;case"e":coords.set("left",position.left+offset);coords.set("top",position.top-tipHeight/2);break;case"s":coords.set("left",position.left-tipWidth/2);coords.set("top",position.top+offset);break;case"w":coords.set("top",position.top-tipHeight/2);coords.set("right",session.windowWidth-position.left+offset);break;case"nw":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"nw-alt":coords.set("left",position.left);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne":coords.set("left",position.left-20);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne-alt":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left);break;case"sw":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"sw-alt":coords.set("left",position.left);coords.set("top",position.top+offset);break;case"se":coords.set("left",position.left-20);coords.set("top",position.top+offset);break;case"se-alt":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left);break}return coords}function getHtmlPlacement(element,placement){var objectOffset=element.offset(),objectWidth=element.outerWidth(),objectHeight=element.outerHeight(),left,top;switch(placement){case"n":left=objectOffset.left+objectWidth/2;top=objectOffset.top;break;case"e":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight/2;break;case"s":left=objectOffset.left+objectWidth/2;top=objectOffset.top+objectHeight;break;case"w":left=objectOffset.left;top=objectOffset.top+objectHeight/2;break;case"nw":left=objectOffset.left;top=objectOffset.top;break;case"ne":left=objectOffset.left+objectWidth;top=objectOffset.top;break;case"sw":left=objectOffset.left;top=objectOffset.top+objectHeight;break;case"se":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight;break}return{top:top,left:left}}function getSvgPlacement(element,placement){var svgElement=element.closest("svg")[0],domElement=element[0],point=svgElement.createSVGPoint(),boundingBox=domElement.getBBox(),matrix=domElement.getScreenCTM(),halfWidth=boundingBox.width/2,halfHeight=boundingBox.height/2,placements=[],placementKeys=["nw","n","ne","e","se","s","sw","w"],coords,rotation,steps,x;function pushPlacement(){placements.push(point.matrixTransform(matrix))}point.x=boundingBox.x;point.y=boundingBox.y;pushPlacement();point.x+=halfWidth;pushPlacement();point.x+=halfWidth;pushPlacement();point.y+=halfHeight;pushPlacement();point.y+=halfHeight;pushPlacement();point.x-=halfWidth;pushPlacement();point.x-=halfWidth;pushPlacement();point.y-=halfHeight;pushPlacement();if(placements[0].y!==placements[1].y||placements[0].x!==placements[7].x){rotation=Math.atan2(matrix.b,matrix.a)*RAD2DEG;steps=Math.ceil((rotation%360-22.5)/45);if(steps<1){steps+=8}while(steps--){placementKeys.push(placementKeys.shift())}}for(x=0;x<placements.length;x++){if(placementKeys[x]===placement){coords=placements[x];break}}return{top:coords.y+session.scrollTop,left:coords.x+session.scrollLeft}}this.compute=computePlacementCoords}function TooltipController(options){var placementCalculator=new PlacementCalculator,tipElement=$("#"+options.popupId);if(tipElement.length===0){tipElement=$("<div/>",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.top<viewportTop||Math.abs(coords.bottom-session.windowHeight)-elementHeight<viewportTop){collisions|=Collision.top}if(coords.top+elementHeight>viewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.left<viewportLeft||coords.right+elementWidth>viewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right<viewportLeft){collisions|=Collision.right}return collisions}function countFlags(value){var count=0;while(value){value&=value-1;count++}return count}return $.powerTip});/*!
+(function(root,factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"))}else{factory(root.jQuery)}})(this,function($){var $document=$(document),$window=$(window),$body=$("body");var DATA_DISPLAYCONTROLLER="displayController",DATA_HASACTIVEHOVER="hasActiveHover",DATA_FORCEDOPEN="forcedOpen",DATA_HASMOUSEMOVE="hasMouseMove",DATA_MOUSEONTOTIP="mouseOnToPopup",DATA_ORIGINALTITLE="originalTitle",DATA_POWERTIP="powertip",DATA_POWERTIPJQ="powertipjq",DATA_POWERTIPTARGET="powertiptarget",EVENT_NAMESPACE=".powertip",RAD2DEG=180/Math.PI,MOUSE_EVENTS=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","mouseenter","mouseleave","contextmenu"];var session={tooltips:null,isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,closeDelayTimeout:null,mouseTrackingActive:false,
+delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var Collision={none:0,top:1,bottom:2,left:4,right:8};$.fn.powerTip=function(opts,arg){var targetElements=this,options,tipController;if(!targetElements.length){return targetElements}if($.type(opts)==="string"&&$.powerTip[opts]){return $.powerTip[opts].call(targetElements,targetElements,arg)}options=$.extend({},$.fn.powerTip.defaults,opts);tipController=new TooltipController(options);initTracking();targetElements.each(function elementSetup(){var $this=$(this),dataPowertip=$this.data(DATA_POWERTIP),dataElem=$this.data(DATA_POWERTIPJQ),dataTarget=$this.data(DATA_POWERTIPTARGET),title=$this.attr("title");if(!dataPowertip&&!dataTarget&&!dataElem&&title){$this.data(DATA_POWERTIP,title);$this.data(DATA_ORIGINALTITLE,title);$this.removeAttr("title")}$this.data(DATA_DISPLAYCONTROLLER,new DisplayController($this,options,tipController))});if(!options.manual){$.each(options.openEvents,function(idx,evt){if($.inArray(evt,options.closeEvents)>-1){
+targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se",
+"n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(
+session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}
+closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference<options.intentSensitivity){cancelClose();closeAnyDelayed();tipController.showTip(element)}else{session.previousX=session.currentX;session.previousY=session.currentY;
+openTooltip()}}function cancelTimer(stopClose){hoverTimer=clearTimeout(hoverTimer);if(session.closeDelayTimeout&&myCloseDelay===session.closeDelayTimeout||stopClose){cancelClose()}}function cancelClose(){session.closeDelayTimeout=clearTimeout(session.closeDelayTimeout);session.delayInProgress=false}function closeAnyDelayed(){if(session.delayInProgress&&session.activeHover&&!session.activeHover.is(element)){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide(true)}}function repositionTooltip(){tipController.resetPosition(element)}this.show=openTooltip;this.hide=closeTooltip;this.cancel=cancelTimer;this.resetPosition=repositionTooltip}function PlacementCalculator(){function computePlacementCoords(element,placement,tipWidth,tipHeight,offset){var placementBase=placement.split("-")[0],coords=new CSSCoordinates,position;if(isSvgElement(element)){position=getSvgPlacement(element,placementBase)}else{position=getHtmlPlacement(element,placementBase)}switch(placement){case"n":coords.set("left",position.left-tipWidth/2
+);coords.set("bottom",session.windowHeight-position.top+offset);break;case"e":coords.set("left",position.left+offset);coords.set("top",position.top-tipHeight/2);break;case"s":coords.set("left",position.left-tipWidth/2);coords.set("top",position.top+offset);break;case"w":coords.set("top",position.top-tipHeight/2);coords.set("right",session.windowWidth-position.left+offset);break;case"nw":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"nw-alt":coords.set("left",position.left);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne":coords.set("left",position.left-20);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne-alt":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left);break;case"sw":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"sw-alt":coords.set("left",
+position.left);coords.set("top",position.top+offset);break;case"se":coords.set("left",position.left-20);coords.set("top",position.top+offset);break;case"se-alt":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left);break}return coords}function getHtmlPlacement(element,placement){var objectOffset=element.offset(),objectWidth=element.outerWidth(),objectHeight=element.outerHeight(),left,top;switch(placement){case"n":left=objectOffset.left+objectWidth/2;top=objectOffset.top;break;case"e":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight/2;break;case"s":left=objectOffset.left+objectWidth/2;top=objectOffset.top+objectHeight;break;case"w":left=objectOffset.left;top=objectOffset.top+objectHeight/2;break;case"nw":left=objectOffset.left;top=objectOffset.top;break;case"ne":left=objectOffset.left+objectWidth;top=objectOffset.top;break;case"sw":left=objectOffset.left;top=objectOffset.top+objectHeight;break;case"se":left=objectOffset.left+objectWidth;
+top=objectOffset.top+objectHeight;break}return{top:top,left:left}}function getSvgPlacement(element,placement){var svgElement=element.closest("svg")[0],domElement=element[0],point=svgElement.createSVGPoint(),boundingBox=domElement.getBBox(),matrix=domElement.getScreenCTM(),halfWidth=boundingBox.width/2,halfHeight=boundingBox.height/2,placements=[],placementKeys=["nw","n","ne","e","se","s","sw","w"],coords,rotation,steps,x;function pushPlacement(){placements.push(point.matrixTransform(matrix))}point.x=boundingBox.x;point.y=boundingBox.y;pushPlacement();point.x+=halfWidth;pushPlacement();point.x+=halfWidth;pushPlacement();point.y+=halfHeight;pushPlacement();point.y+=halfHeight;pushPlacement();point.x-=halfWidth;pushPlacement();point.x-=halfWidth;pushPlacement();point.y-=halfHeight;pushPlacement();if(placements[0].y!==placements[1].y||placements[0].x!==placements[7].x){rotation=Math.atan2(matrix.b,matrix.a)*RAD2DEG;steps=Math.ceil((rotation%360-22.5)/45);if(steps<1){steps+=8}while(steps--){placementKeys.push(
+placementKeys.shift())}}for(x=0;x<placements.length;x++){if(placementKeys[x]===placement){coords=placements[x];break}}return{top:coords.y+session.scrollTop,left:coords.x+session.scrollLeft}}this.compute=computePlacementCoords}function TooltipController(options){var placementCalculator=new PlacementCalculator,tipElement=$("#"+options.popupId);if(tipElement.length===0){tipElement=$("<div/>",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(
+session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,
+function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);
+tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,
+finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));
+return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}
+function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),
+elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,
+viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.top<viewportTop||Math.abs(coords.bottom-session.windowHeight)-elementHeight<viewportTop){collisions|=Collision.top}if(coords.top+elementHeight>viewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.left<viewportLeft||coords.right+elementWidth>viewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right<viewportLeft){collisions|=Collision.right}return collisions}function countFlags(value){var count=0;while(value){value&=value-1;count++}return count}return $.powerTip});
+/*!
* jQuery UI Touch Punch 0.2.3
*
* Copyright 2011–2014, Dave Furfero
* Depends:
* jquery.ui.widget.js
* jquery.ui.mouse.js
- */
-!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ */!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,
+"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);
+/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
* http://www.smartmenus.org/
- * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],$('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y<o.upEnd)&&a.eq(o.up?1:0).show(),o.y==n)mouse&&a.eq(o.up?0:1).hide(),this.menuScrollStop(t);else if(!e){this.opts.scrollAccelerate&&o.step<this.opts.scrollStep&&(o.step+=.2);var h=this;this.scrollTimeout=requestAnimationFrame(function(){h.menuScroll(t)})}},menuScrollMousewheel:function(t,e){if(this.getClosestMenu(e.target)==t[0]){e=e.originalEvent;var i=(e.wheelDelta||-e.detail)>0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
\ No newline at end of file
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),
+mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend(
+$.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(
+this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData(
+"smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id"
+).indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(
+this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(
+var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){
+return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((
+!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(
+this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0
+]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass(
+"highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){
+t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]"
+)||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],$('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){
+t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),
+a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y<o.upEnd)&&a.eq(o.up?1:0).show(),o.y==n)mouse&&a.eq(o.up?0:1).hide(),this.menuScrollStop(t);else if(!e){this.opts.scrollAccelerate&&o.step<this.opts.scrollStep&&(o.step+=.2);var h=this;this.scrollTimeout=requestAnimationFrame(function(){h.menuScroll(t)})}},menuScrollMousewheel:function(t,e){if(this.getClosestMenu(e.target)==t[0]){e=e.originalEvent;var i=(
+e.wheelDelta||-e.detail)>0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,
+downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2)
+)&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t
+)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),
+canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},
+rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}
+return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,
+bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/libcgroup-internal.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">libcgroup-internal.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">libcgroup.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/log.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">log.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: How to Contribute to the libcgroup Project</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">How to Contribute to the libcgroup Project</div></div>
</div><!--header-->
Test Your Code Using Existing Tests</h1>
<p>The libcgroup project utilizes unit and functional tests. These tests must successfully pass prior to a commit being merged.</p>
<p>You can run both the unit and functional tests with the following command: </p><pre class="fragment"># make check
-</pre><p> You can invoke only the unit tests with the following commands: </p><pre class="fragment"># cd tests/gunit
+</pre><p>You can invoke only the unit tests with the following commands: </p><pre class="fragment"># cd tests/gunit
# make check
-</pre><p> If there are unit test failures, running the unit tests outside of the automake framework will provide more information. </p><pre class="fragment"># cd tests/gunit
+</pre><p>If there are unit test failures, running the unit tests outside of the automake framework will provide more information. </p><pre class="fragment"># cd tests/gunit
# ./gtest
-</pre><p> You can invoke only the functional tests with the following commands: </p><pre class="fragment"># cd tests/ftests
+</pre><p>You can invoke only the functional tests with the following commands: </p><pre class="fragment"># cd tests/ftests
# make check
-</pre><p> Note that the functional tests can be run within a container or directly on your system. For the containerized tests, libcgroup utilizes LXC/LXD containers. If your system or distro doesn't support LXC/LXD, you can utilize the continuous integration infrastructure to test your changes. A successful continuous integration run is required for each pull request.</p>
+</pre><p>Note that the functional tests can be run within a container or directly on your system. For the containerized tests, libcgroup utilizes LXC/LXD containers. If your system or distro doesn't support LXC/LXD, you can utilize the continuous integration infrastructure to test your changes. A successful continuous integration run is required for each pull request.</p>
<p>Many tests can also be run outside of a container. Use caution with these tests though, as they will modify your host's cgroup hierarchy. This could significantly and negatively affect your system.</p>
<p>We encourage utilizing a VM for libcgroup development work. The continuous integration suite utilizes the latest Ubuntu LTS.</p>
<p>To run the containerized tests only: </p><pre class="fragment"># cd tests/ftests
# ./ftests.sh
-</pre><p> To run the non-containerized tests only: </p><pre class="fragment"># cd tests/ftests
+</pre><p>To run the non-containerized tests only: </p><pre class="fragment"># cd tests/ftests
# ./ftests-nocontainer.sh
-</pre><p> After the run is complete, the ftests.sh.log and ftests-nocontainer.sh.log contain the full debug log for each run.</p>
+</pre><p>After the run is complete, the ftests.sh.log and ftests-nocontainer.sh.log contain the full debug log for each run.</p>
<h1><a class="anchor" id="autotoc_md2"></a>
Add New Tests for New Functionality</h1>
<p>The libcgroup project utilizes automated tests, code coverage, and continuous integration to maintain a high level of code quality. Any pull requests that add functionality or significantly change existing code should include additional tests to verify the proper operation of the proposed changes. Note that functional tests are preferred over unit tests.</p>
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
-</pre><p> ... then you just add a line to the bottom of your patch description, with your real name, saying: </p><pre class="fragment">Signed-off-by: Random J Developer <random@developer.example.org>
-</pre><p> You can add this to your commit description in <code>git</code> with <code>git commit -s</code></p>
+</pre><p>... then you just add a line to the bottom of your patch description, with your real name, saying: </p><pre class="fragment">Signed-off-by: Random J Developer <random@developer.example.org>
+</pre><p>You can add this to your commit description in <code>git</code> with <code>git commit -s</code></p>
<h1><a class="anchor" id="autotoc_md5"></a>
Submitting Patches</h1>
<p>libcgroup was initially hosted on Sourceforge and at that time only accepted patches via the mailing list. In 2018, libcgroup was moved to github and now accepts patches via email or github pull request. Over time the libcgroup project will likely fully transition to gitub pull requests and issues.</p>
<h2><a class="anchor" id="autotoc_md7"></a>
Submitting via Email</h2>
<p>Depending on how you decided to work with the libcgroup code base and what tools you are using there are different ways to generate your patch(es). However, regardless of what tools you use, you should always generate your patches using the "unified" diff/patch format and the patches should always apply to the libcgroup source tree using the following command from the top directory of the libcgroup sources: </p><pre class="fragment"># patch -p1 < changes.patch
-</pre><p> If you are not using git, stacked git (stgit), or some other tool which can generate patch files for you automatically, you may find the following command helpful in generating patches, where "libcgroup.orig/" is the unmodified source code directory and "libcgroup/" is the source code directory with your changes: </p><pre class="fragment"># diff -purN libcgroup.orig/ libcgroup/
-</pre><p> When in doubt please generate your patch and try applying it to an unmodified copy of the libcgroup sources; if it fails for you, it will fail for the rest of us.</p>
+</pre><p>If you are not using git, stacked git (stgit), or some other tool which can generate patch files for you automatically, you may find the following command helpful in generating patches, where "libcgroup.orig/" is the unmodified source code directory and "libcgroup/" is the source code directory with your changes: </p><pre class="fragment"># diff -purN libcgroup.orig/ libcgroup/
+</pre><p>When in doubt please generate your patch and try applying it to an unmodified copy of the libcgroup sources; if it fails for you, it will fail for the rest of us.</p>
<p>Finally, you will need to email your patches to the mailing list so they can be reviewed and potentially merged into the main libcgroup repository. When sending patches to the mailing list it is important to send your email in text form, no HTML mail please, and ensure that your email client does not mangle your patches. It should be possible to save your raw email to disk and apply it directly to the libcgroup source code; if that fails then you likely have a problem with your email client. When in doubt try a test first by sending yourself an email with your patch and attempting to apply the emailed patch to the libcgrup repository; if it fails for you, it will fail for the rest of us trying to test your patch and include it in the main libcgroup repository.</p>
<h2><a class="anchor" id="autotoc_md8"></a>
Submitting via GitHub Pull Requests</h2>
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: README</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">README</div></div>
</div><!--header-->
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: The libcgroup Security Vulnerability Handling Process</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">The libcgroup Security Vulnerability Handling Process</div></div>
</div><!--header-->
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: The libcgroup Release Process</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">The libcgroup Release Process</div></div>
</div><!--header-->
3. Verify that the bundled test suite runs without error</h3>
<pre class="fragment"># ./bootstrap.sh
# make check
-</pre> <h3><a class="anchor" id="autotoc_md12"></a>
+</pre><h3><a class="anchor" id="autotoc_md12"></a>
4. Verify that the packaging is correct</h3>
<pre class="fragment"># make distcheck
-</pre> <h3><a class="anchor" id="autotoc_md13"></a>
+</pre><h3><a class="anchor" id="autotoc_md13"></a>
5. Verify that there are no outstanding defects from Coverity</h3>
<pre class="fragment"># ./bootstrap.sh
# export PATH=$PATH:/path/to/cov-build
# # verify the build succeeded. Examine $? and cov-int/build-log.txt
# tar czvf libcgroup-main@<current hash>.tar.gz cov-int
# Upload the tar file to Coverity
-</pre> <h3><a class="anchor" id="autotoc_md14"></a>
+</pre><h3><a class="anchor" id="autotoc_md14"></a>
6. Perform any distribution test builds</h3>
<ul>
<li>Oracle Linux</li>
<h3><a class="anchor" id="autotoc_md16"></a>
8. If this is a new major/minor release, create new 'release-X.Y' branch</h3>
<pre class="fragment"># git branch "release-X.Y"
-</pre> <h3><a class="anchor" id="autotoc_md17"></a>
+</pre><h3><a class="anchor" id="autotoc_md17"></a>
9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros</h3>
<h3><a class="anchor" id="autotoc_md18"></a>
10. Tag the release in the local repository with a signed tag</h3>
<pre class="fragment"># git tag -s -m "version X.Y.Z" vX.Y.Z
-</pre> <h3><a class="anchor" id="autotoc_md19"></a>
+</pre><h3><a class="anchor" id="autotoc_md19"></a>
11. Build final release tarball</h3>
<pre class="fragment"># make clean
# ./bootstrap.sh
# make dist-gzip
-</pre> <h3><a class="anchor" id="autotoc_md20"></a>
+</pre><h3><a class="anchor" id="autotoc_md20"></a>
12. Verify the release tarball in a separate directory</h3>
<pre class="fragment"><unpack the release tarball in a temporary directory>
# ./configure --sysconfdir=/etc --localstatedir=/var \
--enable-opaque-hierarchy="name=systemd" --enable-python --enable-systemd
# make check
-</pre> <h3><a class="anchor" id="autotoc_md21"></a>
+</pre><h3><a class="anchor" id="autotoc_md21"></a>
13. Generate a checksum for the release tarball</h3>
<pre class="fragment"># sha256sum <tarball> > libcgroup-X.Y.Z.tar.gz.SHA256SUM
-</pre> <h3><a class="anchor" id="autotoc_md22"></a>
+</pre><h3><a class="anchor" id="autotoc_md22"></a>
14. GPG sign the release tarball and checksum using the maintainer's key</h3>
<pre class="fragment"># gpg --armor --detach-sign libcgroup-X.Y.Z.tar.gz
# gpg --clearsign libcgroup-X.Y.Z.tar.gz.SHA256SUM
-</pre> <h3><a class="anchor" id="autotoc_md23"></a>
+</pre><h3><a class="anchor" id="autotoc_md23"></a>
15. Push the release tag to the main GitHub repository</h3>
<pre class="fragment"># git push <repo> vX.Y.Z
-</pre> <h3><a class="anchor" id="autotoc_md24"></a>
+</pre><h3><a class="anchor" id="autotoc_md24"></a>
16. Create a new GitHub release using the associated tag and upload the following files</h3>
<ul>
<li>libcgroup-X.Y.Z.tar.gz</li>
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: systemd-with-idle-process</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">systemd-with-idle-process</div></div>
</div><!--header-->
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: README</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">README</div></div>
</div><!--header-->
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Functional Test Suite for libcgroup</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">Functional Test Suite for libcgroup</div></div>
</div><!--header-->
<div class="contents">
-<div class="textblock"><p><a class="anchor" id="autotoc_md32"></a> This folder contains the functional test suite for libcgroup. The functional test suite utilizes lxc containers to guarantee a non-destructive test environment.</p>
+<div class="textblock"><p><a class="anchor" id="autotoc_md32"></a></p>
+<p>This folder contains the functional test suite for libcgroup. The functional test suite utilizes lxc containers to guarantee a non-destructive test environment.</p>
<p>The tests can be invoked individually, as a group of related tests, or from automake via the standard 'make check' command.</p>
<h1><a class="anchor" id="autotoc_md33"></a>
Invocation</h1>
<p>Run a single test (first cd to tests/ftests): </p><pre class="fragment">./001-cgget-basic_cgget.py
or
./ftests.py -N 15 # Run test #015
-</pre><p> Run a suite of tests (first cd to tests/ftests): </p><pre class="fragment">./ftests.py -s cgget # Run all cgget tests
-</pre><p> Run all the tests by hand </p><pre class="fragment">./ftests.py
+</pre><p>Run a suite of tests (first cd to tests/ftests): </p><pre class="fragment">./ftests.py -s cgget # Run all cgget tests
+</pre><p>Run all the tests by hand </p><pre class="fragment">./ftests.py
# This may be advantageous over running make check
# because it will try to re-use the same lxc
# container for all of the tests. This should
# provide a significant performance increase
-</pre><p> Run the tests from automake </p><pre class="fragment">make check
+</pre><p>Run the tests from automake </p><pre class="fragment">make check
# Then examine the *.trs and *.log files for
# specifics regarding each test result
-</pre> <h1><a class="anchor" id="autotoc_md34"></a>
+</pre><h1><a class="anchor" id="autotoc_md34"></a>
Results</h1>
<p>The test suite will generate test results upon completion of the test run. An example result is below:</p>
<div class="fragment"><div class="line">Test Results:</div>
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
@licend The above is the entire license notice for the JavaScript code in this file
*/
-function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
+function initMenu(relPath,searchEnabled,serverSide,searchPage,search,treeview) {
function makeTree(data,relPath) {
- var result='';
+ let result='';
if ('children' in data) {
result+='<ul>';
- for (var i in data.children) {
- var url;
- var link;
- link = data.children[i].url;
+ for (let i in data.children) {
+ let url;
+ const link = data.children[i].url;
if (link.substring(0,1)=='^') {
url = link.substring(1);
} else {
}
return result;
}
- var searchBoxHtml;
+ let searchBoxHtml;
if (searchEnabled) {
if (serverSide) {
searchBoxHtml='<div id="MSearchBox" class="MSearchBoxInactive">'+
if (searchBoxHtml) {
$('#main-menu').append('<li id="searchBoxPos2" style="float:right"></li>');
}
- var $mainMenuState = $('#main-menu-state');
- var prevWidth = 0;
+ const $mainMenuState = $('#main-menu-state');
+ let prevWidth = 0;
if ($mainMenuState.length) {
- function initResizableIfExists() {
- if (typeof initResizable==='function') initResizable();
+ const initResizableIfExists = function() {
+ if (typeof initResizable==='function') initResizable(treeview);
}
// animate mobile menu
- $mainMenuState.change(function(e) {
- var $menu = $('#main-menu');
- var options = { duration: 250, step: initResizableIfExists };
+ $mainMenuState.change(function() {
+ const $menu = $('#main-menu');
+ let options = { duration: 250, step: initResizableIfExists };
if (this.checked) {
- options['complete'] = function() { $menu.css('display', 'block') };
+ options['complete'] = () => $menu.css('display', 'block');
$menu.hide().slideDown(options);
} else {
- options['complete'] = function() { $menu.css('display', 'none') };
+ options['complete'] = () => $menu.css('display', 'none');
$menu.show().slideUp(options);
}
});
// set default menu visibility
- function resetState() {
- var $menu = $('#main-menu');
- var $mainMenuState = $('#main-menu-state');
- var newWidth = $(window).outerWidth();
+ const resetState = function() {
+ const $menu = $('#main-menu');
+ const newWidth = $(window).outerWidth();
if (newWidth!=prevWidth) {
if ($(window).outerWidth()<768) {
$mainMenuState.prop('checked',false); $menu.hide();
--- /dev/null
+#nav-tree .children_ul {
+ margin:0;
+ padding:4px;
+}
+
+#nav-tree ul {
+ list-style:none outside none;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree li {
+ white-space:nowrap;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .plus {
+ margin:0px;
+}
+
+#nav-tree .selected {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: var(--nav-text-active-color);
+ text-shadow: var(--nav-text-active-shadow);
+}
+
+#nav-tree .selected .arrow {
+ color: var(--nav-arrow-selected-color);
+ text-shadow: none;
+}
+
+#nav-tree img {
+ margin:0px;
+ padding:0px;
+ border:0px;
+ vertical-align: middle;
+}
+
+#nav-tree a {
+ text-decoration:none;
+ padding:0px;
+ margin:0px;
+}
+
+#nav-tree .label {
+ margin:0px;
+ padding:0px;
+ font: 12px var(--font-family-nav);
+}
+
+#nav-tree .label a {
+ padding:2px;
+}
+
+#nav-tree .selected a {
+ text-decoration:none;
+ color:var(--nav-text-active-color);
+}
+
+#nav-tree .children_ul {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .item {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree {
+ padding: 0px 0px;
+ font-size:14px;
+ overflow:auto;
+}
+
+#doc-content {
+ overflow:auto;
+ display:block;
+ padding:0px;
+ margin:0px;
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#side-nav {
+ padding:0 6px 0 0;
+ margin: 0px;
+ display:block;
+ position: absolute;
+ left: 0px;
+ width: $width;
+ overflow : hidden;
+}
+
+.ui-resizable .ui-resizable-handle {
+ display:block;
+}
+
+.ui-resizable-e {
+ background-image:var(--nav-splitbar-image);
+ background-size:100%;
+ background-repeat:repeat-y;
+ background-attachment: scroll;
+ cursor:ew-resize;
+ height:100%;
+ right:0;
+ top:0;
+ width:6px;
+}
+
+.ui-resizable-handle {
+ display:none;
+ font-size:0.1px;
+ position:absolute;
+ z-index:1;
+}
+
+#nav-tree-contents {
+ margin: 6px 0px 0px 0px;
+}
+
+#nav-tree {
+ background-repeat:repeat-x;
+ background-color: var(--nav-background-color);
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#nav-sync {
+ position:absolute;
+ top:5px;
+ right:24px;
+ z-index:0;
+}
+
+#nav-sync img {
+ opacity:0.3;
+}
+
+#nav-sync img:hover {
+ opacity:0.9;
+}
+
+@media print
+{
+ #nav-tree { display: none; }
+ div.ui-resizable-handle { display: none; position: relative; }
+}
+
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Related Pages</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
--- /dev/null
+/*
+ @licstart The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend The above is the entire license notice for the JavaScript code in this file
+ */
+
+function initResizable(treeview) {
+ let sidenav,navtree,content,header,footer,barWidth=6;
+ const RESIZE_COOKIE_NAME = ''+'width';
+
+ function resizeWidth() {
+ const sidenavWidth = $(sidenav).outerWidth();
+ content.css({marginLeft:parseInt(sidenavWidth)+"px"});
+ if (typeof page_layout!=='undefined' && page_layout==1) {
+ footer.css({marginLeft:parseInt(sidenavWidth)+"px"});
+ }
+ Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth);
+ }
+
+ function restoreWidth(navWidth) {
+ content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+ if (typeof page_layout!=='undefined' && page_layout==1) {
+ footer.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+ }
+ sidenav.css({width:navWidth + "px"});
+ }
+
+ function resizeHeight(treeview) {
+ const headerHeight = header.outerHeight();
+ const windowHeight = $(window).height();
+ let contentHeight;
+ if (treeview)
+ {
+ const footerHeight = footer.outerHeight();
+ let navtreeHeight,sideNavHeight;
+ if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */
+ contentHeight = windowHeight - headerHeight - footerHeight;
+ navtreeHeight = contentHeight;
+ sideNavHeight = contentHeight;
+ } else if (page_layout==1) { /* DISABLE_INDEX=YES */
+ contentHeight = windowHeight - footerHeight;
+ navtreeHeight = windowHeight - headerHeight;
+ sideNavHeight = windowHeight;
+ }
+ navtree.css({height:navtreeHeight + "px"});
+ sidenav.css({height:sideNavHeight + "px"});
+ }
+ else
+ {
+ contentHeight = windowHeight - headerHeight;
+ }
+ content.css({height:contentHeight + "px"});
+ if (location.hash.slice(1)) {
+ (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView();
+ }
+ }
+
+ function collapseExpand() {
+ let newWidth;
+ if (sidenav.width()>0) {
+ newWidth=0;
+ } else {
+ const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250);
+ newWidth = (width>250 && width<$(window).width()) ? width : 250;
+ }
+ restoreWidth(newWidth);
+ const sidenavWidth = $(sidenav).outerWidth();
+ Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth);
+ }
+
+ header = $("#top");
+ content = $("#doc-content");
+ footer = $("#nav-path");
+ sidenav = $("#side-nav");
+ if (!treeview) {
+// title = $("#titlearea");
+// titleH = $(title).height();
+// let animating = false;
+// content.on("scroll", function() {
+// slideOpts = { duration: 200,
+// step: function() {
+// contentHeight = $(window).height() - header.outerHeight();
+// content.css({ height : contentHeight + "px" });
+// },
+// done: function() { animating=false; }
+// };
+// if (content.scrollTop()>titleH && title.css('display')!='none' && !animating) {
+// title.slideUp(slideOpts);
+// animating=true;
+// } else if (content.scrollTop()<=titleH && title.css('display')=='none' && !animating) {
+// title.slideDown(slideOpts);
+// animating=true;
+// }
+// });
+ } else {
+ navtree = $("#nav-tree");
+ $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
+ $(sidenav).resizable({ minWidth: 0 });
+ }
+ $(window).resize(function() { resizeHeight(treeview); });
+ if (treeview)
+ {
+ const device = navigator.userAgent.toLowerCase();
+ const touch_device = device.match(/(iphone|ipod|ipad|android)/);
+ if (touch_device) { /* wider split bar for touch only devices */
+ $(sidenav).css({ paddingRight:'20px' });
+ $('.ui-resizable-e').css({ width:'20px' });
+ $('#nav-sync').css({ right:'34px' });
+ barWidth=20;
+ }
+ const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250);
+ if (width) { restoreWidth(width); } else { resizeWidth(); }
+ }
+ resizeHeight(treeview);
+ const url = location.href;
+ const i=url.indexOf("#");
+ if (i>=0) window.location.hash=url.substr(i);
+ const _preventDefault = function(evt) { evt.preventDefault(); };
+ if (treeview)
+ {
+ $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
+ $(".ui-resizable-handle").dblclick(collapseExpand);
+ // workaround for firefox
+ $("body").css({overflow: "hidden"});
+ }
+ $(window).on('load',function() { resizeHeight(treeview); });
+}
+/* @license-end */
['name_0',['name',['../structcgroup__mount__point.html#a849ccf1e77fffd5d45304c6adf0d2100',1,'cgroup_mount_point::name'],['../structcontroller__data.html#a5474be4d8cc4553c94ca81c6a93f5a18',1,'controller_data::name'],['../structcg__mount__table__s.html#a9fc6421ae21cb12127b3c1f5af3a7d4a',1,'cg_mount_table_s::name']]],
['name_20mount_5fpoint_20index_1',['name mount_point index',['../classBuildPathV1Test.html#autotoc_md35',1,'']]],
['name_20mount_5fpoint_20index_20version_2',['name mount_point index version',['../classBuildTasksProcPathTest.html#autotoc_md36',1,'']]],
- ['new_20github_20release_20using_20the_20associated_20tag_20and_20upload_20the_20following_20files_3',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
- ['new_20major_20minor_20release_20create_20new_20release_20x_20y_20branch_4',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
- ['new_20tests_20for_20new_20functionality_5',['Add New Tests for New Functionality',['../md_CONTRIBUTING.html#autotoc_md2',1,'']]],
- ['no_20outstanding_20defects_20from_20coverity_6',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
- ['no_5fperms_7',['NO_PERMS',['../group__group__groups.html#gad4ffad2eccf9fcbfa8a551e269e0ad58',1,'groups.h']]],
- ['no_5fuid_5fgid_8',['NO_UID_GID',['../group__group__groups.html#ga2a7954a987e3fbf8eabcc94cf381353e',1,'groups.h']]],
- ['notes_20for_20older_20releases_20which_20are_20now_20unsupported_9',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
- ['now_20unsupported_10',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
- ['num_5fcgroups_11',['num_cgroups',['../structcontroller__data.html#acd075c0bb48062bf720b68d0a30116eb',1,'controller_data']]],
- ['number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_12',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]]
+ ['new_20functionality_3',['Add New Tests for New Functionality',['../md_CONTRIBUTING.html#autotoc_md2',1,'']]],
+ ['new_20github_20release_20using_20the_20associated_20tag_20and_20upload_20the_20following_20files_4',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
+ ['new_20major_20minor_20release_20create_20new_20release_20x_20y_20branch_5',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
+ ['new_20release_20x_20y_20branch_6',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
+ ['new_20tests_20for_20new_20functionality_7',['Add New Tests for New Functionality',['../md_CONTRIBUTING.html#autotoc_md2',1,'']]],
+ ['no_20outstanding_20defects_20from_20coverity_8',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
+ ['no_5fperms_9',['NO_PERMS',['../group__group__groups.html#gad4ffad2eccf9fcbfa8a551e269e0ad58',1,'groups.h']]],
+ ['no_5fuid_5fgid_10',['NO_UID_GID',['../group__group__groups.html#ga2a7954a987e3fbf8eabcc94cf381353e',1,'groups.h']]],
+ ['notes_20for_20older_20releases_20which_20are_20now_20unsupported_11',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
+ ['now_20unsupported_12',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
+ ['num_5fcgroups_13',['num_cgroups',['../structcontroller__data.html#acd075c0bb48062bf720b68d0a30116eb',1,'controller_data']]],
+ ['number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_14',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]]
];
['passing_4',['2. Verify that the Github Actions are all passing',['../md_doc_2internal_2release-github.html#autotoc_md10',1,'']]],
['patches_5',['Submitting Patches',['../md_CONTRIBUTING.html#autotoc_md5',1,'']]],
['patches_20upstream_6',['Post Your Patches Upstream',['../md_CONTRIBUTING.html#autotoc_md6',1,'']]],
- ['path_7',['path',['../structcgroup__mount__point.html#ad1e89dfc02cfd7341e2296086a4f251e',1,'cgroup_mount_point::path'],['../structcgroup__file__info.html#a801424e68139c930e40ea24be4d96a68',1,'cgroup_file_info::path']]],
+ ['path_7',['path',['../structcgroup__file__info.html#a801424e68139c930e40ea24be4d96a68',1,'cgroup_file_info::path'],['../structcgroup__mount__point.html#ad1e89dfc02cfd7341e2296086a4f251e',1,'cgroup_mount_point::path']]],
['perform_20any_20distribution_20test_20builds_8',['6. Perform any distribution test builds',['../md_doc_2internal_2release-github.html#autotoc_md14',1,'']]],
['pid_9',['pid',['../structcgroup__systemd__scope__opts.html#a73b472fe4247f194a78ffb9fd0f57008',1,'cgroup_systemd_scope_opts']]],
['point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_10',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
['post_20your_20patches_20upstream_11',['Post Your Patches Upstream',['../md_CONTRIBUTING.html#autotoc_md6',1,'']]],
['problems_12',['Reporting Problems',['../md_SECURITY.html#autotoc_md29',1,'']]],
['problems_20were_20found_20up_20to_20this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_13',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['process_14',['process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'7. If any problems were found up to this point that resulted in code changes, restart the process'],['../classftests_1_1process_1_1Process.html',1,'ftests.process.Process'],['../md_samples_2cmdline_2systemd-with-idle-process.html',1,'systemd-with-idle-process'],['../md_doc_2internal_2release-github.html',1,'The libcgroup Release Process'],['../md_SECURITY.html',1,'The libcgroup Security Vulnerability Handling Process']]],
- ['procnamewildcardtest_15',['ProcnameWildcardTest',['../classProcnameWildcardTest.html',1,'']]],
- ['project_16',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
- ['public_20disclosure_17',['Public Disclosure',['../md_SECURITY.html#autotoc_md31',1,'']]],
- ['pull_20requests_18',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
- ['push_20the_20release_20tag_20to_20the_20main_20github_20repository_19',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]]
+ ['process_14',['Process',['../classftests_1_1process_1_1Process.html',1,'ftests.process.Process'],['../md_doc_2internal_2release-github.html',1,'The libcgroup Release Process'],['../md_SECURITY.html',1,'The libcgroup Security Vulnerability Handling Process']]],
+ ['process_15',['process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'7. If any problems were found up to this point that resulted in code changes, restart the process'],['../md_samples_2cmdline_2systemd-with-idle-process.html',1,'systemd-with-idle-process']]],
+ ['procnamewildcardtest_16',['ProcnameWildcardTest',['../classProcnameWildcardTest.html',1,'']]],
+ ['project_17',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['public_20disclosure_18',['Public Disclosure',['../md_SECURITY.html#autotoc_md31',1,'']]],
+ ['pull_20requests_19',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
+ ['push_20the_20release_20tag_20to_20the_20main_20github_20repository_20',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]]
];
var searchData=
[
- ['readme_0',['readme',['../md_README.html',1,'README'],['../md_tests_2README.html',1,'README']]],
+ ['readme_0',['README',['../md_README.html',1,'README'],['../md_tests_2README.html',1,'README']]],
['release_20create_20new_20release_20x_20y_20branch_1',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
['release_20in_20the_20local_20repository_20with_20a_20signed_20tag_2',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
['release_20milestone_20have_20been_20resolved_3',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
['release_20tarball_20and_20checksum_20using_20the_20maintainer_20s_20key_8',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
['release_20tarball_20in_20a_20separate_20directory_9',['12. Verify the release tarball in a separate directory',['../md_doc_2internal_2release-github.html#autotoc_md20',1,'']]],
['release_20using_20the_20associated_20tag_20and_20upload_20the_20following_20files_10',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
- ['releases_20which_20are_20now_20unsupported_11',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
- ['reporting_20problems_12',['Reporting Problems',['../md_SECURITY.html#autotoc_md29',1,'']]],
- ['repository_13',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
- ['repository_20with_20a_20signed_20tag_14',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
- ['requests_15',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
- ['requirements_3a_16',['Requirements:',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md27',1,'']]],
- ['resolved_17',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
- ['resolving_20sensitive_20security_20issues_18',['Resolving Sensitive Security Issues',['../md_SECURITY.html#autotoc_md30',1,'']]],
- ['restart_20the_20process_19',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['resulted_20in_20code_20changes_20restart_20the_20process_20',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['results_21',['Results',['../md_tests_2ftests_2README.html#autotoc_md34',1,'']]],
- ['run_22',['Run',['../classftests_1_1run_1_1Run.html',1,'ftests::run']]],
- ['runerror_23',['RunError',['../classftests_1_1run_1_1RunError.html',1,'ftests::run']]],
- ['runs_20without_20error_24',['3. Verify that the bundled test suite runs without error',['../md_doc_2internal_2release-github.html#autotoc_md11',1,'']]]
+ ['release_20x_20y_20branch_11',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
+ ['releases_20which_20are_20now_20unsupported_12',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
+ ['reporting_20problems_13',['Reporting Problems',['../md_SECURITY.html#autotoc_md29',1,'']]],
+ ['repository_14',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
+ ['repository_20with_20a_20signed_20tag_15',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
+ ['requests_16',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
+ ['requirements_3a_17',['Requirements:',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md27',1,'']]],
+ ['resolved_18',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
+ ['resolving_20sensitive_20security_20issues_19',['Resolving Sensitive Security Issues',['../md_SECURITY.html#autotoc_md30',1,'']]],
+ ['restart_20the_20process_20',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['resulted_20in_20code_20changes_20restart_20the_20process_21',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['results_22',['Results',['../md_tests_2ftests_2README.html#autotoc_md34',1,'']]],
+ ['run_23',['Run',['../classftests_1_1run_1_1Run.html',1,'ftests::run']]],
+ ['runerror_24',['RunError',['../classftests_1_1run_1_1RunError.html',1,'ftests::run']]],
+ ['runs_20without_20error_25',['3. Verify that the bundled test suite runs without error',['../md_doc_2internal_2release-github.html#autotoc_md11',1,'']]]
];
['separate_20directory_5',['12. Verify the release tarball in a separate directory',['../md_doc_2internal_2release-github.html#autotoc_md20',1,'']]],
['set_6',['set',['../classftests_1_1cgroup_1_1Cgroup.html#aafa420c27460164b65f904ec531ae2b1',1,'ftests::cgroup::Cgroup']]],
['set_5fand_5fvalidate_7',['set_and_validate',['../classftests_1_1cgroup_1_1Cgroup.html#a6e776be252ad6a2fa0609d48ce71abd8',1,'ftests::cgroup::Cgroup']]],
- ['setup_8',['setup',['../classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3',1,'BuildPathV1Test::SetUp()'],['../classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7',1,'BuildTasksProcPathTest::SetUp()']]],
+ ['setup_8',['SetUp',['../classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3',1,'BuildPathV1Test::SetUp()'],['../classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7',1,'BuildTasksProcPathTest::SetUp()']]],
['setvaluesrecursivetest_9',['SetValuesRecursiveTest',['../classSetValuesRecursiveTest.html',1,'']]],
['sign_20the_20release_20tarball_20and_20checksum_20using_20the_20maintainer_20s_20key_10',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
['sign_20your_20work_11',['Sign Your Work',['../md_CONTRIBUTING.html#autotoc_md4',1,'']]],
['the_20associated_20tag_20and_20upload_20the_20following_20files_20',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
['the_20bundled_20test_20suite_20runs_20without_20error_21',['3. Verify that the bundled test suite runs without error',['../md_doc_2internal_2release-github.html#autotoc_md11',1,'']]],
['the_20community_22',['Interacting with the Community',['../md_CONTRIBUTING.html#autotoc_md0',1,'']]],
- ['the_20github_20actions_20are_20all_20passing_23',['2. Verify that the Github Actions are all passing',['../md_doc_2internal_2release-github.html#autotoc_md10',1,'']]],
- ['the_20github_20release_20notes_20for_20older_20releases_20which_20are_20now_20unsupported_24',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
- ['the_20libcgroup_20project_25',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
- ['the_20libcgroup_20release_20process_26',['The libcgroup Release Process',['../md_doc_2internal_2release-github.html',1,'']]],
- ['the_20libcgroup_20security_20vulnerability_20handling_20process_27',['The libcgroup Security Vulnerability Handling Process',['../md_SECURITY.html',1,'']]],
- ['the_20packaging_20is_20correct_28',['4. Verify that the packaging is correct',['../md_doc_2internal_2release-github.html#autotoc_md12',1,'']]],
- ['the_20process_29',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['the_20release_20in_20the_20local_20repository_20with_20a_20signed_20tag_30',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
- ['the_20release_20milestone_20have_20been_20resolved_31',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
- ['the_20release_20tag_20to_20the_20main_20github_20repository_32',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
- ['the_20release_20tarball_33',['13. Generate a checksum for the release tarball',['../md_doc_2internal_2release-github.html#autotoc_md21',1,'']]],
- ['the_20release_20tarball_20and_20checksum_20using_20the_20maintainer_20s_20key_34',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
- ['the_20release_20tarball_20in_20a_20separate_20directory_35',['12. Verify the release tarball in a separate directory',['../md_doc_2internal_2release-github.html#autotoc_md20',1,'']]],
- ['the_20version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_36',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
- ['there_20are_20no_20outstanding_20defects_20from_20coverity_37',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
- ['this_20is_20a_20new_20major_20minor_20release_20create_20new_20release_20x_20y_20branch_38',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
- ['this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_39',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['to_20contribute_20to_20the_20libcgroup_20project_40',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
- ['to_20the_20main_20github_20repository_41',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
- ['to_20the_20release_20milestone_20have_20been_20resolved_42',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
- ['to_20this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_43',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['todo_20list_44',['Todo List',['../todo.html',1,'']]],
- ['type_45',['type',['../structcgroup__file__info.html#a955506601f440d05cb11e4ee6b455c55',1,'cgroup_file_info']]]
+ ['the_20following_20files_23',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
+ ['the_20github_20actions_20are_20all_20passing_24',['2. Verify that the Github Actions are all passing',['../md_doc_2internal_2release-github.html#autotoc_md10',1,'']]],
+ ['the_20github_20release_20notes_20for_20older_20releases_20which_20are_20now_20unsupported_25',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
+ ['the_20libcgroup_20project_26',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['the_20libcgroup_20release_20process_27',['The libcgroup Release Process',['../md_doc_2internal_2release-github.html',1,'']]],
+ ['the_20libcgroup_20security_20vulnerability_20handling_20process_28',['The libcgroup Security Vulnerability Handling Process',['../md_SECURITY.html',1,'']]],
+ ['the_20local_20repository_20with_20a_20signed_20tag_29',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
+ ['the_20main_20github_20repository_30',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
+ ['the_20maintainer_20s_20key_31',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
+ ['the_20packaging_20is_20correct_32',['4. Verify that the packaging is correct',['../md_doc_2internal_2release-github.html#autotoc_md12',1,'']]],
+ ['the_20process_33',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['the_20release_20in_20the_20local_20repository_20with_20a_20signed_20tag_34',['10. Tag the release in the local repository with a signed tag',['../md_doc_2internal_2release-github.html#autotoc_md18',1,'']]],
+ ['the_20release_20milestone_20have_20been_20resolved_35',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
+ ['the_20release_20tag_20to_20the_20main_20github_20repository_36',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
+ ['the_20release_20tarball_37',['13. Generate a checksum for the release tarball',['../md_doc_2internal_2release-github.html#autotoc_md21',1,'']]],
+ ['the_20release_20tarball_20and_20checksum_20using_20the_20maintainer_20s_20key_38',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
+ ['the_20release_20tarball_20in_20a_20separate_20directory_39',['12. Verify the release tarball in a separate directory',['../md_doc_2internal_2release-github.html#autotoc_md20',1,'']]],
+ ['the_20version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_40',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['there_20are_20no_20outstanding_20defects_20from_20coverity_41',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
+ ['this_20is_20a_20new_20major_20minor_20release_20create_20new_20release_20x_20y_20branch_42',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
+ ['this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_43',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['to_20contribute_20to_20the_20libcgroup_20project_44',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['to_20the_20libcgroup_20project_45',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['to_20the_20main_20github_20repository_46',['15. Push the release tag to the main GitHub repository',['../md_doc_2internal_2release-github.html#autotoc_md23',1,'']]],
+ ['to_20the_20release_20milestone_20have_20been_20resolved_47',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
+ ['to_20this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_48',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['todo_20list_49',['Todo List',['../todo.html',1,'']]],
+ ['type_50',['type',['../structcgroup__file__info.html#a955506601f440d05cb11e4ee6b455c55',1,'cgroup_file_info']]]
];
['verify_20that_20there_20are_20no_20outstanding_20defects_20from_20coverity_4',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
['verify_20the_20release_20tarball_20in_20a_20separate_20directory_5',['12. Verify the release tarball in a separate directory',['../md_doc_2internal_2release-github.html#autotoc_md20',1,'']]],
['version_6',['name mount_point index version',['../classBuildTasksProcPathTest.html#autotoc_md36',1,'']]],
- ['version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_7',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
- ['via_20email_8',['Submitting via Email',['../md_CONTRIBUTING.html#autotoc_md7',1,'']]],
- ['via_20github_20pull_20requests_9',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
- ['via_20libcgroup_20command_20line_10',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
- ['vulnerability_20handling_20process_11',['The libcgroup Security Vulnerability Handling Process',['../md_SECURITY.html',1,'']]]
+ ['version_20macros_7',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_8',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['via_20email_9',['Submitting via Email',['../md_CONTRIBUTING.html#autotoc_md7',1,'']]],
+ ['via_20github_20pull_20requests_10',['Submitting via GitHub Pull Requests',['../md_CONTRIBUTING.html#autotoc_md8',1,'']]],
+ ['via_20libcgroup_20command_20line_11',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
+ ['vulnerability_20handling_20process_12',['The libcgroup Security Vulnerability Handling Process',['../md_SECURITY.html',1,'']]]
];
['with_20tasks_4',['4. Manipulation with tasks',['../group__group__tasks.html',1,'']]],
['with_20the_20community_5',['Interacting with the Community',['../md_CONTRIBUTING.html#autotoc_md0',1,'']]],
['without_20error_6',['3. Verify that the bundled test suite runs without error',['../md_doc_2internal_2release-github.html#autotoc_md11',1,'']]],
- ['work_7',['work',['../md_CONTRIBUTING.html#autotoc_md3',1,'Explain Your Work'],['../md_CONTRIBUTING.html#autotoc_md4',1,'Sign Your Work']]]
+ ['work_7',['Work',['../md_CONTRIBUTING.html#autotoc_md3',1,'Explain Your Work'],['../md_CONTRIBUTING.html#autotoc_md4',1,'Sign Your Work']]]
];
['y_20branch_0',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
['your_20code_20using_20existing_20tests_1',['Test Your Code Using Existing Tests',['../md_CONTRIBUTING.html#autotoc_md1',1,'']]],
['your_20patches_20upstream_2',['Post Your Patches Upstream',['../md_CONTRIBUTING.html#autotoc_md6',1,'']]],
- ['your_20work_3',['your work',['../md_CONTRIBUTING.html#autotoc_md3',1,'Explain Your Work'],['../md_CONTRIBUTING.html#autotoc_md4',1,'Sign Your Work']]]
+ ['your_20work_3',['Your Work',['../md_CONTRIBUTING.html#autotoc_md3',1,'Explain Your Work'],['../md_CONTRIBUTING.html#autotoc_md4',1,'Sign Your Work']]]
];
['and_20checksum_20using_20the_20maintainer_20s_20key_12',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
['and_20child_20hierarchy_20via_20libcgroup_20command_20line_13',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
['and_20commit_20the_20version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_14',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
- ['and_20upload_20the_20following_20files_15',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
- ['any_20distribution_20test_20builds_16',['6. Perform any distribution test builds',['../md_doc_2internal_2release-github.html#autotoc_md14',1,'']]],
- ['any_20problems_20were_20found_20up_20to_20this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_17',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['api_18',['2. Group manipulation API',['../group__group__groups.html',1,'']]],
- ['apiargstest_19',['APIArgsTest',['../classAPIArgsTest.html',1,'']]],
- ['are_20all_20passing_20',['2. Verify that the Github Actions are all passing',['../md_doc_2internal_2release-github.html#autotoc_md10',1,'']]],
- ['are_20no_20outstanding_20defects_20from_20coverity_21',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
- ['are_20now_20unsupported_22',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
- ['array_5fparent_5finfo_23',['array_parent_info',['../structarray__parent__info.html',1,'']]],
- ['array_5funchanged_24',['array_unchanged',['../structarray__unchanged.html',1,'']]],
- ['assigned_20to_20the_20release_20milestone_20have_20been_20resolved_25',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
- ['associated_20tag_20and_20upload_20the_20following_20files_26',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]]
+ ['and_20library_20version_20macros_15',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['and_20upload_20the_20following_20files_16',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
+ ['any_20distribution_20test_20builds_17',['6. Perform any distribution test builds',['../md_doc_2internal_2release-github.html#autotoc_md14',1,'']]],
+ ['any_20problems_20were_20found_20up_20to_20this_20point_20that_20resulted_20in_20code_20changes_20restart_20the_20process_18',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['api_19',['2. Group manipulation API',['../group__group__groups.html',1,'']]],
+ ['apiargstest_20',['APIArgsTest',['../classAPIArgsTest.html',1,'']]],
+ ['are_20all_20passing_21',['2. Verify that the Github Actions are all passing',['../md_doc_2internal_2release-github.html#autotoc_md10',1,'']]],
+ ['are_20no_20outstanding_20defects_20from_20coverity_22',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
+ ['are_20now_20unsupported_23',['17. Update the GitHub release notes for older releases which are now unsupported',['../md_doc_2internal_2release-github.html#autotoc_md25',1,'']]],
+ ['array_5fparent_5finfo_24',['array_parent_info',['../structarray__parent__info.html',1,'']]],
+ ['array_5funchanged_25',['array_unchanged',['../structarray__unchanged.html',1,'']]],
+ ['assigned_20to_20the_20release_20milestone_20have_20been_20resolved_26',['1. Verify that all issues assigned to the release milestone have been resolved',['../md_doc_2internal_2release-github.html#autotoc_md9',1,'']]],
+ ['associated_20tag_20and_20upload_20the_20following_20files_27',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]]
];
['cg_5fmount_5ftable_5fs_2',['cg_mount_table_s',['../structcg__mount__table__s.html',1,'']]],
['cg_5fvalue_5fmax_3',['CG_VALUE_MAX',['../group__group__iterators.html#ga55d2eac2af703794651d344c073566f5',1,'iterators.h']]],
['cgexec_4',['cgexec',['../classftests_1_1cgroup_1_1Cgroup.html#aea70ccdeb742b83a428b90f85379bb6b',1,'ftests::cgroup::Cgroup']]],
- ['cgroup_5',['cgroup',['../classftests_1_1cgroup_1_1Cgroup.html',1,'ftests.cgroup.Cgroup'],['../structcgroup.html',1,'cgroup']]],
- ['cgroup_5fabstraction_5fmap_6',['cgroup_abstraction_map',['../structcgroup__abstraction__map.html',1,'']]],
- ['cgroup_5fadd_5fall_5fcontrollers_7',['cgroup_add_all_controllers',['../group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1',1,'cgroup_add_all_controllers(struct cgroup *cgroup): wrapper.c'],['../group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1',1,'cgroup_add_all_controllers(struct cgroup *cgrp): wrapper.c']]],
- ['cgroup_5fadd_5fcontroller_8',['cgroup_add_controller',['../group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5',1,'cgroup_add_controller(struct cgroup *cgroup, const char *name): wrapper.c'],['../group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5',1,'cgroup_add_controller(struct cgroup *cgrp, const char *name): wrapper.c']]],
- ['cgroup_5fadd_5fvalue_5fbool_9',['cgroup_add_value_bool',['../group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3',1,'cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c'],['../group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3',1,'cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c']]],
- ['cgroup_5fadd_5fvalue_5fint64_10',['cgroup_add_value_int64',['../group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087',1,'cgroup_add_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c'],['../group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087',1,'cgroup_add_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c']]],
- ['cgroup_5fadd_5fvalue_5fstring_11',['cgroup_add_value_string',['../group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029',1,'cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c'],['../group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029',1,'cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c']]],
- ['cgroup_5fadd_5fvalue_5fuint64_12',['cgroup_add_value_uint64',['../group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb',1,'cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c'],['../group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb',1,'cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c']]],
- ['cgroup_5fattach_5ftask_13',['cgroup_attach_task',['../group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7',1,'cgroup_attach_task(struct cgroup *cgroup): api.c'],['../group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7',1,'cgroup_attach_task(struct cgroup *cgrp): api.c']]],
- ['cgroup_5fattach_5ftask_5fpid_14',['cgroup_attach_task_pid',['../group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d',1,'cgroup_attach_task_pid(struct cgroup *cgroup, pid_t tid): api.c'],['../group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d',1,'cgroup_attach_task_pid(struct cgroup *cgrp, pid_t tid): api.c']]],
- ['cgroup_5fattach_5fthread_5ftid_15',['cgroup_attach_thread_tid',['../group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee',1,'cgroup_attach_thread_tid(struct cgroup *cgroup, pid_t tid): api.c'],['../group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee',1,'cgroup_attach_thread_tid(struct cgroup *cgroup, pid_t tid): api.c']]],
- ['cgroup_5fchange_5fall_5fcgroups_16',['cgroup_change_all_cgroups',['../group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2',1,'cgroup_change_all_cgroups(void): api.c'],['../group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2',1,'cgroup_change_all_cgroups(void): api.c']]],
- ['cgroup_5fchange_5fcgroup_5fflags_17',['cgroup_change_cgroup_flags',['../group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea',1,'cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags): api.c'],['../group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea',1,'cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags): api.c']]],
- ['cgroup_5fchange_5fcgroup_5fpath_18',['cgroup_change_cgroup_path',['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *dest, pid_t pid, const char *const controllers[]): api.c'],['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *path, pid_t pid, const char *const controllers[]): api.c']]],
- ['cgroup_5fchange_5fcgroup_5fuid_5fgid_19',['cgroup_change_cgroup_uid_gid',['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c'],['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c']]],
- ['cgroup_5fchange_5fcgroup_5fuid_5fgid_5fflags_20',['cgroup_change_cgroup_uid_gid_flags',['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c'],['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c']]],
- ['cgroup_5fcompare_5fcgroup_21',['cgroup_compare_cgroup',['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgrp_a, struct cgroup *cgrp_b): wrapper.c'],['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgroup_a, struct cgroup *cgroup_b): wrapper.c']]],
- ['cgroup_5fcompare_5fcontrollers_22',['cgroup_compare_controllers',['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c'],['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c']]],
- ['cgroup_5fconfig_5fcreate_5ftemplate_5fgroup_23',['cgroup_config_create_template_group',['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgrp, char *template_name, int flags): config.c'],['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgroup, char *template_name, int flags): config.c']]],
- ['cgroup_5fconfig_5fload_5fconfig_24',['cgroup_config_load_config',['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c'],['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c']]],
- ['cgroup_5fconfig_5fset_5fdefault_25',['cgroup_config_set_default',['../group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea',1,'cgroup_config_set_default(struct cgroup *new_default): config.c'],['../group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea',1,'cgroup_config_set_default(struct cgroup *new_default): config.c']]],
- ['cgroup_5fconfig_5funload_5fconfig_26',['cgroup_config_unload_config',['../group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085',1,'cgroup_config_unload_config(const char *pathname, int flags): config.c'],['../group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085',1,'cgroup_config_unload_config(const char *pathname, int flags): config.c']]],
- ['cgroup_5fcontroller_27',['cgroup_controller',['../structcgroup__controller.html',1,'']]],
- ['cgroup_5fcopy_5fcgroup_28',['cgroup_copy_cgroup',['../group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a',1,'cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src): api.c'],['../group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a',1,'cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src): api.c']]],
- ['cgroup_5fcreate_5fcgroup_29',['cgroup_create_cgroup',['../group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd',1,'cgroup_create_cgroup(struct cgroup *cgrp, int ignore_ownership): api.c'],['../group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd',1,'cgroup_create_cgroup(struct cgroup *cgrp, int ignore_ownership): api.c']]],
- ['cgroup_5fcreate_5fcgroup_5ffrom_5fparent_30',['cgroup_create_cgroup_from_parent',['../group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841',1,'cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership): api.c'],['../group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841',1,'cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership): api.c']]],
- ['cgroup_5fdelete_5fcgroup_31',['cgroup_delete_cgroup',['../group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16',1,'cgroup_delete_cgroup(struct cgroup *cgrp, int ignore_migration): api.c'],['../group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16',1,'cgroup_delete_cgroup(struct cgroup *cgrp, int ignore_migration): api.c']]],
- ['cgroup_5fdelete_5fcgroup_5fext_32',['cgroup_delete_cgroup_ext',['../group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8',1,'cgroup_delete_cgroup_ext(struct cgroup *cgrp, int flags): api.c'],['../group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8',1,'cgroup_delete_cgroup_ext(struct cgroup *cgrp, int flags): api.c']]],
- ['cgroup_5fdictionary_33',['cgroup_dictionary',['../structcgroup__dictionary.html',1,'']]],
- ['cgroup_5fdictionary_5fitem_34',['cgroup_dictionary_item',['../structcgroup__dictionary__item.html',1,'']]],
- ['cgroup_5fdictionary_5fiterator_35',['cgroup_dictionary_iterator',['../structcgroup__dictionary__iterator.html',1,'']]],
- ['cgroup_5ffile_5finfo_36',['cgroup_file_info',['../structcgroup__file__info.html',1,'']]],
- ['cgroup_5ffile_5ftype_37',['cgroup_file_type',['../group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444',1,'iterators.h']]],
- ['cgroup_5ffile_5ftype_5fdir_38',['CGROUP_FILE_TYPE_DIR',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3',1,'iterators.h']]],
- ['cgroup_5ffile_5ftype_5ffile_39',['CGROUP_FILE_TYPE_FILE',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444ad925cc45f1b34fe80e14fc6b05269740',1,'iterators.h']]],
- ['cgroup_5ffile_5ftype_5fother_40',['CGROUP_FILE_TYPE_OTHER',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b',1,'iterators.h']]],
- ['cgroup_5ffree_41',['cgroup_free',['../group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80',1,'cgroup_free(struct cgroup **cgrp): wrapper.c'],['../group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80',1,'cgroup_free(struct cgroup **cgroup): wrapper.c']]],
- ['cgroup_5ffree_5fcontrollers_42',['cgroup_free_controllers',['../group__group__groups.html#ga4104e108e85a8576c878822f353b4e39',1,'cgroup_free_controllers(struct cgroup *cgroup): wrapper.c'],['../group__group__groups.html#ga4104e108e85a8576c878822f353b4e39',1,'cgroup_free_controllers(struct cgroup *cgrp): wrapper.c']]],
- ['cgroup_5fget_5fall_5fcontroller_5fbegin_43',['cgroup_get_all_controller_begin',['../group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e',1,'cgroup_get_all_controller_begin(void **handle, struct controller_data *info): api.c'],['../group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e',1,'cgroup_get_all_controller_begin(void **handle, struct controller_data *info): api.c']]],
- ['cgroup_5fget_5fall_5fcontroller_5fend_44',['cgroup_get_all_controller_end',['../group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8',1,'cgroup_get_all_controller_end(void **handle): api.c'],['../group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8',1,'cgroup_get_all_controller_end(void **handle): api.c']]],
- ['cgroup_5fget_5fall_5fcontroller_5fnext_45',['cgroup_get_all_controller_next',['../group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809',1,'cgroup_get_all_controller_next(void **handle, struct controller_data *info): api.c'],['../group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809',1,'cgroup_get_all_controller_next(void **handle, struct controller_data *info): api.c']]],
- ['cgroup_5fget_5fcgroup_46',['cgroup_get_cgroup',['../group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f',1,'cgroup_get_cgroup(struct cgroup *cgrp): api.c'],['../group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f',1,'cgroup_get_cgroup(struct cgroup *cgrp): api.c']]],
- ['cgroup_5fget_5fcgroup_5fname_47',['cgroup_get_cgroup_name',['../group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054',1,'cgroup_get_cgroup_name(struct cgroup *cgroup): wrapper.c'],['../group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054',1,'cgroup_get_cgroup_name(struct cgroup *cgrp): wrapper.c']]],
- ['cgroup_5fget_5fcontroller_48',['cgroup_get_controller',['../group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6',1,'cgroup_get_controller(struct cgroup *cgroup, const char *name): wrapper.c'],['../group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6',1,'cgroup_get_controller(struct cgroup *cgrp, const char *name): wrapper.c']]],
- ['cgroup_5fget_5fcontroller_5fbegin_49',['cgroup_get_controller_begin',['../group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44',1,'cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info): api.c'],['../group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44',1,'cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info): api.c']]],
- ['cgroup_5fget_5fcontroller_5fby_5findex_50',['cgroup_get_controller_by_index',['../group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a',1,'cgroup_get_controller_by_index(struct cgroup *cgrp, int index): api.c'],['../group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a',1,'cgroup_get_controller_by_index(struct cgroup *cgrp, int index): api.c']]],
- ['cgroup_5fget_5fcontroller_5fcount_51',['cgroup_get_controller_count',['../group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3',1,'cgroup_get_controller_count(struct cgroup *cgrp): api.c'],['../group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3',1,'cgroup_get_controller_count(struct cgroup *cgrp): api.c']]],
- ['cgroup_5fget_5fcontroller_5fend_52',['cgroup_get_controller_end',['../group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c',1,'cgroup_get_controller_end(void **handle): api.c'],['../group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c',1,'cgroup_get_controller_end(void **handle): api.c']]],
- ['cgroup_5fget_5fcontroller_5fname_53',['cgroup_get_controller_name',['../group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e',1,'cgroup_get_controller_name(struct cgroup_controller *controller): api.c'],['../group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e',1,'cgroup_get_controller_name(struct cgroup_controller *controller): api.c']]],
- ['cgroup_5fget_5fcontroller_5fnext_54',['cgroup_get_controller_next',['../group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d',1,'cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info): api.c'],['../group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d',1,'cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info): api.c']]],
- ['cgroup_5fget_5fcontroller_5fversion_55',['cgroup_get_controller_version',['../group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f',1,'cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version): api.c'],['../group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f',1,'cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version): api.c']]],
- ['cgroup_5fget_5fcurrent_5fcontroller_5fpath_56',['cgroup_get_current_controller_path',['../group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e',1,'cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path): api.c'],['../group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e',1,'cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path): api.c']]],
- ['cgroup_5fget_5flast_5ferrno_57',['cgroup_get_last_errno',['../group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46',1,'cgroup_get_last_errno(void): api.c'],['../group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46',1,'cgroup_get_last_errno(void): api.c']]],
- ['cgroup_5fget_5floglevel_58',['cgroup_get_loglevel',['../group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4',1,'cgroup_get_loglevel(void): log.c'],['../group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4',1,'cgroup_get_loglevel(void): log.c']]],
- ['cgroup_5fget_5fprocs_59',['cgroup_get_procs',['../group__group__groups.html#ga65ece0f619100492d758fbeb3788358a',1,'cgroup_get_procs(const char *name, const char *controller, pid_t **pids, int *size): api.c'],['../group__group__groups.html#ga65ece0f619100492d758fbeb3788358a',1,'cgroup_get_procs(const char *name, const char *controller, pid_t **pids, int *size): api.c']]],
- ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fbegin_60',['cgroup_get_subsys_mount_point_begin',['../group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8',1,'cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path): api.c'],['../group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8',1,'cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path): api.c']]],
- ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fend_61',['cgroup_get_subsys_mount_point_end',['../group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb',1,'cgroup_get_subsys_mount_point_end(void **handle): api.c'],['../group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb',1,'cgroup_get_subsys_mount_point_end(void **handle): api.c']]],
- ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fnext_62',['cgroup_get_subsys_mount_point_next',['../group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789',1,'cgroup_get_subsys_mount_point_next(void **handle, char *path): api.c'],['../group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789',1,'cgroup_get_subsys_mount_point_next(void **handle, char *path): api.c']]],
- ['cgroup_5fget_5ftask_5fbegin_63',['cgroup_get_task_begin',['../group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6',1,'cgroup_get_task_begin(const char *cgrp, const char *controller, void **handle, pid_t *pid): api.c'],['../group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6',1,'cgroup_get_task_begin(const char *cgrp, const char *controller, void **handle, pid_t *pid): api.c']]],
- ['cgroup_5fget_5ftask_5fend_64',['cgroup_get_task_end',['../group__group__iterators.html#gaeb955e5f4da551268380b1271d478816',1,'cgroup_get_task_end(void **handle): api.c'],['../group__group__iterators.html#gaeb955e5f4da551268380b1271d478816',1,'cgroup_get_task_end(void **handle): api.c']]],
- ['cgroup_5fget_5ftask_5fnext_65',['cgroup_get_task_next',['../group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e',1,'cgroup_get_task_next(void **handle, pid_t *pid): api.c'],['../group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e',1,'cgroup_get_task_next(void **handle, pid_t *pid): api.c']]],
- ['cgroup_5fget_5fthreads_66',['cgroup_get_threads',['../group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300',1,'cgroup_get_threads(const char *name, const char *controller, pid_t **pids, int *size): api.c'],['../group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300',1,'cgroup_get_threads(const char *name, const char *controller, pid_t **pids, int *size): api.c']]],
- ['cgroup_5fget_5fuid_5fgid_67',['cgroup_get_uid_gid',['../group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412',1,'cgroup_get_uid_gid(struct cgroup *cgrp, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid): wrapper.c'],['../group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412',1,'cgroup_get_uid_gid(struct cgroup *cgroup, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fbool_68',['cgroup_get_value_bool',['../group__group__groups.html#gab95007148eac89b7e935d93a4524787b',1,'cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value): wrapper.c'],['../group__group__groups.html#gab95007148eac89b7e935d93a4524787b',1,'cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fint64_69',['cgroup_get_value_int64',['../group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526',1,'cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value): wrapper.c'],['../group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526',1,'cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fname_70',['cgroup_get_value_name',['../group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b',1,'cgroup_get_value_name(struct cgroup_controller *controller, int index): wrapper.c'],['../group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b',1,'cgroup_get_value_name(struct cgroup_controller *controller, int index): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fname_5fcount_71',['cgroup_get_value_name_count',['../group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d',1,'cgroup_get_value_name_count(struct cgroup_controller *controller): wrapper.c'],['../group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d',1,'cgroup_get_value_name_count(struct cgroup_controller *controller): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fstring_72',['cgroup_get_value_string',['../group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9',1,'cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value): wrapper.c'],['../group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9',1,'cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value): wrapper.c']]],
- ['cgroup_5fget_5fvalue_5fuint64_73',['cgroup_get_value_uint64',['../group__group__groups.html#ga951861259c0373895bfb637fce337312',1,'cgroup_get_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t *value): wrapper.c'],['../group__group__groups.html#ga951861259c0373895bfb637fce337312',1,'cgroup_get_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t *value): wrapper.c']]],
- ['cgroup_5fgroup_5fspec_74',['cgroup_group_spec',['../structcgroup__group__spec.html',1,'']]],
- ['cgroup_5finfo_75',['cgroup_info',['../structcgroup__info.html',1,'']]],
- ['cgroup_5finit_5frules_5fcache_76',['cgroup_init_rules_cache',['../group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d',1,'cgroup_init_rules_cache(void): api.c'],['../group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d',1,'cgroup_init_rules_cache(void): api.c']]],
- ['cgroup_5finit_5ftemplates_5fcache_77',['cgroup_init_templates_cache',['../group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00',1,'cgroup_init_templates_cache(char *pathname): config.c'],['../group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00',1,'cgroup_init_templates_cache(char *pathname): config.c']]],
- ['cgroup_5flist_5fmount_5fpoints_78',['cgroup_list_mount_points',['../group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82',1,'cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths): api.c'],['../group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82',1,'cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths): api.c']]],
- ['cgroup_5fload_5ftemplates_5fcache_5ffrom_5ffiles_79',['cgroup_load_templates_cache_from_files',['../group__group__config.html#ga924860998c37da53cababe24163fc89b',1,'cgroup_load_templates_cache_from_files(int *file_index): config.c'],['../group__group__config.html#ga924860998c37da53cababe24163fc89b',1,'cgroup_load_templates_cache_from_files(int *file_index): config.c']]],
- ['cgroup_5flog_80',['cgroup_log',['../group__group__log.html#gab514ad5d83422ddfe479bdf651e80958',1,'cgroup_log(int loglevel, const char *fmt,...): log.c'],['../group__group__log.html#gab514ad5d83422ddfe479bdf651e80958',1,'cgroup_log(int level, const char *fmt,...): log.c']]],
- ['cgroup_5flog_5fcont_81',['CGROUP_LOG_CONT',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa915b87fe26cc45572e40508dc6d62e88',1,'log.h']]],
- ['cgroup_5flog_5fdebug_82',['CGROUP_LOG_DEBUG',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa86b4157fb38d9f8053c6b7429bd26c72',1,'log.h']]],
- ['cgroup_5flog_5ferror_83',['CGROUP_LOG_ERROR',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa4dd44215cd3553e79dbf91eb9ca418a2',1,'log.h']]],
- ['cgroup_5flog_5finfo_84',['CGROUP_LOG_INFO',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aad66ab51dba078ffc3b1c6d397053f9e2',1,'log.h']]],
- ['cgroup_5flog_5flevel_85',['cgroup_log_level',['../group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a',1,'log.h']]],
- ['cgroup_5flog_5fwarning_86',['CGROUP_LOG_WARNING',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aaa99ec9e854a543901bddf854d1960057',1,'log.h']]],
- ['cgroup_5fmodify_5fcgroup_87',['cgroup_modify_cgroup',['../group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed',1,'cgroup_modify_cgroup(struct cgroup *cgrp): api.c'],['../group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed',1,'cgroup_modify_cgroup(struct cgroup *cgrp): api.c']]],
- ['cgroup_5fmount_5fpoint_88',['cgroup_mount_point',['../structcgroup__mount__point.html',1,'']]],
- ['cgroup_5fnew_5fcgroup_89',['cgroup_new_cgroup',['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c'],['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c']]],
- ['cgroup_5fparse_5flog_5flevel_5fstr_90',['cgroup_parse_log_level_str',['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c'],['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c']]],
- ['cgroup_5fprint_5frules_5fconfig_91',['cgroup_print_rules_config',['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c'],['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c']]],
- ['cgroup_5fread_5fstats_5fbegin_92',['cgroup_read_stats_begin',['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
- ['cgroup_5fread_5fstats_5fend_93',['cgroup_read_stats_end',['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c'],['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c']]],
- ['cgroup_5fread_5fstats_5fnext_94',['cgroup_read_stats_next',['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
- ['cgroup_5fread_5fvalue_5fbegin_95',['cgroup_read_value_begin',['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c'],['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c']]],
- ['cgroup_5fread_5fvalue_5fend_96',['cgroup_read_value_end',['../group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21',1,'cgroup_read_value_end(void **handle): api.c'],['../group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21',1,'cgroup_read_value_end(void **handle): api.c']]],
- ['cgroup_5fread_5fvalue_5fnext_97',['cgroup_read_value_next',['../group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc',1,'cgroup_read_value_next(void **handle, char *buffer, int max): api.c'],['../group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc',1,'cgroup_read_value_next(void **handle, char *buffer, int max): api.c']]],
- ['cgroup_5fregister_5funchanged_5fprocess_98',['cgroup_register_unchanged_process',['../group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c',1,'cgroup_register_unchanged_process(pid_t pid, int flags): api.c'],['../group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c',1,'cgroup_register_unchanged_process(pid_t pid, int flags): api.c']]],
- ['cgroup_5freload_5fcached_5frules_99',['cgroup_reload_cached_rules',['../group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce',1,'cgroup_reload_cached_rules(void): api.c'],['../group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce',1,'cgroup_reload_cached_rules(void): api.c']]],
- ['cgroup_5freload_5fcached_5ftemplates_100',['cgroup_reload_cached_templates',['../group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5',1,'cgroup_reload_cached_templates(char *pathname): config.c'],['../group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5',1,'cgroup_reload_cached_templates(char *pathname): config.c']]],
- ['cgroup_5frule_101',['cgroup_rule',['../structcgroup__rule.html',1,'']]],
- ['cgroup_5frule_5flist_102',['cgroup_rule_list',['../structcgroup__rule__list.html',1,'']]],
- ['cgroup_5frules_5fdata_103',['cgroup_rules_data',['../structcgroup__rules__data.html',1,'']]],
- ['cgroup_5fset_5fdefault_5flogger_104',['cgroup_set_default_logger',['../group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7',1,'cgroup_set_default_logger(int loglevel): log.c'],['../group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7',1,'cgroup_set_default_logger(int level): log.c']]],
- ['cgroup_5fset_5flogger_105',['cgroup_set_logger',['../group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0',1,'cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata): log.c'],['../group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0',1,'cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata): log.c']]],
- ['cgroup_5fset_5floglevel_106',['cgroup_set_loglevel',['../group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c',1,'cgroup_set_loglevel(int loglevel): log.c'],['../group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c',1,'cgroup_set_loglevel(int loglevel): log.c']]],
- ['cgroup_5fset_5fpermissions_107',['cgroup_set_permissions',['../group__group__groups.html#gae8c8f601680e79150608073a55afcac0',1,'cgroup_set_permissions(struct cgroup *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm): api.c'],['../group__group__groups.html#gae8c8f601680e79150608073a55afcac0',1,'cgroup_set_permissions(struct cgroup *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm): api.c']]],
- ['cgroup_5fset_5fuid_5fgid_108',['cgroup_set_uid_gid',['../group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040',1,'cgroup_set_uid_gid(struct cgroup *cgrp, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid): wrapper.c'],['../group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040',1,'cgroup_set_uid_gid(struct cgroup *cgroup, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid): wrapper.c']]],
- ['cgroup_5fset_5fvalue_5fbool_109',['cgroup_set_value_bool',['../group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7',1,'cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c'],['../group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7',1,'cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c']]],
- ['cgroup_5fset_5fvalue_5fint64_110',['cgroup_set_value_int64',['../group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956',1,'cgroup_set_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c'],['../group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956',1,'cgroup_set_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c']]],
- ['cgroup_5fset_5fvalue_5fstring_111',['cgroup_set_value_string',['../group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82',1,'cgroup_set_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c'],['../group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82',1,'cgroup_set_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c']]],
- ['cgroup_5fset_5fvalue_5fuint64_112',['cgroup_set_value_uint64',['../group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5',1,'cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c'],['../group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5',1,'cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c']]],
- ['cgroup_5fsetup_5fmode_113',['cgroup_setup_mode',['../group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da',1,'cgroup_setup_mode(void): api.c'],['../group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da',1,'cgroup_setup_mode(void): api.c']]],
- ['cgroup_5fstat_114',['cgroup_stat',['../structcgroup__stat.html',1,'']]],
- ['cgroup_5fstrerror_115',['cgroup_strerror',['../group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a',1,'cgroup_strerror(int code): api.c'],['../group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a',1,'cgroup_strerror(int code): api.c']]],
- ['cgroup_5fstring_5flist_116',['cgroup_string_list',['../structcgroup__string__list.html',1,'']]],
- ['cgroup_5fsystemd_5fopts_117',['cgroup_systemd_opts',['../structcgroup__systemd__opts.html',1,'']]],
- ['cgroup_5fsystemd_5fscope_5fopts_118',['cgroup_systemd_scope_opts',['../structcgroup__systemd__scope__opts.html',1,'']]],
- ['cgroup_5ftemplates_5fcache_5fset_5fsource_5ffiles_119',['cgroup_templates_cache_set_source_files',['../group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422',1,'cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files): config.c'],['../group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422',1,'cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files): config.c']]],
- ['cgroup_5ftree_5fhandle_120',['cgroup_tree_handle',['../structcgroup__tree__handle.html',1,'']]],
- ['cgroup_5funload_5fcgroups_121',['cgroup_unload_cgroups',['../group__group__config.html#ga85b285712354faca495193075035938d',1,'cgroup_unload_cgroups(void): config.c'],['../group__group__config.html#ga85b285712354faca495193075035938d',1,'cgroup_unload_cgroups(void): config.c']]],
- ['cgroup_5fwalk_5ftree_5fbegin_122',['cgroup_walk_tree_begin',['../group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68',1,'cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level): api.c'],['../group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68',1,'cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level): api.c']]],
- ['cgroup_5fwalk_5ftree_5fend_123',['cgroup_walk_tree_end',['../group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde',1,'cgroup_walk_tree_end(void **handle): api.c'],['../group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde',1,'cgroup_walk_tree_end(void **handle): api.c']]],
- ['cgroup_5fwalk_5ftree_5fnext_124',['cgroup_walk_tree_next',['../group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1',1,'cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level): api.c'],['../group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1',1,'cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level): api.c']]],
- ['cgroup_5fwalk_5ftree_5fset_5fflags_125',['cgroup_walk_tree_set_flags',['../group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8',1,'cgroup_walk_tree_set_flags(void **handle, int flags): api.c'],['../group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8',1,'cgroup_walk_tree_set_flags(void **handle, int flags): api.c']]],
- ['cgroup_5fwalk_5ftype_126',['cgroup_walk_type',['../group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3',1,'iterators.h']]],
- ['cgroup_5fwalk_5ftype_5fpost_5fdir_127',['CGROUP_WALK_TYPE_POST_DIR',['../group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3abf3c31227768960bd6622d2562aae3e1',1,'iterators.h']]],
- ['cgroup_5fwalk_5ftype_5fpre_5fdir_128',['CGROUP_WALK_TYPE_PRE_DIR',['../group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3af865296e6a0e55cff574fbb132b9f913',1,'iterators.h']]],
- ['cgroupcompareignoreruletest_129',['CgroupCompareIgnoreRuleTest',['../classCgroupCompareIgnoreRuleTest.html',1,'']]],
- ['cgroupcreatecgrouptest_130',['CgroupCreateCgroupTest',['../classCgroupCreateCgroupTest.html',1,'']]],
- ['cgrouperror_131',['CgroupError',['../classftests_1_1cgroup_1_1CgroupError.html',1,'ftests::cgroup']]],
- ['cgroupgetcgrouptest_132',['CgroupGetCgroupTest',['../classCgroupGetCgroupTest.html',1,'']]],
- ['cgroupmount_133',['CgroupMount',['../classftests_1_1cgroup_1_1CgroupMount.html',1,'ftests::cgroup']]],
- ['cgroupprocessv1mnttest_134',['CgroupProcessV1MntTest',['../classCgroupProcessV1MntTest.html',1,'']]],
- ['cgroupprocessv2mnttest_135',['CgroupProcessV2MntTest',['../classCgroupProcessV2MntTest.html',1,'']]],
- ['cgroupv2controllerenabled_136',['CgroupV2ControllerEnabled',['../classCgroupV2ControllerEnabled.html',1,'']]],
- ['cgroupversion_137',['CgroupVersion',['../classftests_1_1cgroup_1_1CgroupVersion.html',1,'ftests::cgroup']]],
- ['cgsetparserflagtest_138',['CgsetParseRFlagTest',['../classCgsetParseRFlagTest.html',1,'']]],
- ['changes_20restart_20the_20process_139',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['checksum_20for_20the_20release_20tarball_140',['13. Generate a checksum for the release tarball',['../md_doc_2internal_2release-github.html#autotoc_md21',1,'']]],
- ['checksum_20using_20the_20maintainer_20s_20key_141',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
- ['child_20hierarchy_20via_20libcgroup_20command_20line_142',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
- ['chownchmodtaskstest_143',['ChownChmodTasksTest',['../classChownChmodTasksTest.html',1,'']]],
- ['code_20changes_20restart_20the_20process_144',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
- ['code_20using_20existing_20tests_145',['Test Your Code Using Existing Tests',['../md_CONTRIBUTING.html#autotoc_md1',1,'']]],
- ['command_20line_146',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
- ['commit_20the_20version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_147',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
- ['community_148',['Interacting with the Community',['../md_CONTRIBUTING.html#autotoc_md0',1,'']]],
- ['config_149',['Config',['../classftests_1_1config_1_1Config.html',1,'ftests::config']]],
- ['configerror_150',['ConfigError',['../classftests_1_1config_1_1ConfigError.html',1,'ftests::config']]],
- ['configparser_151',['configparser',['../classftests_1_1cgroup_1_1Cgroup.html#ad02a62b22751f057e6befba23b820e8a',1,'ftests::cgroup::Cgroup']]],
- ['configuration_152',['5. Configuration',['../group__group__config.html',1,'']]],
- ['configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_153',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
- ['container_154',['Container',['../classftests_1_1container_1_1Container.html',1,'ftests::container']]],
- ['containererror_155',['ContainerError',['../classftests_1_1container_1_1ContainerError.html',1,'ftests::container']]],
- ['contribute_20to_20the_20libcgroup_20project_156',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
- ['control_5fvalue_157',['control_value',['../structcontrol__value.html',1,'']]],
- ['controller_158',['Controller',['../classftests_1_1controller_1_1Controller.html',1,'ftests::controller']]],
- ['controller_5fdata_159',['controller_data',['../structcontroller__data.html',1,'']]],
- ['correct_160',['4. Verify that the packaging is correct',['../md_doc_2internal_2release-github.html#autotoc_md12',1,'']]],
- ['coverity_161',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
- ['create_20a_20new_20github_20release_20using_20the_20associated_20tag_20and_20upload_20the_20following_20files_162',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
- ['create_20new_20release_20x_20y_20branch_163',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
- ['creating_20a_20systemd_20scope_20and_20child_20hierarchy_20via_20libcgroup_20command_20line_164',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]]
+ ['cgroup_5',['Cgroup',['../classftests_1_1cgroup_1_1Cgroup.html',1,'ftests::cgroup']]],
+ ['cgroup_6',['cgroup',['../structcgroup.html',1,'']]],
+ ['cgroup_5fabstraction_5fmap_7',['cgroup_abstraction_map',['../structcgroup__abstraction__map.html',1,'']]],
+ ['cgroup_5fadd_5fall_5fcontrollers_8',['cgroup_add_all_controllers',['../group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1',1,'cgroup_add_all_controllers(struct cgroup *cgrp): wrapper.c'],['../group__group__groups.html#ga68f90377f6183dc8b326876cd1ecf4b1',1,'cgroup_add_all_controllers(struct cgroup *cgroup): wrapper.c']]],
+ ['cgroup_5fadd_5fcontroller_9',['cgroup_add_controller',['../group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5',1,'cgroup_add_controller(struct cgroup *cgrp, const char *name): wrapper.c'],['../group__group__groups.html#ga86b514fe6f99ded356eb5e799787f3f5',1,'cgroup_add_controller(struct cgroup *cgroup, const char *name): wrapper.c']]],
+ ['cgroup_5fadd_5fvalue_5fbool_10',['cgroup_add_value_bool',['../group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3',1,'cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c'],['../group__group__groups.html#ga4b191a600f84b00ea7afd12c01d918f3',1,'cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c']]],
+ ['cgroup_5fadd_5fvalue_5fint64_11',['cgroup_add_value_int64',['../group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087',1,'cgroup_add_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c'],['../group__group__groups.html#ga6c973bb5ce99e7a91def2032f23d7087',1,'cgroup_add_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c']]],
+ ['cgroup_5fadd_5fvalue_5fstring_12',['cgroup_add_value_string',['../group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029',1,'cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c'],['../group__group__groups.html#ga4817c68ab791c09c07b663c29b3fb029',1,'cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c']]],
+ ['cgroup_5fadd_5fvalue_5fuint64_13',['cgroup_add_value_uint64',['../group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb',1,'cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c'],['../group__group__groups.html#gad9d2216205b96278c626122f8d5e63bb',1,'cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c']]],
+ ['cgroup_5fattach_5ftask_14',['cgroup_attach_task',['../group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7',1,'cgroup_attach_task(struct cgroup *cgrp): api.c'],['../group__group__tasks.html#ga221ec5280a475ef096b3604a2e4a32e7',1,'cgroup_attach_task(struct cgroup *cgroup): api.c']]],
+ ['cgroup_5fattach_5ftask_5fpid_15',['cgroup_attach_task_pid',['../group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d',1,'cgroup_attach_task_pid(struct cgroup *cgrp, pid_t tid): api.c'],['../group__group__tasks.html#ga1fcd62dd6fcfb7b6c9361702d374a96d',1,'cgroup_attach_task_pid(struct cgroup *cgroup, pid_t tid): api.c']]],
+ ['cgroup_5fattach_5fthread_5ftid_16',['cgroup_attach_thread_tid',['../group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee',1,'cgroup_attach_thread_tid(struct cgroup *cgroup, pid_t tid): api.c'],['../group__group__tasks.html#gabdb49127e5959831abb3a03e384c3dee',1,'cgroup_attach_thread_tid(struct cgroup *cgroup, pid_t tid): api.c']]],
+ ['cgroup_5fchange_5fall_5fcgroups_17',['cgroup_change_all_cgroups',['../group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2',1,'cgroup_change_all_cgroups(void): api.c'],['../group__group__tasks.html#gafc69658b012b6f1c11ba078ffccd70a2',1,'cgroup_change_all_cgroups(void): api.c']]],
+ ['cgroup_5fchange_5fcgroup_5fflags_18',['cgroup_change_cgroup_flags',['../group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea',1,'cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags): api.c'],['../group__group__tasks.html#ga368e7b8e19b3943ab6fb50e76a09e6ea',1,'cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags): api.c']]],
+ ['cgroup_5fchange_5fcgroup_5fpath_19',['cgroup_change_cgroup_path',['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *path, pid_t pid, const char *const controllers[]): api.c'],['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *dest, pid_t pid, const char *const controllers[]): api.c']]],
+ ['cgroup_5fchange_5fcgroup_5fuid_5fgid_20',['cgroup_change_cgroup_uid_gid',['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c'],['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c']]],
+ ['cgroup_5fchange_5fcgroup_5fuid_5fgid_5fflags_21',['cgroup_change_cgroup_uid_gid_flags',['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c'],['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c']]],
+ ['cgroup_5fcompare_5fcgroup_22',['cgroup_compare_cgroup',['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgrp_a, struct cgroup *cgrp_b): wrapper.c'],['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgroup_a, struct cgroup *cgroup_b): wrapper.c']]],
+ ['cgroup_5fcompare_5fcontrollers_23',['cgroup_compare_controllers',['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c'],['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c']]],
+ ['cgroup_5fconfig_5fcreate_5ftemplate_5fgroup_24',['cgroup_config_create_template_group',['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgrp, char *template_name, int flags): config.c'],['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgroup, char *template_name, int flags): config.c']]],
+ ['cgroup_5fconfig_5fload_5fconfig_25',['cgroup_config_load_config',['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c'],['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c']]],
+ ['cgroup_5fconfig_5fset_5fdefault_26',['cgroup_config_set_default',['../group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea',1,'cgroup_config_set_default(struct cgroup *new_default): config.c'],['../group__group__config.html#ga2d3a252b2c0c61c8f64cb1fc41e370ea',1,'cgroup_config_set_default(struct cgroup *new_default): config.c']]],
+ ['cgroup_5fconfig_5funload_5fconfig_27',['cgroup_config_unload_config',['../group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085',1,'cgroup_config_unload_config(const char *pathname, int flags): config.c'],['../group__group__config.html#gaff77affa0b80ccf507b4b46cc0a8c085',1,'cgroup_config_unload_config(const char *pathname, int flags): config.c']]],
+ ['cgroup_5fcontroller_28',['cgroup_controller',['../structcgroup__controller.html',1,'']]],
+ ['cgroup_5fcopy_5fcgroup_29',['cgroup_copy_cgroup',['../group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a',1,'cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src): api.c'],['../group__group__groups.html#gaa981a95e0917d3167601a4c1b392336a',1,'cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src): api.c']]],
+ ['cgroup_5fcreate_5fcgroup_30',['cgroup_create_cgroup',['../group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd',1,'cgroup_create_cgroup(struct cgroup *cgrp, int ignore_ownership): api.c'],['../group__group__groups.html#ga74c5b4a1d3bc7729af1383c131254fbd',1,'cgroup_create_cgroup(struct cgroup *cgrp, int ignore_ownership): api.c']]],
+ ['cgroup_5fcreate_5fcgroup_5ffrom_5fparent_31',['cgroup_create_cgroup_from_parent',['../group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841',1,'cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership): api.c'],['../group__group__groups.html#ga4d1f015f3fe8bad80fec2abb69e69841',1,'cgroup_create_cgroup_from_parent(struct cgroup *cgrp, int ignore_ownership): api.c']]],
+ ['cgroup_5fdelete_5fcgroup_32',['cgroup_delete_cgroup',['../group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16',1,'cgroup_delete_cgroup(struct cgroup *cgrp, int ignore_migration): api.c'],['../group__group__groups.html#ga4e21815cc612604cdf3d58fa2b34db16',1,'cgroup_delete_cgroup(struct cgroup *cgrp, int ignore_migration): api.c']]],
+ ['cgroup_5fdelete_5fcgroup_5fext_33',['cgroup_delete_cgroup_ext',['../group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8',1,'cgroup_delete_cgroup_ext(struct cgroup *cgrp, int flags): api.c'],['../group__group__groups.html#gab70ff2b86d261411262c4be31e3140e8',1,'cgroup_delete_cgroup_ext(struct cgroup *cgrp, int flags): api.c']]],
+ ['cgroup_5fdictionary_34',['cgroup_dictionary',['../structcgroup__dictionary.html',1,'']]],
+ ['cgroup_5fdictionary_5fitem_35',['cgroup_dictionary_item',['../structcgroup__dictionary__item.html',1,'']]],
+ ['cgroup_5fdictionary_5fiterator_36',['cgroup_dictionary_iterator',['../structcgroup__dictionary__iterator.html',1,'']]],
+ ['cgroup_5ffile_5finfo_37',['cgroup_file_info',['../structcgroup__file__info.html',1,'']]],
+ ['cgroup_5ffile_5ftype_38',['cgroup_file_type',['../group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444',1,'iterators.h']]],
+ ['cgroup_5ffile_5ftype_5fdir_39',['CGROUP_FILE_TYPE_DIR',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a5418798fc4bf9634429c6af167a0e7c3',1,'iterators.h']]],
+ ['cgroup_5ffile_5ftype_5ffile_40',['CGROUP_FILE_TYPE_FILE',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444ad925cc45f1b34fe80e14fc6b05269740',1,'iterators.h']]],
+ ['cgroup_5ffile_5ftype_5fother_41',['CGROUP_FILE_TYPE_OTHER',['../group__group__iterators.html#gga608b4aa32e2db58fed34771a6a272444a24e202c59f318e63ad8cafcc1b4b102b',1,'iterators.h']]],
+ ['cgroup_5ffree_42',['cgroup_free',['../group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80',1,'cgroup_free(struct cgroup **cgrp): wrapper.c'],['../group__group__groups.html#ga7e719c74424040d0d8d3a13d66080a80',1,'cgroup_free(struct cgroup **cgroup): wrapper.c']]],
+ ['cgroup_5ffree_5fcontrollers_43',['cgroup_free_controllers',['../group__group__groups.html#ga4104e108e85a8576c878822f353b4e39',1,'cgroup_free_controllers(struct cgroup *cgrp): wrapper.c'],['../group__group__groups.html#ga4104e108e85a8576c878822f353b4e39',1,'cgroup_free_controllers(struct cgroup *cgroup): wrapper.c']]],
+ ['cgroup_5fget_5fall_5fcontroller_5fbegin_44',['cgroup_get_all_controller_begin',['../group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e',1,'cgroup_get_all_controller_begin(void **handle, struct controller_data *info): api.c'],['../group__group__iterators.html#gad48ef653388ca6739a9b6bbb9d7da82e',1,'cgroup_get_all_controller_begin(void **handle, struct controller_data *info): api.c']]],
+ ['cgroup_5fget_5fall_5fcontroller_5fend_45',['cgroup_get_all_controller_end',['../group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8',1,'cgroup_get_all_controller_end(void **handle): api.c'],['../group__group__iterators.html#ga0c467d42a2c9a916a0edd339a6d7afc8',1,'cgroup_get_all_controller_end(void **handle): api.c']]],
+ ['cgroup_5fget_5fall_5fcontroller_5fnext_46',['cgroup_get_all_controller_next',['../group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809',1,'cgroup_get_all_controller_next(void **handle, struct controller_data *info): api.c'],['../group__group__iterators.html#ga3d98a04b29b1fe409db1114b7aa76809',1,'cgroup_get_all_controller_next(void **handle, struct controller_data *info): api.c']]],
+ ['cgroup_5fget_5fcgroup_47',['cgroup_get_cgroup',['../group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f',1,'cgroup_get_cgroup(struct cgroup *cgrp): api.c'],['../group__group__groups.html#ga25ef7e1c839c682e4bb6bab4bd24c37f',1,'cgroup_get_cgroup(struct cgroup *cgrp): api.c']]],
+ ['cgroup_5fget_5fcgroup_5fname_48',['cgroup_get_cgroup_name',['../group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054',1,'cgroup_get_cgroup_name(struct cgroup *cgrp): wrapper.c'],['../group__group__groups.html#ga7d759f21861ed546c12094cabc0b7054',1,'cgroup_get_cgroup_name(struct cgroup *cgroup): wrapper.c']]],
+ ['cgroup_5fget_5fcontroller_49',['cgroup_get_controller',['../group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6',1,'cgroup_get_controller(struct cgroup *cgrp, const char *name): wrapper.c'],['../group__group__groups.html#gafbc8bd483ee6fbd3b1ccbbd159beccf6',1,'cgroup_get_controller(struct cgroup *cgroup, const char *name): wrapper.c']]],
+ ['cgroup_5fget_5fcontroller_5fbegin_50',['cgroup_get_controller_begin',['../group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44',1,'cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info): api.c'],['../group__group__iterators.html#ga5f9f21138f9b18912a16b21a45b53c44',1,'cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fby_5findex_51',['cgroup_get_controller_by_index',['../group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a',1,'cgroup_get_controller_by_index(struct cgroup *cgrp, int index): api.c'],['../group__group__groups.html#gaba11ac0b3b74400501a1b030dfd7be9a',1,'cgroup_get_controller_by_index(struct cgroup *cgrp, int index): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fcount_52',['cgroup_get_controller_count',['../group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3',1,'cgroup_get_controller_count(struct cgroup *cgrp): api.c'],['../group__group__groups.html#ga42d5c13ecb8d9d7e625bb473034a26c3',1,'cgroup_get_controller_count(struct cgroup *cgrp): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fend_53',['cgroup_get_controller_end',['../group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c',1,'cgroup_get_controller_end(void **handle): api.c'],['../group__group__iterators.html#gab485cda2bc9640bacbf61f1953ae750c',1,'cgroup_get_controller_end(void **handle): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fname_54',['cgroup_get_controller_name',['../group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e',1,'cgroup_get_controller_name(struct cgroup_controller *controller): api.c'],['../group__group__groups.html#gac13c5570894e6581bd1ebbdcbb73c74e',1,'cgroup_get_controller_name(struct cgroup_controller *controller): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fnext_55',['cgroup_get_controller_next',['../group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d',1,'cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info): api.c'],['../group__group__iterators.html#ga926b70423b6c087c21a14670cd23cd7d',1,'cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info): api.c']]],
+ ['cgroup_5fget_5fcontroller_5fversion_56',['cgroup_get_controller_version',['../group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f',1,'cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version): api.c'],['../group__group__groups.html#ga452d8c5e95c8d694e26e7efda045360f',1,'cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version): api.c']]],
+ ['cgroup_5fget_5fcurrent_5fcontroller_5fpath_57',['cgroup_get_current_controller_path',['../group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e',1,'cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path): api.c'],['../group__group__tasks.html#ga6f2c17b99cf2526cb46df4769eb3f46e',1,'cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path): api.c']]],
+ ['cgroup_5fget_5flast_5ferrno_58',['cgroup_get_last_errno',['../group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46',1,'cgroup_get_last_errno(void): api.c'],['../group__group__errors.html#ga29057c4aec05bef2b6bf2855ae5d5d46',1,'cgroup_get_last_errno(void): api.c']]],
+ ['cgroup_5fget_5floglevel_59',['cgroup_get_loglevel',['../group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4',1,'cgroup_get_loglevel(void): log.c'],['../group__group__log.html#ga75c24d59f2fcf3320575a40befcd66d4',1,'cgroup_get_loglevel(void): log.c']]],
+ ['cgroup_5fget_5fprocs_60',['cgroup_get_procs',['../group__group__groups.html#ga65ece0f619100492d758fbeb3788358a',1,'cgroup_get_procs(const char *name, const char *controller, pid_t **pids, int *size): api.c'],['../group__group__groups.html#ga65ece0f619100492d758fbeb3788358a',1,'cgroup_get_procs(const char *name, const char *controller, pid_t **pids, int *size): api.c']]],
+ ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fbegin_61',['cgroup_get_subsys_mount_point_begin',['../group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8',1,'cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path): api.c'],['../group__group__iterators.html#ga18a3c6fe7da42b9da96ce34dce1e31b8',1,'cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path): api.c']]],
+ ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fend_62',['cgroup_get_subsys_mount_point_end',['../group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb',1,'cgroup_get_subsys_mount_point_end(void **handle): api.c'],['../group__group__iterators.html#ga9c9b0f1921c205bd25bfc6c1d20486eb',1,'cgroup_get_subsys_mount_point_end(void **handle): api.c']]],
+ ['cgroup_5fget_5fsubsys_5fmount_5fpoint_5fnext_63',['cgroup_get_subsys_mount_point_next',['../group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789',1,'cgroup_get_subsys_mount_point_next(void **handle, char *path): api.c'],['../group__group__iterators.html#ga3d66997158cb8a334317923ad94cc789',1,'cgroup_get_subsys_mount_point_next(void **handle, char *path): api.c']]],
+ ['cgroup_5fget_5ftask_5fbegin_64',['cgroup_get_task_begin',['../group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6',1,'cgroup_get_task_begin(const char *cgrp, const char *controller, void **handle, pid_t *pid): api.c'],['../group__group__iterators.html#gad194c8c62288dd37349ed947c91217d6',1,'cgroup_get_task_begin(const char *cgrp, const char *controller, void **handle, pid_t *pid): api.c']]],
+ ['cgroup_5fget_5ftask_5fend_65',['cgroup_get_task_end',['../group__group__iterators.html#gaeb955e5f4da551268380b1271d478816',1,'cgroup_get_task_end(void **handle): api.c'],['../group__group__iterators.html#gaeb955e5f4da551268380b1271d478816',1,'cgroup_get_task_end(void **handle): api.c']]],
+ ['cgroup_5fget_5ftask_5fnext_66',['cgroup_get_task_next',['../group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e',1,'cgroup_get_task_next(void **handle, pid_t *pid): api.c'],['../group__group__iterators.html#gaf3a0364682b7449ddccfb0862bbb565e',1,'cgroup_get_task_next(void **handle, pid_t *pid): api.c']]],
+ ['cgroup_5fget_5fthreads_67',['cgroup_get_threads',['../group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300',1,'cgroup_get_threads(const char *name, const char *controller, pid_t **pids, int *size): api.c'],['../group__group__groups.html#ga5a9cb81b0a1e0f3bd08599084d4ae300',1,'cgroup_get_threads(const char *name, const char *controller, pid_t **pids, int *size): api.c']]],
+ ['cgroup_5fget_5fuid_5fgid_68',['cgroup_get_uid_gid',['../group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412',1,'cgroup_get_uid_gid(struct cgroup *cgrp, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid): wrapper.c'],['../group__group__groups.html#ga3b560f12d9d50c177cc48d5016c93412',1,'cgroup_get_uid_gid(struct cgroup *cgroup, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fbool_69',['cgroup_get_value_bool',['../group__group__groups.html#gab95007148eac89b7e935d93a4524787b',1,'cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value): wrapper.c'],['../group__group__groups.html#gab95007148eac89b7e935d93a4524787b',1,'cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fint64_70',['cgroup_get_value_int64',['../group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526',1,'cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value): wrapper.c'],['../group__group__groups.html#ga0fe9b05f26b3cab21fc446c9a2700526',1,'cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fname_71',['cgroup_get_value_name',['../group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b',1,'cgroup_get_value_name(struct cgroup_controller *controller, int index): wrapper.c'],['../group__group__groups.html#ga9d01743fd3f97014e08fc67149ec5f0b',1,'cgroup_get_value_name(struct cgroup_controller *controller, int index): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fname_5fcount_72',['cgroup_get_value_name_count',['../group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d',1,'cgroup_get_value_name_count(struct cgroup_controller *controller): wrapper.c'],['../group__group__groups.html#ga25115085978ce2a8d671e7876cc49c1d',1,'cgroup_get_value_name_count(struct cgroup_controller *controller): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fstring_73',['cgroup_get_value_string',['../group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9',1,'cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value): wrapper.c'],['../group__group__groups.html#gafaa51e5ffe09f8ad05585a1d3b6f7fa9',1,'cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value): wrapper.c']]],
+ ['cgroup_5fget_5fvalue_5fuint64_74',['cgroup_get_value_uint64',['../group__group__groups.html#ga951861259c0373895bfb637fce337312',1,'cgroup_get_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t *value): wrapper.c'],['../group__group__groups.html#ga951861259c0373895bfb637fce337312',1,'cgroup_get_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t *value): wrapper.c']]],
+ ['cgroup_5fgroup_5fspec_75',['cgroup_group_spec',['../structcgroup__group__spec.html',1,'']]],
+ ['cgroup_5finfo_76',['cgroup_info',['../structcgroup__info.html',1,'']]],
+ ['cgroup_5finit_5frules_5fcache_77',['cgroup_init_rules_cache',['../group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d',1,'cgroup_init_rules_cache(void): api.c'],['../group__group__tasks.html#gad7fa5a2c4db08d31da5bfbecaf482d3d',1,'cgroup_init_rules_cache(void): api.c']]],
+ ['cgroup_5finit_5ftemplates_5fcache_78',['cgroup_init_templates_cache',['../group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00',1,'cgroup_init_templates_cache(char *pathname): config.c'],['../group__group__config.html#ga6f8c41bb920565e674787fe6dabaef00',1,'cgroup_init_templates_cache(char *pathname): config.c']]],
+ ['cgroup_5flist_5fmount_5fpoints_79',['cgroup_list_mount_points',['../group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82',1,'cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths): api.c'],['../group__group__groups.html#ga0fd537a3ba09c497378dc494fa405f82',1,'cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths): api.c']]],
+ ['cgroup_5fload_5ftemplates_5fcache_5ffrom_5ffiles_80',['cgroup_load_templates_cache_from_files',['../group__group__config.html#ga924860998c37da53cababe24163fc89b',1,'cgroup_load_templates_cache_from_files(int *file_index): config.c'],['../group__group__config.html#ga924860998c37da53cababe24163fc89b',1,'cgroup_load_templates_cache_from_files(int *file_index): config.c']]],
+ ['cgroup_5flog_81',['cgroup_log',['../group__group__log.html#gab514ad5d83422ddfe479bdf651e80958',1,'cgroup_log(int loglevel, const char *fmt,...): log.c'],['../group__group__log.html#gab514ad5d83422ddfe479bdf651e80958',1,'cgroup_log(int level, const char *fmt,...): log.c']]],
+ ['cgroup_5flog_5fcont_82',['CGROUP_LOG_CONT',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa915b87fe26cc45572e40508dc6d62e88',1,'log.h']]],
+ ['cgroup_5flog_5fdebug_83',['CGROUP_LOG_DEBUG',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa86b4157fb38d9f8053c6b7429bd26c72',1,'log.h']]],
+ ['cgroup_5flog_5ferror_84',['CGROUP_LOG_ERROR',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aa4dd44215cd3553e79dbf91eb9ca418a2',1,'log.h']]],
+ ['cgroup_5flog_5finfo_85',['CGROUP_LOG_INFO',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aad66ab51dba078ffc3b1c6d397053f9e2',1,'log.h']]],
+ ['cgroup_5flog_5flevel_86',['cgroup_log_level',['../group__group__log.html#ga98b7aea5d23411e70c7e3da54d90233a',1,'log.h']]],
+ ['cgroup_5flog_5fwarning_87',['CGROUP_LOG_WARNING',['../group__group__log.html#gga98b7aea5d23411e70c7e3da54d90233aaa99ec9e854a543901bddf854d1960057',1,'log.h']]],
+ ['cgroup_5fmodify_5fcgroup_88',['cgroup_modify_cgroup',['../group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed',1,'cgroup_modify_cgroup(struct cgroup *cgrp): api.c'],['../group__group__groups.html#gadadc95782f82d1e4265ece226ee0a9ed',1,'cgroup_modify_cgroup(struct cgroup *cgrp): api.c']]],
+ ['cgroup_5fmount_5fpoint_89',['cgroup_mount_point',['../structcgroup__mount__point.html',1,'']]],
+ ['cgroup_5fnew_5fcgroup_90',['cgroup_new_cgroup',['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c'],['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c']]],
+ ['cgroup_5fparse_5flog_5flevel_5fstr_91',['cgroup_parse_log_level_str',['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c'],['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c']]],
+ ['cgroup_5fprint_5frules_5fconfig_92',['cgroup_print_rules_config',['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c'],['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c']]],
+ ['cgroup_5fread_5fstats_5fbegin_93',['cgroup_read_stats_begin',['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
+ ['cgroup_5fread_5fstats_5fend_94',['cgroup_read_stats_end',['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c'],['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c']]],
+ ['cgroup_5fread_5fstats_5fnext_95',['cgroup_read_stats_next',['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
+ ['cgroup_5fread_5fvalue_5fbegin_96',['cgroup_read_value_begin',['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c'],['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c']]],
+ ['cgroup_5fread_5fvalue_5fend_97',['cgroup_read_value_end',['../group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21',1,'cgroup_read_value_end(void **handle): api.c'],['../group__group__iterators.html#gad348f041e283860cbf6bcea567e23a21',1,'cgroup_read_value_end(void **handle): api.c']]],
+ ['cgroup_5fread_5fvalue_5fnext_98',['cgroup_read_value_next',['../group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc',1,'cgroup_read_value_next(void **handle, char *buffer, int max): api.c'],['../group__group__iterators.html#gaced2fe331f19d599a3270db2440847cc',1,'cgroup_read_value_next(void **handle, char *buffer, int max): api.c']]],
+ ['cgroup_5fregister_5funchanged_5fprocess_99',['cgroup_register_unchanged_process',['../group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c',1,'cgroup_register_unchanged_process(pid_t pid, int flags): api.c'],['../group__group__tasks.html#ga64f7967d6d5edfff9afddaa6a6974b1c',1,'cgroup_register_unchanged_process(pid_t pid, int flags): api.c']]],
+ ['cgroup_5freload_5fcached_5frules_100',['cgroup_reload_cached_rules',['../group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce',1,'cgroup_reload_cached_rules(void): api.c'],['../group__group__tasks.html#gaf81ebd9cb5575c75b4c85f385ebda1ce',1,'cgroup_reload_cached_rules(void): api.c']]],
+ ['cgroup_5freload_5fcached_5ftemplates_101',['cgroup_reload_cached_templates',['../group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5',1,'cgroup_reload_cached_templates(char *pathname): config.c'],['../group__group__config.html#ga89fe0d7943b29cc10d57b07abcdfa7b5',1,'cgroup_reload_cached_templates(char *pathname): config.c']]],
+ ['cgroup_5frule_102',['cgroup_rule',['../structcgroup__rule.html',1,'']]],
+ ['cgroup_5frule_5flist_103',['cgroup_rule_list',['../structcgroup__rule__list.html',1,'']]],
+ ['cgroup_5frules_5fdata_104',['cgroup_rules_data',['../structcgroup__rules__data.html',1,'']]],
+ ['cgroup_5fset_5fdefault_5flogger_105',['cgroup_set_default_logger',['../group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7',1,'cgroup_set_default_logger(int loglevel): log.c'],['../group__group__log.html#gab1457ce518dcde0b9f3c14ec9efa2de7',1,'cgroup_set_default_logger(int level): log.c']]],
+ ['cgroup_5fset_5flogger_106',['cgroup_set_logger',['../group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0',1,'cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata): log.c'],['../group__group__log.html#ga76d7032206f9b9d1c0be1a71a68c43d0',1,'cgroup_set_logger(cgroup_logger_callback logger, int loglevel, void *userdata): log.c']]],
+ ['cgroup_5fset_5floglevel_107',['cgroup_set_loglevel',['../group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c',1,'cgroup_set_loglevel(int loglevel): log.c'],['../group__group__log.html#gaac5fe2352800ff62465a5abe649d5b8c',1,'cgroup_set_loglevel(int loglevel): log.c']]],
+ ['cgroup_5fset_5fpermissions_108',['cgroup_set_permissions',['../group__group__groups.html#gae8c8f601680e79150608073a55afcac0',1,'cgroup_set_permissions(struct cgroup *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm): api.c'],['../group__group__groups.html#gae8c8f601680e79150608073a55afcac0',1,'cgroup_set_permissions(struct cgroup *cgrp, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm): api.c']]],
+ ['cgroup_5fset_5fuid_5fgid_109',['cgroup_set_uid_gid',['../group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040',1,'cgroup_set_uid_gid(struct cgroup *cgrp, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid): wrapper.c'],['../group__group__groups.html#ga51f539b526d2a4939f03f0b4d4ed9040',1,'cgroup_set_uid_gid(struct cgroup *cgroup, uid_t tasks_uid, gid_t tasks_gid, uid_t control_uid, gid_t control_gid): wrapper.c']]],
+ ['cgroup_5fset_5fvalue_5fbool_110',['cgroup_set_value_bool',['../group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7',1,'cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c'],['../group__group__groups.html#gafb24892bc221cffee0f5fe07f64d54d7',1,'cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value): wrapper.c']]],
+ ['cgroup_5fset_5fvalue_5fint64_111',['cgroup_set_value_int64',['../group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956',1,'cgroup_set_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c'],['../group__group__groups.html#gaa5c39e51035cc43dd26a3c620441a956',1,'cgroup_set_value_int64(struct cgroup_controller *controller, const char *name, int64_t value): wrapper.c']]],
+ ['cgroup_5fset_5fvalue_5fstring_112',['cgroup_set_value_string',['../group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82',1,'cgroup_set_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c'],['../group__group__groups.html#ga938febc02b59cbeb8e4ceb2dc7fdac82',1,'cgroup_set_value_string(struct cgroup_controller *controller, const char *name, const char *value): wrapper.c']]],
+ ['cgroup_5fset_5fvalue_5fuint64_113',['cgroup_set_value_uint64',['../group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5',1,'cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c'],['../group__group__groups.html#gade01aa1fe30ccc968af9fe8a3bc821e5',1,'cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value): wrapper.c']]],
+ ['cgroup_5fsetup_5fmode_114',['cgroup_setup_mode',['../group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da',1,'cgroup_setup_mode(void): api.c'],['../group__group__groups.html#gaebf0c15818fa8201b8a458f3e3e044da',1,'cgroup_setup_mode(void): api.c']]],
+ ['cgroup_5fstat_115',['cgroup_stat',['../structcgroup__stat.html',1,'']]],
+ ['cgroup_5fstrerror_116',['cgroup_strerror',['../group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a',1,'cgroup_strerror(int code): api.c'],['../group__group__errors.html#ga7ee3be57533b25d597a2bfd19819307a',1,'cgroup_strerror(int code): api.c']]],
+ ['cgroup_5fstring_5flist_117',['cgroup_string_list',['../structcgroup__string__list.html',1,'']]],
+ ['cgroup_5fsystemd_5fopts_118',['cgroup_systemd_opts',['../structcgroup__systemd__opts.html',1,'']]],
+ ['cgroup_5fsystemd_5fscope_5fopts_119',['cgroup_systemd_scope_opts',['../structcgroup__systemd__scope__opts.html',1,'']]],
+ ['cgroup_5ftemplates_5fcache_5fset_5fsource_5ffiles_120',['cgroup_templates_cache_set_source_files',['../group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422',1,'cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files): config.c'],['../group__group__config.html#gacb09024dc469a1a1ff8cdebd8d0ab422',1,'cgroup_templates_cache_set_source_files(struct cgroup_string_list *tmpl_files): config.c']]],
+ ['cgroup_5ftree_5fhandle_121',['cgroup_tree_handle',['../structcgroup__tree__handle.html',1,'']]],
+ ['cgroup_5funload_5fcgroups_122',['cgroup_unload_cgroups',['../group__group__config.html#ga85b285712354faca495193075035938d',1,'cgroup_unload_cgroups(void): config.c'],['../group__group__config.html#ga85b285712354faca495193075035938d',1,'cgroup_unload_cgroups(void): config.c']]],
+ ['cgroup_5fwalk_5ftree_5fbegin_123',['cgroup_walk_tree_begin',['../group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68',1,'cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level): api.c'],['../group__group__iterators.html#ga7b19f10c06abb96d8c8ae88a04888a68',1,'cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level): api.c']]],
+ ['cgroup_5fwalk_5ftree_5fend_124',['cgroup_walk_tree_end',['../group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde',1,'cgroup_walk_tree_end(void **handle): api.c'],['../group__group__iterators.html#ga09a70990837a58e506a264f8c50d4cde',1,'cgroup_walk_tree_end(void **handle): api.c']]],
+ ['cgroup_5fwalk_5ftree_5fnext_125',['cgroup_walk_tree_next',['../group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1',1,'cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level): api.c'],['../group__group__iterators.html#ga527f5499b0aa04d325074435baebdff1',1,'cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level): api.c']]],
+ ['cgroup_5fwalk_5ftree_5fset_5fflags_126',['cgroup_walk_tree_set_flags',['../group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8',1,'cgroup_walk_tree_set_flags(void **handle, int flags): api.c'],['../group__group__iterators.html#ga645ec7a6206dffb32667e7a0e148edc8',1,'cgroup_walk_tree_set_flags(void **handle, int flags): api.c']]],
+ ['cgroup_5fwalk_5ftype_127',['cgroup_walk_type',['../group__group__iterators.html#ga29a572cbc0c07e2b02dfa0f1ac0067d3',1,'iterators.h']]],
+ ['cgroup_5fwalk_5ftype_5fpost_5fdir_128',['CGROUP_WALK_TYPE_POST_DIR',['../group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3abf3c31227768960bd6622d2562aae3e1',1,'iterators.h']]],
+ ['cgroup_5fwalk_5ftype_5fpre_5fdir_129',['CGROUP_WALK_TYPE_PRE_DIR',['../group__group__iterators.html#gga29a572cbc0c07e2b02dfa0f1ac0067d3af865296e6a0e55cff574fbb132b9f913',1,'iterators.h']]],
+ ['cgroupcompareignoreruletest_130',['CgroupCompareIgnoreRuleTest',['../classCgroupCompareIgnoreRuleTest.html',1,'']]],
+ ['cgroupcreatecgrouptest_131',['CgroupCreateCgroupTest',['../classCgroupCreateCgroupTest.html',1,'']]],
+ ['cgrouperror_132',['CgroupError',['../classftests_1_1cgroup_1_1CgroupError.html',1,'ftests::cgroup']]],
+ ['cgroupgetcgrouptest_133',['CgroupGetCgroupTest',['../classCgroupGetCgroupTest.html',1,'']]],
+ ['cgroupmount_134',['CgroupMount',['../classftests_1_1cgroup_1_1CgroupMount.html',1,'ftests::cgroup']]],
+ ['cgroupprocessv1mnttest_135',['CgroupProcessV1MntTest',['../classCgroupProcessV1MntTest.html',1,'']]],
+ ['cgroupprocessv2mnttest_136',['CgroupProcessV2MntTest',['../classCgroupProcessV2MntTest.html',1,'']]],
+ ['cgroupv2controllerenabled_137',['CgroupV2ControllerEnabled',['../classCgroupV2ControllerEnabled.html',1,'']]],
+ ['cgroupversion_138',['CgroupVersion',['../classftests_1_1cgroup_1_1CgroupVersion.html',1,'ftests::cgroup']]],
+ ['cgsetparserflagtest_139',['CgsetParseRFlagTest',['../classCgsetParseRFlagTest.html',1,'']]],
+ ['changes_20restart_20the_20process_140',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['checksum_20for_20the_20release_20tarball_141',['13. Generate a checksum for the release tarball',['../md_doc_2internal_2release-github.html#autotoc_md21',1,'']]],
+ ['checksum_20using_20the_20maintainer_20s_20key_142',['14. GPG sign the release tarball and checksum using the maintainer's key',['../md_doc_2internal_2release-github.html#autotoc_md22',1,'']]],
+ ['child_20hierarchy_20via_20libcgroup_20command_20line_143',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
+ ['chownchmodtaskstest_144',['ChownChmodTasksTest',['../classChownChmodTasksTest.html',1,'']]],
+ ['code_20changes_20restart_20the_20process_145',['7. If any problems were found up to this point that resulted in code changes, restart the process',['../md_doc_2internal_2release-github.html#autotoc_md15',1,'']]],
+ ['code_20using_20existing_20tests_146',['Test Your Code Using Existing Tests',['../md_CONTRIBUTING.html#autotoc_md1',1,'']]],
+ ['command_20line_147',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]],
+ ['commit_20the_20version_20number_20in_20configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_148',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['community_149',['Interacting with the Community',['../md_CONTRIBUTING.html#autotoc_md0',1,'']]],
+ ['config_150',['Config',['../classftests_1_1config_1_1Config.html',1,'ftests::config']]],
+ ['configerror_151',['ConfigError',['../classftests_1_1config_1_1ConfigError.html',1,'ftests::config']]],
+ ['configparser_152',['configparser',['../classftests_1_1cgroup_1_1Cgroup.html#ad02a62b22751f057e6befba23b820e8a',1,'ftests::cgroup::Cgroup']]],
+ ['configuration_153',['5. Configuration',['../group__group__config.html',1,'']]],
+ ['configure_20ac_20ac_5finit_20macro_20and_20library_20version_20macros_154',['9. Update and commit the version number in configure.ac AC_INIT(...) macro and LIBRARY version macros',['../md_doc_2internal_2release-github.html#autotoc_md17',1,'']]],
+ ['container_155',['Container',['../classftests_1_1container_1_1Container.html',1,'ftests::container']]],
+ ['containererror_156',['ContainerError',['../classftests_1_1container_1_1ContainerError.html',1,'ftests::container']]],
+ ['contribute_20to_20the_20libcgroup_20project_157',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['control_5fvalue_158',['control_value',['../structcontrol__value.html',1,'']]],
+ ['controller_159',['Controller',['../classftests_1_1controller_1_1Controller.html',1,'ftests::controller']]],
+ ['controller_5fdata_160',['controller_data',['../structcontroller__data.html',1,'']]],
+ ['correct_161',['4. Verify that the packaging is correct',['../md_doc_2internal_2release-github.html#autotoc_md12',1,'']]],
+ ['coverity_162',['5. Verify that there are no outstanding defects from Coverity',['../md_doc_2internal_2release-github.html#autotoc_md13',1,'']]],
+ ['create_20a_20new_20github_20release_20using_20the_20associated_20tag_20and_20upload_20the_20following_20files_163',['16. Create a new GitHub release using the associated tag and upload the following files',['../md_doc_2internal_2release-github.html#autotoc_md24',1,'']]],
+ ['create_20new_20release_20x_20y_20branch_164',['8. If this is a new major/minor release, create new 'release-X.Y' branch',['../md_doc_2internal_2release-github.html#autotoc_md16',1,'']]],
+ ['creating_20a_20systemd_20scope_20and_20child_20hierarchy_20via_20libcgroup_20command_20line_165',['Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line',['../md_samples_2cmdline_2systemd-with-idle-process.html#autotoc_md26',1,'']]]
];
[
['cg_5fmount_5fpoint_0',['cg_mount_point',['../structcg__mount__point.html',1,'']]],
['cg_5fmount_5ftable_5fs_1',['cg_mount_table_s',['../structcg__mount__table__s.html',1,'']]],
- ['cgroup_2',['cgroup',['../classftests_1_1cgroup_1_1Cgroup.html',1,'ftests.cgroup.Cgroup'],['../structcgroup.html',1,'cgroup']]],
- ['cgroup_5fabstraction_5fmap_3',['cgroup_abstraction_map',['../structcgroup__abstraction__map.html',1,'']]],
- ['cgroup_5fcontroller_4',['cgroup_controller',['../structcgroup__controller.html',1,'']]],
- ['cgroup_5fdictionary_5',['cgroup_dictionary',['../structcgroup__dictionary.html',1,'']]],
- ['cgroup_5fdictionary_5fitem_6',['cgroup_dictionary_item',['../structcgroup__dictionary__item.html',1,'']]],
- ['cgroup_5fdictionary_5fiterator_7',['cgroup_dictionary_iterator',['../structcgroup__dictionary__iterator.html',1,'']]],
- ['cgroup_5ffile_5finfo_8',['cgroup_file_info',['../structcgroup__file__info.html',1,'']]],
- ['cgroup_5fgroup_5fspec_9',['cgroup_group_spec',['../structcgroup__group__spec.html',1,'']]],
- ['cgroup_5finfo_10',['cgroup_info',['../structcgroup__info.html',1,'']]],
- ['cgroup_5fmount_5fpoint_11',['cgroup_mount_point',['../structcgroup__mount__point.html',1,'']]],
- ['cgroup_5frule_12',['cgroup_rule',['../structcgroup__rule.html',1,'']]],
- ['cgroup_5frule_5flist_13',['cgroup_rule_list',['../structcgroup__rule__list.html',1,'']]],
- ['cgroup_5frules_5fdata_14',['cgroup_rules_data',['../structcgroup__rules__data.html',1,'']]],
- ['cgroup_5fstat_15',['cgroup_stat',['../structcgroup__stat.html',1,'']]],
- ['cgroup_5fstring_5flist_16',['cgroup_string_list',['../structcgroup__string__list.html',1,'']]],
- ['cgroup_5fsystemd_5fopts_17',['cgroup_systemd_opts',['../structcgroup__systemd__opts.html',1,'']]],
- ['cgroup_5fsystemd_5fscope_5fopts_18',['cgroup_systemd_scope_opts',['../structcgroup__systemd__scope__opts.html',1,'']]],
- ['cgroup_5ftree_5fhandle_19',['cgroup_tree_handle',['../structcgroup__tree__handle.html',1,'']]],
- ['cgroupcompareignoreruletest_20',['CgroupCompareIgnoreRuleTest',['../classCgroupCompareIgnoreRuleTest.html',1,'']]],
- ['cgroupcreatecgrouptest_21',['CgroupCreateCgroupTest',['../classCgroupCreateCgroupTest.html',1,'']]],
- ['cgrouperror_22',['CgroupError',['../classftests_1_1cgroup_1_1CgroupError.html',1,'ftests::cgroup']]],
- ['cgroupgetcgrouptest_23',['CgroupGetCgroupTest',['../classCgroupGetCgroupTest.html',1,'']]],
- ['cgroupmount_24',['CgroupMount',['../classftests_1_1cgroup_1_1CgroupMount.html',1,'ftests::cgroup']]],
- ['cgroupprocessv1mnttest_25',['CgroupProcessV1MntTest',['../classCgroupProcessV1MntTest.html',1,'']]],
- ['cgroupprocessv2mnttest_26',['CgroupProcessV2MntTest',['../classCgroupProcessV2MntTest.html',1,'']]],
- ['cgroupv2controllerenabled_27',['CgroupV2ControllerEnabled',['../classCgroupV2ControllerEnabled.html',1,'']]],
- ['cgroupversion_28',['CgroupVersion',['../classftests_1_1cgroup_1_1CgroupVersion.html',1,'ftests::cgroup']]],
- ['cgsetparserflagtest_29',['CgsetParseRFlagTest',['../classCgsetParseRFlagTest.html',1,'']]],
- ['chownchmodtaskstest_30',['ChownChmodTasksTest',['../classChownChmodTasksTest.html',1,'']]],
- ['config_31',['Config',['../classftests_1_1config_1_1Config.html',1,'ftests::config']]],
- ['configerror_32',['ConfigError',['../classftests_1_1config_1_1ConfigError.html',1,'ftests::config']]],
- ['container_33',['Container',['../classftests_1_1container_1_1Container.html',1,'ftests::container']]],
- ['containererror_34',['ContainerError',['../classftests_1_1container_1_1ContainerError.html',1,'ftests::container']]],
- ['control_5fvalue_35',['control_value',['../structcontrol__value.html',1,'']]],
- ['controller_36',['Controller',['../classftests_1_1controller_1_1Controller.html',1,'ftests::controller']]],
- ['controller_5fdata_37',['controller_data',['../structcontroller__data.html',1,'']]]
+ ['cgroup_2',['Cgroup',['../classftests_1_1cgroup_1_1Cgroup.html',1,'ftests::cgroup']]],
+ ['cgroup_3',['cgroup',['../structcgroup.html',1,'']]],
+ ['cgroup_5fabstraction_5fmap_4',['cgroup_abstraction_map',['../structcgroup__abstraction__map.html',1,'']]],
+ ['cgroup_5fcontroller_5',['cgroup_controller',['../structcgroup__controller.html',1,'']]],
+ ['cgroup_5fdictionary_6',['cgroup_dictionary',['../structcgroup__dictionary.html',1,'']]],
+ ['cgroup_5fdictionary_5fitem_7',['cgroup_dictionary_item',['../structcgroup__dictionary__item.html',1,'']]],
+ ['cgroup_5fdictionary_5fiterator_8',['cgroup_dictionary_iterator',['../structcgroup__dictionary__iterator.html',1,'']]],
+ ['cgroup_5ffile_5finfo_9',['cgroup_file_info',['../structcgroup__file__info.html',1,'']]],
+ ['cgroup_5fgroup_5fspec_10',['cgroup_group_spec',['../structcgroup__group__spec.html',1,'']]],
+ ['cgroup_5finfo_11',['cgroup_info',['../structcgroup__info.html',1,'']]],
+ ['cgroup_5fmount_5fpoint_12',['cgroup_mount_point',['../structcgroup__mount__point.html',1,'']]],
+ ['cgroup_5frule_13',['cgroup_rule',['../structcgroup__rule.html',1,'']]],
+ ['cgroup_5frule_5flist_14',['cgroup_rule_list',['../structcgroup__rule__list.html',1,'']]],
+ ['cgroup_5frules_5fdata_15',['cgroup_rules_data',['../structcgroup__rules__data.html',1,'']]],
+ ['cgroup_5fstat_16',['cgroup_stat',['../structcgroup__stat.html',1,'']]],
+ ['cgroup_5fstring_5flist_17',['cgroup_string_list',['../structcgroup__string__list.html',1,'']]],
+ ['cgroup_5fsystemd_5fopts_18',['cgroup_systemd_opts',['../structcgroup__systemd__opts.html',1,'']]],
+ ['cgroup_5fsystemd_5fscope_5fopts_19',['cgroup_systemd_scope_opts',['../structcgroup__systemd__scope__opts.html',1,'']]],
+ ['cgroup_5ftree_5fhandle_20',['cgroup_tree_handle',['../structcgroup__tree__handle.html',1,'']]],
+ ['cgroupcompareignoreruletest_21',['CgroupCompareIgnoreRuleTest',['../classCgroupCompareIgnoreRuleTest.html',1,'']]],
+ ['cgroupcreatecgrouptest_22',['CgroupCreateCgroupTest',['../classCgroupCreateCgroupTest.html',1,'']]],
+ ['cgrouperror_23',['CgroupError',['../classftests_1_1cgroup_1_1CgroupError.html',1,'ftests::cgroup']]],
+ ['cgroupgetcgrouptest_24',['CgroupGetCgroupTest',['../classCgroupGetCgroupTest.html',1,'']]],
+ ['cgroupmount_25',['CgroupMount',['../classftests_1_1cgroup_1_1CgroupMount.html',1,'ftests::cgroup']]],
+ ['cgroupprocessv1mnttest_26',['CgroupProcessV1MntTest',['../classCgroupProcessV1MntTest.html',1,'']]],
+ ['cgroupprocessv2mnttest_27',['CgroupProcessV2MntTest',['../classCgroupProcessV2MntTest.html',1,'']]],
+ ['cgroupv2controllerenabled_28',['CgroupV2ControllerEnabled',['../classCgroupV2ControllerEnabled.html',1,'']]],
+ ['cgroupversion_29',['CgroupVersion',['../classftests_1_1cgroup_1_1CgroupVersion.html',1,'ftests::cgroup']]],
+ ['cgsetparserflagtest_30',['CgsetParseRFlagTest',['../classCgsetParseRFlagTest.html',1,'']]],
+ ['chownchmodtaskstest_31',['ChownChmodTasksTest',['../classChownChmodTasksTest.html',1,'']]],
+ ['config_32',['Config',['../classftests_1_1config_1_1Config.html',1,'ftests::config']]],
+ ['configerror_33',['ConfigError',['../classftests_1_1config_1_1ConfigError.html',1,'ftests::config']]],
+ ['container_34',['Container',['../classftests_1_1container_1_1Container.html',1,'ftests::container']]],
+ ['containererror_35',['ContainerError',['../classftests_1_1container_1_1ContainerError.html',1,'ftests::container']]],
+ ['control_5fvalue_36',['control_value',['../structcontrol__value.html',1,'']]],
+ ['controller_37',['Controller',['../classftests_1_1controller_1_1Controller.html',1,'ftests::controller']]],
+ ['controller_5fdata_38',['controller_data',['../structcontroller__data.html',1,'']]]
];
['cgroup_5fchange_5fcgroup_5fpath_13',['cgroup_change_cgroup_path',['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *path, pid_t pid, const char *const controllers[]): api.c'],['../group__group__tasks.html#ga2d4677baef780c003fc6fba6b5dc78f2',1,'cgroup_change_cgroup_path(const char *dest, pid_t pid, const char *const controllers[]): api.c']]],
['cgroup_5fchange_5fcgroup_5fuid_5fgid_14',['cgroup_change_cgroup_uid_gid',['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c'],['../group__group__tasks.html#ga5eab78a922dbacd368360f03c70146be',1,'cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid): api.c']]],
['cgroup_5fchange_5fcgroup_5fuid_5fgid_5fflags_15',['cgroup_change_cgroup_uid_gid_flags',['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c'],['../group__group__tasks.html#gae472183a7c9a37826ef15c77014c47fb',1,'cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags): api.c']]],
- ['cgroup_5fcompare_5fcgroup_16',['cgroup_compare_cgroup',['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgroup_a, struct cgroup *cgroup_b): wrapper.c'],['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgrp_a, struct cgroup *cgrp_b): wrapper.c']]],
+ ['cgroup_5fcompare_5fcgroup_16',['cgroup_compare_cgroup',['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgrp_a, struct cgroup *cgrp_b): wrapper.c'],['../group__group__groups.html#gaf066e538ebf4aa1f32a654f302a8c353',1,'cgroup_compare_cgroup(struct cgroup *cgroup_a, struct cgroup *cgroup_b): wrapper.c']]],
['cgroup_5fcompare_5fcontrollers_17',['cgroup_compare_controllers',['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c'],['../group__group__groups.html#gab1725c50c49cec4b0bdad1f26b150ca7',1,'cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb): wrapper.c']]],
['cgroup_5fconfig_5fcreate_5ftemplate_5fgroup_18',['cgroup_config_create_template_group',['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgrp, char *template_name, int flags): config.c'],['../group__group__config.html#ga37d49cceb927c44292e3137bceeeb5eb',1,'cgroup_config_create_template_group(struct cgroup *cgroup, char *template_name, int flags): config.c']]],
['cgroup_5fconfig_5fload_5fconfig_19',['cgroup_config_load_config',['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c'],['../group__group__config.html#ga8adfaca013333acf922a167f55b84140',1,'cgroup_config_load_config(const char *pathname): config.c']]],
['cgroup_5fnew_5fcgroup_66',['cgroup_new_cgroup',['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c'],['../group__group__groups.html#gad34c82ead174988d418f3dcb003aaca7',1,'cgroup_new_cgroup(const char *name): wrapper.c']]],
['cgroup_5fparse_5flog_5flevel_5fstr_67',['cgroup_parse_log_level_str',['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c'],['../group__group__log.html#gaa364a06aee0e99228a1e6a26b25a9794',1,'cgroup_parse_log_level_str(const char *levelstr): log.c']]],
['cgroup_5fprint_5frules_5fconfig_68',['cgroup_print_rules_config',['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c'],['../group__group__tasks.html#gac4e3f29cfbdc3d77f08c9fe60857274a',1,'cgroup_print_rules_config(FILE *fp): api.c']]],
- ['cgroup_5fread_5fstats_5fbegin_69',['cgroup_read_stats_begin',['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *cgrp_stat): api.c'],['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat): api.c']]],
+ ['cgroup_5fread_5fstats_5fbegin_69',['cgroup_read_stats_begin',['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#ga1138e47f124f0f634586db5e0c4ae5de',1,'cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
['cgroup_5fread_5fstats_5fend_70',['cgroup_read_stats_end',['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c'],['../group__group__iterators.html#gaba386d9db6cadc6ad85c2552f63447bb',1,'cgroup_read_stats_end(void **handle): api.c']]],
['cgroup_5fread_5fstats_5fnext_71',['cgroup_read_stats_next',['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *stat): api.c'],['../group__group__iterators.html#gaf95587508fc15d74fd5ed0df58024be7',1,'cgroup_read_stats_next(void **handle, struct cgroup_stat *cgrp_stat): api.c']]],
['cgroup_5fread_5fvalue_5fbegin_72',['cgroup_read_value_begin',['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c'],['../group__group__iterators.html#ga9378ee0f1f6e65900df8e25b3d7ce236',1,'cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max): api.c']]],
[
['set_0',['set',['../classftests_1_1cgroup_1_1Cgroup.html#aafa420c27460164b65f904ec531ae2b1',1,'ftests::cgroup::Cgroup']]],
['set_5fand_5fvalidate_1',['set_and_validate',['../classftests_1_1cgroup_1_1Cgroup.html#a6e776be252ad6a2fa0609d48ce71abd8',1,'ftests::cgroup::Cgroup']]],
- ['setup_2',['setup',['../classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3',1,'BuildPathV1Test::SetUp()'],['../classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7',1,'BuildTasksProcPathTest::SetUp()']]]
+ ['setup_2',['SetUp',['../classBuildPathV1Test.html#ae2d0708d4c36d3f8d1e24b311afe8fc3',1,'BuildPathV1Test::SetUp()'],['../classBuildTasksProcPathTest.html#aba31e09a4df0a3cdb94d81985f2e86b7',1,'BuildTasksProcPathTest::SetUp()']]]
];
var searchData=
[
- ['process_0',['process',['../md_samples_2cmdline_2systemd-with-idle-process.html',1,'systemd-with-idle-process'],['../md_doc_2internal_2release-github.html',1,'The libcgroup Release Process'],['../md_SECURITY.html',1,'The libcgroup Security Vulnerability Handling Process']]],
- ['project_1',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]]
+ ['process_0',['Process',['../md_doc_2internal_2release-github.html',1,'The libcgroup Release Process'],['../md_SECURITY.html',1,'The libcgroup Security Vulnerability Handling Process']]],
+ ['process_1',['systemd-with-idle-process',['../md_samples_2cmdline_2systemd-with-idle-process.html',1,'']]],
+ ['project_2',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]]
];
var searchData=
[
- ['readme_0',['readme',['../md_README.html',1,'README'],['../md_tests_2README.html',1,'README']]],
+ ['readme_0',['README',['../md_README.html',1,'README'],['../md_tests_2README.html',1,'README']]],
['release_20process_1',['The libcgroup Release Process',['../md_doc_2internal_2release-github.html',1,'']]]
];
['the_20libcgroup_20release_20process_2',['The libcgroup Release Process',['../md_doc_2internal_2release-github.html',1,'']]],
['the_20libcgroup_20security_20vulnerability_20handling_20process_3',['The libcgroup Security Vulnerability Handling Process',['../md_SECURITY.html',1,'']]],
['to_20contribute_20to_20the_20libcgroup_20project_4',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
- ['todo_20list_5',['Todo List',['../todo.html',1,'']]]
+ ['to_20the_20libcgroup_20project_5',['How to Contribute to the libcgroup Project',['../md_CONTRIBUTING.html',1,'']]],
+ ['todo_20list_6',['Todo List',['../todo.html',1,'']]]
];
@licend The above is the entire license notice for the JavaScript code in this file
*/
-function convertToId(search)
-{
- var result = '';
- for (i=0;i<search.length;i++)
- {
- var c = search.charAt(i);
- var cn = c.charCodeAt(0);
- if (c.match(/[a-z0-9\u0080-\uFFFF]/))
- {
- result+=c;
- }
- else if (cn<16)
- {
- result+="_0"+cn.toString(16);
- }
- else
- {
- result+="_"+cn.toString(16);
- }
- }
- return result;
-}
+const SEARCH_COOKIE_NAME = ''+'search_grp';
-function getXPos(item)
-{
- var x = 0;
- if (item.offsetWidth)
- {
- while (item && item!=document.body)
- {
- x += item.offsetLeft;
- item = item.offsetParent;
- }
- }
- return x;
-}
-
-function getYPos(item)
-{
- var y = 0;
- if (item.offsetWidth)
- {
- while (item && item!=document.body)
- {
- y += item.offsetTop;
- item = item.offsetParent;
- }
- }
- return y;
-}
-
-var searchResults = new SearchResults("searchResults");
+const searchResults = new SearchResults();
/* A class handling everything associated with the search panel.
storing this instance. Is needed to be able to set timeouts.
resultPath - path to use for external files
*/
-function SearchBox(name, resultsPath, extension)
-{
+function SearchBox(name, resultsPath, extension) {
if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
if (!extension || extension == "") { extension = ".html"; }
+ function getXPos(item) {
+ let x = 0;
+ if (item.offsetWidth) {
+ while (item && item!=document.body) {
+ x += item.offsetLeft;
+ item = item.offsetParent;
+ }
+ }
+ return x;
+ }
+
+ function getYPos(item) {
+ let y = 0;
+ if (item.offsetWidth) {
+ while (item && item!=document.body) {
+ y += item.offsetTop;
+ item = item.offsetParent;
+ }
+ }
+ return y;
+ }
+
// ---------- Instance variables
this.name = name;
this.resultsPath = resultsPath;
// ----------- DOM Elements
- this.DOMSearchField = function()
- { return document.getElementById("MSearchField"); }
-
- this.DOMSearchSelect = function()
- { return document.getElementById("MSearchSelect"); }
-
- this.DOMSearchSelectWindow = function()
- { return document.getElementById("MSearchSelectWindow"); }
-
- this.DOMPopupSearchResults = function()
- { return document.getElementById("MSearchResults"); }
-
- this.DOMPopupSearchResultsWindow = function()
- { return document.getElementById("MSearchResultsWindow"); }
-
- this.DOMSearchClose = function()
- { return document.getElementById("MSearchClose"); }
-
- this.DOMSearchBox = function()
- { return document.getElementById("MSearchBox"); }
+ this.DOMSearchField = () => document.getElementById("MSearchField");
+ this.DOMSearchSelect = () => document.getElementById("MSearchSelect");
+ this.DOMSearchSelectWindow = () => document.getElementById("MSearchSelectWindow");
+ this.DOMPopupSearchResults = () => document.getElementById("MSearchResults");
+ this.DOMPopupSearchResultsWindow = () => document.getElementById("MSearchResultsWindow");
+ this.DOMSearchClose = () => document.getElementById("MSearchClose");
+ this.DOMSearchBox = () => document.getElementById("MSearchBox");
// ------------ Event Handlers
// Called when focus is added or removed from the search field.
- this.OnSearchFieldFocus = function(isActive)
- {
+ this.OnSearchFieldFocus = function(isActive) {
this.Activate(isActive);
}
- this.OnSearchSelectShow = function()
- {
- var searchSelectWindow = this.DOMSearchSelectWindow();
- var searchField = this.DOMSearchSelect();
+ this.OnSearchSelectShow = function() {
+ const searchSelectWindow = this.DOMSearchSelectWindow();
+ const searchField = this.DOMSearchSelect();
- var left = getXPos(searchField);
- var top = getYPos(searchField);
- top += searchField.offsetHeight;
+ const left = getXPos(searchField);
+ const top = getYPos(searchField) + searchField.offsetHeight;
// show search selection popup
searchSelectWindow.style.display='block';
searchSelectWindow.style.top = top + 'px';
// stop selection hide timer
- if (this.hideTimeout)
- {
+ if (this.hideTimeout) {
clearTimeout(this.hideTimeout);
this.hideTimeout=0;
}
return false; // to avoid "image drag" default event
}
- this.OnSearchSelectHide = function()
- {
+ this.OnSearchSelectHide = function() {
this.hideTimeout = setTimeout(this.CloseSelectionWindow.bind(this),
this.closeSelectionTimeout);
}
// Called when the content of the search field is changed.
- this.OnSearchFieldChange = function(evt)
- {
- if (this.keyTimeout) // kill running timer
- {
+ this.OnSearchFieldChange = function(evt) {
+ if (this.keyTimeout) { // kill running timer
clearTimeout(this.keyTimeout);
this.keyTimeout = 0;
}
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==40 || e.keyCode==13)
- {
- if (e.shiftKey==1)
- {
+ const e = evt ? evt : window.event; // for IE
+ if (e.keyCode==40 || e.keyCode==13) {
+ if (e.shiftKey==1) {
this.OnSearchSelectShow();
- var win=this.DOMSearchSelectWindow();
- for (i=0;i<win.childNodes.length;i++)
- {
- var child = win.childNodes[i]; // get span within a
- if (child.className=='SelectItem')
- {
+ const win=this.DOMSearchSelectWindow();
+ for (let i=0;i<win.childNodes.length;i++) {
+ const child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem') {
child.focus();
return;
}
}
return;
- }
- else
- {
- var elem = searchResults.NavNext(0);
+ } else {
+ const elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
- }
- else if (e.keyCode==27) // Escape out of the search field
- {
+ } else if (e.keyCode==27) { // Escape out of the search field
e.stopPropagation();
this.DOMSearchField().blur();
this.DOMPopupSearchResultsWindow().style.display = 'none';
}
// strip whitespaces
- var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+ const searchValue = this.DOMSearchField().value.replace(/ +/g, "");
- if (searchValue != this.lastSearchValue) // search value has changed
- {
- if (searchValue != "") // non-empty search
- {
+ if (searchValue != this.lastSearchValue) { // search value has changed
+ if (searchValue != "") { // non-empty search
// set timer for search update
- this.keyTimeout = setTimeout(this.Search.bind(this),
- this.keyTimeoutLength);
- }
- else // empty search field
- {
+ this.keyTimeout = setTimeout(this.Search.bind(this), this.keyTimeoutLength);
+ } else { // empty search field
this.DOMPopupSearchResultsWindow().style.display = 'none';
this.DOMSearchClose().style.display = 'none';
this.lastSearchValue = '';
}
}
- this.SelectItemCount = function(id)
- {
- var count=0;
- var win=this.DOMSearchSelectWindow();
- for (i=0;i<win.childNodes.length;i++)
- {
- var child = win.childNodes[i]; // get span within a
- if (child.className=='SelectItem')
- {
+ this.SelectItemCount = function() {
+ let count=0;
+ const win=this.DOMSearchSelectWindow();
+ for (let i=0;i<win.childNodes.length;i++) {
+ const child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem') {
count++;
}
}
return count;
}
- this.SelectItemSet = function(id)
- {
- var i,j=0;
- var win=this.DOMSearchSelectWindow();
- for (i=0;i<win.childNodes.length;i++)
- {
- var child = win.childNodes[i]; // get span within a
- if (child.className=='SelectItem')
- {
- var node = child.firstChild;
- if (j==id)
- {
- node.innerHTML='•';
+ this.GetSelectionIdByName = function(name) {
+ let j=0;
+ const win=this.DOMSearchSelectWindow();
+ for (let i=0;i<win.childNodes.length;i++) {
+ const child = win.childNodes[i];
+ if (child.className=='SelectItem') {
+ if (child.childNodes[1].nodeValue==name) {
+ return j;
}
- else
- {
+ j++;
+ }
+ }
+ return 0;
+ }
+
+ this.SelectItemSet = function(id) {
+ let j=0;
+ const win=this.DOMSearchSelectWindow();
+ for (let i=0;i<win.childNodes.length;i++) {
+ const child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem') {
+ const node = child.firstChild;
+ if (j==id) {
+ node.innerHTML='•';
+ Cookie.writeSetting(SEARCH_COOKIE_NAME, child.childNodes[1].nodeValue, 0)
+ } else {
node.innerHTML=' ';
}
j++;
// Called when an search filter selection is made.
// set item with index id as the active item
- this.OnSelectItem = function(id)
- {
+ this.OnSelectItem = function(id) {
this.searchIndex = id;
this.SelectItemSet(id);
- var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
- if (searchValue!="" && this.searchActive) // something was found -> do a search
- {
+ const searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+ if (searchValue!="" && this.searchActive) { // something was found -> do a search
this.Search();
}
}
- this.OnSearchSelectKey = function(evt)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
- {
+ this.OnSearchSelectKey = function(evt) {
+ const e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) { // Down
this.searchIndex++;
this.OnSelectItem(this.searchIndex);
- }
- else if (e.keyCode==38 && this.searchIndex>0) // Up
- {
+ } else if (e.keyCode==38 && this.searchIndex>0) { // Up
this.searchIndex--;
this.OnSelectItem(this.searchIndex);
- }
- else if (e.keyCode==13 || e.keyCode==27)
- {
+ } else if (e.keyCode==13 || e.keyCode==27) {
e.stopPropagation();
this.OnSelectItem(this.searchIndex);
this.CloseSelectionWindow();
// --------- Actions
// Closes the results window.
- this.CloseResultsWindow = function()
- {
+ this.CloseResultsWindow = function() {
this.DOMPopupSearchResultsWindow().style.display = 'none';
this.DOMSearchClose().style.display = 'none';
this.Activate(false);
}
- this.CloseSelectionWindow = function()
- {
+ this.CloseSelectionWindow = function() {
this.DOMSearchSelectWindow().style.display = 'none';
}
// Performs a search.
- this.Search = function()
- {
+ this.Search = function() {
this.keyTimeout = 0;
// strip leading whitespace
- var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+ const searchValue = this.DOMSearchField().value.replace(/^ +/, "");
- var code = searchValue.toLowerCase().charCodeAt(0);
- var idxChar = searchValue.substr(0, 1).toLowerCase();
- if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
- {
+ const code = searchValue.toLowerCase().charCodeAt(0);
+ let idxChar = searchValue.substr(0, 1).toLowerCase();
+ if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) { // surrogate pair
idxChar = searchValue.substr(0, 2);
}
- var jsFile;
-
- var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
- if (idx!=-1)
- {
- var hexCode=idx.toString(16);
- jsFile = this.resultsPath + indexSectionNames[this.searchIndex] + '_' + hexCode + '.js';
+ let jsFile;
+ let idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+ if (idx!=-1) {
+ const hexCode=idx.toString(16);
+ jsFile = this.resultsPath + indexSectionNames[this.searchIndex] + '_' + hexCode + '.js';
}
- var loadJS = function(url, impl, loc){
- var scriptTag = document.createElement('script');
+ const loadJS = function(url, impl, loc) {
+ const scriptTag = document.createElement('script');
scriptTag.src = url;
scriptTag.onload = impl;
scriptTag.onreadystatechange = impl;
loc.appendChild(scriptTag);
}
- var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
- var domSearchBox = this.DOMSearchBox();
- var domPopupSearchResults = this.DOMPopupSearchResults();
- var domSearchClose = this.DOMSearchClose();
- var resultsPath = this.resultsPath;
+ const domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+ const domSearchBox = this.DOMSearchBox();
+ const domPopupSearchResults = this.DOMPopupSearchResults();
+ const domSearchClose = this.DOMSearchClose();
+ const resultsPath = this.resultsPath;
- var handleResults = function() {
+ const handleResults = function() {
document.getElementById("Loading").style.display="none";
if (typeof searchData !== 'undefined') {
createResults(resultsPath);
document.getElementById("NoMatches").style.display="none";
}
-
+
if (idx!=-1) {
searchResults.Search(searchValue);
} else { // no file with search results => force empty search results
searchResults.Search('====');
}
- if (domPopupSearchResultsWindow.style.display!='block')
- {
+ if (domPopupSearchResultsWindow.style.display!='block') {
domSearchClose.style.display = 'inline-block';
- var left = getXPos(domSearchBox) + 150;
- var top = getYPos(domSearchBox) + 20;
+ let left = getXPos(domSearchBox) + 150;
+ let top = getYPos(domSearchBox) + 20;
domPopupSearchResultsWindow.style.display = 'block';
left -= domPopupSearchResults.offsetWidth;
- var maxWidth = document.body.clientWidth;
- var maxHeight = document.body.clientHeight;
- var width = 300;
+ const maxWidth = document.body.clientWidth;
+ const maxHeight = document.body.clientHeight;
+ let width = 300;
if (left<10) left=10;
if (width+left+8>maxWidth) width=maxWidth-left-8;
- var height = 400;
+ let height = 400;
if (height+top+8>maxHeight) height=maxHeight-top-8;
domPopupSearchResultsWindow.style.top = top + 'px';
domPopupSearchResultsWindow.style.left = left + 'px';
// Activates or deactivates the search panel, resetting things to
// their default values if necessary.
- this.Activate = function(isActive)
- {
+ this.Activate = function(isActive) {
if (isActive || // open it
- this.DOMPopupSearchResultsWindow().style.display == 'block'
- )
- {
+ this.DOMPopupSearchResultsWindow().style.display == 'block'
+ ) {
this.DOMSearchBox().className = 'MSearchBoxActive';
this.searchActive = true;
- }
- else if (!isActive) // directly remove the panel
- {
+ } else if (!isActive) { // directly remove the panel
this.DOMSearchBox().className = 'MSearchBoxInactive';
this.searchActive = false;
this.lastSearchValue = ''
// -----------------------------------------------------------------------
// The class that handles everything on the search results page.
-function SearchResults(name)
-{
- // The number of matches from the last run of <Search()>.
- this.lastMatchCount = 0;
- this.lastKey = 0;
- this.repeatOn = false;
-
- // Toggles the visibility of the passed element ID.
- this.FindChildElement = function(id)
- {
- var parentElement = document.getElementById(id);
- var element = parentElement.firstChild;
-
- while (element && element!=parentElement)
- {
- if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren')
- {
- return element;
- }
+function SearchResults() {
+
+ function convertToId(search) {
+ let result = '';
+ for (let i=0;i<search.length;i++) {
+ const c = search.charAt(i);
+ const cn = c.charCodeAt(0);
+ if (c.match(/[a-z0-9\u0080-\uFFFF]/)) {
+ result+=c;
+ } else if (cn<16) {
+ result+="_0"+cn.toString(16);
+ } else {
+ result+="_"+cn.toString(16);
+ }
+ }
+ return result;
+ }
- if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes())
- {
- element = element.firstChild;
- }
- else if (element.nextSibling)
- {
- element = element.nextSibling;
- }
- else
- {
- do
- {
- element = element.parentNode;
- }
- while (element && element!=parentElement && !element.nextSibling);
+ // The number of matches from the last run of <Search()>.
+ this.lastMatchCount = 0;
+ this.lastKey = 0;
+ this.repeatOn = false;
- if (element && element!=parentElement)
- {
- element = element.nextSibling;
- }
- }
+ // Toggles the visibility of the passed element ID.
+ this.FindChildElement = function(id) {
+ const parentElement = document.getElementById(id);
+ let element = parentElement.firstChild;
+
+ while (element && element!=parentElement) {
+ if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') {
+ return element;
}
- }
- this.Toggle = function(id)
- {
- var element = this.FindChildElement(id);
- if (element)
- {
- if (element.style.display == 'block')
- {
- element.style.display = 'none';
+ if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) {
+ element = element.firstChild;
+ } else if (element.nextSibling) {
+ element = element.nextSibling;
+ } else {
+ do {
+ element = element.parentNode;
}
- else
- {
- element.style.display = 'block';
+ while (element && element!=parentElement && !element.nextSibling);
+
+ if (element && element!=parentElement) {
+ element = element.nextSibling;
}
}
}
+ }
- // Searches for the passed string. If there is no parameter,
- // it takes it from the URL query.
- //
- // Always returns true, since other documents may try to call it
- // and that may or may not be possible.
- this.Search = function(search)
- {
- if (!search) // get search word from URL
- {
- search = window.location.search;
- search = search.substring(1); // Remove the leading '?'
- search = unescape(search);
- }
-
- search = search.replace(/^ +/, ""); // strip leading spaces
- search = search.replace(/ +$/, ""); // strip trailing spaces
- search = search.toLowerCase();
- search = convertToId(search);
-
- var resultRows = document.getElementsByTagName("div");
- var matches = 0;
-
- var i = 0;
- while (i < resultRows.length)
- {
- var row = resultRows.item(i);
- if (row.className == "SRResult")
- {
- var rowMatchName = row.id.toLowerCase();
- rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
-
- if (search.length<=rowMatchName.length &&
- rowMatchName.substr(0, search.length)==search)
- {
- row.style.display = 'block';
- matches++;
- }
- else
- {
- row.style.display = 'none';
- }
- }
- i++;
- }
- document.getElementById("Searching").style.display='none';
- if (matches == 0) // no results
- {
- document.getElementById("NoMatches").style.display='block';
- }
- else // at least one result
- {
- document.getElementById("NoMatches").style.display='none';
+ this.Toggle = function(id) {
+ const element = this.FindChildElement(id);
+ if (element) {
+ if (element.style.display == 'block') {
+ element.style.display = 'none';
+ } else {
+ element.style.display = 'block';
}
- this.lastMatchCount = matches;
- return true;
}
+ }
- // return the first item with index index or higher that is visible
- this.NavNext = function(index)
- {
- var focusItem;
- while (1)
- {
- var focusName = 'Item'+index;
- focusItem = document.getElementById(focusName);
- if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
- {
- break;
- }
- else if (!focusItem) // last element
- {
- break;
+ // Searches for the passed string. If there is no parameter,
+ // it takes it from the URL query.
+ //
+ // Always returns true, since other documents may try to call it
+ // and that may or may not be possible.
+ this.Search = function(search) {
+ if (!search) { // get search word from URL
+ search = window.location.search;
+ search = search.substring(1); // Remove the leading '?'
+ search = unescape(search);
+ }
+
+ search = search.replace(/^ +/, ""); // strip leading spaces
+ search = search.replace(/ +$/, ""); // strip trailing spaces
+ search = search.toLowerCase();
+ search = convertToId(search);
+
+ const resultRows = document.getElementsByTagName("div");
+ let matches = 0;
+
+ let i = 0;
+ while (i < resultRows.length) {
+ const row = resultRows.item(i);
+ if (row.className == "SRResult") {
+ let rowMatchName = row.id.toLowerCase();
+ rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+ if (search.length<=rowMatchName.length &&
+ rowMatchName.substr(0, search.length)==search) {
+ row.style.display = 'block';
+ matches++;
+ } else {
+ row.style.display = 'none';
}
- focusItem=null;
- index++;
}
- return focusItem;
+ i++;
}
+ document.getElementById("Searching").style.display='none';
+ if (matches == 0) { // no results
+ document.getElementById("NoMatches").style.display='block';
+ } else { // at least one result
+ document.getElementById("NoMatches").style.display='none';
+ }
+ this.lastMatchCount = matches;
+ return true;
+ }
- this.NavPrev = function(index)
- {
- var focusItem;
- while (1)
- {
- var focusName = 'Item'+index;
- focusItem = document.getElementById(focusName);
- if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
- {
- break;
- }
- else if (!focusItem) // last element
- {
- break;
- }
- focusItem=null;
- index--;
+ // return the first item with index index or higher that is visible
+ this.NavNext = function(index) {
+ let focusItem;
+ for (;;) {
+ const focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block') {
+ break;
+ } else if (!focusItem) { // last element
+ break;
+ }
+ focusItem=null;
+ index++;
+ }
+ return focusItem;
+ }
+
+ this.NavPrev = function(index) {
+ let focusItem;
+ for (;;) {
+ const focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block') {
+ break;
+ } else if (!focusItem) { // last element
+ break;
}
- return focusItem;
+ focusItem=null;
+ index--;
}
+ return focusItem;
+ }
- this.ProcessKeys = function(e)
- {
- if (e.type == "keydown")
- {
- this.repeatOn = false;
- this.lastKey = e.keyCode;
- }
- else if (e.type == "keypress")
- {
- if (!this.repeatOn)
- {
- if (this.lastKey) this.repeatOn = true;
- return false; // ignore first keypress after keydown
- }
- }
- else if (e.type == "keyup")
- {
- this.lastKey = 0;
- this.repeatOn = false;
+ this.ProcessKeys = function(e) {
+ if (e.type == "keydown") {
+ this.repeatOn = false;
+ this.lastKey = e.keyCode;
+ } else if (e.type == "keypress") {
+ if (!this.repeatOn) {
+ if (this.lastKey) this.repeatOn = true;
+ return false; // ignore first keypress after keydown
}
- return this.lastKey!=0;
+ } else if (e.type == "keyup") {
+ this.lastKey = 0;
+ this.repeatOn = false;
}
+ return this.lastKey!=0;
+ }
- this.Nav = function(evt,itemIndex)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==13) return true;
- if (!this.ProcessKeys(e)) return false;
-
- if (this.lastKey==38) // Up
- {
- var newIndex = itemIndex-1;
- var focusItem = this.NavPrev(newIndex);
- if (focusItem)
- {
- var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
- if (child && child.style.display == 'block') // children visible
- {
- var n=0;
- var tmpElem;
- while (1) // search for last child
- {
- tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
- if (tmpElem)
- {
- focusItem = tmpElem;
- }
- else // found it!
- {
- break;
- }
- n++;
+ this.Nav = function(evt,itemIndex) {
+ const e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) { // Up
+ const newIndex = itemIndex-1;
+ let focusItem = this.NavPrev(newIndex);
+ if (focusItem) {
+ let child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+ if (child && child.style.display == 'block') { // children visible
+ let n=0;
+ let tmpElem;
+ for (;;) { // search for last child
+ tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+ if (tmpElem) {
+ focusItem = tmpElem;
+ } else { // found it!
+ break;
}
+ n++;
}
}
- if (focusItem)
- {
- focusItem.focus();
- }
- else // return focus to search field
- {
- document.getElementById("MSearchField").focus();
- }
- }
- else if (this.lastKey==40) // Down
- {
- var newIndex = itemIndex+1;
- var focusItem;
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem && elem.style.display == 'block') // children visible
- {
- focusItem = document.getElementById('Item'+itemIndex+'_c0');
- }
- if (!focusItem) focusItem = this.NavNext(newIndex);
- if (focusItem) focusItem.focus();
- }
- else if (this.lastKey==39) // Right
- {
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem) elem.style.display = 'block';
- }
- else if (this.lastKey==37) // Left
- {
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem) elem.style.display = 'none';
}
- else if (this.lastKey==27) // Escape
- {
- e.stopPropagation();
- searchBox.CloseResultsWindow();
+ if (focusItem) {
+ focusItem.focus();
+ } else { // return focus to search field
document.getElementById("MSearchField").focus();
}
- else if (this.lastKey==13) // Enter
- {
- return true;
- }
- return false;
+ } else if (this.lastKey==40) { // Down
+ const newIndex = itemIndex+1;
+ let focusItem;
+ const item = document.getElementById('Item'+itemIndex);
+ const elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem && elem.style.display == 'block') { // children visible
+ focusItem = document.getElementById('Item'+itemIndex+'_c0');
+ }
+ if (!focusItem) focusItem = this.NavNext(newIndex);
+ if (focusItem) focusItem.focus();
+ } else if (this.lastKey==39) { // Right
+ const item = document.getElementById('Item'+itemIndex);
+ const elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'block';
+ } else if (this.lastKey==37) { // Left
+ const item = document.getElementById('Item'+itemIndex);
+ const elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'none';
+ } else if (this.lastKey==27) { // Escape
+ e.stopPropagation();
+ searchBox.CloseResultsWindow();
+ document.getElementById("MSearchField").focus();
+ } else if (this.lastKey==13) { // Enter
+ return true;
}
+ return false;
+ }
- this.NavChild = function(evt,itemIndex,childIndex)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==13) return true;
- if (!this.ProcessKeys(e)) return false;
-
- if (this.lastKey==38) // Up
- {
- if (childIndex>0)
- {
- var newIndex = childIndex-1;
- document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
- }
- else // already at first child, jump to parent
- {
- document.getElementById('Item'+itemIndex).focus();
- }
+ this.NavChild = function(evt,itemIndex,childIndex) {
+ const e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) { // Up
+ if (childIndex>0) {
+ const newIndex = childIndex-1;
+ document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+ } else { // already at first child, jump to parent
+ document.getElementById('Item'+itemIndex).focus();
}
- else if (this.lastKey==40) // Down
- {
- var newIndex = childIndex+1;
- var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
- if (!elem) // last child, jump to parent next parent
- {
- elem = this.NavNext(itemIndex+1);
- }
- if (elem)
- {
- elem.focus();
- }
+ } else if (this.lastKey==40) { // Down
+ const newIndex = childIndex+1;
+ let elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+ if (!elem) { // last child, jump to parent next parent
+ elem = this.NavNext(itemIndex+1);
}
- else if (this.lastKey==27) // Escape
- {
- e.stopPropagation();
- searchBox.CloseResultsWindow();
- document.getElementById("MSearchField").focus();
+ if (elem) {
+ elem.focus();
}
- else if (this.lastKey==13) // Enter
- {
- return true;
- }
- return false;
+ } else if (this.lastKey==27) { // Escape
+ e.stopPropagation();
+ searchBox.CloseResultsWindow();
+ document.getElementById("MSearchField").focus();
+ } else if (this.lastKey==13) { // Enter
+ return true;
}
+ return false;
+ }
}
-function setKeyActions(elem,action)
-{
- elem.setAttribute('onkeydown',action);
- elem.setAttribute('onkeypress',action);
- elem.setAttribute('onkeyup',action);
-}
+function createResults(resultsPath) {
-function setClassAttr(elem,attr)
-{
- elem.setAttribute('class',attr);
- elem.setAttribute('className',attr);
-}
+ function setKeyActions(elem,action) {
+ elem.setAttribute('onkeydown',action);
+ elem.setAttribute('onkeypress',action);
+ elem.setAttribute('onkeyup',action);
+ }
+
+ function setClassAttr(elem,attr) {
+ elem.setAttribute('class',attr);
+ elem.setAttribute('className',attr);
+ }
-function createResults(resultsPath)
-{
- var results = document.getElementById("SRResults");
+ const results = document.getElementById("SRResults");
results.innerHTML = '';
- for (var e=0; e<searchData.length; e++)
- {
- var id = searchData[e][0];
- var srResult = document.createElement('div');
+ searchData.forEach((elem,index) => {
+ const id = elem[0];
+ const srResult = document.createElement('div');
srResult.setAttribute('id','SR_'+id);
setClassAttr(srResult,'SRResult');
- var srEntry = document.createElement('div');
+ const srEntry = document.createElement('div');
setClassAttr(srEntry,'SREntry');
- var srLink = document.createElement('a');
- srLink.setAttribute('id','Item'+e);
- setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+ const srLink = document.createElement('a');
+ srLink.setAttribute('id','Item'+index);
+ setKeyActions(srLink,'return searchResults.Nav(event,'+index+')');
setClassAttr(srLink,'SRSymbol');
- srLink.innerHTML = searchData[e][1][0];
+ srLink.innerHTML = elem[1][0];
srEntry.appendChild(srLink);
- if (searchData[e][1].length==2) // single result
- {
- srLink.setAttribute('href',resultsPath+searchData[e][1][1][0]);
+ if (elem[1].length==2) { // single result
+ srLink.setAttribute('href',resultsPath+elem[1][1][0]);
srLink.setAttribute('onclick','searchBox.CloseResultsWindow()');
- if (searchData[e][1][1][1])
- {
+ if (elem[1][1][1]) {
srLink.setAttribute('target','_parent');
- }
- else
- {
+ } else {
srLink.setAttribute('target','_blank');
}
- var srScope = document.createElement('span');
+ const srScope = document.createElement('span');
setClassAttr(srScope,'SRScope');
- srScope.innerHTML = searchData[e][1][1][2];
+ srScope.innerHTML = elem[1][1][2];
srEntry.appendChild(srScope);
- }
- else // multiple results
- {
+ } else { // multiple results
srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
- var srChildren = document.createElement('div');
+ const srChildren = document.createElement('div');
setClassAttr(srChildren,'SRChildren');
- for (var c=0; c<searchData[e][1].length-1; c++)
- {
- var srChild = document.createElement('a');
- srChild.setAttribute('id','Item'+e+'_c'+c);
- setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+ for (let c=0; c<elem[1].length-1; c++) {
+ const srChild = document.createElement('a');
+ srChild.setAttribute('id','Item'+index+'_c'+c);
+ setKeyActions(srChild,'return searchResults.NavChild(event,'+index+','+c+')');
setClassAttr(srChild,'SRScope');
- srChild.setAttribute('href',resultsPath+searchData[e][1][c+1][0]);
+ srChild.setAttribute('href',resultsPath+elem[1][c+1][0]);
srChild.setAttribute('onclick','searchBox.CloseResultsWindow()');
- if (searchData[e][1][c+1][1])
- {
+ if (elem[1][c+1][1]) {
srChild.setAttribute('target','_parent');
- }
- else
- {
+ } else {
srChild.setAttribute('target','_blank');
}
- srChild.innerHTML = searchData[e][1][c+1][2];
+ srChild.innerHTML = elem[1][c+1][2];
srChildren.appendChild(srChild);
}
srEntry.appendChild(srChildren);
}
srResult.appendChild(srEntry);
results.appendChild(srResult);
- }
+ });
}
-function init_search()
-{
- var results = document.getElementById("MSearchSelectWindow");
+function init_search() {
+ const results = document.getElementById("MSearchSelectWindow");
+
results.tabIndex=0;
- for (var key in indexSectionLabels)
- {
- var link = document.createElement('a');
+ for (let key in indexSectionLabels) {
+ const link = document.createElement('a');
link.setAttribute('class','SelectItem');
link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
link.href='javascript:void(0)';
link.innerHTML='<span class="SelectionMark"> </span>'+indexSectionLabels[key];
results.appendChild(link);
}
- searchBox.OnSelectItem(0);
- var input = document.getElementById("MSearchSelect");
- var searchSelectWindow = document.getElementById("MSearchSelectWindow");
+ const input = document.getElementById("MSearchSelect");
+ const searchSelectWindow = document.getElementById("MSearchSelectWindow");
input.tabIndex=0;
input.addEventListener("keydown", function(event) {
if (event.keyCode==13 || event.keyCode==40) {
}
}
});
+ const name = Cookie.readSetting(SEARCH_COOKIE_NAME,0);
+ const id = searchBox.GetSelectionIdByName(name);
+ searchBox.OnSelectItem(id);
}
/* @license-end */
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: array_parent_info Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: array_unchanged Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cg_mount_point Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cg_mount_table_s Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
-<tr class="memitem:a9fc6421ae21cb12127b3c1f5af3a7d4a" id="r_a9fc6421ae21cb12127b3c1f5af3a7d4a"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structcg__mount__table__s.html#a9fc6421ae21cb12127b3c1f5af3a7d4a">name</a> [CONTROL_NAMELEN_MAX]</td></tr>
+<tr class="memitem:a9fc6421ae21cb12127b3c1f5af3a7d4a" id="r_a9fc6421ae21cb12127b3c1f5af3a7d4a"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9fc6421ae21cb12127b3c1f5af3a7d4a">name</a> [CONTROL_NAMELEN_MAX]</td></tr>
<tr class="separator:a9fc6421ae21cb12127b3c1f5af3a7d4a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9704fa3ec3674f6d433345ea52b6aeef" id="r_a9704fa3ec3674f6d433345ea52b6aeef"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcg__mount__point.html">cg_mount_point</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcg__mount__table__s.html#a9704fa3ec3674f6d433345ea52b6aeef">mount</a></td></tr>
+<tr class="memitem:a9704fa3ec3674f6d433345ea52b6aeef" id="r_a9704fa3ec3674f6d433345ea52b6aeef"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcg__mount__point.html">cg_mount_point</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9704fa3ec3674f6d433345ea52b6aeef">mount</a></td></tr>
<tr class="separator:a9704fa3ec3674f6d433345ea52b6aeef"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1d69f1d8406fb81cd7978512b3f6d9a2" id="r_a1d69f1d8406fb81cd7978512b3f6d9a2"><td class="memItemLeft" align="right" valign="top"><a id="a1d69f1d8406fb81cd7978512b3f6d9a2" name="a1d69f1d8406fb81cd7978512b3f6d9a2"></a>
int </td><td class="memItemRight" valign="bottom"><b>index</b></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_abstraction_map Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_controller Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_dictionary Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_dictionary_item Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_dictionary_iterator Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_file_info Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
-<tr class="memitem:a955506601f440d05cb11e4ee6b455c55" id="r_a955506601f440d05cb11e4ee6b455c55"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__file__info.html#a955506601f440d05cb11e4ee6b455c55">type</a></td></tr>
+<tr class="memitem:a955506601f440d05cb11e4ee6b455c55" id="r_a955506601f440d05cb11e4ee6b455c55"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="group__group__iterators.html#ga608b4aa32e2db58fed34771a6a272444">cgroup_file_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a955506601f440d05cb11e4ee6b455c55">type</a></td></tr>
<tr class="separator:a955506601f440d05cb11e4ee6b455c55"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a801424e68139c930e40ea24be4d96a68" id="r_a801424e68139c930e40ea24be4d96a68"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__file__info.html#a801424e68139c930e40ea24be4d96a68">path</a></td></tr>
+<tr class="memitem:a801424e68139c930e40ea24be4d96a68" id="r_a801424e68139c930e40ea24be4d96a68"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a801424e68139c930e40ea24be4d96a68">path</a></td></tr>
<tr class="separator:a801424e68139c930e40ea24be4d96a68"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a739c7f87593e36d8589d3ffa80b57059" id="r_a739c7f87593e36d8589d3ffa80b57059"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__file__info.html#a739c7f87593e36d8589d3ffa80b57059">parent</a></td></tr>
+<tr class="memitem:a739c7f87593e36d8589d3ffa80b57059" id="r_a739c7f87593e36d8589d3ffa80b57059"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a739c7f87593e36d8589d3ffa80b57059">parent</a></td></tr>
<tr class="separator:a739c7f87593e36d8589d3ffa80b57059"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4c61dc7f726ba0784ff8c71473dbc6e6" id="r_a4c61dc7f726ba0784ff8c71473dbc6e6"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__file__info.html#a4c61dc7f726ba0784ff8c71473dbc6e6">full_path</a></td></tr>
+<tr class="memitem:a4c61dc7f726ba0784ff8c71473dbc6e6" id="r_a4c61dc7f726ba0784ff8c71473dbc6e6"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4c61dc7f726ba0784ff8c71473dbc6e6">full_path</a></td></tr>
<tr class="separator:a4c61dc7f726ba0784ff8c71473dbc6e6"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad56dca35266f0f5f5c2666b946d72709" id="r_ad56dca35266f0f5f5c2666b946d72709"><td class="memItemLeft" align="right" valign="top">short </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__file__info.html#ad56dca35266f0f5f5c2666b946d72709">depth</a></td></tr>
+<tr class="memitem:ad56dca35266f0f5f5c2666b946d72709" id="r_ad56dca35266f0f5f5c2666b946d72709"><td class="memItemLeft" align="right" valign="top">short </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad56dca35266f0f5f5c2666b946d72709">depth</a></td></tr>
<tr class="separator:ad56dca35266f0f5f5c2666b946d72709"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_group_spec Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_info Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_mount_point Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
-<tr class="memitem:a849ccf1e77fffd5d45304c6adf0d2100" id="r_a849ccf1e77fffd5d45304c6adf0d2100"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__mount__point.html#a849ccf1e77fffd5d45304c6adf0d2100">name</a> [FILENAME_MAX]</td></tr>
+<tr class="memitem:a849ccf1e77fffd5d45304c6adf0d2100" id="r_a849ccf1e77fffd5d45304c6adf0d2100"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="#a849ccf1e77fffd5d45304c6adf0d2100">name</a> [FILENAME_MAX]</td></tr>
<tr class="separator:a849ccf1e77fffd5d45304c6adf0d2100"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad1e89dfc02cfd7341e2296086a4f251e" id="r_ad1e89dfc02cfd7341e2296086a4f251e"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__mount__point.html#ad1e89dfc02cfd7341e2296086a4f251e">path</a> [FILENAME_MAX]</td></tr>
+<tr class="memitem:ad1e89dfc02cfd7341e2296086a4f251e" id="r_ad1e89dfc02cfd7341e2296086a4f251e"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad1e89dfc02cfd7341e2296086a4f251e">path</a> [FILENAME_MAX]</td></tr>
<tr class="separator:ad1e89dfc02cfd7341e2296086a4f251e"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_rule Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_rule_list Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_rules_data Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_stat Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_string_list Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_systemd_opts Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_systemd_scope_opts Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
-<tr class="memitem:afeebc7db4b83ce4a7d2aeefb8089df86" id="r_afeebc7db4b83ce4a7d2aeefb8089df86"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__systemd__scope__opts.html#afeebc7db4b83ce4a7d2aeefb8089df86">delegated</a></td></tr>
+<tr class="memitem:afeebc7db4b83ce4a7d2aeefb8089df86" id="r_afeebc7db4b83ce4a7d2aeefb8089df86"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#afeebc7db4b83ce4a7d2aeefb8089df86">delegated</a></td></tr>
<tr class="separator:afeebc7db4b83ce4a7d2aeefb8089df86"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aadb235f6712172bd4e7c6485ad7f30f9" id="r_aadb235f6712172bd4e7c6485ad7f30f9"><td class="memItemLeft" align="right" valign="top">enum cgroup_systemd_mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__systemd__scope__opts.html#aadb235f6712172bd4e7c6485ad7f30f9">mode</a></td></tr>
+<tr class="memitem:aadb235f6712172bd4e7c6485ad7f30f9" id="r_aadb235f6712172bd4e7c6485ad7f30f9"><td class="memItemLeft" align="right" valign="top">enum cgroup_systemd_mode_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#aadb235f6712172bd4e7c6485ad7f30f9">mode</a></td></tr>
<tr class="separator:aadb235f6712172bd4e7c6485ad7f30f9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a73b472fe4247f194a78ffb9fd0f57008" id="r_a73b472fe4247f194a78ffb9fd0f57008"><td class="memItemLeft" align="right" valign="top">pid_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structcgroup__systemd__scope__opts.html#a73b472fe4247f194a78ffb9fd0f57008">pid</a></td></tr>
+<tr class="memitem:a73b472fe4247f194a78ffb9fd0f57008" id="r_a73b472fe4247f194a78ffb9fd0f57008"><td class="memItemLeft" align="right" valign="top">pid_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a73b472fe4247f194a78ffb9fd0f57008">pid</a></td></tr>
<tr class="separator:a73b472fe4247f194a78ffb9fd0f57008"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: cgroup_tree_handle Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: control_value Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: controller_data Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Data Fields</h2></td></tr>
-<tr class="memitem:a5474be4d8cc4553c94ca81c6a93f5a18" id="r_a5474be4d8cc4553c94ca81c6a93f5a18"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="structcontroller__data.html#a5474be4d8cc4553c94ca81c6a93f5a18">name</a> [FILENAME_MAX]</td></tr>
+<tr class="memitem:a5474be4d8cc4553c94ca81c6a93f5a18" id="r_a5474be4d8cc4553c94ca81c6a93f5a18"><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5474be4d8cc4553c94ca81c6a93f5a18">name</a> [FILENAME_MAX]</td></tr>
<tr class="separator:a5474be4d8cc4553c94ca81c6a93f5a18"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a25e316f55473ca2b333b0d7e0ca644b4" id="r_a25e316f55473ca2b333b0d7e0ca644b4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcontroller__data.html#a25e316f55473ca2b333b0d7e0ca644b4">hierarchy</a></td></tr>
+<tr class="memitem:a25e316f55473ca2b333b0d7e0ca644b4" id="r_a25e316f55473ca2b333b0d7e0ca644b4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#a25e316f55473ca2b333b0d7e0ca644b4">hierarchy</a></td></tr>
<tr class="separator:a25e316f55473ca2b333b0d7e0ca644b4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:acd075c0bb48062bf720b68d0a30116eb" id="r_acd075c0bb48062bf720b68d0a30116eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcontroller__data.html#acd075c0bb48062bf720b68d0a30116eb">num_cgroups</a></td></tr>
+<tr class="memitem:acd075c0bb48062bf720b68d0a30116eb" id="r_acd075c0bb48062bf720b68d0a30116eb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#acd075c0bb48062bf720b68d0a30116eb">num_cgroups</a></td></tr>
<tr class="separator:acd075c0bb48062bf720b68d0a30116eb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a24be412cfb6c19f7a13a4bff9e55206e" id="r_a24be412cfb6c19f7a13a4bff9e55206e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcontroller__data.html#a24be412cfb6c19f7a13a4bff9e55206e">enabled</a></td></tr>
+<tr class="memitem:a24be412cfb6c19f7a13a4bff9e55206e" id="r_a24be412cfb6c19f7a13a4bff9e55206e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#a24be412cfb6c19f7a13a4bff9e55206e">enabled</a></td></tr>
<tr class="separator:a24be412cfb6c19f7a13a4bff9e55206e"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: deny_list_type Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: example_opts Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: ext_cgroup_record Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: parent_info Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: unchanged_pid Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/systemd.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">systemd.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
-.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important;color:var(--nav-menu-foreground-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}}
\ No newline at end of file
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}}
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/tasks.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">tasks.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Todo List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div>
</div><!-- top -->
+<div id="doc-content">
<div><div class="header">
<div class="headertitle"><div class="title">Todo List</div></div>
</div><!--header-->
</div><!-- PageDoc -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: src/tools/tools-common.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_1563a38af0d3a5e4a6330d6d45e9792a.html">tools</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">tools-common.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: include/libcgroup/tools.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
-$(document).ready(function() { init_codefold(0); });
+$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_66a7763e2a9b96033a682558820d533e.html">libcgroup</a></li> </ul>
</div>
</div><!-- top -->
+<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">tools.h</div></div>
</div><!--header-->
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
-<meta name="generator" content="Doxygen 1.9.8"/>
+<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libcgroup: Topics</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
</table>
</div>
<!-- end header part -->
-<!-- Generated by Doxygen 1.9.8 -->
+<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
+ initMenu('',true,false,'search.php','Search',false);
+ $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
+<div id="doc-content">
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
+$(function(){ initResizable(false); });
+/* @license-end */
+</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
-Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
+Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
+</div><!-- doc-content -->
</body>
</html>