#ifndef OPENMW_COMPONENTS_ESMLOADER_ESMDATA_H #define OPENMW_COMPONENTS_ESMLOADER_ESMDATA_H #include #include #include #include namespace ESM { struct Activator; struct Cell; struct Container; struct Door; struct GameSetting; struct Land; struct Static; class Variant; class RefId; } namespace EsmLoader { struct RefIdWithType { ESM::RefId mId; ESM::RecNameInts mType; }; struct EsmData { std::vector mActivators; std::vector mCells; std::vector mContainers; std::vector mDoors; std::vector mGameSettings; std::vector mLands; std::vector mStatics; std::vector mRefIdTypes; EsmData() = default; EsmData(const EsmData&) = delete; EsmData(EsmData&&) = default; ~EsmData(); }; std::string_view getModel(const EsmData& content, const ESM::RefId& refId, ESM::RecNameInts type); ESM::Variant getGameSetting(const std::vector& records, std::string_view id); } #endif