author | hgs |
Wed, 06 Oct 2010 14:53:41 +0300 | |
changeset 20 | a60f8b6b1d32 |
parent 17 | a10844a9914d |
permissions | -rw-r--r-- |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
1 |
/* |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
8 |
* |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
11 |
* |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
13 |
* |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
14 |
* Description: |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
15 |
* |
17 | 16 |
* Version : %version: 10 % |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
17 |
*/ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
18 |
#include "hgbuffermanager.h" |
17 | 19 |
#include "hglogger.h" |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
20 |
#include <hgwidgets/hgcacheproxymodel.h> |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
21 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
22 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
23 |
HgBufferManager::HgBufferManager( |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
24 |
HgBufferManagerObserver* aObserver, |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
25 |
int aBufferSize, |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
26 |
int aBufferTreshold, |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
27 |
int aInitialPosition, |
17 | 28 |
int aTotalCount) |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
29 |
: |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
30 |
mObserver(aObserver), |
17 | 31 |
mBufferSize(aBufferSize), |
32 |
mBufferTreshold(aBufferTreshold), |
|
33 |
mBufferPosition(aInitialPosition), |
|
7 | 34 |
mDiff(0), |
17 | 35 |
mTotalCount(aTotalCount), |
7 | 36 |
mResetOrdered(false), |
37 |
mRequestStart(0), |
|
38 |
mRequestCount(0), |
|
39 |
mReleaseStart(0), |
|
40 |
mReleaseCount(0) |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
41 |
{ |
17 | 42 |
ASSERT(mObserver != 0); |
43 |
mBufferPosition -= (mBufferSize/2); |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
44 |
|
17 | 45 |
if (mBufferPosition + mBufferSize > mTotalCount - 1 ) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
46 |
mBufferPosition = (mTotalCount - 1) - mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
47 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
48 |
|
17 | 49 |
if (mBufferPosition < 0 ) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
50 |
mBufferPosition = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
51 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
52 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
53 |
mDiff = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
54 |
//request Initial Buffer |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
55 |
mRequestStart = mBufferPosition; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
56 |
mRequestCount = mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
57 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
58 |
calculate(); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
59 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
60 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
61 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
62 |
HgBufferManager::~HgBufferManager() |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
63 |
{ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
64 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
65 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
66 |
void HgBufferManager::resizeCache(int newSize, int newTreshold) |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
67 |
{ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
68 |
if (newTreshold != mBufferTreshold){ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
69 |
mBufferTreshold = newTreshold; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
70 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
71 |
|
17 | 72 |
if (newSize!=mBufferSize) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
73 |
int a = Max(0, mBufferPosition + mBufferSize/2 - newSize/2); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
74 |
int b = Min(a + newSize, mTotalCount); |
17 | 75 |
if (b == mTotalCount) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
76 |
a = mTotalCount - newSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
77 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
78 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
79 |
int c = Max(0, mBufferPosition); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
80 |
int d = Min(c + mBufferSize, mTotalCount); |
17 | 81 |
if (d == mTotalCount) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
82 |
c = mTotalCount - mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
83 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
84 |
|
17 | 85 |
if (newSize>mBufferSize) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
86 |
mObserver->request(a, c-1, HgCacheProxyModel::HgRequestOrderAscending); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
87 |
mObserver->request(d, b-1, HgCacheProxyModel::HgRequestOrderAscending); |
17 | 88 |
}else if (newSize<mBufferSize) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
89 |
mObserver->release(c, a-1); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
90 |
mObserver->release(b, d); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
91 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
92 |
mBufferPosition = a; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
93 |
mBufferSize = newSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
94 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
95 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
96 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
97 |
void HgBufferManager::calculate() |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
98 |
{ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
99 |
HgCacheProxyModel::HgRequestOrder direction = HgCacheProxyModel::HgRequestOrderAscending; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
100 |
|
17 | 101 |
if (mResetOrdered) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
102 |
mResetOrdered = false; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
103 |
} else { |
17 | 104 |
if (mDiff < 0) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
105 |
mReleaseStart = mBufferPosition; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
106 |
mRequestStart = mBufferPosition + mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
107 |
direction = HgCacheProxyModel::HgRequestOrderAscending; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
108 |
} else if( mDiff > 0) { |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
109 |
mReleaseStart = mBufferPosition + mBufferSize - mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
110 |
mRequestStart = mBufferPosition - mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
111 |
direction = HgCacheProxyModel::HgRequestOrderDescending; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
112 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
113 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
115 |
// Release |
17 | 116 |
int end = (mReleaseStart + mReleaseCount < mTotalCount)? |
117 |
(mReleaseStart + mReleaseCount): mTotalCount; |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
118 |
end--; |
17 | 119 |
if (end >= mReleaseStart) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
120 |
mObserver->release(mReleaseStart, end); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
121 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
122 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
123 |
mReleaseCount = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
124 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
125 |
// Request |
17 | 126 |
end = (mRequestStart + mRequestCount < mTotalCount)? |
127 |
(mRequestStart + mRequestCount): mTotalCount; |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
128 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
129 |
end--; |
17 | 130 |
if (end >= mRequestStart) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
131 |
mObserver->request(mRequestStart, end, direction); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
132 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
133 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
134 |
mRequestCount = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
135 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
136 |
// Move Buffer |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
137 |
mBufferPosition -= mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
138 |
// Reset Diff |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
139 |
mDiff = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
140 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
141 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
142 |
// ----------------------------------------------------------------------------- |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
143 |
// BufferManager::SetPosition() |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
144 |
// ----------------------------------------------------------------------------- |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
145 |
// |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
146 |
void HgBufferManager::setPosition( int aIndex ) |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
147 |
{ |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
148 |
// If all the items fit in the buffer no need to move the buffer |
17 | 149 |
if (mTotalCount <= mBufferSize) |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
150 |
return; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
151 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
152 |
bool forceUpdate = false; |
17 | 153 |
int idx = aIndex - mBufferSize / 2; // normalize index to Buffer start |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
154 |
|
17 | 155 |
if (idx < 0) { |
156 |
idx = 0; |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
157 |
forceUpdate = true; |
17 | 158 |
}else if (idx > mTotalCount - mBufferSize) { |
159 |
idx = mTotalCount - mBufferSize; |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
160 |
forceUpdate = true; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
161 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
162 |
|
17 | 163 |
mDiff = mBufferPosition - idx; |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
164 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
165 |
// Too large change reset whole buffer |
17 | 166 |
if (mDiff >= mBufferSize || -mDiff >= mBufferSize || mResetOrdered) { |
167 |
resetBuffer(aIndex, mTotalCount); |
|
168 |
} else if (mDiff >= mBufferTreshold) { // Move Up |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
169 |
mRequestCount = mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
170 |
mReleaseCount = mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
171 |
calculate(); |
17 | 172 |
} else if (-mDiff >= mBufferTreshold) {// Move Down |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
173 |
mRequestCount = -mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
174 |
mReleaseCount = -mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
175 |
calculate(); |
17 | 176 |
} else if (forceUpdate && mDiff) { // Top or bottom has been reached |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
177 |
int diff = mDiff < 0 ? -mDiff : mDiff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
178 |
mRequestCount = diff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
179 |
mReleaseCount = diff; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
180 |
calculate(); |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
181 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
182 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
183 |
|
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
184 |
// ----------------------------------------------------------------------------- |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
185 |
// BufferManager::ResetBuffer() |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
186 |
// ----------------------------------------------------------------------------- |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
187 |
// |
17 | 188 |
void HgBufferManager::resetBuffer(int aPosition, int aTotalCount) |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
189 |
{ |
17 | 190 |
int oldPos = mBufferPosition; |
191 |
if (!mResetOrdered) { |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
192 |
// release Old buffer |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
193 |
mReleaseStart = mBufferPosition; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
194 |
mReleaseCount = mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
195 |
} |
17 | 196 |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
197 |
mTotalCount = aTotalCount; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
198 |
mDiff = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
199 |
|
17 | 200 |
// set position and count |
201 |
mBufferPosition = aPosition - (mBufferSize / 2); |
|
202 |
||
203 |
if (aPosition < 0) { |
|
204 |
aPosition = 0; |
|
205 |
} else if (aPosition >= mTotalCount) { |
|
206 |
aPosition = mTotalCount - 1; |
|
207 |
} |
|
208 |
||
209 |
if (mBufferPosition + mBufferSize > mTotalCount - 1) { |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
210 |
mBufferPosition = mTotalCount - mBufferSize; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
211 |
} |
17 | 212 |
if (mBufferPosition < 0) { |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
213 |
mBufferPosition = 0; |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
214 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
215 |
|
17 | 216 |
mObserver->release(0, mTotalCount); |
217 |
||
218 |
// size size size |
|
219 |
// -------------|---------|---------|---------|------------------ |
|
220 |
// begin middle1 middle2 end |
|
221 |
int size = mBufferSize/3; |
|
222 |
int begin = mBufferPosition; |
|
223 |
int middle1 = begin + size; |
|
224 |
int middle2 = middle1 + size; |
|
225 |
int end = mBufferPosition + mBufferSize -1; //Can not be middle2 + size, mBufferSize/3 can be not equal size |
|
226 |
||
227 |
TX_LOG_ARGS(QString("aPosition:%0 begin:%1 middle1:%2 c:%3 end:%4").arg(aPosition).arg(begin).arg(middle1).arg(c).arg(end) ); |
|
6 | 228 |
|
17 | 229 |
if (aPosition >=begin && aPosition < middle1) { //aPosition is in begining, let's load from top |
230 |
mObserver->request(begin, end, HgBufferManagerObserver::HgRequestOrderAscending); |
|
231 |
} else if (aPosition >= middle1 && aPosition < middle2) {//aPosition is in the middle, let's load from middle |
|
232 |
HgBufferManagerObserver::HgRequestOrder order = HgBufferManagerObserver::HgRequestOrderAscending; |
|
233 |
if (oldPos > mBufferPosition) { |
|
234 |
order = HgBufferManagerObserver::HgRequestOrderDescending; |
|
235 |
} |
|
236 |
mObserver->request(middle1, middle2, order); |
|
237 |
if (order == HgBufferManagerObserver::HgRequestOrderAscending) { |
|
238 |
mObserver->request(middle2, end, order); |
|
239 |
mObserver->request(begin, middle1 -1, order); |
|
240 |
} else { |
|
241 |
mObserver->request(begin, middle1 -1, order); |
|
242 |
mObserver->request(middle2, end, order); |
|
243 |
} |
|
244 |
} else if (aPosition >= middle2 && aPosition <= end) { //aPosition is in end, let's load from bottom |
|
245 |
mObserver->request(begin, end, HgBufferManagerObserver::HgRequestOrderDescending); |
|
6 | 246 |
} |
247 |
||
248 |
mDiff = 0; |
|
249 |
mResetOrdered = false; |
|
250 |
mRequestStart = 0; |
|
251 |
mRequestCount = 0; |
|
252 |
mReleaseStart = 0; |
|
253 |
mReleaseCount = 0; |
|
254 |
||
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
255 |
} |
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
256 |
|
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
257 |
void HgBufferManager::aboutToRemoveItem(int pos) |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
258 |
{ |
17 | 259 |
if (pos < 0 || pos >= mTotalCount) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
260 |
return; |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
261 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
262 |
|
17 | 263 |
if (pos >= mBufferPosition && pos < mBufferPosition + mBufferSize) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
264 |
mObserver->release(pos, pos); |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
265 |
} |
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
266 |
} |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
267 |
|
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
268 |
void HgBufferManager::removedItem(int pos) |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
269 |
{ |
17 | 270 |
if (pos < 0 || pos >= mTotalCount) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
271 |
return; |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
272 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
273 |
|
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
274 |
mTotalCount--; |
17 | 275 |
if (mTotalCount >= mBufferSize) { |
276 |
if (pos < mBufferPosition) { //before buffer pos is >=0 |
|
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
277 |
mBufferPosition--; |
17 | 278 |
} else if (pos >= mBufferPosition && pos < mBufferPosition + mBufferSize) { |
279 |
if (mBufferPosition + mBufferSize <= mTotalCount) { |
|
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
280 |
// Requested from the end |
17 | 281 |
mObserver->request(mBufferPosition + mBufferSize - 1, |
282 |
mBufferPosition + mBufferSize - 1); |
|
283 |
}else if (mBufferPosition > 0) { |
|
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
284 |
// Move buffer and request from the beginning |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
285 |
mBufferPosition--; |
17 | 286 |
mObserver->request(mBufferPosition, mBufferPosition); |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
287 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
288 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
289 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
290 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
291 |
|
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
292 |
void HgBufferManager::aboutToInsertItem(int pos) |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
293 |
{ |
17 | 294 |
if (pos < 0 || pos > mTotalCount) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
295 |
return; |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
296 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
297 |
|
17 | 298 |
if (pos >= mBufferPosition && pos < mBufferPosition + mBufferSize) { |
299 |
if (mBufferPosition + mBufferSize < mTotalCount) { |
|
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
300 |
// Release from the end of the buffer |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
301 |
mObserver->release(mBufferPosition + mBufferSize - 1, mBufferPosition + mBufferSize - 1); |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
302 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
303 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
304 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
305 |
|
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
306 |
void HgBufferManager::insertedItem(int pos) |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
307 |
{ |
17 | 308 |
if ( pos < 0 || pos > mTotalCount) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
309 |
return; |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
310 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
311 |
|
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
312 |
mTotalCount++; |
17 | 313 |
if (pos >= mBufferPosition && pos < mBufferPosition + mBufferSize) { |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
314 |
mObserver->request(pos, pos); |
17 | 315 |
}else if (pos<mBufferPosition) { //if we have inserted item before buffer, we should move buffer. |
3
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
316 |
mBufferPosition++; |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
317 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
318 |
} |
c863538fcbb6
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
1
diff
changeset
|
319 |
|
20 | 320 |
bool HgBufferManager::isCached(int idx) const |
321 |
{ |
|
322 |
return ((idx>=mBufferPosition) && (idx<mBufferPosition+mBufferSize)); |
|
323 |
} |
|
1
e48454f237ca
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
324 |
//eof |