in src/main/java/org/apache/datasketches/memory/internal/WritableMemoryImpl.java [224:239]
public static WritableMemory wrapDirect(
final long capacityBytes,
final long alignmentBytes,
final ByteOrder byteOrder,
final MemoryRequestServer memReqSvr,
final Arena arena) {
Objects.requireNonNull(arena, "Arena must be non-null");
Objects.requireNonNull(byteOrder, "ByteOrder must be non-null");
final MemorySegment seg = arena.allocate(capacityBytes, alignmentBytes);
final boolean nativeBOType = byteOrder == ByteOrder.nativeOrder();
final int type = MEMORY | DIRECT
| (nativeBOType ? NATIVE_BO : NONNATIVE_BO);
return nativeBOType
? new NativeWritableMemoryImpl(seg, type, memReqSvr, arena)
: new NonNativeWritableMemoryImpl(seg, type, memReqSvr, arena);
}