Browse Source

Support ini config

Xi Ruoyao 5 years ago
parent
commit
9d72391d0c
2 changed files with 25 additions and 4 deletions
  1. 21 4
      config.cc
  2. 4 0
      config.ini

+ 21 - 4
config.cc

@@ -1,6 +1,23 @@
+#include <boost/property_tree/ptree.hpp>
+#include <boost/property_tree/ini_parser.hpp>
+
 #include "config.hpp"
 
-double conf_aggr_ts = 5;
-double conf_aggr_tav = 15;
-bool conf_debug_dump_flight_data = true;
-bool conf_debug_dump_adc_raw = false;
+double conf_aggr_ts;
+double conf_aggr_tav;
+bool conf_debug_dump_flight_data;
+bool conf_debug_dump_adc_raw;
+
+static class _config_
+{
+public:
+	_config_()
+	{
+		boost::property_tree::ptree pt;
+		boost::property_tree::ini_parser::read_ini("config.ini", pt);
+		conf_aggr_ts = pt.get<double>("aggregation.ts");
+		conf_aggr_tav = pt.get<double>("aggregation.tav");
+		conf_debug_dump_flight_data = pt.get<bool>("debug.dump_flight_data");
+		conf_debug_dump_adc_raw = pt.get<bool>("debug.dump_adc_raw");
+	}
+} _config_obj_;

+ 4 - 0
config.ini

@@ -1,3 +1,7 @@
 [aggregation]
 ts = 5.00
 tav = 20.00
+
+[debug]
+dump_adc_raw = false
+dump_flight_data = false