RTI Connext DDS Micro C API  Version 3.0.0.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
osapi_heap.h File Reference

Heap interface definition. More...

#include "osapi/osapi_dll.h"
#include "osapi/osapi_types.h"
#include "osapi/osapi_heap_impl.h"

Go to the source code of this file.

Macros

#define OSAPI_ALIGNMENT_DEFAULT   (-1)
 Certain methods allow a default alignment: this should be an alignment that follows the "malloc" alignment of the architecture (aligned sufficiently to store any C-structure efficiently).
#define OSAPI_Heap_is_address_aligned(location, alignment)   (((char*)(location) - (char*) 0) % (alignment) == 0)
 Check if a particular address is aligned to an alignment.
#define OSAPI_Heap_align_size_up(size, alignment)   (((size) + ((alignment) - 1U)) & (~((alignment) - 1U)))
 Aligns a particular address to an alignment alignment.

Typedefs

typedef RTI_INT32 OSAPI_Alignment_T
 The OSAPIAlignment is the alignment in bytes; an address is aligned when it is a positive integer multiple of the alignment.

Functions

void * OSAPI_Heap_allocate (RTI_SIZE_T count, RTI_SIZE_T size)
 Allocates zero-initialized memory from the heap.
void * OSAPI_Heap_realloc (void *ptr, RTI_SIZE_T size)
 Reallocate memory from the heap.
void OSAPI_Heap_free (void *ptr)
 Frees memory allocated from the heap.
void OSAPI_Heap_allocate_struct (MACRO_TYPE **pointer, MACRO_TYPE)
 Allocates space on the heap for a C structure and initializes the structure with 0's.
void OSAPI_Heap_free_struct (MACRO_TYPE *pointer)
 Returns previously allocated (with OSAPI_Heap_allocate_struct) space to the heap.
void OSAPI_Heap_allocate_array (MACRO_TYPE **pointer, int count, MACRO_TYPE)
 A static method to allocate space on the heap for an array of C structures; the array is initialized with 0's.
void OSAPI_Heap_free_array (MACRO_TYPE *storage)
 A static method to return space (that was previously allocated with OSAPI_Heap_allocate_array) to the heap.
void OSAPI_Heap_allocate_string (char **pointer, RTI_UINT32 size)
 A static method to allocate space on the heap for a string of up to a given size. The string is initialized with 0's.
void OSAPI_Heap_free_string (char *pointer)
 A static method to return space string space to the heap.
void OSAPI_Heap_allocate_buffer (char **buffer, RTI_SIZE_T size, OSAPI_Alignment_T alignment)
 A static method to allocate a block of memory of the provided size from the heap.
void OSAPI_Heap_free_buffer (void *buffer)
 A static method to return a block (that was previously allocated with OSAPI_Heap_allocate_buffer) to the heap.
RTI_SIZE_T OSAPI_Heap_get_allocated_byte_count (void)
 Return current allocated memory.
void OSAPI_Heap_disable_alloc (void)
 Disable memory allocation.

Variables

RTI_SIZE_T OSAPI_gv_AllocatedByteCount
 Current allocated bytes.

Detailed Description

Heap interface definition.


Macro Definition Documentation

#define OSAPI_ALIGNMENT_DEFAULT   (-1)

Certain methods allow a default alignment: this should be an alignment that follows the "malloc" alignment of the architecture (aligned sufficiently to store any C-structure efficiently).


RTI Connext DDS Micro C API Version 3.0.0.1 Copyright © Mon Aug 5 2019 Real-Time Innovations, Inc