void ArchiveEntryFile::clear() { DENG2_GUARD(this); verifyWriteAccess(); File::clear(); archive().entryBlock(_entryPath).clear(); // Update status. Status st = status(); st.size = 0; st.modifiedAt = Time(); setStatus(st); }
void ArchiveEntryFile::set(Offset at, Byte const *values, Size count) { DENG2_GUARD(this); verifyWriteAccess(); // The entry will be marked for recompression (due to non-const access). Block &entryBlock = archive().entryBlock(_entryPath); entryBlock.set(at, values, count); // Update status. Status st = status(); st.size = entryBlock.size(); st.modifiedAt = Time(); setStatus(st); }
void ArchiveEntryFile::set(Offset at, Byte const *values, Size count) { DENG2_GUARD(this); verifyWriteAccess(); // The entry will be marked for recompression (due to non-const access). Block &entryBlock = archive().entryBlock(_entryPath); entryBlock.set(at, values, count); // Update status. Status st = status(); st.size = entryBlock.size(); // Timestamps must match, otherwise would be pruned needlessly. st.modifiedAt = archive().entryStatus(_entryPath).modifiedAt; setStatus(st); }