Package org.jdesktop.wonderland.server.cell

Cells provide spatialised geometry, behavior and network support for world content.


Interface Summary
AvatarCellCacheMO.RevalidateScheduler A revalidate scheduler defines how the various revalidate operations are managed.
CellChildrenChangeListenerSrv Listener for tracking changes to the children of a CellMO
CellDescription A light weight container for perfomance sensiteive cell data.
CellManagerMO.EnvironmentCellCreator Interface for the environment cell creator.
CellParentChangeListenerSrv Listener for tracking changes to the parent of a CellMO
CellResourceManager A service that supplies Resources associated with cells.
ChannelComponentMO.ComponentMessageReceiver A listener to notify when messages of a certain class are recevied by this cell.
ComponentChangeListenerSrv Listener for tracking changes to the list of components on a cellMO
MovableComponentMO.CellTransformChangeListener Listener inteface for cell movement
ProximityListenerSrv Listener for the view entering/exiting the proximity bounds of a cell.
TransformChangeListenerSrv Listener for tracking cell transform changes.
View A view into the virtual world.
ViewCellCacheRevalidationListener An interface that provides for active cells to process the view position each time the Cache is revalidated.

Class Summary
AbstractComponentMessageReceiver An abstract base class that implements the channel component message receiver interface and hides Darkstar implementation details from the developer.
AvatarCellCacheMO Container for the cell cache for an avatar.
AvatarCellCacheMO.CellLoadOp Operation to add a cell to the set of cached cells
AvatarCellCacheMO.CellOp Superclass of operations to modify the list of cached cells.
AvatarCellCacheMO.CellUnloadOp Operation to remove a cell from the list of cached cells
CellMO Superclass for all server side representation of a cell
CellMOFactory A factory that creates cell GLOs by type.
CellMOProvider Provider that loads cells.
CellPersistence A class that manages the long-term persistence of Wonderland cells using cell importers and cell exporters to read from WFS.
CellSessionProperties The properties of the cell for a particular combination of session and client capabilities
ChannelComponentMO Channel component is the basic component cells use to manage communication.
EnvironmentCellMO A cell that represents the environment (lights, skybox, etc).
InteractionComponentMO Component that determines how user can interact with a cell.
ModelCellMO A cell for deployed models
ProximityComponentMO Provides a mechanism for listener notification when the a view cell enters/exits a set of bounds for a cell.
RevalidatePerformanceMonitor Collect performance metrics on the times it takes to revalidate the a cell cache
ServerProximityListenerRecord This listener record provides the server specific hooks for the generic proximity listener code, which is shared with the client code.
ViewCellCacheMO Container for the cell cache for a viewcell.
ViewCellCacheRevalidateTask Task that calls revalidate() on an ViewCellCacheMO

Enum Summary
ComponentChangeListenerSrv.ChangeType The type of change: adding or removing

Exception Summary
LoadCellMOException An exception when loading a cell MO using a CellGLOProvider

Package org.jdesktop.wonderland.server.cell Description

Cells provide spatialised geometry, behavior and network support for world content.

Each Cell in the world has a local bounds defined by the developer. The local bounds must encapsulate all the geometry for that cell, if the geometry changes size or position then it may be necessary to update the bounds of the cell. The developer is responsible for ensuring that the local bounds always encapsulates the geometry. Cell bounds are defined in Cell local coordinates. The local bounds do not have to encapsulate the bounds of the cells children.

The bounds of a cell can overlap the bounds of it's sibling cells.

Cells include the concept of liveness. A live cell is one that is attached (possibly indirectly) to a RootCellMO. Some CellMO method calls only return valid results for live cells, for non live cells they throw IllegalStateException. The RootCellMO is created and managed by CellManagerMO.

The functionality of cells can be changed by adding CellComponentMO to a cell. For example all cells are static (in that there origin or bounds can not be changed) unless they have MovableComponentMO in their component list. This allows features to be dynamically added and removed from cells which is not possible using subclassing.

Spaces - A live Cell is always in at least one space Space origin and bounds are immutable (need to special case movable spaces)

Open Wonderland -