refactor(session manager): rename original session_manager to session_manager_runtime
This commit is contained in:
46
infra/packet_manager/packet_manager_private.h
Normal file
46
infra/packet_manager/packet_manager_private.h
Normal file
@@ -0,0 +1,46 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include "stellar/packet_manager.h"
|
||||
|
||||
#define PACKET_QUEUE_MAX (PACKET_STAGE_MAX + 1)
|
||||
|
||||
struct packet_manager *packet_manager_new(struct mq_schema *mq_schema, const char *toml_file);
|
||||
void packet_manager_free(struct packet_manager *pkt_mgr);
|
||||
|
||||
void packet_manager_runtime_init(struct packet_manager_runtime *pkt_mgr_rt, struct mq_runtime *mq_rt);
|
||||
void packet_manager_runtime_ingress(struct packet_manager_runtime *pkt_mgr_rt, struct packet *pkt);
|
||||
struct packet *packet_manager_runtime_egress(struct packet_manager_runtime *pkt_mgr_rt);
|
||||
void packet_manager_runtime_dispatch(struct packet_manager_runtime *pkt_mgr_rt);
|
||||
|
||||
/******************************************************************************
|
||||
* for gtest
|
||||
******************************************************************************/
|
||||
|
||||
struct packet_manager_stat
|
||||
{
|
||||
struct
|
||||
{
|
||||
uint64_t pkts_ingress;
|
||||
uint64_t pkts_egress;
|
||||
} total;
|
||||
struct
|
||||
{
|
||||
uint64_t pkts_in; // include the packets that are scheduled
|
||||
uint64_t pkts_out; // include the packets that are claimed
|
||||
uint64_t pkts_claim;
|
||||
uint64_t pkts_schedule;
|
||||
} queue[PACKET_QUEUE_MAX]; // the last queue is for sending packets
|
||||
} __attribute__((aligned(64)));
|
||||
|
||||
const char *packet_stage_to_str(enum packet_stage stage);
|
||||
void packet_manager_runtime_print_stat(struct packet_manager_runtime *runtime);
|
||||
struct packet_manager_stat *packet_manager_runtime_get_stat(struct packet_manager_runtime *runtime);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user