Commit 6cf1f297 authored by Claes Sjofors's avatar Claes Sjofors

Mh event types SystemAlarm and MaintenanceAlarm added

parent 3848e8bc
......@@ -682,6 +682,8 @@ activeListInsert (
switch (ap->event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
++l.emon->AlarmCount;
break;
case mh_eEvent_Block:
......@@ -720,6 +722,8 @@ activeListRemove (
switch (ap->event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
--l.emon->AlarmCount;
break;
case mh_eEvent_Block:
......@@ -1073,6 +1077,8 @@ applReturn (
switch (aap->link.event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
updateAlarm(ap, ep);
break;
case mh_eEvent_Info:
......@@ -1448,6 +1454,8 @@ eventListInsert (
switch (event) {
case mh_eEvent_Info:
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
case mh_eEvent_Block:
case mh_eEvent_Reblock:
ap->idx = idx;
......@@ -1527,11 +1535,15 @@ formatApplEvent (
switch (event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
case mh_eEvent_Info:
mp = &up->message;
ip->Id.Idx = aap->link.idx;
ip->EventTime = net_TimeToNetTime( &aap->message.EventTime);
if (aap->link.event == mh_eEvent_Alarm)
if (aap->link.event == mh_eEvent_Alarm ||
aap->link.event == mh_eEvent_MaintenanceAlarm ||
aap->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = aap->message.EventPrio;
strncpy(mp->EventText, aap->message.EventText, sizeof(mp->EventText));
mp->SupInfo.SupType = aap->message.SupInfo.SupType;
......@@ -1548,7 +1560,9 @@ formatApplEvent (
acp = &up->ack;
ip->Id.Idx = aap->link.ackIdx;
ip->EventTime = net_TimeToNetTime( &aap->ackTime);
if (aap->link.event == mh_eEvent_Alarm)
if (aap->link.event == mh_eEvent_Alarm ||
aap->link.event == mh_eEvent_MaintenanceAlarm ||
aap->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = aap->message.EventPrio;
acp->TargetId.Nix = l.head.nix;
acp->TargetId.BirthTime = l.head.birthTime;
......@@ -1567,7 +1581,9 @@ formatApplEvent (
rp = &up->ret;
ip->Id.Idx = aap->link.returnIdx;
net_GetTime(&ip->EventTime);
if (aap->link.event == mh_eEvent_Alarm)
if (aap->link.event == mh_eEvent_Alarm ||
aap->link.event == mh_eEvent_MaintenanceAlarm ||
aap->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = aap->message.EventPrio;
strncpy(rp->EventText, text, sizeof(rp->EventText));
rp->TargetId.Nix = l.head.nix;
......@@ -1586,7 +1602,9 @@ formatApplEvent (
rp = &up->ret;
ip->Id.Idx = aap->link.returnIdx;
ip->EventTime = net_TimeToNetTime( &aap->returnTime);
if (aap->link.event == mh_eEvent_Alarm)
if (aap->link.event == mh_eEvent_Alarm ||
aap->link.event == mh_eEvent_MaintenanceAlarm ||
aap->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = aap->message.EventPrio;
strncpy(rp->EventText, aap->returnText, sizeof(rp->EventText));
rp->TargetId.Nix = l.head.nix;
......@@ -1630,12 +1648,16 @@ formatSupEvent (
switch (event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
case mh_eEvent_Info:
mp = &up->message;
ip->Id.Idx = sp->link.idx;
ip->EventTime = net_TimeToNetTime( &sup->DetectTime);
strncpy(mp->EventText, sup->DetectText, sizeof(mp->EventText));
if (sp->link.event == mh_eEvent_Alarm)
if (sp->link.event == mh_eEvent_Alarm ||
sp->link.event == mh_eEvent_MaintenanceAlarm ||
sp->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = sup->EventPriority;
mp->SupInfo.SupType = sp->supType;
#if 1
......@@ -1658,7 +1680,9 @@ formatSupEvent (
acp = &up->ack;
ip->Id.Idx = sp->link.ackIdx;
ip->EventTime = net_TimeToNetTime( &sup->AckTime);
if (sp->link.event == mh_eEvent_Alarm)
if (sp->link.event == mh_eEvent_Alarm ||
sp->link.event == mh_eEvent_MaintenanceAlarm ||
sp->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = sup->EventPriority;
acp->TargetId.Idx = sp->link.idx;
acp->TargetId.Nix = l.head.nix;
......@@ -1675,7 +1699,9 @@ formatSupEvent (
rp = &up->ret;
ip->Id.Idx = sp->link.returnIdx;
ip->EventTime = net_TimeToNetTime( &sup->ReturnTime);
if (sp->link.event == mh_eEvent_Alarm)
if (sp->link.event == mh_eEvent_Alarm ||
sp->link.event == mh_eEvent_MaintenanceAlarm ||
sp->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = sup->EventPriority;
strncpy(rp->EventText, sup->ReturnText, sizeof(rp->EventText));
rp->TargetId.Idx = sp->link.idx;
......@@ -1699,7 +1725,9 @@ formatSupEvent (
case mh_eEvent_Cancel:
rp = &up->ret;
ip->Id.Idx = sp->link.returnIdx;
if (sp->link.event == mh_eEvent_Alarm)
if (sp->link.event == mh_eEvent_Alarm ||
sp->link.event == mh_eEvent_MaintenanceAlarm ||
sp->link.event == mh_eEvent_SystemAlarm)
ip->EventPrio = sup->EventPriority;
net_GetTime(&ip->EventTime);
strncpy(rp->EventText, text, sizeof(rp->EventText));
......@@ -2218,7 +2246,7 @@ handleAlarm (
{
sEvent *ep;
ep = eventListInsert(mh_eEvent_Alarm, NULL, (sActive*) sp);
ep = eventListInsert(sp->sup->EventType, NULL, (sActive*) sp);
activeListInsert((sActive *) sp, ep, mh_eSource_Scanner);
updateAlarm((sActive *) sp, ep);
......@@ -2289,6 +2317,8 @@ handleReturn (
switch (sp->link.event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
updateAlarm((sActive *) sp, ep);
break;
case mh_eEvent_Info:
......@@ -2398,6 +2428,8 @@ handlerEvent (
switch (eventType) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
case mh_eEvent_Info:
if (LstInl(&hp->link.active_l)) /* already active */
......@@ -3250,6 +3282,8 @@ outunitAck (
switch (ap->event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
updateAlarm(ap, ep);
break;
case mh_eEvent_Info:
......@@ -3702,6 +3736,8 @@ reSendEventToOutunit (
switch (event.message.Info.EventType) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
case mh_eEvent_Info:
event.message.Status = Status;
break;
......@@ -3796,6 +3832,8 @@ scanSupList ()
handleInfo(sp);
break;
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
default:
handleAlarm(sp);
break;
......@@ -4143,6 +4181,8 @@ updateAlarm (
switch (ep->event) {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
ap->status.Event.Status = mh_mEventStatus_NotRet |
mh_mEventStatus_NotAck;
if (ap->source == mh_eSource_Scanner) {
......@@ -4235,7 +4275,9 @@ updateAlarmInfo (
for (al = LstFir(&l.active_l); al != LstEnd(&l.active_l) ; al = LstNex(al)) {
ap = LstObj(al);
if (cdh_ArefIsEqual(&iap->object, &ap->object))
if (ap->event == mh_eEvent_Alarm)
if (ap->event == mh_eEvent_Alarm ||
ap->event == mh_eEvent_MaintenanceAlarm ||
ap->event == mh_eEvent_SystemAlarm)
maxAlarm.All = MAX(maxAlarm.All, ap->status.All);
}
......
......@@ -77,7 +77,9 @@ enum mh_eEvent {
mh_eEvent_Unblock = 8,
mh_eEvent_Info = 32,
mh_eEvent_Alarm = 64,
mh_eEvent_ = 65
mh_eEvent_MaintenanceAlarm = 128,
mh_eEvent_SystemAlarm = 256,
mh_eEvent_ = 257
};
%/**
......
......@@ -871,6 +871,8 @@ handlerEvent (
l.cbAck(ap);
break;
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm:
if (l.cbAlarm != NULL)
sts = l.cbAlarm((mh_sMessage*) mp);
break;
......@@ -1163,7 +1165,9 @@ static void msgFromV3( mh_sHead *hp)
break;
}
case mh_eEvent_Info:
case mh_eEvent_Alarm: {
case mh_eEvent_Alarm:
case mh_eEvent_MaintenanceAlarm:
case mh_eEvent_SystemAlarm: {
mh_sMessage *mp = (mh_sMessage *)ip;
mp->Object = cdh_ObjidToAref( ip->Object_V3);
......
......@@ -73,6 +73,26 @@ SObject pwrb:Type
Attr Value = 64
EndBody
EndObject
!/**
! Type MaintenanceAlarm.
!*/
Object MaintenanceAlarm $Value
Body SysBody
Attr PgmName = "MaintenanceAlarm"
Attr Text = "MaintenanceAlarm"
Attr Value = 128
EndBody
EndObject
!/**
! Type SystemAlarm.
!*/
Object SystemAlarm $Value
Body SysBody
Attr PgmName = "SystemAlarm"
Attr Text = "SystemAlarm"
Attr Value = 256
EndBody
EndObject
EndObject
EndSObject
......
......@@ -68,6 +68,26 @@ SObject pwrb:Type
Attr Value = 64
EndBody
EndObject
!/**
! Type MaintenanceAlarm.
!*/
Object MaintenanceAlarm $Bit
Body SysBody
Attr PgmName = "MaintenanceAlarm"
Attr Text = "MaintenanceAlarm"
Attr Value = 128
EndBody
EndObject
!/**
! Type SystemAlarm.
!*/
Object SystemAlarm $Bit
Body SysBody
Attr PgmName = "SystemAlarm"
Attr Text = "SystemAlarm"
Attr Value = 256
EndBody
EndObject
EndObject
EndSObject
......
#define xnav_bitmap_maintenance10_width 10
#define xnav_bitmap_maintenance10_height 10
static char xnav_bitmap_maintenance10_bits[] = {
0xe0, 0x00, 0x70, 0x00, 0x30, 0x02, 0x70, 0x03, 0xf8, 0x03, 0xfc, 0x01,
0x3e, 0x00, 0x1f, 0x00, 0x0f, 0x00, 0x07, 0x00};
#define xnav_bitmap_maintenance12_width 12
#define xnav_bitmap_maintenance12_height 12
static char xnav_bitmap_maintenance12_bits[] = {
0xc0, 0x01, 0xe0, 0x00, 0x60, 0x00, 0x60, 0x08, 0xe0, 0x0c, 0xf0, 0x0f,
0xf8, 0x07, 0x7c, 0x00, 0x3e, 0x00, 0x1f, 0x00, 0x0f, 0x00, 0x07, 0x00};
#define xnav_bitmap_maintenance14_width 14
#define xnav_bitmap_maintenance14_height 14
static char xnav_bitmap_maintenance14_bits[] = {
0x00, 0x07, 0x80, 0x03, 0xc0, 0x01, 0xc0, 0x20, 0xc0, 0x30, 0xc0, 0x39,
0xe0, 0x1f, 0xf0, 0x0f, 0xf8, 0x00, 0x7c, 0x00, 0x3e, 0x00, 0x1f, 0x00,
0x0f, 0x00, 0x07, 0x00};
#define xnav_bitmap_maintenance16_width 16
#define xnav_bitmap_maintenance16_height 16
static char xnav_bitmap_maintenance16_bits[] = {
0x00, 0x00, 0x00, 0x0e, 0x00, 0x07, 0x80, 0x03, 0x80, 0x41, 0x80, 0x63,
0x80, 0x77, 0xc0, 0x3f, 0xe0, 0x1f, 0xf0, 0x01, 0xf8, 0x00, 0x7c, 0x00,
0x3e, 0x00, 0x1e, 0x00, 0x0e, 0x00, 0x00, 0x00};
#define xnav_bitmap_maintenance18_width 18
#define xnav_bitmap_maintenance18_height 18
static char xnav_bitmap_maintenance18_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x07, 0x00,
0x00, 0x03, 0x00, 0x00, 0x03, 0x01, 0x00, 0x87, 0x01, 0x00, 0xcf, 0x01,
0x80, 0xff, 0x00, 0xc0, 0x7f, 0x00, 0xe0, 0x03, 0x00, 0xf0, 0x01, 0x00,
0xf8, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x1e, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x00, 0x00};
#define xnav_bitmap_maintenance20_width 20
#define xnav_bitmap_maintenance20_height 20
static char xnav_bitmap_maintenance20_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x38, 0x00, 0x00, 0x1c, 0x00,
0x00, 0x0c, 0x00, 0x00, 0x0c, 0x04, 0x00, 0x1c, 0x06, 0x00, 0x3c, 0x07,
0x00, 0xfe, 0x03, 0x00, 0xf9, 0x01, 0x80, 0x0c, 0x00, 0x40, 0x06, 0x00,
0x20, 0x03, 0x00, 0x90, 0x01, 0x00, 0xc8, 0x00, 0x00, 0x64, 0x00, 0x00,
0x32, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00};
#define xnav_bitmap_maintenance24_width 24
#define xnav_bitmap_maintenance24_height 24
static char xnav_bitmap_maintenance24_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x80, 0x07, 0x00, 0xc0, 0x03, 0x00, 0xe0, 0x01,
0x00, 0xf0, 0x00, 0x00, 0x78, 0x20, 0x00, 0x68, 0x60, 0x00, 0xd8, 0x70,
0x00, 0xa8, 0x79, 0x00, 0x58, 0x3f, 0x00, 0xac, 0x1e, 0x00, 0x56, 0x0d,
0x00, 0xeb, 0x07, 0x80, 0x35, 0x00, 0xc0, 0x1a, 0x00, 0x60, 0x0d, 0x00,
0xb0, 0x06, 0x00, 0x58, 0x03, 0x00, 0xac, 0x01, 0x00, 0xd6, 0x00, 0x00,
0x6a, 0x00, 0x00, 0x36, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00};
#define xnav_bitmap_maintenance8_width 8
#define xnav_bitmap_maintenance8_height 8
static char xnav_bitmap_maintenance8_bits[] = {
0x30, 0x18, 0x98, 0xf8, 0x7c, 0x0e, 0x07, 0x03};
#define xnav_bitmap_system10_width 10
#define xnav_bitmap_system10_height 10
static char xnav_bitmap_system10_bits[] = {
0xff, 0x03, 0xff, 0x03, 0x31, 0x02, 0x19, 0x02, 0x99, 0x02, 0xf9, 0x02,
0x7d, 0x02, 0x0f, 0x02, 0x07, 0x02, 0xff, 0x03};
#define xnav_bitmap_system12_width 12
#define xnav_bitmap_system12_height 12
static char xnav_bitmap_system12_bits[] = {
0xff, 0x0f, 0x01, 0x08, 0xff, 0x0f, 0x41, 0x08, 0x21, 0x08, 0x21, 0x09,
0xf1, 0x08, 0x39, 0x08, 0x1d, 0x08, 0x0d, 0x08, 0x01, 0x08, 0xff, 0x0f};
#define xnav_bitmap_system14_width 14
#define xnav_bitmap_system14_height 14
static char xnav_bitmap_system14_bits[] = {
0xff, 0x3f, 0x01, 0x20, 0xff, 0x3f, 0x81, 0x21, 0xc1, 0x20, 0x41, 0x24,
0xc1, 0x26, 0xe1, 0x23, 0x71, 0x20, 0x39, 0x20, 0x1d, 0x20, 0x09, 0x20,
0x01, 0x20, 0xff, 0x3f};
#define xnav_bitmap_system16_width 16
#define xnav_bitmap_system16_height 16
static char xnav_bitmap_system16_bits[] = {
0xff, 0xff, 0x01, 0x80, 0xff, 0xff, 0x01, 0x80, 0x01, 0x83, 0x81, 0x81,
0x81, 0x88, 0x81, 0x8d, 0xc1, 0x87, 0xe1, 0x80, 0x71, 0x80, 0x39, 0x80,
0x1d, 0x80, 0x0d, 0x80, 0x01, 0x80, 0xff, 0xff};
#define xnav_bitmap_system18_width 18
#define xnav_bitmap_system18_height 18
static char xnav_bitmap_system18_bits[] = {
0xff, 0xff, 0x03, 0x01, 0x00, 0x02, 0xff, 0xff, 0x03, 0x01, 0x0e, 0x02,
0x01, 0x07, 0x02, 0x01, 0x03, 0x02, 0x01, 0x43, 0x02, 0x01, 0x67, 0x02,
0x81, 0x7e, 0x02, 0x41, 0x3d, 0x02, 0xa1, 0x02, 0x02, 0x51, 0x01, 0x02,
0xa9, 0x00, 0x02, 0x55, 0x00, 0x02, 0x2d, 0x00, 0x02, 0x1d, 0x00, 0x02,
0x01, 0x00, 0x02, 0xff, 0xff, 0x03};
#define xnav_bitmap_system20_width 20
#define xnav_bitmap_system20_height 20
static char xnav_bitmap_system20_bits[] = {
0xff, 0xff, 0x0f, 0x01, 0x00, 0x08, 0xff, 0xff, 0x0f, 0x01, 0x00, 0x08,
0x01, 0x0c, 0x08, 0x01, 0x0e, 0x08, 0x01, 0x07, 0x08, 0x01, 0x03, 0x08,
0x01, 0xc7, 0x08, 0x01, 0xed, 0x08, 0x81, 0x7a, 0x08, 0x41, 0x3d, 0x08,
0xa1, 0x02, 0x08, 0x51, 0x01, 0x08, 0xa9, 0x00, 0x08, 0x55, 0x00, 0x08,
0x2d, 0x00, 0x08, 0x19, 0x00, 0x08, 0x01, 0x00, 0x08, 0xff, 0xff, 0x0f};
#define xnav_bitmap_system24_width 24
#define xnav_bitmap_system24_height 24
static char xnav_bitmap_system24_bits[] = {
0xff, 0xff, 0x7f, 0x01, 0x00, 0x40, 0x01, 0x00, 0x40, 0xff, 0xff, 0x7f,
0x01, 0x00, 0x40, 0x01, 0x00, 0x40, 0x01, 0x70, 0x40, 0x01, 0x38, 0x40,
0x01, 0x1c, 0x40, 0x01, 0x0c, 0x42, 0x01, 0x1c, 0x43, 0x01, 0xbc, 0x43,
0x01, 0xfe, 0x41, 0x01, 0xfd, 0x40, 0x81, 0x0a, 0x40, 0x41, 0x05, 0x40,
0xa1, 0x02, 0x40, 0x51, 0x01, 0x40, 0xa9, 0x00, 0x40, 0x55, 0x00, 0x40,
0x2d, 0x00, 0x40, 0x19, 0x00, 0x40, 0x01, 0x00, 0x40, 0xff, 0xff, 0x7f};
#define xnav_bitmap_system8_width 8
#define xnav_bitmap_system8_height 8
static char xnav_bitmap_system8_bits[] = {
0xff, 0x91, 0x89, 0xd9, 0xbd, 0x8f, 0x87, 0xff};
This diff is collapsed.
......@@ -167,6 +167,8 @@ class EvListBrow {
flow_sAnnotPixmap *pixmap_eventacked;
flow_sAnnotPixmap *pixmap_eventreturn;
flow_sAnnotPixmap *pixmap_info;
flow_sAnnotPixmap *pixmap_maintenance;
flow_sAnnotPixmap *pixmap_system;
flow_sAnnotPixmap *pixmap_blockr;
flow_sAnnotPixmap *pixmap_blockl;
......@@ -280,7 +282,7 @@ class ItemEvBase {
class ItemAlarm : public ItemEvBase {
public:
ItemAlarm( EvList *evlist, const char *item_name, pwr_tTime item_time,
const char *item_eventtext, char *item_eventname, int item_eventflags,
const char *item_eventtext, char *item_eventname, int item_eventttype, int item_eventflags,
unsigned long item_eventprio, mh_sEventId item_eventid,
pwr_tAttrRef *item_object, pwr_tAttrRef *item_eventsound,
char *item_eventmoretext,unsigned long item_status,
......@@ -294,6 +296,7 @@ class ItemAlarm : public ItemEvBase {
pwr_tTime time;
char eventtext[80];
pwr_tAName eventname;
int eventtype;
int eventflags;
unsigned long eventprio;
mh_sEventId eventid;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment