282 lines
17 KiB
HTML
282 lines
17 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.8"/>
|
|
<title>PIP: PICollection 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>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(initResizable);
|
|
$(window).load(resizeHeight);
|
|
</script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() { searchBox.OnSelectItem(0); });
|
|
</script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td style="padding-left: 0.5em;">
|
|
<div id="projectname">PIP
|
|
 <span id="projectnumber">0.4.1_alpha3</span>
|
|
</div>
|
|
<div id="projectbrief">Platform-Independent Primitives</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.8 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
|
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
|
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
<li>
|
|
<div id="MSearchBox" class="MSearchBoxInactive">
|
|
<span class="left">
|
|
<img id="MSearchSelect" src="search/mag_sel.png"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
alt=""/>
|
|
<input type="text" id="MSearchField" value="Search" accesskey="S"
|
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
|
</span><span class="right">
|
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="navrow2" class="tabs2">
|
|
<ul class="tablist">
|
|
<li><a href="annotated.html"><span>Class List</span></a></li>
|
|
<li><a href="classes.html"><span>Class Index</span></a></li>
|
|
<li><a href="inherits.html"><span>Class Hierarchy</span></a></li>
|
|
<li><a href="functions.html"><span>Class Members</span></a></li>
|
|
</ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){initNavTree('class_p_i_collection.html','');});
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Pages</a></div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-static-methods">Static Public Member Functions</a> |
|
|
<a href="#related">Related Functions</a> |
|
|
<a href="class_p_i_collection-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">PICollection Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Interface to discover element groups.
|
|
<a href="class_p_i_collection.html#details">More...</a></p>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
|
|
Static Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a84d0050eaeb3187ed61a46ac31aa812f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84d0050eaeb3187ed61a46ac31aa812f"></a>
|
|
static <a class="el" href="class_p_i_string_list.html">PIStringList</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_collection.html#a84d0050eaeb3187ed61a46ac31aa812f">groups</a> ()</td></tr>
|
|
<tr class="memdesc:a84d0050eaeb3187ed61a46ac31aa812f"><td class="mdescLeft"> </td><td class="mdescRight">Returns all existing groups by their names. <br /></td></tr>
|
|
<tr class="separator:a84d0050eaeb3187ed61a46ac31aa812f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a74ed1ec578c1c1749f72a92c714b9243"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74ed1ec578c1c1749f72a92c714b9243"></a>
|
|
static <a class="el" href="class_p_i_vector.html">PIVector</a>< const <a class="el" href="class_p_i_object.html">PIObject</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_collection.html#a74ed1ec578c1c1749f72a92c714b9243">groupElements</a> (const <a class="el" href="class_p_i_string.html">PIString</a> &group)</td></tr>
|
|
<tr class="memdesc:a74ed1ec578c1c1749f72a92c714b9243"><td class="mdescLeft"> </td><td class="mdescRight">Returns all elements of group "group". <br /></td></tr>
|
|
<tr class="separator:a74ed1ec578c1c1749f72a92c714b9243"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a>
|
|
Related Functions</h2></td></tr>
|
|
<tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p>
|
|
</td></tr>
|
|
<tr class="memitem:a450e8ac720c8b0f6223ad2bf42f83ae2"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_collection.html#a450e8ac720c8b0f6223ad2bf42f83ae2">ADD_TO_COLLECTION</a>(group, object)</td></tr>
|
|
<tr class="memdesc:a450e8ac720c8b0f6223ad2bf42f83ae2"><td class="mdescLeft"> </td><td class="mdescRight">Add existing element "object" in group with name "group". <a href="#a450e8ac720c8b0f6223ad2bf42f83ae2">More...</a><br /></td></tr>
|
|
<tr class="separator:a450e8ac720c8b0f6223ad2bf42f83ae2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a78cc4937360f5e286cdd8baf403edfec"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_collection.html#a78cc4937360f5e286cdd8baf403edfec">ADD_NEW_TO_COLLECTION</a>(group, class)</td></tr>
|
|
<tr class="memdesc:a78cc4937360f5e286cdd8baf403edfec"><td class="mdescLeft"> </td><td class="mdescRight">Add new element of class "class" in group with name "group". <a href="#a78cc4937360f5e286cdd8baf403edfec">More...</a><br /></td></tr>
|
|
<tr class="separator:a78cc4937360f5e286cdd8baf403edfec"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Interface to discover element groups. </p>
|
|
<h1><a class="anchor" id="PICollection_sec0"></a>
|
|
Synopsis</h1>
|
|
<p>This class has only static functions so no need to create instance of the PICollection. This class provide macros to add some classes or existing objects to global collection and access to them from any place of the code. </p><div class="fragment"><div class="line"><span class="keyword">class </span>ElementA: <span class="keyword">public</span> <a class="code" href="class_p_i_object.html">PIObject</a> {</div>
|
|
<div class="line"> PIOBJECT(ElementA)</div>
|
|
<div class="line"> <span class="comment">// ...</span></div>
|
|
<div class="line">};</div>
|
|
<div class="line"><a class="code" href="class_p_i_collection.html#a78cc4937360f5e286cdd8baf403edfec">ADD_NEW_TO_COLLECTION</a>(ab_group, ElementA)</div>
|
|
<div class="line"></div>
|
|
<div class="line">class ElementB: public <a class="code" href="class_p_i_object.html">PIObject</a> {</div>
|
|
<div class="line"> PIOBJECT(ElementB)</div>
|
|
<div class="line"> <span class="comment">// ...</span></div>
|
|
<div class="line">};</div>
|
|
<div class="line"><a class="code" href="class_p_i_collection.html#a78cc4937360f5e286cdd8baf403edfec">ADD_NEW_TO_COLLECTION</a>(ab_group, ElementB)</div>
|
|
<div class="line"></div>
|
|
<div class="line">class ElementC: public <a class="code" href="class_p_i_object.html">PIObject</a> {</div>
|
|
<div class="line"> PIOBJECT(ElementC)</div>
|
|
<div class="line"> <span class="comment">// ...</span></div>
|
|
<div class="line">};</div>
|
|
<div class="line"><a class="code" href="class_p_i_collection.html#a78cc4937360f5e286cdd8baf403edfec">ADD_NEW_TO_COLLECTION</a>(c_group, ElementC)</div>
|
|
<div class="line"></div>
|
|
<div class="line">class ElementD: public <a class="code" href="class_p_i_object.html">PIObject</a> {</div>
|
|
<div class="line"> PIOBJECT(ElementD)</div>
|
|
<div class="line"> <span class="comment">// ...</span></div>
|
|
<div class="line">};</div>
|
|
<div class="line"></div>
|
|
<div class="line"><span class="keywordtype">int</span> main() {</div>
|
|
<div class="line"> ElementD * el_d = <span class="keyword">new</span> ElementD();</div>
|
|
<div class="line"> <a class="code" href="class_p_i_collection.html#a450e8ac720c8b0f6223ad2bf42f83ae2">ADD_TO_COLLECTION</a>(ab_group, el_d)</div>
|
|
<div class="line"> </div>
|
|
<div class="line"> <a class="code" href="class_p_i_string_list.html">PIStringList</a> gl = <a class="code" href="class_p_i_collection.html">PICollection</a>::<a class="code" href="class_p_i_collection.html#a84d0050eaeb3187ed61a46ac31aa812f">groups</a>();</div>
|
|
<div class="line"> <a class="code" href="piincludes_8h.html#ad21862cbba89aead064fbef4c825030e">piCout</a> << gl; <span class="comment">// {"ab_group", "c_group"}</span></div>
|
|
<div class="line"> <a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<a class="code" href="class_p_i_string.html">PIString</a> g, gl) {</div>
|
|
<div class="line"> <a class="code" href="class_p_i_vector.html">PIVector<const PIObject * ></a> go = <a class="code" href="class_p_i_collection.html#a74ed1ec578c1c1749f72a92c714b9243">PICollection::groupElements</a>(g);</div>
|
|
<div class="line"> <a class="code" href="piincludes_8h.html#ad21862cbba89aead064fbef4c825030e">piCout</a> << <span class="stringliteral">"group"</span> << g << <span class="stringliteral">":"</span>;</div>
|
|
<div class="line"> <a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<a class="code" href="class_p_i_object.html">PIObject</a> * o, go)</div>
|
|
<div class="line"> <a class="code" href="piincludes_8h.html#ad21862cbba89aead064fbef4c825030e">piCout</a> << <a class="code" href="namespace_p_i_cout_manipulators.html#a66678520ac7701c016e3e90e17a7dfa2a9d183ab2eef93987077269cad1047bcb">Tab</a> << o->className();</div>
|
|
<div class="line"> }</div>
|
|
<div class="line"> </div>
|
|
<div class="line"> <span class="comment">/*</span></div>
|
|
<div class="line"><span class="comment"> group ab_group :</span></div>
|
|
<div class="line"><span class="comment"> ElementA</span></div>
|
|
<div class="line"><span class="comment"> ElementB</span></div>
|
|
<div class="line"><span class="comment"> ElementD</span></div>
|
|
<div class="line"><span class="comment"> group c_group :</span></div>
|
|
<div class="line"><span class="comment"> ElementC</span></div>
|
|
<div class="line"><span class="comment"> */</span></div>
|
|
<div class="line">};</div>
|
|
</div><!-- fragment --></div><h2 class="groupheader">Friends And Related Function Documentation</h2>
|
|
<a class="anchor" id="a450e8ac720c8b0f6223ad2bf42f83ae2"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">#define ADD_TO_COLLECTION</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname">group, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname">object </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">related</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Add existing element "object" in group with name "group". </p>
|
|
<p>If there is no group with name "group" it will be created. Only one element of the class "object" can be in group "group". If this is already exists nothing be happens. <br />
|
|
"object" should to be pointer to object based on <a class="el" href="class_p_i_object.html" title="This is base class for any classes which use events -> handlers mechanism. ">PIObject</a>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a78cc4937360f5e286cdd8baf403edfec"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">#define ADD_NEW_TO_COLLECTION</td>
|
|
<td>(</td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname">group, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname">class </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">related</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Add new element of class "class" in group with name "group". </p>
|
|
<p>If there is no group with name "group" it will be created. Only one element of the class "class" can be in group "group". If this is already exists nothing be happens. <br />
|
|
"class" should to be name of the any class based on <a class="el" href="class_p_i_object.html" title="This is base class for any classes which use events -> handlers mechanism. ">PIObject</a>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="class_p_i_collection.html">PICollection</a></li>
|
|
<li class="footer">Generated on Sun Nov 2 2014 22:29:35 for PIP by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.8 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|