Record Class VkSpecializationInfo
java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkSpecializationInfo
- All Implemented Interfaces:
IPointer,IVkSpecializationInfo
@ValueBasedCandidate
@UnsafeConstructor
public record VkSpecializationInfo(@NotNull MemorySegment segment)
extends Record
implements IVkSpecializationInfo
Represents a pointer to a VkSpecializationInfo structure in native memory.
Structure
typedef struct VkSpecializationInfo {
uint32_t mapEntryCount; // optional
VkSpecializationMapEntry const* pMapEntries; // optional
size_t dataSize; // optional
void const* pData; // optional
} VkSpecializationInfo;
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:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRepresents a pointer to / an array ofVkSpecializationInfostructure(s) in native memory. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longstatic final StructLayoutstatic final ValueLayout.OfIntstatic final AddressLayoutstatic final AddressLayoutstatic final longstatic final longstatic final longstatic final longstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final longstatic final longstatic final longstatic final long -
Constructor Summary
ConstructorsConstructorDescriptionVkSpecializationInfo(@NotNull MemorySegment segment) Creates an instance of aVkSpecializationInforecord class. -
Method Summary
Modifier and TypeMethodDescriptionstatic VkSpecializationInfostatic VkSpecializationInfo.Ptrstatic VkSpecializationInfoclone(Arena arena, VkSpecializationInfo src) longdataSize()dataSize(long value) final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.intmapEntryCount(int value) @NotNull MemorySegmentpData()pData(@NotNull MemorySegment value) @Nullable VkSpecializationMapEntrypMapEntries(int assumedCount) pMapEntries(@Nullable IVkSpecializationMapEntry value) @NotNull MemorySegmentvoidpMapEntriesRaw(@NotNull MemorySegment value) @NotNull MemorySegmentsegment()Returns the value of thesegmentrecord component.final StringtoString()Returns a string representation of this record class.
-
Field Details
-
LAYOUT
-
BYTES
public static final long BYTES -
PATH$mapEntryCount
-
PATH$pMapEntries
-
PATH$dataSize
-
PATH$pData
-
LAYOUT$mapEntryCount
-
LAYOUT$pMapEntries
-
LAYOUT$pData
-
SIZE$mapEntryCount
public static final long SIZE$mapEntryCount -
SIZE$pMapEntries
public static final long SIZE$pMapEntries -
SIZE$dataSize
public static final long SIZE$dataSize -
SIZE$pData
public static final long SIZE$pData -
OFFSET$mapEntryCount
public static final long OFFSET$mapEntryCount -
OFFSET$pMapEntries
public static final long OFFSET$pMapEntries -
OFFSET$dataSize
public static final long OFFSET$dataSize -
OFFSET$pData
public static final long OFFSET$pData
-
-
Constructor Details
-
VkSpecializationInfo
Creates an instance of aVkSpecializationInforecord class.- Parameters:
segment- the value for thesegmentrecord component
-
-
Method Details
-
allocate
-
allocate
-
clone
-
mapEntryCount
-
mapEntryCount
-
pMapEntries
-
pMapEntries
-
pMapEntries
-
pMapEntriesRaw
@Pointer(target=VkSpecializationMapEntry.class) @NotNull public @NotNull MemorySegment pMapEntriesRaw() -
pMapEntriesRaw
public void pMapEntriesRaw(@Pointer(target=VkSpecializationMapEntry.class) @NotNull @NotNull MemorySegment value) -
dataSize
-
dataSize
-
pData
-
pData
-
pData
-
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.
-