#ifndef CSM_WOLRD_SUBCOLLECTION_H #define CSM_WOLRD_SUBCOLLECTION_H #include "nestedidcollection.hpp" namespace ESM { class ESMReader; } namespace CSMWorld { struct Cell; /// \brief Single type collection of top level records that are associated with cells template class SubCellCollection final : public NestedIdCollection { const IdCollection& mCells; void loadRecord(ESXRecordT& record, ESM::ESMReader& reader, bool& isDeleted) override; public: SubCellCollection(const IdCollection& cells); }; template void SubCellCollection::loadRecord(ESXRecordT& record, ESM::ESMReader& reader, bool& isDeleted) { record.load(reader, isDeleted, mCells); } template SubCellCollection::SubCellCollection(const IdCollection& cells) : mCells(cells) { } } #endif