Prusa MINI Firmware overview
pbuf Struct Reference

#include <pbuf.h>

Collaboration diagram for pbuf:

Public Attributes

struct pbufnext
 
voidpayload
 
u16_t tot_len
 
u16_t len
 
u8_t type
 
u8_t flags
 
u16_t ref
 

Detailed Description

Main packet buffer struct

Member Data Documentation

◆ next

struct pbuf* pbuf::next

next pbuf in singly linked pbuf chain

◆ payload

void* pbuf::payload

pointer to the actual data in the buffer

◆ tot_len

u16_t pbuf::tot_len

total length of this buffer and all next buffers in chain belonging to the same packet.

For non-queue packet chains this is the invariant: p->tot_len == p->len + (p->next? p->next->tot_len: 0)

◆ len

u16_t pbuf::len

length of this buffer

◆ type

u8_t pbuf::type

pbuf_type as u8_t instead of enum to save space

◆ flags

u8_t pbuf::flags

misc flags

◆ ref

u16_t pbuf::ref

the reference count always equals the number of pointers that refer to this pbuf. This can be pointers from an application, the stack itself, or pbuf->next pointers from a chain.