Index: skia/animator/SkGetCondensedInfo.cpp |
=================================================================== |
--- skia/animator/SkGetCondensedInfo.cpp (revision 16859) |
+++ skia/animator/SkGetCondensedInfo.cpp (working copy) |
@@ -1,130 +0,0 @@ |
-/* libs/graphics/animator/SkGetCondensedInfo.cpp |
-** |
-** Copyright 2006, The Android Open Source Project |
-** |
-** Licensed under the Apache License, Version 2.0 (the "License"); |
-** you may not use this file except in compliance with the License. |
-** You may obtain a copy of the License at |
-** |
-** http://www.apache.org/licenses/LICENSE-2.0 |
-** |
-** Unless required by applicable law or agreed to in writing, software |
-** distributed under the License is distributed on an "AS IS" BASIS, |
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-** See the License for the specific language governing permissions and |
-** limitations under the License. |
-*/ |
- |
-#include "SkMemberInfo.h" |
- |
-#if SK_USE_CONDENSED_INFO == 1 |
- |
-// SkCondensed.cpp is auto-generated |
-// To generate it, execute SkDisplayType::BuildCondensedInfo() |
-#ifdef SK_DEBUG |
-#include "SkCondensedDebug.cpp" |
-#else |
-#include "SkCondensedRelease.cpp" |
-#endif |
- |
-static int _searchByName(const unsigned char* lengths, int count, const char* strings, const char target[]) { |
- int lo = 0; |
- int hi = count - 1; |
- while (lo < hi) { |
- int mid = (hi + lo) >> 1; |
- if (strcmp(&strings[lengths[mid << 2]], target) < 0) |
- lo = mid + 1; |
- else |
- hi = mid; |
- } |
- if (strcmp(&strings[lengths[hi << 2]], target) != 0) |
- return -1; |
- return hi; |
-} |
- |
-static int _searchByType(SkDisplayTypes type) { |
- unsigned char match = (unsigned char) type; |
- int lo = 0; |
- int hi = kTypeIDs - 1; |
- while (lo < hi) { |
- int mid = (hi + lo) >> 1; |
- if (gTypeIDs[mid] < match) |
- lo = mid + 1; |
- else |
- hi = mid; |
- } |
- if (gTypeIDs[hi] != type) |
- return -1; |
- return hi; |
-} |
- |
-const SkMemberInfo* SkDisplayType::GetMembers(SkAnimateMaker* , SkDisplayTypes type, int* infoCountPtr) { |
- int lookup = _searchByType(type); |
- if (lookup < 0) |
- return NULL; |
- if (infoCountPtr) |
- *infoCountPtr = gInfoCounts[lookup]; |
- return gInfoTables[lookup]; |
-} |
- |
-// !!! replace with inline |
-const SkMemberInfo* SkDisplayType::GetMember(SkAnimateMaker* , SkDisplayTypes type, const char** matchPtr ) { |
- const SkMemberInfo* info = SkMemberInfo::Find(type, matchPtr); |
- SkASSERT(info); |
- return info; |
-} |
- |
-static const SkMemberInfo* _lookup(int lookup, const char** matchPtr) { |
- int count = gInfoCounts[lookup]; |
- const SkMemberInfo* info = gInfoTables[lookup]; |
- if (info->fType == SkType_BaseClassInfo) { |
- int baseTypeLookup = info->fOffset; |
- const SkMemberInfo* result = _lookup(baseTypeLookup, matchPtr); |
- if (result != NULL) |
- return result; |
- if (--count == 0) |
- return NULL; |
- info++; |
- } |
- SkASSERT(info->fType != SkType_BaseClassInfo); |
- const char* match = *matchPtr; |
- const char* strings = gInfoNames[lookup]; |
- int index = _searchByName(&info->fName, count, strings, match); |
- if (index < 0) |
- return NULL; |
- return &info[index]; |
-} |
- |
-const SkMemberInfo* SkMemberInfo::Find(SkDisplayTypes type, int* index) { |
- int count = gInfoCounts[lookup]; |
- const SkMemberInfo* info = gInfoTables[lookup]; |
- if (info->fType == SkType_BaseClassInfo) { |
- int baseTypeLookup = info->fOffset; |
- const SkMemberInfo* result = Find(baseTypeLookup, index); |
- if (result != NULL) |
- return result; |
- if (--count == 0) |
- return NULL; |
- info++; |
- } |
- SkASSERT(info->fType != SkType_BaseClassInfo); |
- if (*index >= count) { |
- *index -= count; |
- return NULL; |
- } |
- return &info[index]; |
-} |
- |
-const SkMemberInfo* SkMemberInfo::Find(SkDisplayTypes type, const char** matchPtr) { |
- int lookup = _searchByType(type); |
- SkASSERT(lookup >= 0); |
- return _lookup(lookup, matchPtr); |
-} |
- |
-const SkMemberInfo* SkMemberInfo::getInherited() const { |
- int baseTypeLookup = fOffset; |
- return gInfoTables[baseTypeLookup]; |
-} |
- |
-#endif |
- |