X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=config.h;h=d79d3d79de584292cf51efecd6a22d0c8917fc72;hp=d45ab08316b318c3e717d6c4a37252f047b0a9c5;hb=0ff463f4df8e085ba88f8ede735f16b140a2bf8e;hpb=2c6cd9718a5baf5a2ed5be73ec3c525d4873f45a diff --git a/config.h b/config.h index d45ab08..d79d3d7 100644 --- a/config.h +++ b/config.h @@ -3,31 +3,43 @@ // Various routines that deal with parsing the configuration file. -#include +#include #include +#include struct MarkPoolConfig { int from, to; }; struct StreamConfig { - std::string stream_id; + 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; }; struct AcceptorConfig { int port; }; +struct LogConfig { + enum { LOG_TYPE_FILE, LOG_TYPE_CONSOLE, LOG_TYPE_SYSLOG } type; + std::string filename; +}; + struct Config { + bool daemonize; int num_servers; std::vector mark_pools; std::vector streams; std::vector acceptors; + std::vector log_destinations; std::string stats_file; // Empty means no stats file. int stats_interval; + + std::string access_log_file; // Empty means no accses_log file. }; // Parse and validate configuration. Returns false on error.