Class IFile

Class Documentation

class IFile

Interface that represents a NIX file.

See nix::File for a more detailed description.

Public Functions

virtual bool flush() = 0
virtual ndsize_t blockCount() const = 0
virtual bool hasBlock(const std::string &name_or_id) const = 0
virtual std::shared_ptr<IBlock> getBlock(const std::string &name_or_id) const = 0
virtual std::shared_ptr<IBlock> getBlock(ndsize_t index) const = 0
virtual std::shared_ptr<IBlock> createBlock(const std::string &name, const std::string &type) = 0
virtual bool deleteBlock(const std::string &name_or_id) = 0
virtual bool hasSection(const std::string &name_or_id) const = 0
virtual std::shared_ptr<ISection> getSection(const std::string &name_or_id) const = 0
virtual std::shared_ptr<ISection> getSection(ndsize_t index) const = 0
virtual ndsize_t sectionCount() const = 0
virtual std::shared_ptr<ISection> createSection(const std::string &name, const std::string &type) = 0
virtual bool deleteSection(const std::string &name_or_id) = 0
virtual std::vector<int> version() const = 0
virtual std::string format() const = 0
virtual std::string id() const = 0
virtual void forceId() = 0
virtual std::string location() const = 0
virtual time_t createdAt() const = 0
virtual time_t updatedAt() const = 0
virtual void setUpdatedAt() = 0
virtual void forceUpdatedAt() = 0
virtual void setCreatedAt() = 0
virtual void forceCreatedAt(time_t time) = 0
virtual void close() = 0
virtual bool isOpen() const = 0
virtual FileMode fileMode() const = 0
virtual Compression compression() const = 0
inline virtual ~IFile()