1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef BASE_ALLOCATOR_ALLOCATOR_THUNKS_EXTENSION_H 6 #define BASE_ALLOCATOR_ALLOCATOR_THUNKS_EXTENSION_H 7 8 #include <stddef.h> // for size_t 9 10 namespace base { 11 namespace allocator { 12 namespace thunks { 13 14 // WARNING: You probably don't want to use this file unless you are routing a 15 // new allocator extension from a specific allocator implementation to base. 16 // See allocator_extension.h to see the interface that base exports. 17 18 typedef bool (*GetAllocatorWasteSizeFunction)(size_t* size); 19 void SetGetAllocatorWasteSizeFunction( 20 GetAllocatorWasteSizeFunction get_allocator_waste_size_function); 21 GetAllocatorWasteSizeFunction GetGetAllocatorWasteSizeFunction(); 22 23 typedef void (*GetStatsFunction)(char* buffer, int buffer_length); 24 void SetGetStatsFunction(GetStatsFunction get_stats_function); 25 GetStatsFunction GetGetStatsFunction(); 26 27 typedef void (*ReleaseFreeMemoryFunction)(); 28 void SetReleaseFreeMemoryFunction( 29 ReleaseFreeMemoryFunction release_free_memory_function); 30 ReleaseFreeMemoryFunction GetReleaseFreeMemoryFunction(); 31 32 } // namespace thunks 33 } // namespace allocator 34 } // namespace base 35 36 #endif 37