#pragma once #ifdef __cplusplus extern "C" { #endif #include "packet_io.h" struct schedule_options { uint64_t merge_stat_interval; // range: [1, 60000] (ms) uint64_t output_stat_interval; // range: [1, 60000] (ms) uint64_t packet_io_yield_interval; // range: [1, 60000] (ms) }; struct snowflake_options { uint8_t snowflake_base; uint8_t snowflake_offset; }; struct stellar_config { struct packet_io_options pkt_io_opts; struct snowflake_options snowflake_opts; struct schedule_options sched_opts; }; int stellar_config_load(struct stellar_config *config, const char *file); void stellar_config_print(const struct stellar_config *config); #ifdef __cplusplus } #endif