Project  1.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Fields
HeapMultiBufMP_Params Struct Reference

Structure defining parameters for the HeapMultiBufMP module. More...

#include <HeapMultiBufMP.h>

Collaboration diagram for HeapMultiBufMP_Params:
Collaboration graph
[legend]

Data Fields

GateMP_Handle gate
Bool exact
String name
Int numBuckets
HeapMultiBufMP_BucketbucketEntries
UInt16 regionId

Detailed Description

Structure defining parameters for the HeapMultiBufMP module.


Field Documentation

GateMP_Handle HeapMultiBufMP_Params::gate

GateMP used for critical region management of the shared memory

   Using the default value of NULL will result in use of the GateMP
   system gate for context protection.
Bool HeapMultiBufMP_Params::exact

Use exact matching

   Setting this flag will allow allocation only if the requested size
   is equal to (rather than less than or equal to) a buffer's block size.
String HeapMultiBufMP_Params::name

Name of this instance.

   The name (if not NULL) must be unique among all HeapMultiBufMP
   instances in the entire system.  When creating a new
   heap, it is necessary to supply an instance name.

   The name does not have to be persistent.  The supplied string is copied
   into persistent memory.
Int HeapMultiBufMP_Params::numBuckets

Number of buckets in HeapMultiBufMP_Params::bucketEntries

   This parameter is required to create any instance.
HeapMultiBufMP_Bucket* HeapMultiBufMP_Params::bucketEntries

Bucket Entries

   The bucket entries are an array of #HeapMultiBufMP_Bucket whose values
   correspond to the desired alignment, block size and length for each
   buffer.  It is important to note that the alignments and sizes for each
   buffer may be adjusted due to cache and alignment related constraints.
   Buffer sizes are rounded up by their corresponding alignments.  Buffer
   alignments themselves will assume the value of region cache alignment
   size when the cache size is greater than the requested buffer alignment.

   For example, specifying a bucket with {blockSize: 192, align: 256} will
   result in a buffer of blockSize = 256 and alignment = 256.  If cache
   alignment is required, then a bucket of {blockSize: 96, align: 64} will
   result in a buffer of blockSize = 128 and alignment = 128 (assuming
   cacheSize = 128).
UInt16 HeapMultiBufMP_Params::regionId

Shared region ID

    The index corresponding to the shared region from which shared memory
    will be allocated.

The documentation for this struct was generated from the following file:
Copyright 2013, Texas Instruments Incorporated