Use Slim Reader/Writer lock to replace CRITICAL_SECTION (better performance).
[gdipp.git] / gdipp_config / config.h
blob3de90a0c037b533a3649762102b9c49fca8ad00d
1 #pragma once
3 #include "gdipp_config/config_file.h"
4 #include "gdipp_lib/api.h"
6 namespace gdipp
9 class GDIPP_API config
11 public:
12 config(const config_file &config_file);
13 config(const void *root_node);
15 const wchar_t *get_string(const wchar_t *config_path, const wchar_t *default_value) const;
16 size_t get_string_list(const wchar_t *config_path, const wchar_t **list_values) const;
18 template<typename T>
19 T get_number(const wchar_t *config_path, T default_value) const;
20 template<typename T>
21 size_t get_number_list(const wchar_t *config_path, T *list_values) const;
23 private:
24 const void *_root_node;