PacketPool (FB)

FUNCTION_BLOCK PUBLIC FINAL PacketPool EXTENDS FBF.InstanceBase IMPLEMENTS IPacketPool

InOut:

Scope

Name

Type

Initial

Comment

Input

udiPacketSize

UDINT

16#FFFFFFFF

udiInitialCapacity

UDINT

5

pPool

POINTER TO BYTE

The optinonal memory space for the packet pool.

pPool = 0 => Memory is allocated from Heap

pPool <> 0 => The related static Memory of size udiPoolSize is used.

udiPoolSize

UDINT

The size of the memory area referenced by pPool

Condition: udiPoolSize >= TO_UDINT(MBM.PoolGetSize(udiInitialCapacity, udiPacketSize + SIZEOF(Packet) - SIZEOF(DWORD)));

usiExtensionFactor

USINT