Record Class XrSpatialEntityComponentDataTriangleMeshBD

java.lang.Object
java.lang.Record
club.doki7.openxr.datatype.XrSpatialEntityComponentDataTriangleMeshBD
All Implemented Interfaces:
IPointer, IXrSpatialEntityComponentDataTriangleMeshBD

@ValueBasedCandidate @UnsafeConstructor public record XrSpatialEntityComponentDataTriangleMeshBD(@NotNull MemorySegment segment) extends Record implements IXrSpatialEntityComponentDataTriangleMeshBD

Represents a pointer to a XrSpatialEntityComponentDataTriangleMeshBD structure in native memory.

Structure

typedef struct XrSpatialEntityComponentDataTriangleMeshBD {
    XrStructureType type;
    void* next;
    uint32_t vertexCapacityInput; // optional
    uint32_t vertexCountOutput; // optional
    XrVector3f* vertices; // optional
    uint32_t indexCapacityInput; // optional
    uint32_t indexCountOutput; // optional
    uint16_t* indices; // optional
} XrSpatialEntityComponentDataTriangleMeshBD;

Auto initialization

This structure has the following members that can be automatically initialized:

  • type = XR_TYPE_SPATIAL_ENTITY_COMPONENT_DATA_TRIANGLE_MESH_BD

The allocate (allocate(Arena), allocate(Arena, long)) functions will automatically initialize these fields. Also, you may call autoInit() to initialize these fields manually for non-allocated instances.

Contracts

The property segment() should always be not-null (segment != NULL && !segment.equals(MemorySegment.NULL)), and properly aligned to LAYOUT.byteAlignment() bytes. To represent null pointer, you may use a Java null instead. See the documentation of IPointer.segment() for more details.

The constructor of this class is marked as UnsafeConstructor, because it does not perform any runtime check. The constructor can be useful for automatic code generators.

See Also: