void putBuffer(DataBuffer buf) throws IOException {
		if (recoveryFile == null) {
			throw new IOException("Version file is closed");
		}
		if (readOnly) {
			throw new IOException("Version file is read-only");
		}
		setModified();
		int vfIndex;
		int id = buf.getId();
		try {
			vfIndex = bufferIndexMap.get(id);
		}
		catch (NoValueException e) {
			vfIndex = vfIndexProvider.allocateIndex();
			bufferIndexMap.put(id, vfIndex);
		}
		recoveryFile.put(buf, vfIndex);
	}
Store buffer which has been modified in the target.
@param buf modified buffer
@throws IOException if an IO error occurs
Ghidra/Framework/DB/src/main/java/db/buffers/RecoveryFile.java