Home | History | Annotate | Download | only in allocator
      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