Sophie

Sophie

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

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="headertitle">
<h1>simulation<br/>
<small>
[<a class="el" href="group__interfaces.html">Interface specifications</a>]</small>
</h1>  </div>
</div>
<div class="contents">

<p>A robot simulator.  
<a href="#_details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><p><a class="anchor" id="amgrpd41d8cd98f00b204e9800998ecf8427e"></a> </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaab4af0b3410cbe81e1dde9e337304c5d"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_GET_POSE2D" ref="gaab4af0b3410cbe81e1dde9e337304c5d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gaab4af0b3410cbe81e1dde9e337304c5d">PLAYER_SIMULATION_REQ_GET_POSE2D</a>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: set 2D pose. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5cfecc362fa6fe58f697e1fcd6121ba0"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_SET_POSE2D" ref="ga5cfecc362fa6fe58f697e1fcd6121ba0" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga5cfecc362fa6fe58f697e1fcd6121ba0">PLAYER_SIMULATION_REQ_SET_POSE2D</a>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: get 2D pose. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga746d9e6f5144c938ba27c89a24ed9f09"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_GET_POSE3D" ref="ga746d9e6f5144c938ba27c89a24ed9f09" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga746d9e6f5144c938ba27c89a24ed9f09">PLAYER_SIMULATION_REQ_GET_POSE3D</a>&nbsp;&nbsp;&nbsp;3</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: set 2D pose. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga454aab68cb5c4a2e281ac8b45426c83d"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_SET_POSE3D" ref="ga454aab68cb5c4a2e281ac8b45426c83d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga454aab68cb5c4a2e281ac8b45426c83d">PLAYER_SIMULATION_REQ_SET_POSE3D</a>&nbsp;&nbsp;&nbsp;4</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: get 2D pose. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga39af4de76fbfdb575bedbd398f7e7b73"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_GET_PROPERTY" ref="ga39af4de76fbfdb575bedbd398f7e7b73" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga39af4de76fbfdb575bedbd398f7e7b73">PLAYER_SIMULATION_REQ_GET_PROPERTY</a>&nbsp;&nbsp;&nbsp;5</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: set property value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae48b8de38fa3754d6104d8b4f4c6578b"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_REQ_SET_PROPERTY" ref="gae48b8de38fa3754d6104d8b4f4c6578b" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gae48b8de38fa3754d6104d8b4f4c6578b">PLAYER_SIMULATION_REQ_SET_PROPERTY</a>&nbsp;&nbsp;&nbsp;6</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply subtype: get property value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac2440a15ab485b226d43101c2bf35732"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_CMD_PAUSE" ref="gac2440a15ab485b226d43101c2bf35732" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gac2440a15ab485b226d43101c2bf35732">PLAYER_SIMULATION_CMD_PAUSE</a>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cmd subtype: pause (if running) /resume (if paused) command. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga12866861ab5322ceb9bc313150779886"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_CMD_RESET" ref="ga12866861ab5322ceb9bc313150779886" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga12866861ab5322ceb9bc313150779886">PLAYER_SIMULATION_CMD_RESET</a>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cmd subtype: reset simulation command. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaeb3b96bdc7225bcda3bd51056ce76043"></a><!-- doxytag: member="interface_simulation::PLAYER_SIMULATION_CMD_SAVE" ref="gaeb3b96bdc7225bcda3bd51056ce76043" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gaeb3b96bdc7225bcda3bd51056ce76043">PLAYER_SIMULATION_CMD_SAVE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cmd subtype: save simulation command. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="structplayer__simulation__data.html">player_simulation_data</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gaee4047c516c748cfe299d61713771b4f">player_simulation_data_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Data.  <a href="#gaee4047c516c748cfe299d61713771b4f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="structplayer__simulation__cmd.html">player_simulation_cmd</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#gac725548a2303f43967a01fbbb5cef776">player_simulation_cmd_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Command.  <a href="#gac725548a2303f43967a01fbbb5cef776"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="structplayer__simulation__pose2d__req.html">player_simulation_pose2d_req</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga102ca3ca739d04b439631f15fe0fd5cc">player_simulation_pose2d_req_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply: get/set 2D pose of a named simulation object.  <a href="#ga102ca3ca739d04b439631f15fe0fd5cc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="structplayer__simulation__pose3d__req.html">player_simulation_pose3d_req</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga17b53bf82937dcaf9085cd85d40ba876">player_simulation_pose3d_req_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply: get/set 3D pose of a named simulation object.  <a href="#ga17b53bf82937dcaf9085cd85d40ba876"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="structplayer__simulation__property__req.html">player_simulation_property_req</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__interface__simulation.html#ga91929c51a6d61fadab4fd278971e8351">player_simulation_property_req_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request/reply: get/set a property of a named simulation object.  <a href="#ga91929c51a6d61fadab4fd278971e8351"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A robot simulator. </p>
<p>Player devices may either be real hardware or virtual devices generated by a simulator such as Stage or Gazebo. This interface provides direct access to a simulator.</p>
<p>This interface doesn't do much yet. It is in place to later support things like pausing and restarting the simulation clock, saving and loading, etc.</p>
<p>Note: the Stage and Gazebo developers should confer on the best design for this interface. Suggestions welcome on playerstage-developers. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="gac725548a2303f43967a01fbbb5cef776"></a><!-- doxytag: member="player_interfaces.h::player_simulation_cmd_t" ref="gac725548a2303f43967a01fbbb5cef776" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayer__simulation__cmd.html">player_simulation_cmd</a>  <a class="el" href="structplayer__simulation__cmd.html">player_simulation_cmd_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Command. </p>
<p>Just a placeholder for now; data will be added in future. </p>

</div>
</div>
<a class="anchor" id="gaee4047c516c748cfe299d61713771b4f"></a><!-- doxytag: member="player_interfaces.h::player_simulation_data_t" ref="gaee4047c516c748cfe299d61713771b4f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayer__simulation__data.html">player_simulation_data</a>  <a class="el" href="structplayer__simulation__data.html">player_simulation_data_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Data. </p>
<p>Just a placeholder for now; data will be added in future. </p>

</div>
</div>
<a class="anchor" id="ga102ca3ca739d04b439631f15fe0fd5cc"></a><!-- doxytag: member="player_interfaces.h::player_simulation_pose2d_req_t" ref="ga102ca3ca739d04b439631f15fe0fd5cc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayer__simulation__pose2d__req.html">player_simulation_pose2d_req</a>  <a class="el" href="structplayer__simulation__pose2d__req.html">player_simulation_pose2d_req_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Request/reply: get/set 2D pose of a named simulation object. </p>
<p>To retrieve the pose of an object in a simulator, send a null <a class="el" href="group__interface__simulation.html#gaab4af0b3410cbe81e1dde9e337304c5d">PLAYER_SIMULATION_REQ_GET_POSE2D</a> request. To set the pose of an object in a simulator, send a <a class="el" href="group__interface__simulation.html#ga5cfecc362fa6fe58f697e1fcd6121ba0">PLAYER_SIMULATION_REQ_SET_POSE2D</a> request (response will be null). </p>

</div>
</div>
<a class="anchor" id="ga17b53bf82937dcaf9085cd85d40ba876"></a><!-- doxytag: member="player_interfaces.h::player_simulation_pose3d_req_t" ref="ga17b53bf82937dcaf9085cd85d40ba876" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayer__simulation__pose3d__req.html">player_simulation_pose3d_req</a>  <a class="el" href="structplayer__simulation__pose3d__req.html">player_simulation_pose3d_req_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Request/reply: get/set 3D pose of a named simulation object. </p>
<p>To retrieve the pose of an object in a 3D simulator, send a null <a class="el" href="group__interface__simulation.html#ga746d9e6f5144c938ba27c89a24ed9f09">PLAYER_SIMULATION_REQ_GET_POSE3D</a> request. To set the pose of an object in a 3D simulator, send a <a class="el" href="group__interface__simulation.html#ga454aab68cb5c4a2e281ac8b45426c83d">PLAYER_SIMULATION_REQ_SET_POSE3D</a> request (response will be null). </p>

</div>
</div>
<a class="anchor" id="ga91929c51a6d61fadab4fd278971e8351"></a><!-- doxytag: member="player_interfaces.h::player_simulation_property_req_t" ref="ga91929c51a6d61fadab4fd278971e8351" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structplayer__simulation__property__req.html">player_simulation_property_req</a>  <a class="el" href="structplayer__simulation__property__req.html">player_simulation_property_req_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Request/reply: get/set a property of a named simulation object. </p>
<dl class="user"><dt><b>To retrieve an property of an object in a simulator, send a </b></dt><dd>PLAYER_SIMULATION_REQ_GET_PROPERTY request. The server will reply with the value array filled in. The type of the data varies by property and it is up to the caller to cast the data to the correct type: see the warning below.</dd></dl>
<dl class="user"><dt><b>To set a property, send a completely filled in </b></dt><dd>PLAYER_SIMULATION_REQ_SET_PROPERTY request. The server will respond with an ACK if the property was successfully set to your value, else a NACK.</dd></dl>
<dl class="user"><dt><b>**WARNING** Types are architecture-dependent, so this feature may</b></dt><dd>not work correctly if the simulator is running on a different architecture than your client. The value bytes are transmitted as a raw binary object: no architecture-specific type conversions are performed. Use with caution. </dd></dl>

</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>