3 #ifndef OPENMW_COMPONENTS_NIF_NIFFILE_HPP
4 #define OPENMW_COMPONENTS_NIF_NIFFILE_HPP
19 virtual ~File() =
default;
21 virtual void fail(
const std::string &msg)
const = 0;
23 virtual void warn(
const std::string &msg)
const = 0;
74 void fail(
const std::string &msg)
const override
76 std::string err =
" NIFFile Error: " + msg;
78 throw std::runtime_error(err);
81 void warn(
const std::string &msg)
const override
Definition: niffile.hpp:40
void fail(const std::string &msg) const override
Used if file parsing fails.
Definition: niffile.hpp:74
virtual Record * getRecord(size_t index) const =0
std::string printVersion(unsigned int version)
Definition: niffile.cpp:119
std::string getFilename() const override
Get the name of the file.
Definition: niffile.hpp:115
NIFVersion
Definition: niffile.hpp:42
size_t numRecords() const override
Number of records.
Definition: niffile.hpp:97
size_t numRoots() const override
Number of roots.
Definition: niffile.hpp:106
Base class for all records.
Definition: record.hpp:101
Definition: debuglog.hpp:13
std::shared_ptr< std::istream > IStreamPtr
Definition: constrainedfilestream.hpp:21
void setUseSkinning(bool skinning) override
Definition: niffile.cpp:216
Definition: debuglog.hpp:22
Record * getRecord(size_t index) const override
Get a given record.
Definition: niffile.hpp:91
virtual void setUseSkinning(bool skinning)=0
std::shared_ptr< const Nif::NIFFile > NIFFilePtr
Definition: niffile.hpp:117
virtual void fail(const std::string &msg) const =0
virtual Record * getRoot(size_t index=0) const =0
std::vector< Record * > records
Record list.
Definition: niffile.hpp:53
unsigned int ver
Nif file version.
Definition: niffile.hpp:47
bool mUseSkinning
Definition: niffile.hpp:58
Definition: niffile.hpp:17
~NIFFile()
Definition: niffile.cpp:19
std::vector< Record * > roots
Root list. This is a select portion of the pointers from records.
Definition: niffile.hpp:56
void operator=(NIFFile const &)
virtual size_t numRecords() const =0
virtual bool getUseSkinning() const =0
Record * getRoot(size_t index=0) const override
Get a given root.
Definition: niffile.hpp:100
virtual size_t numRoots() const =0
bool getUseSkinning() const override
Definition: niffile.cpp:221
void parse(Files::IStreamPtr stream)
Parse the file.
Definition: niffile.cpp:137
NIFFile(NIFFile const &)
Private Copy Constructor.
virtual void warn(const std::string &msg) const =0
virtual std::string getFilename() const =0
void warn(const std::string &msg) const override
Used when something goes wrong, but not catastrophically so.
Definition: niffile.hpp:81
Definition: niffile.hpp:43
const char * name
Definition: crashcatcher.cpp:67
std::string filename
File name, used for error messages and opening the file.
Definition: niffile.hpp:50