diff options
Diffstat (limited to 'plugins/HistoryStats/src/mirandahistory.h')
-rw-r--r-- | plugins/HistoryStats/src/mirandahistory.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/plugins/HistoryStats/src/mirandahistory.h b/plugins/HistoryStats/src/mirandahistory.h new file mode 100644 index 0000000000..6d344de891 --- /dev/null +++ b/plugins/HistoryStats/src/mirandahistory.h @@ -0,0 +1,41 @@ +#if !defined(HISTORYSTATS_GUARD_MIRANDAHISTORY_H)
+#define HISTORYSTATS_GUARD_MIRANDAHISTORY_H
+
+#include "_globals.h"
+
+#include <vector>
+
+#include "mirandacontact.h"
+#include "protocol.h"
+#include "settings.h"
+
+class MirandaHistory
+ : private pattern::NotCopyable<MirandaHistory>
+{
+private:
+ typedef std::map<ext::a::string, Protocol> ProtocolMap;
+ typedef std::vector<MirandaContact*> ContactList;
+
+private:
+ const Settings& m_Settings;
+ ProtocolMap m_Protocols;
+ Protocol m_DefaultProtocol;
+ bool m_bContactsAvailable;
+ ContactList m_Contacts;
+
+private:
+ void populateProtocols();
+ const Protocol& getProtocol(const ext::a::string& protocol) const;
+ void makeContactsAvailable();
+ void readContacts();
+ void mergeContacts();
+
+public:
+ explicit MirandaHistory(const Settings& settings);
+ ~MirandaHistory();
+
+ int getContactCount();
+ MirandaContact& getContact(int index);
+};
+
+#endif // HISTORYSTATS_GUARD_MIRANDAHISTORY_H
|