--- a/uiacceltk/hitchcock/goommonitor/inc/goommemorymonitor.h Mon Jun 21 16:41:52 2010 +0300
+++ b/uiacceltk/hitchcock/goommonitor/inc/goommemorymonitor.h Thu Jul 15 19:40:07 2010 +0300
@@ -27,6 +27,8 @@
#include "goomwindowgrouplist.h"
#include "goomtraces.h"
+#define ALWAYS_SW_REND 0 //enable only for testing purpose - will force sw rendering no matter what
+
// ---------------------------------------------------------
// CMemoryMonitor
// ---------------------------------------------------------
@@ -56,6 +58,12 @@
EGOomTriggerRequestMemory,
EGOomTriggerThresholdCrossed
};
+
+ enum TGOomMemMode
+ {
+ EGOomGoodMemMode = 0,
+ EGOomLowMemMode
+ };
public: // event handlers
void FreeMemThresholdCrossedL(TInt aAction = 0, TInt aThreshold = 0);
@@ -102,6 +110,11 @@
}
else
{
+ if(aClientId == 0)
+ {
+ iClientsRequestingMemory.Reset();
+ }
+
TInt idx = iClientsRequestingMemory.Find(aClientId);
if(idx != KErrNotFound)
{
@@ -127,6 +140,8 @@
void WaitAndSynchroniseMemoryState();
void SynchroniseMemoryState();
+ void SwitchMemMode(TGOomMemMode aMemMode);
+
private:
CMemoryMonitor();
void ConstructL();
@@ -201,6 +216,13 @@
TGOomTrigger iTrigger;
CGOomSynchTimer* iSynchTimer;
+
+ TBool iMemMode;
+ TBool iForegroundAppHasChanged;
+
+ TInt iRendswitched;
+
+ RArray<TInt> iLowOnMemWgs;
};