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 10namespace base { 11namespace allocator { 12namespace 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 18typedef bool (*GetAllocatorWasteSizeFunction)(size_t* size); 19void SetGetAllocatorWasteSizeFunction( 20 GetAllocatorWasteSizeFunction get_allocator_waste_size_function); 21GetAllocatorWasteSizeFunction GetGetAllocatorWasteSizeFunction(); 22 23typedef void (*GetStatsFunction)(char* buffer, int buffer_length); 24void SetGetStatsFunction(GetStatsFunction get_stats_function); 25GetStatsFunction GetGetStatsFunction(); 26 27typedef void (*ReleaseFreeMemoryFunction)(); 28void SetReleaseFreeMemoryFunction( 29 ReleaseFreeMemoryFunction release_free_memory_function); 30ReleaseFreeMemoryFunction GetReleaseFreeMemoryFunction(); 31 32} // namespace thunks 33} // namespace allocator 34} // namespace base 35 36#endif 37