diff options
author | AndreyL ProductEngine <alihatskiy@productengine.com> | 2016-05-20 00:03:30 +0300 |
---|---|---|
committer | AndreyL ProductEngine <alihatskiy@productengine.com> | 2016-05-20 00:03:30 +0300 |
commit | 445cd962932c1957495a35add8cf5ca4618e035b (patch) | |
tree | d0303f3704acb804cb8281f3b7c38010afa423e6 /indra/lscript/lscript_execute/llscriptresourceconsumer.cpp | |
parent | 6f5f307e0a751a78fbdfb4c6a1f8757ea55bf1dd (diff) | |
parent | c2ef3b4c7186dbbd95b16520f281b7d58364fb52 (diff) |
Merged in lindenlab/viewer-release
Diffstat (limited to 'indra/lscript/lscript_execute/llscriptresourceconsumer.cpp')
-rwxr-xr-x | indra/lscript/lscript_execute/llscriptresourceconsumer.cpp | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/indra/lscript/lscript_execute/llscriptresourceconsumer.cpp b/indra/lscript/lscript_execute/llscriptresourceconsumer.cpp deleted file mode 100755 index 0ce5eb7dab..0000000000 --- a/indra/lscript/lscript_execute/llscriptresourceconsumer.cpp +++ /dev/null @@ -1,106 +0,0 @@ -/** - * @file llscriptresourceconsumer.cpp - * @brief An interface for a script resource consumer. - * - * $LicenseInfo:firstyear=2008&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#include "llscriptresourceconsumer.h" - -#include "llscriptresourcepool.h" - -LLScriptResourceConsumer::LLScriptResourceConsumer() - : mScriptResourcePool(&LLScriptResourcePool::null) -{ } - -// Get the resource pool this consumer is currently using. -// virtual -LLScriptResourcePool& LLScriptResourceConsumer::getScriptResourcePool() -{ - return *mScriptResourcePool; -} - -// Get the resource pool this consumer is currently using. -// virtual -const LLScriptResourcePool& LLScriptResourceConsumer::getScriptResourcePool() const -{ - return *mScriptResourcePool; -} - -// virtual -void LLScriptResourceConsumer::setScriptResourcePool(LLScriptResourcePool& new_pool) -{ - mScriptResourcePool = &new_pool; -} - -bool LLScriptResourceConsumer::switchScriptResourcePools(LLScriptResourcePool& new_pool) -{ - if (&new_pool == &LLScriptResourcePool::null) - { - LL_WARNS() << "New pool is null" << LL_ENDL; - } - - if (isInPool(new_pool)) - { - return true; - } - - if (!canUseScriptResourcePool(new_pool)) - { - return false; - } - - S32 used_urls = getUsedPublicURLs(); - - getScriptResourcePool().getPublicURLResource().release( used_urls ); - setScriptResourcePool(new_pool); - getScriptResourcePool().getPublicURLResource().request( used_urls ); - - return true; -} - -bool LLScriptResourceConsumer::canUseScriptResourcePool(const LLScriptResourcePool& resource_pool) -{ - if (isInPool(resource_pool)) - { - return true; - } - - if (resource_pool.getPublicURLResource().getAvailable() < getUsedPublicURLs()) - { - return false; - } - - return true; -} - -bool LLScriptResourceConsumer::isInPool(const LLScriptResourcePool& resource_pool) -{ - const LLScriptResourcePool& current_pool = getScriptResourcePool(); - if ( &resource_pool == ¤t_pool ) - { - // This consumer is already in this pool - return true; - } - return false; -} - |