equal
deleted
inserted
replaced
18 #include <glxtracer.h> |
18 #include <glxtracer.h> |
19 #include <glxlog.h> |
19 #include <glxlog.h> |
20 |
20 |
21 #include "glxrequestfreegoom.h" |
21 #include "glxrequestfreegoom.h" |
22 |
22 |
23 const TInt KMinMemoryRequest = 3145728; // 3 MB |
23 const TInt KMinMemoryRequest = 16000000; // 2000 x 2000 x 4 (32 bit display mode) |
24 |
24 |
25 // ---------------------------------------------------------------------------- |
25 // ---------------------------------------------------------------------------- |
26 // CGlxRelaseGPUMemory::NewL |
26 // CGlxRelaseGPUMemory::NewL |
27 // ---------------------------------------------------------------------------- |
27 // ---------------------------------------------------------------------------- |
28 // |
28 // |
53 // CGlxRelaseGPUMemory::CGlxRelaseGPUMemory |
53 // CGlxRelaseGPUMemory::CGlxRelaseGPUMemory |
54 // ---------------------------------------------------------------------------- |
54 // ---------------------------------------------------------------------------- |
55 // |
55 // |
56 CGlxRelaseGPUMemory::CGlxRelaseGPUMemory(MGoomNotifierObserver& aNotify) : |
56 CGlxRelaseGPUMemory::CGlxRelaseGPUMemory(MGoomNotifierObserver& aNotify) : |
57 CActive(CActive::EPriorityStandard), iNotify(aNotify), iIsFirstRequest( |
57 CActive(CActive::EPriorityStandard), iNotify(aNotify), iIsFirstRequest( |
58 ETrue) |
58 ETrue),iNotifyCaller(ETrue) |
59 { |
59 { |
60 TRACER("CGlxRelaseGPUMemory::CGlxRelaseGPUMemory()"); |
60 TRACER("CGlxRelaseGPUMemory::CGlxRelaseGPUMemory()"); |
61 CActiveScheduler::Add(this); |
61 CActiveScheduler::Add(this); |
62 } |
62 } |
63 |
63 |
102 |
102 |
103 // ---------------------------------------------------------------------------- |
103 // ---------------------------------------------------------------------------- |
104 // CGlxRelaseGPUMemory::RequestMemory() |
104 // CGlxRelaseGPUMemory::RequestMemory() |
105 // ---------------------------------------------------------------------------- |
105 // ---------------------------------------------------------------------------- |
106 // |
106 // |
107 EXPORT_C void CGlxRelaseGPUMemory::RequestMemory() |
107 EXPORT_C void CGlxRelaseGPUMemory::RequestMemory(TBool aRequest) |
108 { |
108 { |
109 TRACER("CGlxRelaseGPUMemory::RequestMemory()"); |
109 TRACER("CGlxRelaseGPUMemory::RequestMemory()"); |
|
110 iNotifyCaller = aRequest; |
110 IssueRequest(); |
111 IssueRequest(); |
111 } |
112 } |
112 |
113 |
113 // ---------------------------------------------------------------------------- |
114 // ---------------------------------------------------------------------------- |
114 // CGlxRelaseGPUMemory::DoCancel() |
115 // CGlxRelaseGPUMemory::DoCancel() |
141 IssueRequest(); |
142 IssueRequest(); |
142 return; |
143 return; |
143 } |
144 } |
144 |
145 |
145 // Notify observer on the RequestFreeMemory() status |
146 // Notify observer on the RequestFreeMemory() status |
146 iNotify.HandleGoomMemoryReleased(iStatus.Int()); |
147 if(iNotifyCaller || (iStatus.Int() != KErrNone)) |
|
148 { |
|
149 iNotify.HandleGoomMemoryReleased(iStatus.Int()); |
|
150 } |
|
151 iNotifyCaller = EFalse; |
147 } |
152 } |