| Index: cc/CCPrioritizedTexture.cpp
|
| diff --git a/cc/CCPrioritizedTexture.cpp b/cc/CCPrioritizedTexture.cpp
|
| index 50db1cb432dc22ba5cf0112027cc1daeee66073a..270ceba292b5906d5fa4d939cc05dbb0180bd370 100644
|
| --- a/cc/CCPrioritizedTexture.cpp
|
| +++ b/cc/CCPrioritizedTexture.cpp
|
| @@ -8,6 +8,7 @@
|
|
|
| #include "CCPrioritizedTextureManager.h"
|
| #include "CCPriorityCalculator.h"
|
| +#include "CCProxy.h"
|
| #include <algorithm>
|
|
|
| using namespace std;
|
| @@ -119,4 +120,32 @@ void CCPrioritizedTexture::setToSelfManagedMemoryPlaceholder(size_t bytes)
|
| m_bytes = bytes;
|
| }
|
|
|
| +CCPrioritizedTexture::Backing::Backing(unsigned id, IntSize size, GC3Denum format)
|
| + : CCTexture(id, size, format)
|
| + , m_owner(0)
|
| + , m_priorityAtLastPriorityUpdate(CCPriorityCalculator::lowestPriority())
|
| + , m_ownerExistedAtLastPriorityUpdate(false)
|
| + , m_wasAbovePriorityCutoffAtLastPriorityUpdate(false)
|
| +{
|
| +}
|
| +
|
| +CCPrioritizedTexture::Backing::~Backing()
|
| +{
|
| + ASSERT(!m_owner);
|
| +}
|
| +
|
| +void CCPrioritizedTexture::Backing::updatePriority()
|
| +{
|
| + ASSERT(CCProxy::isImplThread() && CCProxy::isMainThreadBlocked());
|
| + if (m_owner) {
|
| + m_ownerExistedAtLastPriorityUpdate = true;
|
| + m_priorityAtLastPriorityUpdate = m_owner->requestPriority();
|
| + m_wasAbovePriorityCutoffAtLastPriorityUpdate = m_owner->isAbovePriorityCutoff();
|
| + } else {
|
| + m_ownerExistedAtLastPriorityUpdate = false;
|
| + m_priorityAtLastPriorityUpdate = CCPriorityCalculator::lowestPriority();
|
| + m_wasAbovePriorityCutoffAtLastPriorityUpdate = false;
|
| + }
|
| +}
|
| +
|
| } // namespace cc
|
|
|