Libbarrett
1.2.4
|
00001 00034 #ifndef BARRETT_DETAIL_LIBCONFIG_UTILS_H_ 00035 #define BARRETT_DETAIL_LIBCONFIG_UTILS_H_ 00036 00037 00038 #include <libconfig.h++> 00039 00040 00041 namespace barrett { 00042 namespace detail { 00043 00044 00045 inline double numericToDouble(const libconfig::Setting& setting) 00046 { 00047 switch (setting.getType()) { 00048 case libconfig::Setting::TypeInt: 00049 return static_cast<int>(setting); 00050 break; 00051 00052 case libconfig::Setting::TypeInt64: 00053 return static_cast<long long>(setting); 00054 break; 00055 00056 default: 00057 return setting; 00058 break; 00059 } 00060 00061 } 00062 00063 00064 } 00065 } 00066 00067 00068 #endif /* BARRETT_DETAIL_LIBCONFIG_UTILS_H_ */