public static DataBuffer getDataBuffer(BufferFileBlock block) {
		int blockIndex = block.getIndex();
		if (blockIndex <= 0) {
			return null; // head or invalid block
		}
		byte[] blockData = block.getData();
		byte flags = blockData[0];

		DataBuffer buf = new DataBuffer();

		if (flags == EMPTY_BUFFER) {
			buf.setId(-1);
			buf.setEmpty(true);
			return buf;
		}

		int bufferId = BigEndianDataConverter.INSTANCE.getInt(blockData, 1);
		buf.setId(bufferId);

		byte[] bufData = new byte[blockData.length - BUFFER_PREFIX_SIZE];
		System.arraycopy(blockData, BUFFER_PREFIX_SIZE, bufData, 0, bufData.length);
		buf.setData(bufData);

		return buf;
	}
Generate a DataBuffer instance which corresponds to the specified block
based upon LocalBufferFile block usage.
@param block the buffer file block to be converted
@return DataBuffer instance or null if head block.  If empty block
DataBuffer will have null data
Ghidra/Framework/DB/src/main/java/db/buffers/LocalBufferFile.java