Document of c-modernization-kit (porter) 1.0.0

Loading...
Searching...
No Matches
Data Fields
PotrWindow Struct Reference

スライディングウィンドウ管理構造体。 More...

`#include <window.h>`

Collaboration diagram for PotrWindow:

## Data Fields
PotrPacket * | packets
| パケットバッファ (動的確保。window_size 要素)。
uint8_t * | valid
| バッファ有効フラグ配列 (動的確保。window_size バイト)。
uint8_t * | payload_pool
| ペイロードプール (動的確保。window_size × max_payload バイト)。
uint32_t | base_seq
| ウィンドウ先頭の通番。
uint32_t | next_seq
| 送信側: 次に割り当てる通番。受信側: 次に期待する通番。
uint16_t | window_size
| ウィンドウサイズ (パケット数)。
uint16_t | max_payload
| エントリごとのペイロード最大長 (バイト)。
uint32_t | _pad
| パディング (構造体サイズを 8 バイト境界に揃える)。

## Detailed Description

スライディングウィンドウ管理構造体。

パケットバッファ・有効フラグ・ペイロードプールは動的確保する。
window_init() で確保し、window_destroy() で解放すること。

Definition at line 29 of file window.h.

## Field Documentation

## ◆ packets

PotrPacket* PotrWindow::packets

パケットバッファ (動的確保。window_size 要素)。

Definition at line 31 of file window.h.

Referenced by window_destroy(), window_init(), window_recv_pop(), window_recv_push(), window_send_get(), and window_send_push().

## ◆ valid

uint8_t* PotrWindow::valid

バッファ有効フラグ配列 (動的確保。window_size バイト)。

Definition at line 32 of file window.h.

Referenced by recv_thread_func(), reset_all_paths_disconnected(), window_destroy(), window_init(), window_recv_needs_nack(), window_recv_pop(), window_recv_push(), window_recv_reset(), window_recv_skip(), window_send_get(), and window_send_push().

## ◆ payload_pool

uint8_t* PotrWindow::payload_pool

ペイロードプール (動的確保。window_size × max_payload バイト)。

Definition at line 33 of file window.h.

Referenced by window_destroy(), window_init(), window_recv_push(), and window_send_push().

## ◆ base_seq

uint32_t PotrWindow::base_seq

ウィンドウ先頭の通番。

Definition at line 34 of file window.h.

Referenced by n1_process_outer_pkt(), process_outer_pkt(), recv_thread_func(), reset_all_paths_disconnected(), win_index(), window_init(), window_recv_pop(), window_recv_push(), window_recv_reset(), window_recv_skip(), window_send_full(), window_send_get(), and window_send_push().

## ◆ next_seq

uint32_t PotrWindow::next_seq

送信側: 次に割り当てる通番。受信側: 次に期待する通番。

Definition at line 35 of file window.h.

Referenced by flush_packed(), flush_packed_peer(), health_thread_func(), n1_send_ping_reply(), recv_thread_func(), reset_all_paths_disconnected(), send_ping_reply(), tcp_health_thread_func(), tcp_send_ping_reply(), window_init(), window_recv_needs_nack(), window_recv_pop(), window_recv_reset(), window_recv_skip(), window_send_full(), window_send_get(), and window_send_push().

## ◆ window_size

uint16_t PotrWindow::window_size

ウィンドウサイズ (パケット数)。

Definition at line 36 of file window.h.

Referenced by n1_process_outer_pkt(), process_outer_pkt(), recv_thread_func(), reset_all_paths_disconnected(), win_index(), window_init(), window_recv_needs_nack(), window_recv_push(), window_recv_reset(), and window_send_full().

## ◆ max_payload

uint16_t PotrWindow::max_payload

エントリごとのペイロード最大長 (バイト)。

Definition at line 37 of file window.h.

Referenced by window_init(), window_recv_push(), and window_send_push().

## ◆ _pad

uint32_t PotrWindow::_pad

パディング (構造体サイズを 8 バイト境界に揃える)。

Definition at line 38 of file window.h.

The documentation for this struct was generated from the following file:

- porter/libsrc/porter/protocol/window.h