Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 727fa15453fcace956b835e2377d4269 > files > 771

player-doc-3.0.2-5.fc14.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">

<html>
<!-- $Id: header.html 8799 2010-06-28 04:12:42Z jpgr87 $ -->

<HEAD>


<meta HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=utf-8">
<meta name="keywords" content="stage, robot, simulation, player, player/stage">
<link href="doxygen.css" rel="stylesheet" type="text/css">

<style type="text/css">

.floatright { float: right; margin: 0 0 1em 1em; }

body {
  font-family: sans-serif;
  #font-family: Geneva, Verdana, Helvetica, Arial, sans-serif;
  background-color: #FFF;
  color:#000;
}


a:link { 
	color: #A00;
}

a:visited { 
	color: #800;
}

a { text-decoration: none; }
a:hover { text-decoration: underline; }


.timestamp { text-align:right; background-color: #DDD; font-size:75%;}

h1 { 
  font-size:160%; 
}

h2 {
  font-size:110%;
  #color: #FFF;
  #background-color: #666;
  #padding:3px;
}

h3 { text-align:left; }

img {
  border: 0;
}

ul.menu { 
    position:relative;
    left:-2.5em;
    margin-bottom:0px;
    margin-top:0px;
}

ul.menu1 { 
    position:relative;
    left:-2.1em;
    margin-bottom:0px;
    margin-top:0px;
}

li.menu { 
    list-style-type: none;
    position:relative;
    #left:-0.5em;
}


#sidebar { position: absolute; left:0px; padding:2em; top:0em; width:12em;}

#content { position: absolute; left:12em; top:0em; padding-left:3em; padding-right:3em; padding-bottom:2em; margin-top:1em; margin-right:2em; }

div.box { background-color:#EEE; border: 1px solid #000; padding: 0.5ex 0.4em 0.5ex 0.6em; margin:1em;  }
div.title { font-weight:bold; background-color:#eee; margin-bottom:2px;}

div.topbar { position: absolute; top:0px; left:9em; margin:1em; }

</style>

<TITLE>Player Manual</TITLE>

</HEAD>

<body>

<div id="sidebar"> 

<h2 style="text-align:center;">
<a href="index.html">
<img width=140 src="http://playerstage.sourceforge.net/images/player_button_v3.png" alt="Player logo"><br></a>
</h2>



<div class="box">
<div class=title>Player</div>

<ul class=menu>
<li class=menu><a href="index.html">Frontpage</a>
<li class=menu><a href="modules.html">Contents</a>
</ul>
</div>

<div class="box">
<div class=title>User</div>

<ul class=menu>
<li class=menu><a href="install.html">Installation</a>
<li class=menu><a href="start.html">Quick start</a>
<li class=menu><a href="supported_hardware.html">Supported&nbsp;devices</a>
<li class=menu><a href="group__tutorials.html">Tutorials</a>
<li class=menu><a href="group__utils.html">Utilities</a>
<li class=menu><a href="group__clientlibs.html">Client&nbsp;libraries</a>
<li class=menu><a href="http://playerstage.sourceforge.net/wiki/Basic_FAQ">FAQ</a>
<li class=menu><a href="help.html">Help</a>

</ul>
</div>

<div class=box>
<div class="title">Developer</div>
<ul class=menu>
<li class=menu><a href="architecture.html">Architecture</a>
<li class=menu><a href="group__libplayercore.html">libplayercore</a>
<ul class=menu1>
<li class=menu><a href="group__interfaces.html">interfaces</a></li>
</ul>
<li class=menu><a href="group__libplayerdrivers.html">libplayerdrivers</a>
<ul class=menu1>
<li class=menu><a href="group__drivers.html">drivers</a></li>
</ul>
<li class=menu><a href="group__libplayercommon.html">libplayercommon</a>
<li class=menu><a href="group__libplayerutils.html">libplayerutils</a>
<li class=menu><a href="group__libplayersd.html">libplayersd</a>
<li class=menu><a href="group__libplayertcp.html">libplayertcp</a>
<li class=menu><a href="group__libplayerxdr.html">libplayerxdr</a>
<li class=menu><a href="todo.html">TODO</a>
</ul>
</div>

<div class=box>
<!-- <a href="http://sourceforge.net"><img border=0 src="http://sourceforge.net/sflogo.php?group_id=42445&type=1"></a> -->
<div class="title">Online</div>
<a href="http://playerstage.sourceforge.net">Homepage</a><br>
<a href="http://sourceforge.net/project/showfiles.php?group_id=42445">Download</a><br>
<a href="http://sourceforge.net/projects/playerstage">Project</a><br>
<a href="http://sourceforge.net/tracker/?group_id=42445">Bugs</a><br>
<a href="http://sourceforge.net/mail/?group_id=42445">Help</a>
</div>


</div>

<div id="content" >
<!-- Generated by Doxygen 1.7.1 -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Defines</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<h1>blackboard<br/>
<small>
[<a class="el" href="group__playerc__proxies.html">Device proxies</a>]</small>
</h1>  </div>
</div>
<div class="contents">

<p>The blackboard proxy provides an interface to a simple data-store in a similar fashion to a hash-map.  
<a href="#_details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BlackBoard proxy.  <a href="structplayerc__blackboard.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf5255f763c79020454d70def5ef0e9f0"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_TYPE_NONE" ref="gaf5255f763c79020454d70def5ef0e9f0" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_TYPE_NONE</b>&nbsp;&nbsp;&nbsp;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaef55e5134961a104c25720603769f23d"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_TYPE_SIMPLE" ref="gaef55e5134961a104c25720603769f23d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_TYPE_SIMPLE</b>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaddbbdc68470b6b735eadd9442c1a3e8c"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_TYPE_COMPLEX" ref="gaddbbdc68470b6b735eadd9442c1a3e8c" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_TYPE_COMPLEX</b>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga76c4cba733444e8f269cdd66ca8f106b"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_SUBTYPE_NONE" ref="ga76c4cba733444e8f269cdd66ca8f106b" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_SUBTYPE_NONE</b>&nbsp;&nbsp;&nbsp;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga12bfb453525e3cd84af6a93b93f86cd1"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_SUBTYPE_STRING" ref="ga12bfb453525e3cd84af6a93b93f86cd1" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_SUBTYPE_STRING</b>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga25819f90889d60d77a334889b52eb99e"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_SUBTYPE_INT" ref="ga25819f90889d60d77a334889b52eb99e" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_SUBTYPE_INT</b>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga58372dd0f10d15bc2e0e83942f22e107"></a><!-- doxytag: member="playerc_proxy_blackboard::PLAYERC_BLACKBOARD_DATA_SUBTYPE_DOUBLE" ref="ga58372dd0f10d15bc2e0e83942f22e107" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PLAYERC_BLACKBOARD_DATA_SUBTYPE_DOUBLE</b>&nbsp;&nbsp;&nbsp;3</td></tr>
<tr><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structplayerc__blackboard.html">playerc_blackboard</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga2e0e0a066f4c5de5f7205226616aa1a7">playerc_blackboard_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BlackBoard proxy.  <a href="#ga2e0e0a066f4c5de5f7205226616aa1a7"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT <br class="typebreak"/>
<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga7d120d0e0f80ed566ea39e0120671362">playerc_blackboard_create</a> (<a class="el" href="struct__playerc__client__t.html">playerc_client_t</a> *client, int index)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a blackboard proxy.  <a href="#ga7d120d0e0f80ed566ea39e0120671362"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#gac192740ed8e9f030278e8a4682a7a02b">playerc_blackboard_destroy</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy a blackboard proxy.  <a href="#gac192740ed8e9f030278e8a4682a7a02b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga0ba6bc342a679fef94a2f8ff97b41dc9">playerc_blackboard_subscribe</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, int access)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subscribe to the blackboard device.  <a href="#ga0ba6bc342a679fef94a2f8ff97b41dc9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga128d1a3f27290e3a092aa7f0902e4046">playerc_blackboard_unsubscribe</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Un-subscribe from the blackboard device.  <a href="#ga128d1a3f27290e3a092aa7f0902e4046"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#gaac968f7f0c1320f282fe27da0c5eb22e">playerc_blackboard_subscribe_to_key</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group, <a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> **entry)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subscribe to a key.  <a href="#gaac968f7f0c1320f282fe27da0c5eb22e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#gaa50d705722352cf3a87b237884ba019a">playerc_blackboard_get_entry</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group, <a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> **entry)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the current value of a key, without subscribing.  <a href="#gaa50d705722352cf3a87b237884ba019a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga92a3b49b100d81c00d14b431ca7e70f3">playerc_blackboard_unsubscribe_from_key</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unsubscribe from a key.  <a href="#ga92a3b49b100d81c00d14b431ca7e70f3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#ga8f99c49a2b885478997cfb0a9a602fee">playerc_blackboard_subscribe_to_group</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *group)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subscribe to a group.  <a href="#ga8f99c49a2b885478997cfb0a9a602fee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#gabbdc6dfb5135933a16cee559181d457b">playerc_blackboard_unsubscribe_from_group</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *group)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unsubscribe from a group.  <a href="#gabbdc6dfb5135933a16cee559181d457b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__playerc__proxy__blackboard.html#gadfa21ec1692e694e520b0bfdf77fdd1d">playerc_blackboard_set_entry</a> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, <a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> *entry)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set an entry value.  <a href="#gadfa21ec1692e694e520b0bfdf77fdd1d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga631f060ed23f20b04dbd412bea5e0cc1"></a><!-- doxytag: member="playerc_proxy_blackboard::playerc_blackboard_set_string" ref="ga631f060ed23f20b04dbd412bea5e0cc1" args="(playerc_blackboard_t *device, const char *key, const char *group, const char *value)" -->
PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><b>playerc_blackboard_set_string</b> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group, const char *value)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0b23e4c7462e9fa35546c660e4d89003"></a><!-- doxytag: member="playerc_proxy_blackboard::playerc_blackboard_set_int" ref="ga0b23e4c7462e9fa35546c660e4d89003" args="(playerc_blackboard_t *device, const char *key, const char *group, const int value)" -->
PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><b>playerc_blackboard_set_int</b> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group, const int value)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga83a0bf57cb56f72dbfea8c0d9e907741"></a><!-- doxytag: member="playerc_proxy_blackboard::playerc_blackboard_set_double" ref="ga83a0bf57cb56f72dbfea8c0d9e907741" args="(playerc_blackboard_t *device, const char *key, const char *group, const double value)" -->
PLAYERC_EXPORT int&nbsp;</td><td class="memItemRight" valign="bottom"><b>playerc_blackboard_set_double</b> (<a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *device, const char *key, const char *group, const double value)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>The blackboard proxy provides an interface to a simple data-store in a similar fashion to a hash-map. </p>
<p>Data is set and retrieved by using a label. Any player message structure can be stored in the blackboard. At this time it is up to the user to pack and unpack the entry data. The xdr functions can be used to do this. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga2e0e0a066f4c5de5f7205226616aa1a7"></a><!-- doxytag: member="playerc.h::playerc_blackboard_t" ref="ga2e0e0a066f4c5de5f7205226616aa1a7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayerc__blackboard.html">playerc_blackboard</a>  <a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>BlackBoard proxy. </p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga7d120d0e0f80ed566ea39e0120671362"></a><!-- doxytag: member="playerc.h::playerc_blackboard_create" ref="ga7d120d0e0f80ed566ea39e0120671362" args="(playerc_client_t *client, int index)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT <a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a>* playerc_blackboard_create </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct__playerc__client__t.html">playerc_client_t</a> *&nbsp;</td>
          <td class="paramname"> <em>client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>index</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a blackboard proxy. </p>

</div>
</div>
<a class="anchor" id="gac192740ed8e9f030278e8a4682a7a02b"></a><!-- doxytag: member="playerc.h::playerc_blackboard_destroy" ref="gac192740ed8e9f030278e8a4682a7a02b" args="(playerc_blackboard_t *device)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT void playerc_blackboard_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destroy a blackboard proxy. </p>

</div>
</div>
<a class="anchor" id="gaa50d705722352cf3a87b237884ba019a"></a><!-- doxytag: member="playerc.h::playerc_blackboard_get_entry" ref="gaa50d705722352cf3a87b237884ba019a" args="(playerc_blackboard_t *device, const char *key, const char *group, player_blackboard_entry_t **entry)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_get_entry </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> **&nbsp;</td>
          <td class="paramname"> <em>entry</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the current value of a key, without subscribing. </p>
<p>If entry is none null it will be filled in with the response. The caller is responsible for freeing it. </p>

</div>
</div>
<a class="anchor" id="gadfa21ec1692e694e520b0bfdf77fdd1d"></a><!-- doxytag: member="playerc.h::playerc_blackboard_set_entry" ref="gadfa21ec1692e694e520b0bfdf77fdd1d" args="(playerc_blackboard_t *device, player_blackboard_entry_t *entry)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_set_entry </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> *&nbsp;</td>
          <td class="paramname"> <em>entry</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set an entry value. </p>

</div>
</div>
<a class="anchor" id="ga0ba6bc342a679fef94a2f8ff97b41dc9"></a><!-- doxytag: member="playerc.h::playerc_blackboard_subscribe" ref="ga0ba6bc342a679fef94a2f8ff97b41dc9" args="(playerc_blackboard_t *device, int access)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_subscribe </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>access</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Subscribe to the blackboard device. </p>

</div>
</div>
<a class="anchor" id="ga8f99c49a2b885478997cfb0a9a602fee"></a><!-- doxytag: member="playerc.h::playerc_blackboard_subscribe_to_group" ref="ga8f99c49a2b885478997cfb0a9a602fee" args="(playerc_blackboard_t *device, const char *group)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_subscribe_to_group </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>group</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Subscribe to a group. </p>
<p>The current entries are sent as data messages. </p>

</div>
</div>
<a class="anchor" id="gaac968f7f0c1320f282fe27da0c5eb22e"></a><!-- doxytag: member="playerc.h::playerc_blackboard_subscribe_to_key" ref="gaac968f7f0c1320f282fe27da0c5eb22e" args="(playerc_blackboard_t *device, const char *key, const char *group, player_blackboard_entry_t **entry)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_subscribe_to_key </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structplayer__blackboard__entry.html">player_blackboard_entry_t</a> **&nbsp;</td>
          <td class="paramname"> <em>entry</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Subscribe to a key. </p>
<p>If entry is none null it will be filled in with the response. The caller is responsible for freeing it. </p>

</div>
</div>
<a class="anchor" id="ga128d1a3f27290e3a092aa7f0902e4046"></a><!-- doxytag: member="playerc.h::playerc_blackboard_unsubscribe" ref="ga128d1a3f27290e3a092aa7f0902e4046" args="(playerc_blackboard_t *device)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_unsubscribe </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Un-subscribe from the blackboard device. </p>

</div>
</div>
<a class="anchor" id="gabbdc6dfb5135933a16cee559181d457b"></a><!-- doxytag: member="playerc.h::playerc_blackboard_unsubscribe_from_group" ref="gabbdc6dfb5135933a16cee559181d457b" args="(playerc_blackboard_t *device, const char *group)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_unsubscribe_from_group </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>group</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Unsubscribe from a group. </p>

</div>
</div>
<a class="anchor" id="ga92a3b49b100d81c00d14b431ca7e70f3"></a><!-- doxytag: member="playerc.h::playerc_blackboard_unsubscribe_from_key" ref="ga92a3b49b100d81c00d14b431ca7e70f3" args="(playerc_blackboard_t *device, const char *key, const char *group)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PLAYERC_EXPORT int playerc_blackboard_unsubscribe_from_key </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structplayerc__blackboard.html">playerc_blackboard_t</a> *&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>group</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Unsubscribe from a key. </p>

</div>
</div>
</div>
<!-- render the modification time of the source file -->


<div class="timestamp">
<hr>

<table style="width:100%;">
<tr>
<td style="text-align:left;">
Last updated 12 September 2005 21:38:45
<!--
<td style="text-align:right;">
<a href="http://validator.w3.org/check/referer"><img style="vertical-align:middle;border:0;width:88px;height:31px"
          src="http://www.w3.org/Icons/valid-html401"
          alt="Valid HTML 4.01!"></a>

 <a href="http://jigsaw.w3.org/css-validator/">
  <img style="vertical-align:middle;border:0;width:88px;height:31px"
       src="http://jigsaw.w3.org/css-validator/images/vcss"
       alt="Valid CSS!">
 </a>
-->
</tr>
</table>
</div>


</tr>
</table>

</BODY>
</HTML>