Index: base/memory/discardable_memory.cc |
diff --git a/base/memory/discardable_memory.cc b/base/memory/discardable_memory.cc |
index 7d19f9a9c274e9346dfadf7dfd7069d857933967..0e3b58a356390ba604aea22d3f692701eba09fff 100644 |
--- a/base/memory/discardable_memory.cc |
+++ b/base/memory/discardable_memory.cc |
@@ -4,80 +4,14 @@ |
#include "base/memory/discardable_memory.h" |
-#include "base/lazy_instance.h" |
-#include "base/logging.h" |
+#include "base/memory/discardable_memory_shmem.h" |
namespace base { |
-namespace { |
- |
-const struct TypeNamePair { |
- DiscardableMemoryType type; |
- const char* name; |
-} kTypeNamePairs[] = { |
- { DISCARDABLE_MEMORY_TYPE_SHMEM, "shmem" } |
-}; |
- |
-DiscardableMemoryType g_preferred_type = DISCARDABLE_MEMORY_TYPE_NONE; |
- |
-struct DefaultPreferredType { |
- DefaultPreferredType() : value(DISCARDABLE_MEMORY_TYPE_NONE) { |
- std::vector<DiscardableMemoryType> supported_types; |
- DiscardableMemory::GetSupportedTypes(&supported_types); |
- DCHECK(!supported_types.empty()); |
- value = supported_types[0]; |
- } |
- DiscardableMemoryType value; |
-}; |
-LazyInstance<DefaultPreferredType>::Leaky g_default_preferred_type = |
- LAZY_INSTANCE_INITIALIZER; |
- |
-} // namespace |
- |
-// static |
-DiscardableMemoryType DiscardableMemory::GetNamedType( |
- const std::string& name) { |
- for (size_t i = 0; i < arraysize(kTypeNamePairs); ++i) { |
- if (name == kTypeNamePairs[i].name) |
- return kTypeNamePairs[i].type; |
- } |
- |
- return DISCARDABLE_MEMORY_TYPE_NONE; |
-} |
- |
-// static |
-const char* DiscardableMemory::GetTypeName(DiscardableMemoryType type) { |
- for (size_t i = 0; i < arraysize(kTypeNamePairs); ++i) { |
- if (type == kTypeNamePairs[i].type) |
- return kTypeNamePairs[i].name; |
- } |
- |
- return "unknown"; |
-} |
- |
-// static |
-void DiscardableMemory::SetPreferredType(DiscardableMemoryType type) { |
- // NONE is a reserved value and not a valid default type. |
- DCHECK_NE(DISCARDABLE_MEMORY_TYPE_NONE, type); |
- |
- // Make sure this function is only called once before the first call |
- // to GetPreferredType(). |
- DCHECK_EQ(DISCARDABLE_MEMORY_TYPE_NONE, g_preferred_type); |
- |
- g_preferred_type = type; |
-} |
- |
-// static |
-DiscardableMemoryType DiscardableMemory::GetPreferredType() { |
- if (g_preferred_type == DISCARDABLE_MEMORY_TYPE_NONE) |
- g_preferred_type = g_default_preferred_type.Get().value; |
- |
- return g_preferred_type; |
-} |
// static |
scoped_ptr<DiscardableMemory> DiscardableMemory::CreateLockedMemory( |
size_t size) { |
- return CreateLockedMemoryWithType(GetPreferredType(), size); |
+ return make_scoped_ptr(new internal::DiscardableMemoryShmem(size)); |
} |
} // namespace base |