You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

38 lines
1.1 KiB

#ifndef MACROS_H
#define MACROS_H
/*************************************************************************************************/
#define IS_IN_RANGE(val, min, max) \
(val >= min && val <= max)
/*************************************************************************************************/
#define SET_SCENARIO_INDEPENDENT_VALUE(param, val, min, max) \
if(!IS_IN_RANGE(val, min, max)) \
{ \
return false; \
} \
_input.param = val; \
calculateScenarioIndependentValues(); \
return true;
/*************************************************************************************************/
#define SET_SCENARIO_DEPENDENT_VALUE(param, val, min, max) \
if(!IS_IN_RANGE(val, min, max)) \
{ \
return false; \
} \
_input.param = val; \
calculateScenarioDependentValues(); \
return true;
/*************************************************************************************************/
#define UPDATE_VALUE(TYPE, SETTER) \
{ \
auto temp = GET_VALUE(request, 0, TYPE); \
auto result = _core->SETTER(temp); \
processScenGenCommand(result, request); \
}
//#define CHECK_FOR_REGENERATE(TYPE, NAME, )
#endif //MACROS_H