lib/C/accessor.h
changeset 1006 0668ba32de98
parent 933 76324f461aed
child 1051 e483512edbeb
equal deleted inserted replaced
1005:e27c2af708ad 1006:0668ba32de98
   123 
   123 
   124 // variable setting macros
   124 // variable setting macros
   125 #define __SET_VAR(prefix, name, suffix, new_value)\
   125 #define __SET_VAR(prefix, name, suffix, new_value)\
   126 	if (!(prefix name.flags & __IEC_FORCE_FLAG)) prefix name.value suffix = new_value
   126 	if (!(prefix name.flags & __IEC_FORCE_FLAG)) prefix name.value suffix = new_value
   127 #define __SET_EXTERNAL(prefix, name, suffix, new_value)\
   127 #define __SET_EXTERNAL(prefix, name, suffix, new_value)\
   128 	{extern IEC_BYTE __IS_GLOBAL_##name##_FORCED();\
   128 	{extern IEC_BYTE __IS_GLOBAL_##name##_FORCED(void);\
   129     if (!(prefix name.flags & __IEC_FORCE_FLAG || __IS_GLOBAL_##name##_FORCED()))\
   129     if (!(prefix name.flags & __IEC_FORCE_FLAG || __IS_GLOBAL_##name##_FORCED()))\
   130 		(*(prefix name.value)) suffix = new_value;}
   130 		(*(prefix name.value)) suffix = new_value;}
   131 #define __SET_EXTERNAL_FB(prefix, name, suffix, new_value)\
   131 #define __SET_EXTERNAL_FB(prefix, name, suffix, new_value)\
   132 	__SET_VAR((*(prefix name)), suffix, new_value)
   132 	__SET_VAR((*(prefix name)), suffix, new_value)
   133 #define __SET_LOCATED(prefix, name, suffix, new_value)\
   133 #define __SET_LOCATED(prefix, name, suffix, new_value)\