This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
stellar-stellar/src/packet_io/marsio_io.h

28 lines
960 B
C
Raw Normal View History

2024-04-10 17:50:51 +08:00
#ifndef _MARSIO_IO_H
#define _MARSIO_IO_H
2024-04-21 11:30:41 +08:00
#ifdef __cplusplus
2024-04-10 17:50:51 +08:00
extern "C"
{
#endif
#include "packet_io.h"
struct marsio_io;
struct marsio_io *marsio_io_new(const char *app_symbol, const char *dev_symbol, uint16_t *cpu_mask, uint16_t nr_threads);
2024-04-10 17:50:51 +08:00
void marsio_io_free(struct marsio_io *handle);
int marsio_io_init(struct marsio_io *handle, uint16_t thr_idx);
int marsio_io_ingress(struct marsio_io *handle, uint16_t thr_idx, struct packet *pkts, int nr_pkts);
void marsio_io_egress(struct marsio_io *handle, uint16_t thr_idx, struct packet *pkts, int nr_pkts);
void marsio_io_drop(struct marsio_io *handle, uint16_t thr_idx, struct packet *pkts, int nr_pkts);
int marsio_io_inject(struct marsio_io *handle, uint16_t thr_idx, struct packet *pkts, int nr_pkts);
void marsio_io_yield(struct marsio_io *handle, uint16_t thr_idx, uint64_t timeout_ms);
struct io_stat *marsio_io_stat(struct marsio_io *handle, uint16_t thr_idx);
2024-04-10 17:50:51 +08:00
2024-04-21 11:30:41 +08:00
#ifdef __cplusplus
2024-04-10 17:50:51 +08:00
}
#endif
#endif