Class EventInMFFloatWrapper
java.lang.Object
vrml.eai.field.BaseField
vrml.eai.field.EventIn
vrml.eai.field.EventInMFFloat
org.web3d.vrml.scripting.external.neteai.EventInMFFloatWrapper
- All Implemented Interfaces:
ExternalEvent
Client side implementation of EventInMFFloat field.
EventIn objects double as buffers for data inbound to the event system.
-
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionEventInMFFloatWrapper
(int fieldID, FieldAndNodeRequestProcessor requestProcessor, NetworkEventQueue eventQueue) EventInMFFloatWrapper
(int fieldID, FieldAndNodeRequestProcessor requestProcessor, NetworkEventQueue eventQueue, float[] suppliedValue) -
Method Summary
Modifier and TypeMethodDescriptionvoid
doEvent()
The EventIn*Wrapper classes implement doEvent by posting their stored values to the underlying implementation.boolean
Two eventIn's are equal if they point to the same actual node and fieldint
The underlying field IDint
getType()
The type of the underlying field.Get the user data that is associated with this eventInint
hashCode()
In order to make the event queueing system easier, and since an equals method is required by the specification, compute the hashcode based on the field number and underlying node hashcode.boolean
Is the event conglomerating or non-conglomerating.void
loadFieldValue
(DataInputStream input) void
set1Value
(int index, float value) Set the value of an individual item in the eventIn's value.void
setUserData
(Object data) Associate user data with this event.void
setValue
(float[] value) Set the value of the eventIn to the new array of float values.void
writeFieldValue
(DataOutputStream output)
-
Constructor Details
-
EventInMFFloatWrapper
public EventInMFFloatWrapper(int fieldID, FieldAndNodeRequestProcessor requestProcessor, NetworkEventQueue eventQueue) - Parameters:
fieldID
- The network field IDrequestProcessor
- Handler for field serviceseventQueue
- The queue to send events to
-
EventInMFFloatWrapper
public EventInMFFloatWrapper(int fieldID, FieldAndNodeRequestProcessor requestProcessor, NetworkEventQueue eventQueue, float[] suppliedValue) - Parameters:
fieldID
- The network field IDrequestProcessor
- Handler for field serviceseventQueue
- The queue to send events tosuppliedValue
- The value supplied for this field
-
-
Method Details
-
doEvent
public void doEvent()The EventIn*Wrapper classes implement doEvent by posting their stored values to the underlying implementation.- Specified by:
doEvent
in interfaceExternalEvent
- See Also:
-
equals
-
getFieldID
public int getFieldID()The underlying field ID- See Also:
-
hashCode
-
isConglomerating
public boolean isConglomerating()Description copied from interface:ExternalEvent
Is the event conglomerating or non-conglomerating. Conglomerating events such as the set1Value calls build up in the event buffer.- Specified by:
isConglomerating
in interfaceExternalEvent
- Returns:
- whether event is conglomerating or not
- See Also:
-
setValue
public void setValue(float[] value) Description copied from class:EventInMFFloat
Set the value of the eventIn to the new array of float values. This array is copied internally so that the parameter array can be reused without effecting the valid values of the eventIn.- Specified by:
setValue
in classEventInMFFloat
- Parameters:
value
- The array of values to be used.- See Also:
-
set1Value
Description copied from class:EventInMFFloat
Set the value of an individual item in the eventIn's value. This results in a new event being generated that includes all of the array items with the single element set. If the index is out of the bounds of the current array of data values an ArrayIndexOutOfBoundsException will be generated.- Specified by:
set1Value
in classEventInMFFloat
- Parameters:
index
- The position to set the colour valuevalue
- The value to be set- Throws:
ArrayIndexOutOfBoundsException
- A value did not contain at least three values for the colour component- See Also:
-
setUserData
Description copied from class:EventIn
Associate user data with this event. Whenever an event is generated on this eventIn. this data will be available with the Event through its getData method.- Specified by:
setUserData
in classEventIn
- Parameters:
data
- The data to associate with this eventIn instance- See Also:
-
getUserData
Description copied from class:EventIn
Get the user data that is associated with this eventIn- Specified by:
getUserData
in classEventIn
- Returns:
- * @see vrml.eai.field.EventIn#getUserData()
-
loadFieldValue
- Throws:
IOException
- * @see org.web3d.vrml.scripting.external.neteai.EventWrapper#loadFieldValue(java.io.DataInputStream)
-
writeFieldValue
- Throws:
IOException
- * @see org.web3d.vrml.scripting.external.neteai.EventWrapper#writeFieldValue(java.io.DataOutputStream)
-
getType
int getType()The type of the underlying field. Method name chosen to coincide with vrml.eai.field.BaseField.- Returns:
- the type of the underlying field
-