X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=config.h;h=a230731cee52b3a89566ec3f2df143439f258d97;hp=cf3fdfbfb189d9d936e83c9cc2860decc9450937;hb=6544fa0ec3f3a501bcb89ea977756911bd7f3ebd;hpb=8cdf715a5a6320a0b8c1152a28c40bc0dd86676b diff --git a/config.h b/config.h index cf3fdfb..a230731 100644 --- a/config.h +++ b/config.h @@ -9,26 +9,33 @@ #include #include -struct MarkPoolConfig { - int from, to; -}; - struct StreamConfig { std::string url; // As seen by the client. std::string src; // Can be empty. size_t backlog_size; - int mark_pool; // -1 for none. - enum { STREAM_ENCODING_RAW = 0, STREAM_ENCODING_METACUBE } encoding; + size_t prebuffering_bytes; + uint32_t pacing_rate; // In bytes per second. Default is ~0U (no limit). + enum Encoding { STREAM_ENCODING_RAW = 0, STREAM_ENCODING_METACUBE }; + Encoding encoding; + Encoding src_encoding; }; struct UDPStreamConfig { sockaddr_in6 dst; std::string src; // Can be empty. - int mark_pool; // -1 for none. + uint32_t pacing_rate; // In bytes per second. Default is ~0U (no limit). + int ttl; // Default is -1 (use operating system default). + int multicast_iface_index; // Default is -1 (use operating system default). + StreamConfig::Encoding src_encoding; +}; + +struct Gen204Config { + std::string url; // As seen by the client. + std::string allow_origin; // Can be empty. }; struct AcceptorConfig { - int port; + sockaddr_in6 addr; }; struct LogConfig { @@ -39,15 +46,18 @@ struct LogConfig { struct Config { bool daemonize; int num_servers; - std::vector mark_pools; std::vector streams; std::vector udpstreams; + std::vector pings; std::vector acceptors; std::vector log_destinations; std::string stats_file; // Empty means no stats file. int stats_interval; + std::string input_stats_file; // Empty means no input stats file. + int input_stats_interval; + std::string access_log_file; // Empty means no accses_log file. };