OpenMW
|
00001 #ifndef GAME_MWDIALOG_TOPIC_H 00002 #define GAME_MWDIALOG_TOPIC_H 00003 00004 #include <string> 00005 #include <vector> 00006 00007 #include "journalentry.hpp" 00008 00009 namespace MWDialogue 00010 { 00012 class Topic 00013 { 00014 public: 00015 00016 typedef std::vector<std::string> TEntryContainer; 00017 typedef TEntryContainer::const_iterator TEntryIter; 00018 00019 protected: 00020 00021 std::string mTopic; 00022 TEntryContainer mEntries; // info-IDs 00023 00024 public: 00025 00026 Topic(); 00027 00028 Topic (const std::string& topic); 00029 00030 virtual ~Topic(); 00031 00032 virtual void addEntry (const JournalEntry& entry); 00036 00037 std::string const & getName () const { return mTopic; } 00038 00039 TEntryIter begin() const; 00041 00042 TEntryIter end() const; 00044 00045 JournalEntry getEntry (const std::string& infoId) const; 00046 }; 00047 } 00048 00049 #endif