\n
Microsoft Invisible Computing

IHeapFactory Interface

The IHeapFactory interface is a factory for heaps. It wraps the CreateHeapFrom utility function for a given heap.

C type for interface pointer:

Extends IUnknown

Implemented by GenericHeapFactory NullHeapFactory BitMapHeapFactory FirstFitHeapFactory NullHeapFactory BitMapHeapFactory FirstFitHeapFactory DebugHeapFactory TmpHeapFactory

Methods: Create CreateNested

Methods

Create

Creates a new instance of the given IHeap implementation class.

CreateNested

Creates a new instance of the given IHeap implementation class using another heap for storage.

IHeapFactory.Create Method

Creates a new instance of the given IHeap implementation class.

SCODE Create( 
    /*in,this*/ PIHEAPFACTORY iThis,
    /*in*/ ADDRESS MemoryStart,
    /*in*/ UINT Flags,
    /*in*/ UINT InitialSize,
    /*in*/ UINT MaximumSize,
    /*out*/ PIHEAP* ppHeap)
MemoryStart

Start of the memory to be managed by the new heap.

Flags

Default flags for the heap. See HEAP_FLAGS.

InitialSize

A heap might assume only this much memory will actually be used and optimize accordingly. If in doubt use the same value as MaximumSize

MaximumSize

Size of the memory block starting at MemoryStart.

ppHeap

The newly created object is returned here.

C++

SCODE IHeapFactory::Create( 
    /*in*/ ADDRESS MemoryStart,
    /*in*/ UINT Flags,
    /*in*/ UINT InitialSize,
    /*in*/ UINT MaximumSize,
    /*out*/ PIHEAP* ppHeap)

IHeapFactory.CreateNested Method

Creates a new instance of the given IHeap implementation class using another heap for storage.

SCODE CreateNested( 
    /*in,this*/ PIHEAPFACTORY iThis,
    /*in*/ PIHEAP pRealHeap,
    /*in*/ UINT Flags,
    /*in*/ UINT InitialSize,
    /*in*/ UINT MaximumSize,
    /*out*/ PIHEAP* ppHeap)
pRealHeap

The underlying heap to allocate from.

Flags

Default flags for the heap. See HEAP_FLAGS.

InitialSize

A heap might assume only this much memory will actually be used and optimize accordingly. If in doubt use the same value as MaximumSize

MaximumSize

Size of the memory block starting at MemoryStart.

ppHeap

The newly created object is returned here.

C++

SCODE IHeapFactory::CreateNested( 
    /*in*/ PIHEAP pRealHeap,
    /*in*/ UINT Flags,
    /*in*/ UINT InitialSize,
    /*in*/ UINT MaximumSize,
    /*out*/ PIHEAP* ppHeap)

©2006 Microsoft Corporation. All rights reserved. Terms of Use Privacy Statement Accessibility End User License Agreement