Package com.io7m.smfj.core
Class SMFTriangles.Builder
- java.lang.Object
-
- com.io7m.smfj.core.SMFTriangles.Builder
-
- Enclosing class:
- SMFTriangles
public static final class SMFTriangles.Builder extends java.lang.Object
Builds instances of typeSMFTriangles
. Initialize attributes and then invoke thebuild()
method to create an immutable instance.Builder
is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SMFTriangles
build()
Builds a newSMFTriangles
.SMFTriangles.Builder
from(SMFTrianglesType instance)
Fill a builder with attribute values from the providedSMFTrianglesType
instance.SMFTriangles.Builder
setTriangleCount(long triangleCount)
Initializes the value for thetriangleCount
attribute.SMFTriangles.Builder
setTriangleIndexSizeBits(int triangleIndexSizeBits)
Initializes the value for thetriangleIndexSizeBits
attribute.
-
-
-
Method Detail
-
from
public final SMFTriangles.Builder from(SMFTrianglesType instance)
Fill a builder with attribute values from the providedSMFTrianglesType
instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
setTriangleCount
public final SMFTriangles.Builder setTriangleCount(long triangleCount)
Initializes the value for thetriangleCount
attribute.If not set, this attribute will have a default value as returned by the initializer of
triangleCount
.- Parameters:
triangleCount
- The value for triangleCount- Returns:
this
builder for use in a chained invocation
-
setTriangleIndexSizeBits
public final SMFTriangles.Builder setTriangleIndexSizeBits(int triangleIndexSizeBits)
Initializes the value for thetriangleIndexSizeBits
attribute.If not set, this attribute will have a default value as returned by the initializer of
triangleIndexSizeBits
.- Parameters:
triangleIndexSizeBits
- The value for triangleIndexSizeBits- Returns:
this
builder for use in a chained invocation
-
build
public SMFTriangles build()
Builds a newSMFTriangles
.- Returns:
- An immutable instance of SMFTriangles
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-
-