Zen API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kDebugAlloc Class Reference

Description

Debug memory allocator that can track allocations and report leaks.

Inheritance diagram for kDebugAlloc:
Inheritance graph

Public Member Functions

kSize kDebugAlloc_Allocated (kDebugAlloc object)
 Returns the total amount of memory that has been allocated and not yet freed. More...
 
kStatus kDebugAlloc_Allocations (kDebugAlloc object, k64u since, kArrayList *history, kAlloc alloc)
 Gets a list of all outstanding memory allocations performed after the given checkpoint. More...
 
k64u kDebugAlloc_Checkpoint (kDebugAlloc object)
 Returns a memory checkpoint value, used in conjunction with allocation logging functions. More...
 
kStatus kDebugAlloc_Clear (kDebugAlloc object)
 Clears all outstanding allocations (resets allocator). More...
 
kStatus kDebugAlloc_Construct (kDebugAlloc *object, const kChar *name, kAlloc allocator)
 Constructs a new kDebugAlloc allocator. More...
 
kStatus kDebugAlloc_DetectLeakedAssemblyObjects (kDebugAlloc object, k64u since, kAssembly assembly)
 Makes note of outstanding allocations that appear to be objects associated with the specified assembly. More...
 
kStatus kDebugAlloc_DetectLeakedObjects (kDebugAlloc object, k64u since)
 Makes note of outstanding allocations that appear to be objects from any currently-loaded assembly. More...
 
kStatus kDebugAlloc_LogAllocations (kDebugAlloc object, k64u since)
 Logs all outstanding memory allocations performed after the given checkpoint (using kLogf). More...
 
kStatus kDebugAlloc_SetAllocListener (kDebugAlloc object, kCallbackFx function, kPointer receiver)
 Registers a user-defined function that is called whenever a memory allocation occurs. More...
 
- Public Member Functions inherited from kAlloc
kAlloc kAlloc_App ()
 Gets the allocator that should normally be used by applications to request memory. More...
 
kAlloc kAlloc_Fallback (kAlloc alloc)
 Returns the passed allocator, or if null, the App allocator. More...
 
kStatus kAlloc_Free (kAlloc alloc, void *mem)
 Frees a block of memory. More...
 
kStatus kAlloc_FreeRef (kAlloc alloc, void *mem)
 Frees a block of memory and sets the memory pointer to kNULL. More...
 
kStatus kAlloc_Get (kAlloc alloc, kSize size, void *mem)
 Allocates a block of memory. More...
 
kStatus kAlloc_GetZero (kAlloc alloc, kSize size, void *mem)
 Allocates a block of memory and zero-initializes the block. More...
 
kAlloc kAlloc_System ()
 Gets the system allocator. More...
 
- Public Member Functions inherited from kObject
kAlloc kObject_Alloc (kObject object)
 Gets the memory allocator associated with this object. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc allocator)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Destroy (kObject object)
 Destroys the object. More...
 
kStatus kObject_Dispose (kObject object)
 Destroys the object and any aggregated child elements. More...
 
kBool kObject_Equals (kObject object, kObject other)
 Determines whether the object is equal to another object. More...
 
kSize kObject_HashCode (kObject object)
 Gets a hash code representing the state of this object. More...
 
kBool kObject_Is (kObject object, kType type)
 Determines whether this object is an instance of the specified type. More...
 
kBool kObject_IsShared (kObject object)
 Reports whether the object is currently shared (reference count greater than one). More...
 
kStatus kObject_SetPool (kObject object, kObjectPool pool)
 Sets the object pool associated with this object. More...
 
kStatus kObject_Share (kObject object)
 Increments the reference count associated with this object. More...
 
kSize kObject_Size (kObject object)
 Estimates the memory consumed by this object, including any aggregated child elements. More...
 
kType kObject_Type (kObject object)
 Returns the type of the object. More...
 

Additional Inherited Members


The documentation for this class was generated from the following file: