Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00024 
00025 #ifndef ICL_CORE_ENUM_HELPER_H_INCLUDED
00026 #define ICL_CORE_ENUM_HELPER_H_INCLUDED
00027 
00028 #include <vector>
00029 
00030 #include "icl_core/BaseTypes.h"
00031 #include "icl_core/ImportExport.h"
00032 
00033 #ifdef _IC_BUILDER_DEPRECATED_STYLE_
00034 # include "icl_core/Deprecate.h"
00035 #endif
00036 
00037 namespace icl_core {
00038 
00056 bool ICL_CORE_IMPORT_EXPORT string2Enum(const String& str, int32_t& value,
00057                                         const char * const *descriptions,
00058                                         const char *end_marker = NULL);
00059 bool ICL_CORE_IMPORT_EXPORT string2Enum(const String& str, int32_t& value,
00060                                         const std::vector<std::string>& descriptions);
00061 bool ICL_CORE_IMPORT_EXPORT string2Enum(const String& str, int64_t& value,
00062                                         const std::vector<std::string>& descriptions);
00063 
00065 #ifdef _IC_BUILDER_DEPRECATED_STYLE_
00066 
00072 bool ICL_CORE_IMPORT_EXPORT ICL_CORE_VC_DEPRECATE_STYLE
00073 String2Enum(const String& str, int32_t& value, const char * const *descriptions,
00074             const char *end_marker = NULL) ICL_CORE_GCC_DEPRECATE_STYLE;
00075 
00076 #endif
00077 
00078 
00079 }
00080 
00081 #endif