private void DetermineMapping(EventType eventType)
{
for (int ii = 0; ii < eventType.Attributes.Count; ii++)
{
if (AeTypeCache.IsKnownName(eventType.Attributes[ii].Description, "ACK COMMENT"))
{
eventType.AckComment = eventType.Attributes[ii];
break;
}
}
eventType.EventTypeMapping = EventTypeMapping.BaseEventType;
if (eventType.EventTypeId == OpcRcw.Ae.Constants.SIMPLE_EVENT)
{
if (AeTypeCache.IsKnownName(eventType.Description, "Device Failure"))
{
eventType.EventTypeMapping = EventTypeMapping.DeviceFailureEventType;
return;
}
if (AeTypeCache.IsKnownName(eventType.Description, "System Message"))
{
eventType.EventTypeMapping = EventTypeMapping.SystemEventType;
return;
}
eventType.EventTypeMapping = EventTypeMapping.BaseEventType;
return;
}
if (eventType.EventTypeId == OpcRcw.Ae.Constants.TRACKING_EVENT)
{
eventType.EventTypeMapping = EventTypeMapping.AuditEventType;
return;
}
if (eventType.EventTypeId == OpcRcw.Ae.Constants.CONDITION_EVENT)
{
if (eventType.ConditionName == null)
{
eventType.EventTypeMapping = EventTypeMapping.ConditionClassType;
return;
}
eventType.EventTypeMapping = EventTypeMapping.AlarmConditionType;
if (AeTypeCache.IsKnownName(eventType.Description, "Level"))
{
if (AeTypeCache.IsKnownName(eventType.ConditionName, "PVLEVEL"))
{
eventType.EventTypeMapping = EventTypeMapping.ExclusiveLevelAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "SPLEVEL"))
{
eventType.EventTypeMapping = EventTypeMapping.ExclusiveLevelAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "HI HI"))
{
eventType.EventTypeMapping = EventTypeMapping.NonExclusiveLevelAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "HI"))
{
eventType.EventTypeMapping = EventTypeMapping.NonExclusiveLevelAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "LO"))
{
eventType.EventTypeMapping = EventTypeMapping.NonExclusiveLevelAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "LO LO"))
{
eventType.EventTypeMapping = EventTypeMapping.NonExclusiveLevelAlarmType;
return;
}
eventType.EventTypeMapping = EventTypeMapping.LimitAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.Description, "Deviation"))
{
eventType.EventTypeMapping = EventTypeMapping.NonExclusiveDeviationAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.Description, "Discrete"))
{
if (AeTypeCache.IsKnownName(eventType.ConditionName, "CFN"))
{
eventType.EventTypeMapping = EventTypeMapping.OffNormalAlarmType;
return;
}
if (AeTypeCache.IsKnownName(eventType.ConditionName, "TRIP"))
{
eventType.EventTypeMapping = EventTypeMapping.TripAlarmType;
return;
}
eventType.EventTypeMapping = EventTypeMapping.DiscreteAlarmType;
return;
}
}
}