SAMV71 Xplained Ultra Software Package 1.4

memp.c File Reference

#include "lwip/opt.h"
#include "lwip/memp.h"
#include "lwip/pbuf.h"
#include "lwip/udp.h"
#include "lwip/raw.h"
#include "lwip/tcp.h"
#include "lwip/igmp.h"
#include "lwip/api.h"
#include "lwip/api_msg.h"
#include "lwip/tcpip.h"
#include "lwip/sys.h"
#include "lwip/stats.h"
#include "netif/etharp.h"
#include "lwip/ip_frag.h"
#include <string.h>
#include "lwip/memp_std.h"

Go to the source code of this file.

Data Structures

struct  memp

Defines

#define MEMP_SIZE   0
#define MEMP_ALIGN_SIZE(x)   (LWIP_MEM_ALIGN_SIZE(x))
#define LWIP_MEMPOOL(name, num, size, desc)   LWIP_MEM_ALIGN_SIZE(size),
#define LWIP_MEMPOOL(name, num, size, desc)   (num),
#define LWIP_MEMPOOL(name, num, size, desc)   + ( (num) * (MEMP_SIZE + MEMP_ALIGN_SIZE(size) ) )

Functions

void memp_init (void)
void * memp_malloc (memp_t type)
void memp_free (memp_t type, void *mem)

Detailed Description

Dynamic pool memory manager

lwIP has dedicated pools for many structures (netconn, protocol control blocks, packet buffers, ...). All these pools are managed here.

Definition in file memp.c.


Function Documentation

void memp_free ( memp_t  type,
void *  mem 
)

Put an element back into its pool.

Parameters:
type the pool where to put mem
mem the memp element to free

Definition at line 352 of file memp.c.

void memp_init ( void   ) 

Initialize this module.

Carves out memp_memory into linked lists for each pool-type.

Definition at line 260 of file memp.c.

void* memp_malloc ( memp_t  type  ) 

Get an element from a specific pool.

Parameters:
type the pool to get an element from

the debug version has two more parameters:

Parameters:
file file name calling this function
line number of line where this function is called
Returns:
a pointer to the allocated memory or a NULL pointer on error

Definition at line 307 of file memp.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines