@Generated(value={"Immutables.generator","R2InstanceSingleType"}) public final class R2InstanceSingle extends Object implements R2InstanceSingleType
The type of single instances.
A single instance consists of a set of one or more vertex buffers containing mesh data, a per-instance UV matrix, and a transform.
| Modifier and Type | Class and Description |
|---|---|
static class |
R2InstanceSingle.Builder
Builds instances of type
R2InstanceSingle. |
| Modifier and Type | Method and Description |
|---|---|
com.io7m.jcanephora.core.JCGLArrayObjectUsableType |
arrayObject() |
static R2InstanceSingle.Builder |
builder()
Creates a builder for
R2InstanceSingle. |
static R2InstanceSingle |
copyOf(R2InstanceSingleType instance)
Creates an immutable copy of a
R2InstanceSingleType value. |
boolean |
equals(Object another)
This instance is equal to all instances of
R2InstanceSingle that have equal attribute values. |
int |
hashCode()
Computes a hash code from attributes:
instanceID, arrayObject, transform, uvMatrix. |
long |
instanceID() |
static R2InstanceSingle |
of(long instanceID,
com.io7m.jcanephora.core.JCGLArrayObjectUsableType arrayObject,
R2TransformReadableType transform,
com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> uvMatrix)
Construct a new immutable
R2InstanceSingle instance. |
String |
toString()
Prints the immutable value
R2InstanceSingle with attribute values. |
R2TransformReadableType |
transform() |
com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> |
uvMatrix() |
R2InstanceSingle |
withArrayObject(com.io7m.jcanephora.core.JCGLArrayObjectUsableType value)
Copy the current immutable object by setting a value for the
arrayObject attribute. |
R2InstanceSingle |
withInstanceID(long value)
Copy the current immutable object by setting a value for the
instanceID attribute. |
R2InstanceSingle |
withTransform(R2TransformReadableType value)
Copy the current immutable object by setting a value for the
transform attribute. |
R2InstanceSingle |
withUvMatrix(com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> value)
Copy the current immutable object by setting a value for the
uvMatrix attribute. |
public long instanceID()
instanceID in interface R2InstanceSingleTypeinstanceID in interface R2InstanceTypeinstanceID attributepublic com.io7m.jcanephora.core.JCGLArrayObjectUsableType arrayObject()
arrayObject in interface R2InstanceSingleTypepublic R2TransformReadableType transform()
transform in interface R2InstanceSingleTypepublic com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> uvMatrix()
uvMatrix in interface R2InstanceSingleTypepublic final R2InstanceSingle withInstanceID(long value)
instanceID attribute.
A value equality check is used to prevent copying of the same value by returning this.value - A new value for instanceIDthis objectpublic final R2InstanceSingle withArrayObject(com.io7m.jcanephora.core.JCGLArrayObjectUsableType value)
arrayObject attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for arrayObjectthis objectpublic final R2InstanceSingle withTransform(R2TransformReadableType value)
transform attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for transformthis objectpublic final R2InstanceSingle withUvMatrix(com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> value)
uvMatrix attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for uvMatrixthis objectpublic boolean equals(Object another)
R2InstanceSingle that have equal attribute values.public int hashCode()
instanceID, arrayObject, transform, uvMatrix.public String toString()
R2InstanceSingle with attribute values.public static R2InstanceSingle of(long instanceID, com.io7m.jcanephora.core.JCGLArrayObjectUsableType arrayObject, R2TransformReadableType transform, com.io7m.jtensors.parameterized.PMatrixReadable3x3FType<R2SpaceTextureType,R2SpaceTextureType> uvMatrix)
R2InstanceSingle instance.instanceID - The value for the instanceID attributearrayObject - The value for the arrayObject attributetransform - The value for the transform attributeuvMatrix - The value for the uvMatrix attributepublic static R2InstanceSingle copyOf(R2InstanceSingleType instance)
R2InstanceSingleType value.
Uses accessors to get values to initialize the new immutable instance.
If an instance is already immutable, it is returned as is.instance - The instance to copypublic static R2InstanceSingle.Builder builder()
R2InstanceSingle.Copyright © 2016 <code@io7m.com> http://io7m.com