public static DataRelationElementV11 fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int flags = ByteBuffer.wrap(segment, currentPos + 2, Short.BYTES).order(order).getShort(); int parentBufferNameOffset = ByteBuffer.wrap(segment, currentPos + 8, Integer.BYTES).order(order).getInt(); String parentBufferName = parentBufferNameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + parentBufferNameOffset); int childBufferNameOffset = ByteBuffer.wrap(segment, currentPos + 12, Integer.BYTES).order(order).getInt(); String childBufferName = childBufferNameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + childBufferNameOffset); int nameOffset = ByteBuffer.wrap(segment, currentPos + 16, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int fieldPairsOffset = ByteBuffer.wrap(segment, currentPos + 20, Integer.BYTES).order(order).getInt(); String fieldPairs = fieldPairsOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + fieldPairsOffset); return new DataRelationElementV11(name, parentBufferName, childBufferName, fieldPairs, flags); }
public static DataRelationElementV11 fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int flags = ByteBuffer.wrap(segment, currentPos + 2, Short.BYTES).order(order).getShort(); int parentBufferNameOffset = ByteBuffer.wrap(segment, currentPos + 8, Integer.BYTES).order(order).getInt(); String parentBufferName = parentBufferNameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + parentBufferNameOffset); int childBufferNameOffset = ByteBuffer.wrap(segment, currentPos + 12, Integer.BYTES).order(order).getInt(); String childBufferName = childBufferNameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + childBufferNameOffset); int nameOffset = ByteBuffer.wrap(segment, currentPos + 16, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int fieldPairsOffset = ByteBuffer.wrap(segment, currentPos + 20, Integer.BYTES).order(order).getInt(); String fieldPairs = fieldPairsOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + fieldPairsOffset); return new DataRelationElementV11(name, parentBufferName, childBufferName, fieldPairs, flags); }