| java.lang.Object com.sun.j3d.utils.behaviors.sensor.SensorEvent
SensorEvent | public class SensorEvent (Code) | | This class defines the event object that is created by a
SensorEventAgent and passed to registered
SensorReadListener and SensorButtonListener
implementations.
The events passed to the listeners are ephemeral; they are only
valid until the listener has returned. This is done to avoid
allocating large numbers of mostly temporary objects, especially for
behaviors that wake up every frame. If a listener needs to retain the
event it must be copied using the SensorEvent(SensorEvent)
constructor.
See Also: SensorEventAgent See Also: SensorButtonListener See Also: SensorReadListener since: Java 3D 1.3 |
Field Summary | |
final public static int | DRAGGED A button dragged event. | final public static int | NOBUTTON The value that is returned by getButton when no
buttons have changed state. | final public static int | PRESSED A button pressed event. | final public static int | READ A sensor read event. | final public static int | RELEASED A button released event. |
Method Summary | |
public int | getButton() Gets the index of the button that changed state when passed to a
pressed or released callback. | public void | getButtonState(int[] buttonState) Copies the state of the sensor's buttons at the time of the event
into the given array. | public int | getID() Gets the event type. | public long | getLastTime() Gets the time in nanoseconds at which the
dispatchEvents method of SensorEventAgent
was last called to generate events, usually from the
processStimulus method of a Behavior ; may
be used to measure frame time in behaviors that wake up every
frame. | public Sensor | getSensor() Gets a reference to the provoking sensor. | public void | getSensorRead(Transform3D t) Copies the sensor's read value at the time of the event into the
given Transform3D . | public Object | getSource() Gets a reference to the originating object which instantiated the
SensorEventAgent , usually a Behavior ; may
be null. | public long | getTime() Gets the time in nanoseconds at which the
dispatchEvents method of SensorEventAgent
was called to generate this event, usually from the
processStimulus method of a Behavior . | public boolean | isEphemeral() Returns true if this event is ephemeral and is valid only
until the listener returns. | public void | set(Object source, int id, Sensor sensor, Transform3D sensorRead, int[] buttonState, int button, long time, long lastTime) Sets the fields of an ephemeral event. |
DRAGGED | final public static int DRAGGED(Code) | | A button dragged event.
|
NOBUTTON | final public static int NOBUTTON(Code) | | The value that is returned by getButton when no
buttons have changed state.
|
PRESSED | final public static int PRESSED(Code) | | A button pressed event.
|
READ | final public static int READ(Code) | | A sensor read event.
|
RELEASED | final public static int RELEASED(Code) | | A button released event.
|
SensorEvent | public SensorEvent(Object source, int id, Sensor sensor, Transform3D sensorRead, int[] buttonState, int button, long time, long lastTime)(Code) | | Creates a new SensorEvent .
Parameters: source - a reference to the originating object whichinstantiated the SensorEventAgent , usually aBehavior ; may be null Parameters: id - event type Parameters: sensor - a reference to the provoking sensor Parameters: sensorRead - the sensor's read value at the time of the event Parameters: buttonState - the state of the sensor's buttons at the time ofthe event, where a 1 in the array indicates that the button at thatindex is down, and a 0 indicates that button is up; may be null Parameters: button - index of the button that changed state, from 0 to(buttonCount - 1) , or the value NOBUTTON Parameters: time - the time in nanoseconds at which thedispatchEvents method ofSensorEventAgent was called to generate this event,usually from the processStimulus method of a Behavior Parameters: lastTime - the time in nanoseconds at which thedispatchEvents method ofSensorEventAgent was last called to generateevents, usually from the processStimulus method of aBehavior ; may be used to measure frame time inbehaviors that wake up every frame |
SensorEvent | public SensorEvent()(Code) | | Creates a new ephemeral SensorEvent . In order
to avoid creating large numbers of sensor event objects, the events
passed to the button and read listeners by the
dispatchEvents method of SensorEventAgent
are valid only until the listener returns. If the event needs to
be retained then they must be copied with the
SensorEvent(SensorEvent) constructor.
|
SensorEvent | public SensorEvent(SensorEvent e)(Code) | | Creates a copy of the given SensorEvent . Listeners
must use this constructor to copy events that need to be retained.
NOTE: The Sensor and Object references
returned by getSensor and getSource
remain references to the original objects.
Parameters: e - the event to be copied |
getButton | public int getButton()(Code) | | Gets the index of the button that changed state when passed to a
pressed or released callback. The index
may range from 0 to (sensor.getSensorButtonCount() -
1) . The value returned is NOBUTTON for events
passed to a read or dragged callback.
the button index |
getButtonState | public void getButtonState(int[] buttonState)(Code) | | Copies the state of the sensor's buttons at the time of the event
into the given array. A 1 in the array indicates that the button
at that index is down, while a 0 indicates that button is up.
Parameters: buttonState - the state of the sensor buttons |
getID | public int getID()(Code) | | Gets the event type.
the event id |
getLastTime | public long getLastTime()(Code) | | Gets the time in nanoseconds at which the
dispatchEvents method of SensorEventAgent
was last called to generate events, usually from the
processStimulus method of a Behavior ; may
be used to measure frame time in behaviors that wake up every
frame.
last time in nanoseconds |
getSensor | public Sensor getSensor()(Code) | | Gets a reference to the provoking sensor.
the provoking sensor |
getSensorRead | public void getSensorRead(Transform3D t)(Code) | | Copies the sensor's read value at the time of the event into the
given Transform3D .
Parameters: t - the transform to receive the sensor read |
getSource | public Object getSource()(Code) | | Gets a reference to the originating object which instantiated the
SensorEventAgent , usually a Behavior ; may
be null.
the originating object |
getTime | public long getTime()(Code) | | Gets the time in nanoseconds at which the
dispatchEvents method of SensorEventAgent
was called to generate this event, usually from the
processStimulus method of a Behavior .
time in nanoseconds |
isEphemeral | public boolean isEphemeral()(Code) | | Returns true if this event is ephemeral and is valid only
until the listener returns. A copy of the event can be created by
passing it to the SensorEvent(SensorEvent)
constructor.
|
set | public void set(Object source, int id, Sensor sensor, Transform3D sensorRead, int[] buttonState, int button, long time, long lastTime)(Code) | | Sets the fields of an ephemeral event. No objects are copied. An
IllegalStateException will be thrown if this event
is not ephemeral.
Parameters: source - a reference to the originating object whichinstantiated the SensorEventAgent , usually aBehavior ; may be null Parameters: id - event type Parameters: sensor - a reference to the provoking sensor Parameters: sensorRead - the sensor's read value at the time of the event Parameters: buttonState - the state of the sensor's buttons at the time ofthe event; a 1 in the array indicates that the button at thatindex is down, while a 0 indicates that button is up Parameters: button - index of the button that changed state, from 0 to(buttonCount - 1) , or the value NOBUTTON Parameters: time - the time in nanoseconds at which thedispatchEvents method ofSensorEventAgent was called to generate this event,usually from the processStimulus method of a Behavior Parameters: lastTime - the time in nanoseconds at which thedispatchEvents method ofSensorEventAgent was last called to generateevents, usually from the processStimulus method of aBehavior ; may be used to measure frame time inbehaviors that wake up every frame |
|
|