summaryrefslogtreecommitdiff
path: root/plugins/HistoryStats/src/mirandahistory.h
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2014-03-04 23:23:45 +0000
committerGeorge Hazan <george.hazan@gmail.com>2014-03-04 23:23:45 +0000
commit15855fa84a09fd1fd486d357c38db0f2bd181e74 (patch)
treec98d1ae74abca41c776522059343eda13a7e0a31 /plugins/HistoryStats/src/mirandahistory.h
parent819f8efabea6b0d7d971f9e6e4b21bbc18838874 (diff)
HistoryStats compiles ok now
git-svn-id: http://svn.miranda-ng.org/main/trunk@8399 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/HistoryStats/src/mirandahistory.h')
-rw-r--r--plugins/HistoryStats/src/mirandahistory.h41
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