2013-10-29 12:18:22 +00:00
|
|
|
#ifndef CSM_WOLRD_INFOCOLLECTION_H
|
|
|
|
#define CSM_WOLRD_INFOCOLLECTION_H
|
|
|
|
|
|
|
|
#include "collection.hpp"
|
2013-11-01 16:43:45 +00:00
|
|
|
#include "info.hpp"
|
2013-10-29 12:18:22 +00:00
|
|
|
|
2013-10-31 11:16:45 +00:00
|
|
|
namespace ESM
|
|
|
|
{
|
|
|
|
class Dialogue;
|
|
|
|
}
|
|
|
|
|
2013-10-29 12:18:22 +00:00
|
|
|
namespace CSMWorld
|
|
|
|
{
|
2013-11-01 16:43:45 +00:00
|
|
|
class InfoCollection : public Collection<Info, IdAccessor<Info> >
|
2013-10-29 12:18:22 +00:00
|
|
|
{
|
2013-11-08 10:52:30 +00:00
|
|
|
public:
|
|
|
|
|
|
|
|
typedef std::map<std::string, int>::const_iterator MapConstIterator;
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
2013-11-01 16:43:45 +00:00
|
|
|
void load (const Info& record, bool base);
|
2013-10-29 12:18:22 +00:00
|
|
|
|
|
|
|
public:
|
|
|
|
|
2013-10-31 11:16:45 +00:00
|
|
|
void load (ESM::ESMReader& reader, bool base, const ESM::Dialogue& dialogue);
|
2013-11-08 10:52:30 +00:00
|
|
|
|
|
|
|
std::pair<MapConstIterator, MapConstIterator> getTopicRange (const std::string& topic)
|
|
|
|
const;
|
|
|
|
///< Return iterators that point to the beginning and past the end of the range for
|
|
|
|
/// the given topic.
|
2013-10-29 12:18:22 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|