logsui/logsengine/logssymbianos/inc/logsreaderstates.h
changeset 15 76d2cf7a585e
parent 9 68f3171a5819
child 17 90fe74753f71
--- a/logsui/logsengine/logssymbianos/inc/logsreaderstates.h	Fri Aug 06 14:57:47 2010 +0300
+++ b/logsui/logsengine/logssymbianos/inc/logsreaderstates.h	Mon Aug 23 18:14:51 2010 +0300
@@ -23,6 +23,7 @@
 #include <e32std.h>
 #include <logclientchangeobserver.h>
 #include <logviewchangeobserver.h>
+#include "logsduplicatelookup.h"
 
 // FORWARD DECLARATION
 class LogsReaderStateContext;
@@ -198,9 +199,18 @@
          * Synchronously fills details from phonebook
          */
         void fillDetails(); 
-        
+
     public: // From LogsReaderStateBase
         virtual bool enterL();
+    private:
+        void mergeDuplicates( LogsEvent& usedEvent, LogsEvent& discardedEvent ) const;
+        
+    private:
+        LogsDuplicateLookup mDuplicateLookup;
+        
+    private: // For testing
+        
+        friend class UT_LogsReaderStates;
 };
 
 /**
@@ -254,7 +264,7 @@
 };
 
 /**
- * Marking duplicate events state
+ * Reading duplicate events state
  */
 class LogsReaderStateReadingDuplicates : public LogsReaderStateBase 
 {
@@ -270,6 +280,21 @@
 };
 
 /**
+ * Merging duplicate events state
+ */
+class LogsReaderStateMergingDuplicates : public LogsReaderStateBase 
+{
+    friend class UT_LogsReaderStates;
+    
+    public:
+    LogsReaderStateMergingDuplicates(LogsStateBaseContext& context, LogsReaderStateContext& readerContext);
+        virtual ~LogsReaderStateMergingDuplicates(){}
+
+    public: // From LogsReaderStateBase
+        virtual bool enterL();   
+};
+
+/**
  * Modifying done state
  */
 class LogsReaderStateModifyingDone : public LogsReaderStateBase