summaryrefslogtreecommitdiff
path: root/config.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'config.cpp')
-rw-r--r--config.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/config.cpp b/config.cpp
new file mode 100644
index 0000000..1fbcde5
--- /dev/null
+++ b/config.cpp
@@ -0,0 +1,22 @@
+#include "config.h"
+
+#include <string>
+#include <fstream>
+#include <stdexcept>
+
+po::variables_map config::vm;
+
+void config::init() {
+ po::options_description desc("foo");
+ desc.add_options()
+ ("audist.music_root", po::value<std::string>(), "music root")
+ ("audist.httpd_port", po::value<int>()->default_value(8000), "httpd port")
+ ;
+ std::ifstream is("audist.conf", std::ios::in);
+ po::store(po::parse_config_file(is, desc, true), vm);
+ po::notify(vm);
+
+ if(!vm.count("audist.music_root")) {
+ throw std::runtime_error("audist.music_root music be specified in audist.conf");
+ }
+}