Corrected normal/fault transitions in Analog_Input_Alarm_Ack(). Thanks, yoo_ms@hotmail.com.

This commit is contained in:
skarg
2012-10-15 21:28:29 +00:00
parent 4664326d8c
commit 03a0a23ba6
+6 -4
View File
@@ -1105,14 +1105,14 @@ int Analog_Input_Alarm_Ack(
break; break;
case EVENT_STATE_FAULT: case EVENT_STATE_FAULT:
if (CurrentAI->Acked_Transitions[TRANSITION_TO_NORMAL].bIsAcked == if (CurrentAI->Acked_Transitions[TRANSITION_TO_FAULT].bIsAcked ==
false) { false) {
if (alarmack_data->eventTimeStamp.tag != TIME_STAMP_DATETIME) { if (alarmack_data->eventTimeStamp.tag != TIME_STAMP_DATETIME) {
*error_code = ERROR_CODE_INVALID_TIME_STAMP; *error_code = ERROR_CODE_INVALID_TIME_STAMP;
return -1; return -1;
} }
if (datetime_compare(&CurrentAI->Acked_Transitions if (datetime_compare(&CurrentAI->Acked_Transitions
[TRANSITION_TO_NORMAL].Time_Stamp, [TRANSITION_TO_FAULT].Time_Stamp,
&alarmack_data->eventTimeStamp.value.dateTime) > 0) { &alarmack_data->eventTimeStamp.value.dateTime) > 0) {
*error_code = ERROR_CODE_INVALID_TIME_STAMP; *error_code = ERROR_CODE_INVALID_TIME_STAMP;
return -1; return -1;
@@ -1128,14 +1128,14 @@ int Analog_Input_Alarm_Ack(
break; break;
case EVENT_STATE_NORMAL: case EVENT_STATE_NORMAL:
if (CurrentAI->Acked_Transitions[TRANSITION_TO_FAULT].bIsAcked == if (CurrentAI->Acked_Transitions[TRANSITION_TO_NORMAL].bIsAcked ==
false) { false) {
if (alarmack_data->eventTimeStamp.tag != TIME_STAMP_DATETIME) { if (alarmack_data->eventTimeStamp.tag != TIME_STAMP_DATETIME) {
*error_code = ERROR_CODE_INVALID_TIME_STAMP; *error_code = ERROR_CODE_INVALID_TIME_STAMP;
return -1; return -1;
} }
if (datetime_compare(&CurrentAI->Acked_Transitions if (datetime_compare(&CurrentAI->Acked_Transitions
[TRANSITION_TO_FAULT].Time_Stamp, [TRANSITION_TO_NORMAL].Time_Stamp,
&alarmack_data->eventTimeStamp.value.dateTime) > 0) { &alarmack_data->eventTimeStamp.value.dateTime) > 0) {
*error_code = ERROR_CODE_INVALID_TIME_STAMP; *error_code = ERROR_CODE_INVALID_TIME_STAMP;
return -1; return -1;
@@ -1153,6 +1153,8 @@ int Analog_Input_Alarm_Ack(
default: default:
return -2; return -2;
} }
CurrentAI->Ack_notify_data.bSendAckNotify = true;
CurrentAI->Ack_notify_data.EventState = alarmack_data->eventStateAcked;
return 1; return 1;
} }