54d4998d0df8ac25f382fa81c731b6a66d251c61
[fms.git] / include / freenet / messagelistxml.h
1 #ifndef _messagelistxml_\r
2 #define _messagelistxml_\r
3 \r
4 #include "../ifmsxmldocument.h"\r
5 \r
6 #include <vector>\r
7 \r
8 class MessageListXML:public IFMSXMLDocument\r
9 {\r
10 public:\r
11         MessageListXML();\r
12 \r
13         std::string GetXML();\r
14         const bool ParseXML(const std::string &xml);\r
15 \r
16         void ClearMessages()    { m_messages.clear(); }\r
17 \r
18         void AddMessage(const std::string &date, const long index, const std::vector<std::string> boards);\r
19 \r
20         const long MessageCount()       { return m_messages.size(); }\r
21         std::string GetDate(const long index);\r
22         const long GetIndex(const long index);\r
23         std::vector<std::string> GetBoards(const long index);\r
24 \r
25 private:\r
26         struct message\r
27         {\r
28                 message(const std::string &date, const long index, const std::vector<std::string> &boards):m_date(date),m_index(index),m_boards(boards) {}\r
29                 std::string m_date;\r
30                 long m_index;\r
31                 std::vector<std::string> m_boards;\r
32         };\r
33 \r
34         void Initialize();\r
35 \r
36         std::vector<message> m_messages;\r
37 \r
38 };\r
39 \r
40 #endif  // _messagelistxml_\r