sfmlinstaller

sfmlinstaller Mercurial Source Tree


Root/windows/doc/html/classsf_1_1Context.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <head>
        <title>SFML - Simple and Fast Multimedia Library</title>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
        <!--<link rel='stylesheet' type='text/css' href="http://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
        <link rel="stylesheet" type="text/css" href="doxygen.css" title="default" media="screen,print" />
    </head>
    <body>
        <div id="banner-container">
            <div id="banner">
                <span id="sfml">SFML</span>
            </div>
        </div>
        <div id="content">
<!-- Generated by Doxygen 1.8.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.htm"><span>Main Page</span></a></li>
      <li><a href="modules.htm"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.htm"><span>Classes</span></a></li>
      <li><a href="files.htm"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.htm"><span>Class List</span></a></li>
      <li><a href="classes.htm"><span>Class Index</span></a></li>
      <li><a href="hierarchy.htm"><span>Class Hierarchy</span></a></li>
      <li><a href="functions.htm"><span>Class Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>sf</b></li><li class="navelem"><a class="el" href="classsf_1_1Context.htm">Context</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pri-static-methods">Static Private Member Functions</a> |
<a href="classsf_1_1Context-members.htm">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">sf::Context Class Reference<div class="ingroups"><a class="el" href="group__window.htm">Window module</a></div></div>  </div>
</div><!--header-->
<div class="contents">
 
<p>Class holding a valid drawing context. 
 <a href="classsf_1_1Context.htm#details">More...</a></p>
 
<p><code>#include <<a class="el" href="Context_8hpp_source.htm">Context.hpp</a>></code></p>
<div class="dynheader">
Inheritance diagram for sf::Context:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classsf_1_1Context.png" usemap="#sf::Context_map" alt=""/>
  <map id="sf::Context_map" name="sf::Context_map">
<area href="classsf_1_1GlResource.htm" title="Base class for classes that require an OpenGL context." alt="sf::GlResource" shape="rect" coords="0,0,105,24"/>
<area href="classsf_1_1NonCopyable.htm" title="Utility class that makes any derived class non-copyable." alt="sf::NonCopyable" shape="rect" coords="115,0,220,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aba22797a790706ca2c5c04ee39f2b555"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Context.htm#aba22797a790706ca2c5c04ee39f2b555">Context</a> ()</td></tr>
<tr class="memdesc:aba22797a790706ca2c5c04ee39f2b555"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor.  <a href="#aba22797a790706ca2c5c04ee39f2b555"></a><br/></td></tr>
<tr class="separator:aba22797a790706ca2c5c04ee39f2b555"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a805b1bbdb3e52b1fda7c9bf2cd6ca86b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Context.htm#a805b1bbdb3e52b1fda7c9bf2cd6ca86b">~Context</a> ()</td></tr>
<tr class="memdesc:a805b1bbdb3e52b1fda7c9bf2cd6ca86b"><td class="mdescLeft"> </td><td class="mdescRight">Destructor.  <a href="#a805b1bbdb3e52b1fda7c9bf2cd6ca86b"></a><br/></td></tr>
<tr class="separator:a805b1bbdb3e52b1fda7c9bf2cd6ca86b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0806f915ea81ae1f4e8135a7a3696562"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Context.htm#a0806f915ea81ae1f4e8135a7a3696562">setActive</a> (bool active)</td></tr>
<tr class="memdesc:a0806f915ea81ae1f4e8135a7a3696562"><td class="mdescLeft"> </td><td class="mdescRight">Activate or deactivate explicitely the context.  <a href="#a0806f915ea81ae1f4e8135a7a3696562"></a><br/></td></tr>
<tr class="separator:a0806f915ea81ae1f4e8135a7a3696562"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2a9e3529e48919120e6b6fc10bad296c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Context.htm#a2a9e3529e48919120e6b6fc10bad296c">Context</a> (const <a class="el" href="structsf_1_1ContextSettings.htm">ContextSettings</a> &settings, unsigned int width, unsigned int height)</td></tr>
<tr class="memdesc:a2a9e3529e48919120e6b6fc10bad296c"><td class="mdescLeft"> </td><td class="mdescRight">Construct a in-memory context.  <a href="#a2a9e3529e48919120e6b6fc10bad296c"></a><br/></td></tr>
<tr class="separator:a2a9e3529e48919120e6b6fc10bad296c"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:ae0efa7935241644608ca32ba47b22a33"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1GlResource.htm#ae0efa7935241644608ca32ba47b22a33">ensureGlContext</a> ()</td></tr>
<tr class="memdesc:ae0efa7935241644608ca32ba47b22a33"><td class="mdescLeft"> </td><td class="mdescRight">Make sure that a valid OpenGL context exists in the current thread.  <a href="#ae0efa7935241644608ca32ba47b22a33"></a><br/></td></tr>
<tr class="separator:ae0efa7935241644608ca32ba47b22a33"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class holding a valid drawing context. </p>
<p>If you need to make OpenGL calls without having an active window (like in a thread), you can use an instance of this class to get a valid context.</p>
<p>Having a valid context is necessary for <em>every</em> OpenGL call.</p>
<p>Note that a context is only active in its current thread, if you create a new thread it will have no valid context by default.</p>
<p>To use a <a class="el" href="classsf_1_1Context.htm" title="Class holding a valid drawing context.">sf::Context</a> instance, just construct it and let it live as long as you need a valid context. No explicit activation is needed, all it has to do is to exist. Its destructor will take care of deactivating and freeing all the attached resources.</p>
<p>Usage example: </p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> threadFunction(<span class="keywordtype">void</span>*)</div>
<div class="line">{</div>
<div class="line">   <a class="code" href="classsf_1_1Context.htm" title="Class holding a valid drawing context.">sf::Context</a> context;</div>
<div class="line">   <span class="comment">// from now on, you have a valid context</span></div>
<div class="line"></div>
<div class="line">   <span class="comment">// you can make OpenGL calls</span></div>
<div class="line">   glClear(GL_DEPTH_BUFFER_BIT);</div>
<div class="line">}</div>
<div class="line"><span class="comment">// the context is automatically deactivated and destroyed</span></div>
<div class="line"><span class="comment">// by the sf::Context destructor</span></div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="Context_8hpp_source.htm#l00048">48</a> of file <a class="el" href="Context_8hpp_source.htm">Context.hpp</a>.</p>
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
<a class="anchor" id="aba22797a790706ca2c5c04ee39f2b555"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sf::Context::Context </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
 
<p>Default constructor. </p>
<p>The constructor creates and activates the context </p>
 
</div>
</div>
<a class="anchor" id="a805b1bbdb3e52b1fda7c9bf2cd6ca86b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sf::Context::~Context </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
 
<p>Destructor. </p>
<p>The desctructor deactivates and destroys the context </p>
 
</div>
</div>
<a class="anchor" id="a2a9e3529e48919120e6b6fc10bad296c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sf::Context::Context </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structsf_1_1ContextSettings.htm">ContextSettings</a> & </td>
          <td class="paramname"><em>settings</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int </td>
          <td class="paramname"><em>width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int </td>
          <td class="paramname"><em>height</em> </td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
 
<p>Construct a in-memory context. </p>
<p>This constructor is for internal use, you don't need to bother with it.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">settings</td><td>Creation parameters </td></tr>
    <tr><td class="paramname">width</td><td>Back buffer width </td></tr>
    <tr><td class="paramname">height</td><td>Back buffer height </td></tr>
  </table>
  </dd>
</dl>
 
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0806f915ea81ae1f4e8135a7a3696562"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool sf::Context::setActive </td>
          <td>(</td>
          <td class="paramtype">bool </td>
          <td class="paramname"><em>active</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
 
<p>Activate or deactivate explicitely the context. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">active</td><td>True to activate, false to deactivate</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True on success, false on failure </dd></dl>
 
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="Context_8hpp_source.htm">Context.hpp</a></li>
</ul>
</div><!-- contents -->
        </div>
        <div id="footer-container">
            <div id="footer">
                Copyright � Laurent Gomila  :: 
                Documentation generated by <a href="http://www.doxygen.org/" title="doxygen website">doxygen</a>  :: 
            </div>
        </div>
    <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
 
  ga('create', 'UA-41898676-1', 'srchub.org');
  ga('send', 'pageview');
Page rendered in 1.33674s using 11 queries.
Source at commit tip created 11 years 11 months ago.
By Nathan Adams, Initial commit

Archive Download this file

Branches

Tags

Page rendered in 1.33674s using 11 queries.