Elaboradar  0.1
config.h
1 #ifndef ARCHIVIATORE_CONFIG_H
2 #define ARCHIVIATORE_CONFIG_H
3 
4 #include <string>
5 #include <map>
6 
7 namespace elaboradar {
8 
9 class Config
10 {
11 protected:
12  std::map<std::string, std::string> values;
13 
14  void set_defaults();
15 
16 public:
18  void read_env();
19 
21  void read_file(const std::string& fname);
22 
23  bool has(const std::string& key) const;
24 
25  std::string get(const std::string& key) const;
26  std::string get(const std::string& key, const std::string& deflt) const;
27 
28  int get_int(const std::string& key) const;
29  int get_int(const std::string& key, int deflt) const;
30 
31  double get_double(const std::string& key) const;
32  double get_double(const std::string& key, double deflt) const;
33 };
34 
35 }
36 
37 #endif
name space generale del programma
Definition: assets.h:28