livespace.services.entities
Class PositionableDevice

java.lang.Object
  extended by dsto.dfc.databeans.AbstractDataObject
      extended by dsto.dfc.databeans.SimpleDataObject
          extended by dsto.dfc.databeans.FancyDataObject
              extended by livespace.services.Entity
                  extended by livespace.services.entities.PositionableDevice
All Implemented Interfaces:
IDataObject, IDataObjectChildListener, Cloneable

public class PositionableDevice
extends Entity

Represents a device (or support/structure that is supporting a device) that can be mechanically controlled in terms of it's translation or position (position in the x,y,z axis), and rotation (rotation around the x,y,z axis). Physically such a device would use some mechanical means (servos, hydraulics etc) to provide this control and provide the ability to control these mechanics through some interface (i.e. RS232).

The directions for translation and rotation (i.e. a positive translation in the x-direction) are determined using the 'right-hand rule'. That is, positive x is right (along the viewing plane), positive y is 'up' )along the viewing plane) and positive z is towards the viewer (out of the viewing plane). A positive value of x-rotation is the direction in which the fingers point using the 'right-hand rule' (i.e. point thumb of right hand towards positive direction of x-axis, the direction in which finger curl is positive x rotation. Similarly for rotation around the y- and z-axes.

Author:
Steven Johnson Created on 20/06/2006

Field Summary
static String DECREASE
          String to decrease (change in a negative direction) the rotation or translation.
static String ENTITY_TYPE
           
static String INCREASE
          String to increase (change in a positive direction) the rotation or translation.
static String STATIONARY
          Signifies the device is stationary (still) in a particular direction of available movement.
static String X_ROTATION
          Rotation attribute name if the device supports rotation around the x-axis.
static String X_TRANSLATION
          Translation attribute name if device supports translation (linear movement) along the x-axis.
static String Y_ROTATION
          Rotation attribute name if the device supports rotation around the y-axis.
static String Y_TRANSLATION
          Translation attribute name if device supports translation (linear movement) along the y-axis.
static String Z_ROTATION
          Rotation attribute name if the device supports rotation around the z-axis.
static String Z_TRANSLATION
          Translation attribute name if device supports translation (linear movement) along the z-axis.
 
Fields inherited from class livespace.services.Entity
container, id, lastTouched, name, unconfirmedUpdates
 
Fields inherited from class dsto.dfc.databeans.AbstractDataObject
listeners
 
Fields inherited from interface dsto.dfc.databeans.IDataObject
OVERRIDE, PERSISTENT, PERSISTENT_OVERRIDE, TRANSIENT, TRANSIENT_OVERRIDE
 
Constructor Summary
PositionableDevice()
           
PositionableDevice(String id)
           
PositionableDevice(String id, String name)
           
 
Method Summary
 String getType()
          The type of the object (eg "room", "light", "volume", etc).
 
Methods inherited from class livespace.services.Entity
create, createId, getElvin, getType, getTypeInfo, mutex, sameEntity, shallowClone, waitForProperty, waitForProperty, waitForProperty, waitForProperty
 
Methods inherited from class dsto.dfc.databeans.FancyDataObject
childPropertyChanged, getValue, isTransient, propertyIterator, setValue
 
Methods inherited from class dsto.dfc.databeans.SimpleDataObject
getFieldNames, setValue
 
Methods inherited from class dsto.dfc.databeans.AbstractDataObject
addFirstPropertyListener, addPropertyListener, firePropertyChangedEvent, firePropertyChangedEvent, firePropertyChangedEvent, firePropertyChangedEvent, firePropertyChangedEvent, firePropertyChangedEvent, getBeanValue, getBooleanValue, getBooleanValue, getCharValue, getCharValue, getDoubleValue, getDoubleValue, getFloatValue, getFloatValue, getIntValue, getIntValue, getLongValue, getLongValue, getObjectValue, getPropertyListeners, getShortValue, getStringValue, registerValue, removePropertyListener, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, toString, unregisterValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ENTITY_TYPE

public static final String ENTITY_TYPE
See Also:
Constant Field Values

X_TRANSLATION

public static final String X_TRANSLATION
Translation attribute name if device supports translation (linear movement) along the x-axis.

See Also:
Constant Field Values

Y_TRANSLATION

public static final String Y_TRANSLATION
Translation attribute name if device supports translation (linear movement) along the y-axis.

See Also:
Constant Field Values

Z_TRANSLATION

public static final String Z_TRANSLATION
Translation attribute name if device supports translation (linear movement) along the z-axis.

See Also:
Constant Field Values

X_ROTATION

public static final String X_ROTATION
Rotation attribute name if the device supports rotation around the x-axis. This attribute if available specifies the direction in which the device is to be rotated around the x-axis.

See Also:
Constant Field Values

Y_ROTATION

public static final String Y_ROTATION
Rotation attribute name if the device supports rotation around the y-axis. This attribute if available specifies the direction in which the device is to be rotated around the y-axis.

See Also:
Constant Field Values

Z_ROTATION

public static final String Z_ROTATION
Rotation attribute name if the device supports rotation around the z-axis. This attribute if available specifies the direction in which the device is to be rotated around the z-axis.

See Also:
Constant Field Values

STATIONARY

public static final String STATIONARY
Signifies the device is stationary (still) in a particular direction of available movement.

See Also:
Constant Field Values

INCREASE

public static final String INCREASE
String to increase (change in a positive direction) the rotation or translation.

See Also:
Constant Field Values

DECREASE

public static final String DECREASE
String to decrease (change in a negative direction) the rotation or translation.

See Also:
Constant Field Values
Constructor Detail

PositionableDevice

public PositionableDevice()

PositionableDevice

public PositionableDevice(String id)

PositionableDevice

public PositionableDevice(String id,
                          String name)
Method Detail

getType

public String getType()
Description copied from class: Entity
The type of the object (eg "room", "light", "volume", etc). This must be unique to the entity class.

NOTE: it is also a good practice to provide a static field that defines the entity type on the class: eg

 public static final String ENTITY_TYPE = "room";
 

Specified by:
getType in class Entity


Copyright © 2008 Commonwealth of Australia