Record Class WGPUDeviceDescriptor
java.lang.Object
java.lang.Record
club.doki7.webgpu.datatype.WGPUDeviceDescriptor
- All Implemented Interfaces:
IPointer,IWGPUDeviceDescriptor
@ValueBasedCandidate
@UnsafeConstructor
public record WGPUDeviceDescriptor(@NotNull MemorySegment segment)
extends Record
implements IWGPUDeviceDescriptor
Represents a pointer to a WGPUDeviceDescriptor structure in native memory.
Structure
typedef struct WGPUDeviceDescriptor {
WGPUChainedStruct const* nextInChain; // optional
WGPUStringView label;
size_t requiredFeatureCount;
WGPUFeatureName const* requiredFeatures;
WGPULimits const* requiredLimits; // optional
WGPUQueueDescriptor defaultQueue;
WGPUDeviceLostCallbackInfo deviceLostCallbackInfo;
WGPUUncapturedErrorCallbackInfo uncapturedErrorCallbackInfo;
} WGPUDeviceDescriptor;
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.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRepresents a pointer to / an array of null structure(s) in native memory. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longstatic final StructLayoutstatic final StructLayoutstatic final StructLayoutstatic final StructLayoutstatic final AddressLayoutstatic final AddressLayoutstatic final AddressLayoutstatic final StructLayoutstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final long -
Constructor Summary
ConstructorsConstructorDescriptionWGPUDeviceDescriptor(@NotNull MemorySegment segment) Creates an instance of aWGPUDeviceDescriptorrecord class. -
Method Summary
Modifier and TypeMethodDescriptionstatic WGPUDeviceDescriptorstatic WGPUDeviceDescriptor.Ptrstatic WGPUDeviceDescriptorclone(Arena arena, WGPUDeviceDescriptor src) @NotNull WGPUQueueDescriptordefaultQueue(@NotNull WGPUQueueDescriptor value) defaultQueue(Consumer<@NotNull WGPUQueueDescriptor> consumer) @NotNull WGPUDeviceLostCallbackInfodeviceLostCallbackInfo(@NotNull WGPUDeviceLostCallbackInfo value) deviceLostCallbackInfo(Consumer<@NotNull WGPUDeviceLostCallbackInfo> consumer) final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.@NotNull WGPUStringViewlabel()label(@NotNull WGPUStringView value) label(Consumer<@NotNull WGPUStringView> consumer) @Nullable WGPUChainedStructnextInChain(int assumedCount) nextInChain(@Nullable IWGPUChainedStruct value) @NotNull MemorySegmentvoidnextInChainRaw(@NotNull MemorySegment value) longrequiredFeatureCount(long value) @Nullable IntPtrNote: the returnedIntPtrdoes not have correctIntPtr.size()property.requiredFeatures(@Nullable IntPtr value) @NotNull MemorySegmentvoidrequiredFeaturesRaw(@NotNull MemorySegment value) @Nullable WGPULimitsrequiredLimits(int assumedCount) requiredLimits(@Nullable IWGPULimits value) @NotNull MemorySegmentvoidrequiredLimitsRaw(@NotNull MemorySegment value) @NotNull MemorySegmentsegment()Returns the value of thesegmentrecord component.final StringtoString()Returns a string representation of this record class.@NotNull WGPUUncapturedErrorCallbackInfouncapturedErrorCallbackInfo(@NotNull WGPUUncapturedErrorCallbackInfo value) uncapturedErrorCallbackInfo(Consumer<@NotNull WGPUUncapturedErrorCallbackInfo> consumer)
-
Field Details
-
LAYOUT
-
BYTES
public static final long BYTES -
PATH$nextInChain
-
PATH$label
-
PATH$requiredFeatureCount
-
PATH$requiredFeatures
-
PATH$requiredLimits
-
PATH$defaultQueue
-
PATH$deviceLostCallbackInfo
-
PATH$uncapturedErrorCallbackInfo
-
LAYOUT$nextInChain
-
LAYOUT$label
-
LAYOUT$requiredFeatures
-
LAYOUT$requiredLimits
-
LAYOUT$defaultQueue
-
LAYOUT$deviceLostCallbackInfo
-
LAYOUT$uncapturedErrorCallbackInfo
-
SIZE$nextInChain
public static final long SIZE$nextInChain -
SIZE$label
public static final long SIZE$label -
SIZE$requiredFeatureCount
public static final long SIZE$requiredFeatureCount -
SIZE$requiredFeatures
public static final long SIZE$requiredFeatures -
SIZE$requiredLimits
public static final long SIZE$requiredLimits -
SIZE$defaultQueue
public static final long SIZE$defaultQueue -
SIZE$deviceLostCallbackInfo
public static final long SIZE$deviceLostCallbackInfo -
SIZE$uncapturedErrorCallbackInfo
public static final long SIZE$uncapturedErrorCallbackInfo -
OFFSET$nextInChain
public static final long OFFSET$nextInChain -
OFFSET$label
public static final long OFFSET$label -
OFFSET$requiredFeatureCount
public static final long OFFSET$requiredFeatureCount -
OFFSET$requiredFeatures
public static final long OFFSET$requiredFeatures -
OFFSET$requiredLimits
public static final long OFFSET$requiredLimits -
OFFSET$defaultQueue
public static final long OFFSET$defaultQueue -
OFFSET$deviceLostCallbackInfo
public static final long OFFSET$deviceLostCallbackInfo -
OFFSET$uncapturedErrorCallbackInfo
public static final long OFFSET$uncapturedErrorCallbackInfo
-
-
Constructor Details
-
WGPUDeviceDescriptor
Creates an instance of aWGPUDeviceDescriptorrecord class.- Parameters:
segment- the value for thesegmentrecord component
-
-
Method Details
-
allocate
-
allocate
-
clone
-
nextInChain
-
nextInChain
-
nextInChain
-
nextInChainRaw
-
nextInChainRaw
public void nextInChainRaw(@Pointer(target=WGPUChainedStruct.class) @NotNull @NotNull MemorySegment value) -
label
-
label
-
label
-
requiredFeatureCount
-
requiredFeatureCount
-
requiredFeatures
Note: the returnedIntPtrdoes not have correctIntPtr.size()property. It's up to user to track the size of the buffer, and useIntPtr.reinterpret(long)to set the size before actually reading fro or writing to the buffer. -
requiredFeatures
public WGPUDeviceDescriptor requiredFeatures(@Nullable @EnumType(WGPUFeatureName.class) @Nullable IntPtr value) -
requiredFeaturesRaw
-
requiredFeaturesRaw
public void requiredFeaturesRaw(@Pointer(target=WGPUFeatureName.class) @NotNull @NotNull MemorySegment value) -
requiredLimits
-
requiredLimits
-
requiredLimits
-
requiredLimitsRaw
-
requiredLimitsRaw
public void requiredLimitsRaw(@Pointer(target=WGPULimits.class) @NotNull @NotNull MemorySegment value) -
defaultQueue
-
defaultQueue
-
defaultQueue
-
deviceLostCallbackInfo
-
deviceLostCallbackInfo
public WGPUDeviceDescriptor deviceLostCallbackInfo(@NotNull @NotNull WGPUDeviceLostCallbackInfo value) -
deviceLostCallbackInfo
public WGPUDeviceDescriptor deviceLostCallbackInfo(Consumer<@NotNull WGPUDeviceLostCallbackInfo> consumer) -
uncapturedErrorCallbackInfo
-
uncapturedErrorCallbackInfo
public WGPUDeviceDescriptor uncapturedErrorCallbackInfo(@NotNull @NotNull WGPUUncapturedErrorCallbackInfo value) -
uncapturedErrorCallbackInfo
public WGPUDeviceDescriptor uncapturedErrorCallbackInfo(Consumer<@NotNull WGPUUncapturedErrorCallbackInfo> consumer) -
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
segment
Returns the value of thesegmentrecord component.
-