Deleting

bk_delete()

int bk_delete(VolInfo* volInfo, const char* pathAndName);

Deletes the file or directory from the ISO, and frees all the memory associated with those items. If pathAndName points to a directory, all the contents of the directory are also deleted.

I'm sure I already mentioned somewhere in the manual that the original ISO isn't modified. But I'll reinforce that now - bk_delete() will delete from the representation of the ISO in memory, not from the ISO itself. When you write the new ISO, the deleted files won't be there.

Files and directories added to the ISO can also be deleted the same way (from the representation of the new ISO in memory, not from the filesystem).

bk_delete_boot_record()

void bk_delete_boot_record(VolInfo* volInfo);

Deletes the boot record from the ISO. See the notes from bk_delete() about how none of the original data is deleted.