Handling of non-zero default values now also fixed.
{
const char *strOpt;
// initialize DrawState options
- g_reportingLevel = (XGL_LAYER_DBG_REPORT_LEVEL)getLayerOptionEnum("MemTrackerReportLevel");
- g_debugAction = (XGL_LAYER_DBG_ACTION)getLayerOptionEnum("MemTrackerDebugAction");
+ g_reportingLevel = getLayerOptionEnum("DrawStateReportLevel", g_reportingLevel);
+ g_debugAction = getLayerOptionEnum("DrawStateDebugAction", g_debugAction);
if (g_debugAction & XGL_DBG_LAYER_ACTION_LOG_MSG)
{
return g_configFileObj.getOption(_option);
}
-uint32_t getLayerOptionEnum(const char *_option)
+uint32_t getLayerOptionEnum(const char *_option, uint32_t optionDefault)
{
uint32_t val = 0;
const char *option = (g_configFileObj.getOption(_option));
if (option != NULL) {
- val = convertStringEnumVal(option);
+ val = convertStringEnumVal(option);
+ } else {
+ val = optionDefault;
}
return val;
}
#endif
const char *getLayerOption(const char *_option);
-uint32_t getLayerOptionEnum(const char *_option);
+uint32_t getLayerOptionEnum(const char *_option, uint32_t optionDefault);
void setLayerOption(const char *_option, const char *_val);
void setLayerOptionEnum(const char *_option, const char *_valEnum);
{
const char *strOpt;
// initialize MemTracker options
- g_reportingLevel = (XGL_LAYER_DBG_REPORT_LEVEL)getLayerOptionEnum("MemTrackerReportLevel");
- g_debugAction = (XGL_LAYER_DBG_ACTION)getLayerOptionEnum("MemTrackerDebugAction");
+ g_reportingLevel = getLayerOptionEnum("MemTrackerReportLevel", g_reportingLevel);
+ g_debugAction = getLayerOptionEnum("MemTrackerDebugAction", g_debugAction);
if (g_debugAction & XGL_DBG_LAYER_ACTION_LOG_MSG)
{
if init_opts:
func_body.append(' const char *strOpt;')
func_body.append(' // initialize %s options' % name)
- func_body.append(' strOpt = getLayerOption("%sReportLevel");' % name)
- func_body.append(' if (strOpt != NULL)')
- func_body.append(' g_reportingLevel = atoi(strOpt);')
- func_body.append('')
- func_body.append(' strOpt = getLayerOption("%sDebugAction");' % name)
- func_body.append(' if (strOpt != NULL)')
- func_body.append(' g_debugAction = atoi(strOpt);')
+ func_body.append(' g_reportingLevel = getLayerOptionEnum("%sReportLevel", g_reportingLevel);' % name)
+ func_body.append(' g_debugAction = getLayerOptionEnum("%sDebugAction", g_debugAction);' % name)
func_body.append('')
func_body.append(' if (g_debugAction & XGL_DBG_LAYER_ACTION_LOG_MSG)')
func_body.append(' {')