Files
vilya/apidocs/com/threerings/parlor/data/Table.html
T
2015-03-14 10:44:30 -07:00

848 lines
38 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_31) on Sat Mar 14 10:07:08 PDT 2015 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Table (Vilya Core 1.6 API)</title>
<meta name="date" content="2015-03-14">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Table (Vilya Core 1.6 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Table.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/threerings/parlor/data/RangeParameter.html" title="class in com.threerings.parlor.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/threerings/parlor/data/Table.html" target="_top">Frames</a></li>
<li><a href="Table.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.threerings.parlor.data</div>
<h2 title="Class Table" class="title">Class Table</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.threerings.parlor.data.Table</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>com.threerings.io.Streamable, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html" title="interface in com.threerings.parlor.data">ParlorCodes</a>, com.threerings.presents.data.InvocationCodes, com.threerings.presents.dobj.DSet.Entry</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">Table</span>
extends <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements com.threerings.presents.dobj.DSet.Entry, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html" title="interface in com.threerings.parlor.data">ParlorCodes</a></pre>
<div class="block">This class represents a table that is being used to matchmake a game by the Parlor services.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.com.threerings.io.Streamable">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;com.threerings.io.Streamable</h3>
<code>com.threerings.io.Streamable.Closure</code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#ANY_POSITION">ANY_POSITION</a></span></code>
<div class="block">Used to request any position at a table.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#bodyOids">bodyOids</a></span></code>
<div class="block">The body oids of the players of this table, or null if a party game.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../com/threerings/parlor/game/data/GameConfig.html" title="class in com.threerings.parlor.game.data">GameConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#config">config</a></span></code>
<div class="block">The game config for the game that is being matchmade.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#gameOid">gameOid</a></span></code>
<div class="block">The oid of the game that was created from this table or -1 if the table is still in
matchmaking mode.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#lobbyOid">lobbyOid</a></span></code>
<div class="block">The object id of the lobby object with which this table is associated.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.threerings.util.Name[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#players">players</a></span></code>
<div class="block">An array of the usernames of the players of this table (some slots may not be filled), or
null if a party game.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#tableId">tableId</a></span></code>
<div class="block">The unique identifier for this table.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data">TableConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#tconfig">tconfig</a></span></code>
<div class="block">The table configuration object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>com.threerings.util.Name[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#watchers">watchers</a></span></code>
<div class="block">An array of the usernames of the non-player occupants of this game.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.threerings.parlor.data.ParlorCodes">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.threerings.parlor.data.<a href="../../../../com/threerings/parlor/data/ParlorCodes.html" title="interface in com.threerings.parlor.data">ParlorCodes</a></h3>
<code><a href="../../../../com/threerings/parlor/data/ParlorCodes.html#ALREADY_AT_TABLE">ALREADY_AT_TABLE</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#BANNED_FROM_TABLE">BANNED_FROM_TABLE</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#GAME_ALREADY_STARTED">GAME_ALREADY_STARTED</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#INVALID_TABLE_POSITION">INVALID_TABLE_POSITION</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#INVITATION_ACCEPTED">INVITATION_ACCEPTED</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#INVITATION_COUNTERED">INVITATION_COUNTERED</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#INVITATION_REFUSED">INVITATION_REFUSED</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#INVITEE_NOT_ONLINE">INVITEE_NOT_ONLINE</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#MUST_BE_CREATOR">MUST_BE_CREATOR</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#NO_SELF_BOOT">NO_SELF_BOOT</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#NO_SUCH_TABLE">NO_SUCH_TABLE</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#NOT_AT_TABLE">NOT_AT_TABLE</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#PARLOR_GROUP">PARLOR_GROUP</a>, <a href="../../../../com/threerings/parlor/data/ParlorCodes.html#TABLE_POSITION_OCCUPIED">TABLE_POSITION_OCCUPIED</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.threerings.presents.data.InvocationCodes">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.threerings.presents.data.InvocationCodes</h3>
<code>ACCESS_DENIED, E_ACCESS_DENIED, E_INTERNAL_ERROR, GLOBAL_GROUP, INTERNAL_ERROR</code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#Table--">Table</a></span>()</code>
<div class="block">Constructs a blank table instance, suitable for unserialization.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#addBannedUser-com.threerings.util.Name-">addBannedUser</a></span>(com.threerings.util.Name&nbsp;player)</code>
<div class="block">Indicate to this table that a user was booted and should
be prevented from rejoining.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#clearPlayer-com.threerings.util.Name-">clearPlayer</a></span>(com.threerings.util.Name&nbsp;username)</code>
<div class="block">Requests that the specified user be removed from their seat at this table.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#clearPlayerByOid-int-">clearPlayerByOid</a></span>(int&nbsp;bodyOid)</code>
<div class="block">Requests that the user identified by the specified body object id be removed from their seat
at this table.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#clearPlayerPos-int-">clearPlayerPos</a></span>(int&nbsp;position)</code>
<div class="block">Called to clear a player at the specified position.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#containsPlayer-com.threerings.util.Name-">containsPlayer</a></span>(com.threerings.util.Name&nbsp;player)</code>
<div class="block">Returns true if this table contains the specified player.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#equals-java.lang.Object-">equals</a></span>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;other)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#getKey--">getKey</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#getOccupiedCount--">getOccupiedCount</a></span>()</code>
<div class="block">Count the number of players currently occupying this table.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>com.threerings.util.Name[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#getPlayers--">getPlayers</a></span>()</code>
<div class="block">Once a table is ready to play (see <a href="../../../../com/threerings/parlor/data/Table.html#mayBeStarted--"><code>mayBeStarted()</code></a> and <a href="../../../../com/threerings/parlor/data/Table.html#shouldBeStarted--"><code>shouldBeStarted()</code></a>), the
players array can be fetched using this method.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int[][]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#getTeamMemberIndices--">getTeamMemberIndices</a></span>()</code>
<div class="block">For a team game, get the team member indices of the compressed players array returned by
<a href="../../../../com/threerings/parlor/data/Table.html#getPlayers--"><code>getPlayers()</code></a>.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#init-int-com.threerings.parlor.data.TableConfig-com.threerings.parlor.game.data.GameConfig-">init</a></span>(int&nbsp;lobbyOid,
<a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data">TableConfig</a>&nbsp;tconfig,
<a href="../../../../com/threerings/parlor/game/data/GameConfig.html" title="class in com.threerings.parlor.game.data">GameConfig</a>&nbsp;config)</code>
<div class="block">Initializes a new table instance, and assigns it the next monotonically increasing table id.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#inPlay--">inPlay</a></span>()</code>
<div class="block">Returns true if this table is in play, false if it is still being matchmade.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Returns true if there is no one sitting at this table.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#mayBeStarted--">mayBeStarted</a></span>()</code>
<div class="block">Returns true if this table has a sufficient number of players that the game can be
started.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#setPlayer-int-com.threerings.crowd.data.BodyObject-">setPlayer</a></span>(int&nbsp;position,
com.threerings.crowd.data.BodyObject&nbsp;player)</code>
<div class="block">Requests to seat the specified user at the specified position in this table.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#setPlayerPos-int-com.threerings.crowd.data.BodyObject-">setPlayerPos</a></span>(int&nbsp;position,
com.threerings.crowd.data.BodyObject&nbsp;player)</code>
<div class="block">This method is used for party games, it does no bounds checking or verification of the
player's ability to join, if you are unsure you should call 'setPlayer'.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#shouldBeStarted--">shouldBeStarted</a></span>()</code>
<div class="block">Returns true if sufficient seats are occupied that the game should be automatically started.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/threerings/parlor/data/Table.html#updateOccupants-com.threerings.parlor.game.data.GameObject-">updateOccupants</a></span>(<a href="../../../../com/threerings/parlor/game/data/GameObject.html" title="class in com.threerings.parlor.game.data">GameObject</a>&nbsp;gameobj)</code>
<div class="block">Called by the table manager when the game object's players have changed.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="ANY_POSITION">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ANY_POSITION</h4>
<pre>public static final&nbsp;int ANY_POSITION</pre>
<div class="block">Used to request any position at a table.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.threerings.parlor.data.Table.ANY_POSITION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="tableId">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tableId</h4>
<pre>public&nbsp;int tableId</pre>
<div class="block">The unique identifier for this table.</div>
</li>
</ul>
<a name="lobbyOid">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lobbyOid</h4>
<pre>public&nbsp;int lobbyOid</pre>
<div class="block">The object id of the lobby object with which this table is associated.</div>
</li>
</ul>
<a name="gameOid">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>gameOid</h4>
<pre>public&nbsp;int gameOid</pre>
<div class="block">The oid of the game that was created from this table or -1 if the table is still in
matchmaking mode.</div>
</li>
</ul>
<a name="players">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>players</h4>
<pre>public&nbsp;com.threerings.util.Name[] players</pre>
<div class="block">An array of the usernames of the players of this table (some slots may not be filled), or
null if a party game.</div>
</li>
</ul>
<a name="watchers">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>watchers</h4>
<pre>public&nbsp;com.threerings.util.Name[] watchers</pre>
<div class="block">An array of the usernames of the non-player occupants of this game. For FFA party games
this is all of a room's occupants and they are in fact players.</div>
</li>
</ul>
<a name="bodyOids">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bodyOids</h4>
<pre>public transient&nbsp;int[] bodyOids</pre>
<div class="block">The body oids of the players of this table, or null if a party game. (This is not
propagated to remote instances.)</div>
</li>
</ul>
<a name="config">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>config</h4>
<pre>public&nbsp;<a href="../../../../com/threerings/parlor/game/data/GameConfig.html" title="class in com.threerings.parlor.game.data">GameConfig</a> config</pre>
<div class="block">The game config for the game that is being matchmade.</div>
</li>
</ul>
<a name="tconfig">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>tconfig</h4>
<pre>public&nbsp;<a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data">TableConfig</a> tconfig</pre>
<div class="block">The table configuration object.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="Table--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Table</h4>
<pre>public&nbsp;Table()</pre>
<div class="block">Constructs a blank table instance, suitable for unserialization.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="init-int-com.threerings.parlor.data.TableConfig-com.threerings.parlor.game.data.GameConfig-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre>public&nbsp;void&nbsp;init(int&nbsp;lobbyOid,
<a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data">TableConfig</a>&nbsp;tconfig,
<a href="../../../../com/threerings/parlor/game/data/GameConfig.html" title="class in com.threerings.parlor.game.data">GameConfig</a>&nbsp;config)</pre>
<div class="block">Initializes a new table instance, and assigns it the next monotonically increasing table id.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lobbyOid</code> - the object id of the lobby in which this table is to live.</dd>
<dd><code>tconfig</code> - the table configuration for this table.</dd>
<dd><code>config</code> - the configuration of the game being matchmade by this table.</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEmpty</h4>
<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
<div class="block">Returns true if there is no one sitting at this table.</div>
</li>
</ul>
<a name="getOccupiedCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOccupiedCount</h4>
<pre>public&nbsp;int&nbsp;getOccupiedCount()</pre>
<div class="block">Count the number of players currently occupying this table.</div>
</li>
</ul>
<a name="getPlayers--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlayers</h4>
<pre>public&nbsp;com.threerings.util.Name[]&nbsp;getPlayers()</pre>
<div class="block">Once a table is ready to play (see <a href="../../../../com/threerings/parlor/data/Table.html#mayBeStarted--"><code>mayBeStarted()</code></a> and <a href="../../../../com/threerings/parlor/data/Table.html#shouldBeStarted--"><code>shouldBeStarted()</code></a>), the
players array can be fetched using this method. It will return an array containing the
usernames of all of the players in the game, sized properly and with each player in the
appropriate position.</div>
</li>
</ul>
<a name="getTeamMemberIndices--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTeamMemberIndices</h4>
<pre>public&nbsp;int[][]&nbsp;getTeamMemberIndices()</pre>
<div class="block">For a team game, get the team member indices of the compressed players array returned by
<a href="../../../../com/threerings/parlor/data/Table.html#getPlayers--"><code>getPlayers()</code></a>.</div>
</li>
</ul>
<a name="setPlayer-int-com.threerings.crowd.data.BodyObject-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlayer</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;setPlayer(int&nbsp;position,
com.threerings.crowd.data.BodyObject&nbsp;player)</pre>
<div class="block">Requests to seat the specified user at the specified position in this table.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>position</code> - the position in which to seat the user.</dd>
<dd><code>player</code> - the player to set.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>null if the user was successfully seated, a string error code explaining the failure
if the user was not able to be seated at that position.</dd>
</dl>
</li>
</ul>
<a name="setPlayerPos-int-com.threerings.crowd.data.BodyObject-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlayerPos</h4>
<pre>public&nbsp;void&nbsp;setPlayerPos(int&nbsp;position,
com.threerings.crowd.data.BodyObject&nbsp;player)</pre>
<div class="block">This method is used for party games, it does no bounds checking or verification of the
player's ability to join, if you are unsure you should call 'setPlayer'.</div>
</li>
</ul>
<a name="addBannedUser-com.threerings.util.Name-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addBannedUser</h4>
<pre>public&nbsp;void&nbsp;addBannedUser(com.threerings.util.Name&nbsp;player)</pre>
<div class="block">Indicate to this table that a user was booted and should
be prevented from rejoining.</div>
</li>
</ul>
<a name="clearPlayer-com.threerings.util.Name-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearPlayer</h4>
<pre>public&nbsp;boolean&nbsp;clearPlayer(com.threerings.util.Name&nbsp;username)</pre>
<div class="block">Requests that the specified user be removed from their seat at this table.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user was seated at the table and has now been removed, false if the user
was never seated at the table in the first place.</dd>
</dl>
</li>
</ul>
<a name="clearPlayerByOid-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearPlayerByOid</h4>
<pre>public&nbsp;boolean&nbsp;clearPlayerByOid(int&nbsp;bodyOid)</pre>
<div class="block">Requests that the user identified by the specified body object id be removed from their seat
at this table.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user was seated at the table and has now been removed, false if the user
was never seated at the table in the first place.</dd>
</dl>
</li>
</ul>
<a name="clearPlayerPos-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearPlayerPos</h4>
<pre>public&nbsp;void&nbsp;clearPlayerPos(int&nbsp;position)</pre>
<div class="block">Called to clear a player at the specified position. Only call this method if you know what
you're doing.</div>
</li>
</ul>
<a name="containsPlayer-com.threerings.util.Name-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsPlayer</h4>
<pre>public&nbsp;boolean&nbsp;containsPlayer(com.threerings.util.Name&nbsp;player)</pre>
<div class="block">Returns true if this table contains the specified player.</div>
</li>
</ul>
<a name="updateOccupants-com.threerings.parlor.game.data.GameObject-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateOccupants</h4>
<pre>public&nbsp;void&nbsp;updateOccupants(<a href="../../../../com/threerings/parlor/game/data/GameObject.html" title="class in com.threerings.parlor.game.data">GameObject</a>&nbsp;gameobj)</pre>
<div class="block">Called by the table manager when the game object's players have changed. Regenerates the
<a href="../../../../com/threerings/parlor/data/Table.html#watchers"><code>watchers</code></a> array.</div>
</li>
</ul>
<a name="mayBeStarted--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mayBeStarted</h4>
<pre>public&nbsp;boolean&nbsp;mayBeStarted()</pre>
<div class="block">Returns true if this table has a sufficient number of players that the game can be
started.</div>
</li>
</ul>
<a name="shouldBeStarted--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldBeStarted</h4>
<pre>public&nbsp;boolean&nbsp;shouldBeStarted()</pre>
<div class="block">Returns true if sufficient seats are occupied that the game should be automatically started.</div>
</li>
</ul>
<a name="inPlay--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>inPlay</h4>
<pre>public&nbsp;boolean&nbsp;inPlay()</pre>
<div class="block">Returns true if this table is in play, false if it is still being matchmade.</div>
</li>
</ul>
<a name="getKey--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getKey</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;?&gt;&nbsp;getKey()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getKey</code>&nbsp;in interface&nbsp;<code>com.threerings.presents.dobj.DSet.Entry</code></dd>
</dl>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;other)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Table.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/threerings/parlor/data/RangeParameter.html" title="class in com.threerings.parlor.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/threerings/parlor/data/TableConfig.html" title="class in com.threerings.parlor.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/threerings/parlor/data/Table.html" target="_top">Frames</a></li>
<li><a href="Table.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2015. All rights reserved.</small></p>
</body>
</html>