javax.media.j3d
Class J3DBuffer

java.lang.Object
  extended by javax.media.j3d.J3DBuffer

public class J3DBuffer
extends java.lang.Object

Java 3D wrapper class for java.nio.Buffer objects. When used to wrap a non-null NIO buffer object, this class will create a read-only view of the wrapped NIO buffer, and will call rewind on the read-only view, so that elements 0 through buffer.limit()-1 will be available internally.

NOTE: Use of this class requires version 1.4 of the JavaTM 2 Platform. Any attempt to access this class on an earlier version of the Java 2 Platform will fail with a NoClassDefFoundError. Refer to the documentation for version 1.4 of the Java 2 SDK for a description of the java.nio package.

Since:
Java 3D 1.3
See Also:
GeometryArray.setCoordRefBuffer(J3DBuffer), GeometryArray.setColorRefBuffer(J3DBuffer), GeometryArray.setNormalRefBuffer(J3DBuffer), GeometryArray.setTexCoordRefBuffer(int,J3DBuffer), GeometryArray.setInterleavedVertexBuffer(J3DBuffer), CompressedGeometry.CompressedGeometry(CompressedGeometryHeader,J3DBuffer)

Constructor Summary
J3DBuffer()
          Constructs a J3DBuffer object and initializes it with a null NIO buffer object.
J3DBuffer(java.nio.Buffer buffer)
          Constructs a J3DBuffer object and initializes it with the specified NIO buffer object.
 
Method Summary
 java.nio.Buffer getBuffer()
          Retrieves the NIO buffer object from this J3DBuffer.
 void setBuffer(java.nio.Buffer buffer)
          Sets the NIO buffer object in this J3DBuffer to the specified object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

J3DBuffer

public J3DBuffer()
Constructs a J3DBuffer object and initializes it with a null NIO buffer object. The NIO buffer object must be set to a non-null value before using this J3DBuffer object in a Java 3D node component.

Throws:
java.lang.UnsupportedOperationException - if the JVM does not support native access to direct NIO buffers

J3DBuffer

public J3DBuffer(java.nio.Buffer buffer)
Constructs a J3DBuffer object and initializes it with the specified NIO buffer object.

Parameters:
buffer - the NIO buffer wrapped by this J3DBuffer
Throws:
java.lang.UnsupportedOperationException - if the JVM does not support native access to direct NIO buffers
java.lang.IllegalArgumentException - if the specified buffer is not a direct buffer, or if the byte order of the specified buffer does not match the native byte order of the underlying platform.
Method Detail

setBuffer

public void setBuffer(java.nio.Buffer buffer)
Sets the NIO buffer object in this J3DBuffer to the specified object.

Parameters:
buffer - the NIO buffer wrapped by this J3DBuffer
Throws:
java.lang.IllegalArgumentException - if the specified buffer is not a direct buffer, or if the byte order of the specified buffer does not match the native byte order of the underlying platform.

getBuffer

public java.nio.Buffer getBuffer()
Retrieves the NIO buffer object from this J3DBuffer.

Returns:
the current NIO buffer wrapped by this J3DBuffer