Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > 5674b83e4098065ec8ee4138eac12e58 > files > 510

lib64gigi-devel-0.8.0-8.1074.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>GG: GG::FlagSpec&lt; FlagType &gt; Class Template 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="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">GG
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceGG.html">GG</a></li><li class="navelem"><a class="el" href="classGG_1_1FlagSpec.html">FlagSpec</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">GG::FlagSpec&lt; FlagType &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="Flags_8h_source.html">Flags.h</a>&gt;</code></p>

<p><a href="classGG_1_1FlagSpec-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a9a6deccb6570e2a9c047a6c6227b333b"><td class="memItemLeft" align="right" valign="top">typedef std::set&lt; FlagType &gt;<br class="typebreak"/>
::<a class="el" href="classGG_1_1FlagSpec.html#a9a6deccb6570e2a9c047a6c6227b333b">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a9a6deccb6570e2a9c047a6c6227b333b">iterator</a></td></tr>
<tr class="memitem:af07c973ee71e5af67160d983335f8b26"><td class="memItemLeft" align="right" valign="top">typedef std::set&lt; FlagType &gt;<br class="typebreak"/>
::<a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a36af2708531372a19f0f2a2ffcee48cf"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGG_1_1FlagSpec.html">FlagSpec</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a36af2708531372a19f0f2a2ffcee48cf">instance</a> ()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Exceptions</h2></td></tr>
<tr class="memitem:ad6a21ac407cda231fd40075901536d6f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#ad6a21ac407cda231fd40075901536d6f">GG_ABSTRACT_EXCEPTION</a> (Exception)</td></tr>
<tr class="memitem:ac41ea0ba6b88c0f17f82bd2919d6d8c1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#ac41ea0ba6b88c0f17f82bd2919d6d8c1">GG_CONCRETE_EXCEPTION</a> (UnknownFlag, <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>, Exception)</td></tr>
<tr class="memitem:a0832e23d579ce6be69e8a14e2fbbe6f0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a0832e23d579ce6be69e8a14e2fbbe6f0">GG_CONCRETE_EXCEPTION</a> (UnknownString, <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>, Exception)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Accessors</h2></td></tr>
<tr class="memitem:a294410bbeb3a6f71b43481375472dd34"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a294410bbeb3a6f71b43481375472dd34">contains</a> (FlagType flag) const </td></tr>
<tr class="memitem:a9c8a12b8c06f267b27e6995a1fa0bb1b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a9c8a12b8c06f267b27e6995a1fa0bb1b">permanent</a> (FlagType flag) const </td></tr>
<tr class="memitem:a7177bea9479b04e52ca1dc41dc5ecfd7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a7177bea9479b04e52ca1dc41dc5ecfd7">find</a> (FlagType flag) const </td></tr>
<tr class="memitem:a143711ed0f76630931155b820c1ee2dc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a143711ed0f76630931155b820c1ee2dc">begin</a> () const </td></tr>
<tr class="memitem:aebc6c85a6bd64812d377ce6553b6c256"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#aebc6c85a6bd64812d377ce6553b6c256">end</a> () const </td></tr>
<tr class="memitem:a22aafc67a321685eeec2bbb6e2413dd9"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a22aafc67a321685eeec2bbb6e2413dd9">ToString</a> (FlagType flag) const </td></tr>
<tr class="memitem:a26e626d7bc5a316e0e318f431c67e3c1"><td class="memItemLeft" align="right" valign="top">FlagType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#a26e626d7bc5a316e0e318f431c67e3c1">FromString</a> (const std::string &amp;str) const </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Mutators</h2></td></tr>
<tr class="memitem:aae2c78540d560dcc6ac0d81a3242128c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#aae2c78540d560dcc6ac0d81a3242128c">insert</a> (FlagType flag, const std::string &amp;name, bool <a class="el" href="classGG_1_1FlagSpec.html#a9c8a12b8c06f267b27e6995a1fa0bb1b">permanent</a>=false)</td></tr>
<tr class="memitem:ab36c917aff2f2a897b9913dab9bd4777"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1FlagSpec.html#ab36c917aff2f2a897b9913dab9bd4777">erase</a> (FlagType flag)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;class FlagType&gt;<br/>
class GG::FlagSpec&lt; FlagType &gt;</h3>

<p>A singleton that encapsulates the set of known flags of type <em>FlagType</em>. </p>
<p>New user-defined flags must be registered with <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> in order to be used in <a class="el" href="classGG_1_1Flags.html" title="A set of flags of the same type.">Flags</a> objects for operator~ to work properly with flags of type <em>FlagType</em>. <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> is designed to be extensible. That is, it is understood that the flags used by <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> may be insufficient for all subclasses that users may write, and <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> allows authors of GG-derived classes to add flags. For instance, a subclass of <a class="el" href="classGG_1_1Wnd.html" title="This is the basic GG window class.">Wnd</a> may want to add a MINIMIZABLE flag. Doing so is as simple as declaring it and registering it with </p>
<pre class="fragment">FlagSpec&lt;WndFlag&gt;::instance.insert(MINIMIZABLE,
    "MINIMIZABLE") </pre><p>. If user-defined subclasses and their associated user-defined flags are loaded in a runtime-loaded library, users should take care to erase them from the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> when the library is unloaded. </p>
<dl class="section note"><dt>Note:</dt><dd>All user-instantiated FlagSpecs must provide their own implementations of the <a class="el" href="classGG_1_1FlagSpec.html#a36af2708531372a19f0f2a2ffcee48cf">instance()</a> static function (all the GG-provided <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> instantiations provide such implementations already). </dd></dl>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00149">149</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a9a6deccb6570e2a9c047a6c6227b333b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef std::set&lt;FlagType&gt;::<a class="el" href="classGG_1_1FlagSpec.html#a9a6deccb6570e2a9c047a6c6227b333b">iterator</a> <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::<a class="el" href="classGG_1_1FlagSpec.html#a9a6deccb6570e2a9c047a6c6227b333b">iterator</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Iterator over all known flags. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00159">159</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="af07c973ee71e5af67160d983335f8b26"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef std::set&lt;FlagType&gt;::<a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a> <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::<a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Const iterator over all known flags. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00161">161</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad6a21ac407cda231fd40075901536d6f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::GG_ABSTRACT_EXCEPTION </td>
          <td>(</td>
          <td class="paramtype">Exception&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The base class for <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> exceptions. </p>

</div>
</div>
<a class="anchor" id="ac41ea0ba6b88c0f17f82bd2919d6d8c1"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::GG_CONCRETE_EXCEPTION </td>
          <td>(</td>
          <td class="paramtype">UnknownFlag&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Exception&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Thrown when a flag-to-string conversion is requested for an unknown flag. </p>

</div>
</div>
<a class="anchor" id="a0832e23d579ce6be69e8a14e2fbbe6f0"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::GG_CONCRETE_EXCEPTION </td>
          <td>(</td>
          <td class="paramtype">UnknownString&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Exception&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Thrown when a string-to-flag conversion is requested for an unknown string. </p>

</div>
</div>
<a class="anchor" id="a36af2708531372a19f0f2a2ffcee48cf"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classGG_1_1FlagSpec.html">FlagSpec</a>&amp; <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::instance </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the singelton instance of this class. </p>

<p>Referenced by <a class="el" href="Flags_8h_source.html#l00475">GG::operator~()</a>.</p>

</div>
</div>
<a class="anchor" id="a294410bbeb3a6f71b43481375472dd34"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::contains </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns true iff <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a> contains <em>flag</em>. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00179">179</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9c8a12b8c06f267b27e6995a1fa0bb1b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::permanent </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns true iff <em>flag</em> is a "permanent" flag &ndash; a flag used internally by the <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> library, as opposed to a user-added flag. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00183">183</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7177bea9479b04e52ca1dc41dc5ecfd7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a> <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::find </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to <em>flag</em>, if flag is in the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>, or <a class="el" href="classGG_1_1FlagSpec.html#aebc6c85a6bd64812d377ce6553b6c256">end()</a> otherwise. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00187">187</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="a143711ed0f76630931155b820c1ee2dc"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a> <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::begin </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the first flag in the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00190">190</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

<p>Referenced by <a class="el" href="Flags_8h_source.html#l00475">GG::operator~()</a>.</p>

</div>
</div>
<a class="anchor" id="aebc6c85a6bd64812d377ce6553b6c256"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGG_1_1FlagSpec.html#af07c973ee71e5af67160d983335f8b26">const_iterator</a> <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::end </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to one past the last flag in the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00193">193</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

<p>Referenced by <a class="el" href="Flags_8h_source.html#l00475">GG::operator~()</a>.</p>

</div>
</div>
<a class="anchor" id="a22aafc67a321685eeec2bbb6e2413dd9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::ToString </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the stringification of <em>flag</em> provided when <em>flag</em> was added to the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>. </p>
<dl class="exception"><dt>Exceptions:</dt><dd>
  <table class="exception">
    <tr><td class="paramname">Throws</td><td>GG::FlagSpec::UnknownFlag if an unknown flag's stringification is requested. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00198">198</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="a26e626d7bc5a316e0e318f431c67e3c1"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">FlagType <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::FromString </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the flag whose stringification is <em>str</em>. </p>
<dl class="exception"><dt>Exceptions:</dt><dd>
  <table class="exception">
    <tr><td class="paramname">Throws</td><td>GG::FlagSpec::UnknownString if an unknown string is provided. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00207">207</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="aae2c78540d560dcc6ac0d81a3242128c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::insert </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>permanent</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Adds <em>flag</em>, with stringification string <em>name</em>, to the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>. If <em>permanent</em> is true, this flag becomes non-removable. Alls flags added by <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> are added as permanent flags. User-added flags should not be added as permanent. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00225">225</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab36c917aff2f2a897b9913dab9bd4777"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class FlagType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classGG_1_1FlagSpec.html">GG::FlagSpec</a>&lt; FlagType &gt;::erase </td>
          <td>(</td>
          <td class="paramtype">FlagType&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Removes <em>flag</em> from the <a class="el" href="classGG_1_1FlagSpec.html" title="A singleton that encapsulates the set of known flags of type FlagType.">FlagSpec</a>, returning whether the flag was actually removed or not. Permanent flags are not removed. The removal of flags will probably only be necessary in cases where flags were added for classes in a runtime-loaded DLL/shared library at DLL/shared library unload-time. </p>

<p>Definition at line <a class="el" href="Flags_8h_source.html#l00241">241</a> of file <a class="el" href="Flags_8h_source.html">Flags.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="Flags_8h_source.html">Flags.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jun 15 2012 15:13:31 for GG by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1
</small></address>
</body>
</html>