Document of c-modernization-kit (porter) 1.0.0

Loading...
Searching...
No Matches
seqnum.h
Go to the documentation of this file.
1
13
14#ifndef SEQNUM_H
15#define SEQNUM_H
16
17#include <stdint.h>
18
19#ifdef __cplusplus
20 extern "C"
21{
22#endif /* __cplusplus */
23
24 extern void seqnum_init(uint32_t *seq, uint32_t initial);
25 extern uint32_t seqnum_next(uint32_t *seq);
26 extern int seqnum_is_newer(uint32_t a, uint32_t b);
27 extern int seqnum_in_window(uint32_t seq, uint32_t base, uint16_t window_size);
28
29#ifdef __cplusplus
30}
31#endif /* __cplusplus */
32
33#endif /* SEQNUM_H */
seqnum_in_window
int seqnum_in_window(uint32_t seq, uint32_t base, uint16_t window_size)
通番 seq がウィンドウ [base, base + window_size) に含まれるか判定します。
Definition seqnum.c:80
seqnum_next
uint32_t seqnum_next(uint32_t *seq)
通番を 1 進めて次の値を返します。
Definition seqnum.c:45
seqnum_is_newer
int seqnum_is_newer(uint32_t a, uint32_t b)
通番 a が通番 b より新しいかどうかを判定します。
Definition seqnum.c:66
seqnum_init
void seqnum_init(uint32_t *seq, uint32_t initial)
通番を初期化します。
Definition seqnum.c:26