Index: firmware/checkAlarms.sh =================================================================== diff -u -ra9315539f527b92523b1598ff91e47db4d71dae2 -reea0132d751dfd21ef8ae0212ebed184fb2528ff --- firmware/checkAlarms.sh (.../checkAlarms.sh) (revision a9315539f527b92523b1598ff91e47db4d71dae2) +++ firmware/checkAlarms.sh (.../checkAlarms.sh) (revision eea0132d751dfd21ef8ae0212ebed184fb2528ff) @@ -21,11 +21,14 @@ alarmRankLineNo=$(grep -n "ALARM_RANK_TABLE" ../Common/AlarmDefs.h) alarmRankLineNo=${alarmRankLineNo%%:*} +alarmManualLineNo=$(grep -n "ALARM_MANUAL_TABLE" ../Common/AlarmDefs.h) +alarmManualLineNo=${alarmManualLineNo%%:*} + echo " #include #include - #define __ALARM_MGMT_C__ +#define __MANUAL_ALARMS__ #include \"Common.h\" #include \"AlarmDefs.h\" @@ -34,6 +37,7 @@ ALARM_ID_T alarm; U32 lineNumber = $lineno; U32 alarmRankLineNumber = $alarmRankLineNo; + U32 alarmManualLineNumber = $alarmManualLineNo; U32 index; for ( alarm = ALARM_ID_NO_ALARM; alarm < NUM_OF_ALARM_IDS; alarm++ ) @@ -66,6 +70,17 @@ } } + for ( alarm = ALARM_ID_NO_ALARM; alarm < NUM_OF_ALARM_IDS; alarm++ ) + { + if ( alarm != ALARM_MANUAL_TABLE[ alarm ].alarmID ) + { + // The current alarm number is the starting line number of the ALARM_MANUAL_TABLE + 2 since the alarms enum start from 0 + alarmManualLineNumber += alarm + 2; + printf(\"\\\"AlarmDefs.h\\\", line %d: error #9999: Alarm %i NOT MATCH Alarm Table ID %i!\n\", alarmManualLineNumber, alarm, ALARM_TABLE[ alarm ].alarmID); + exit(1); + } + } + printf(\"Alarm rank table check completed!\n\"); }" > alarmCheck.c