Record Class StdVideoEncodeH264ReferenceListsInfo

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.StdVideoEncodeH264ReferenceListsInfo
All Implemented Interfaces:
IPointer, IStdVideoEncodeH264ReferenceListsInfo

@ValueBasedCandidate @UnsafeConstructor public record StdVideoEncodeH264ReferenceListsInfo(@NotNull MemorySegment segment) extends Record implements IStdVideoEncodeH264ReferenceListsInfo

Represents a pointer to a StdVideoEncodeH264ReferenceListsInfo structure in native memory.

Structure

typedef struct StdVideoEncodeH264ReferenceListsInfo {
    StdVideoEncodeH264ReferenceListsInfoFlags flags;
    uint8_t num_ref_idx_l0_active_minus1;
    uint8_t num_ref_idx_l1_active_minus1;
    uint8_t[STD_VIDEO_H264_MAX_NUM_LIST_REF] RefPicList0;
    uint8_t[STD_VIDEO_H264_MAX_NUM_LIST_REF] RefPicList1;
    uint8_t refList0ModOpCount;
    uint8_t refList1ModOpCount;
    uint8_t refPicMarkingOpCount;
    uint8_t[7] reserved1;
    StdVideoEncodeH264RefListModEntry const* pRefList0ModOperations;
    StdVideoEncodeH264RefListModEntry const* pRefList1ModOperations;
    StdVideoEncodeH264RefPicMarkingEntry const* pRefPicMarkingOperations;
} StdVideoEncodeH264ReferenceListsInfo;

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.