///////////////////////////////////////////////// // // _trdStateDef.ctl // definition of states and actions // Adding of Interlock states // // // J.Mercado $v.150107 // ///////////////////////////////////////////////// const int kActionRecoverInterlock = 13; const int kActionAbandon = 12; const int kActionStartSequence = 11; const int kActionNext = 10; const int kActionGoOn = 9; const int kActionGoReady = 8; const int kActionGoInter = 7; const int kActionConf = 6; const int kActionSetConf = 5; const int kActionRecover = 4; const int kActionStop = 3; const int kActionGoStandby = 2; const int kActionGoOff = 1; const int kActionElse = 0; const int kStateSequence0 = 34; const int kStateSequence1 = 33; const int kStateSequence2 = 32; const int kStateSequence3 = 31; const int kStateSequence4 = 30; const int kStateSequence5 = 29; const int kStateSequence6 = 28; const int kStateSequence7 = 27; const int kStateSequence8 = 26; const int kStateSequence9 = 25; const int kStateInterlock = 24; const int kStateInterlockWent = 23; const int kStateSoftInterlock = 22; const int kStateDownloading = 21; const int kStateMixedLo = 20; const int kStateMixed = 19; const int kStateProgressingDown = 18; const int kStateProgressingUp = 17; const int kStateProgressing = 16; const int kStateSaving = 15; const int kStateInter = 14; const int kStateError = 13; const int kStateNotReady = 12; const int kStateOn = 11; const int kStateRampUpLo = 10; const int kStateRampDownLo = 9; const int kStateRampUp = 8; const int kStateRampDown = 7; const int kStateReady = 6; const int kStateStandby = 5; const int kStateOff = 4; const int kStateConfigured = 3; const int kStateNoControl = 2; const int kStateDead = 1;//Don't use; const int kStateElse = 0; global bool g_trdState_init=false; bool trdState_init() { if(g_trdState_init==true) return false; g_trdState_init=true; DebugN("Init g_trdState_init"); addGlobal("kStates",DYN_STRING_VAR); addGlobal("kStateColors",DYN_STRING_VAR); addGlobal("kActions",DYN_STRING_VAR); //States // kStates[kState]=""; kStates[kStateSequence0]="SEQUENCE_0"; kStates[kStateSequence1]="SEQUENCE_1"; kStates[kStateSequence2]="SEQUENCE_2"; kStates[kStateSequence3]="SEQUENCE_3"; kStates[kStateSequence4]="SEQUENCE_4"; kStates[kStateSequence5]="SEQUENCE_5"; kStates[kStateSequence6]="SEQUENCE_6"; kStates[kStateSequence7]="SEQUENCE_7"; kStates[kStateSequence8]="SEQUENCE_8"; kStates[kStateSequence9]="SEQUENCE_9"; kStates[kStateInterlock]="INTERLOCK"; kStates[kStateInterlockWent]="INTERLOCK_WENT"; kStates[kStateSoftInterlock]="SOFT_INTERLOCK"; kStates[kStateDownloading]="DOWNLOADING"; kStates[kStateDownloading]="DOWNLOADING"; kStates[kStateDownloading]="DOWNLOADING"; kStates[kStateDownloading]="DOWNLOADING"; kStates[kStateMixedLo]="MIXED_LOW"; kStates[kStateMixed]="MIXED"; kStates[kStateProgressingDown]="PROGRESSING_DOWN"; kStates[kStateProgressingUp]="PROGRESSING_UP"; kStates[kStateProgressing]="PROGRESSING"; kStates[kStateSaving]="SAVING"; kStates[kStateReady]="READY"; kStates[kStateStandby]="STANDBY"; kStates[kStateOff]="OFF"; kStates[kStateConfigured]="STBY_CONFIGURED"; kStates[kStateInter]="INTERMEDIATE"; kStates[kStateError]="ERROR"; kStates[kStateNotReady]="NOT_READY"; kStates[kStateOn]="ON"; kStates[kStateRampUpLo]="RAMPING_UP_LOW"; kStates[kStateRampDownLo]="RAMPING_DOWN_LOW"; kStates[kStateRampUp]="RAMPING_UP"; kStates[kStateRampDown]="RAMPING_DOWN"; kStates[kStateNoControl]="NO_CONTROL"; kStates[kStateDead]="DEAD"; //State colors // kStateColors[kState]=""; kStateColors[kStateSequence0]="kobaltblau"; kStateColors[kStateSequence1]="kobaltblau"; kStateColors[kStateSequence2]="kobaltblau"; kStateColors[kStateSequence3]="kobaltblau"; kStateColors[kStateSequence4]="kobaltblau"; kStateColors[kStateSequence5]="kobaltblau"; kStateColors[kStateSequence6]="kobaltblau"; kStateColors[kStateSequence7]="kobaltblau"; kStateColors[kStateSequence8]="kobaltblau"; kStateColors[kStateSequence9]="kobaltblau"; kStateColors[kStateInterlock]="FwStateAttention2"; kStateColors[kStateInterlockWent]="FwStateAttention2"; kStateColors[kStateSoftInterlock]="FwStateAttention2"; kStateColors[kStateDownloading]="kobaltblau"; kStateColors[kStateMixedLo]="FwStateAttention1"; kStateColors[kStateMixed]="FwStateAttention1"; kStateColors[kStateProgressingDown]="kobaltblau"; kStateColors[kStateProgressingUp]="kobaltblau"; kStateColors[kStateProgressing]="kobaltblau"; kStateColors[kStateSaving]="kobaltblau"; kStateColors[kStateReady]="FwStateOKPhysics"; kStateColors[kStateStandby]="FwStateOKNotPhysics"; kStateColors[kStateOff]="FwStateOKNotPhysics"; kStateColors[kStateConfigured]="FwStateOKNotPhysics"; kStateColors[kStateInter]="FwStateOKNotPhysics"; kStateColors[kStateError]="FwStateAttention3"; kStateColors[kStateNotReady]="FwStateOKNotPhysics"; kStateColors[kStateOn]="FwStateOKPhysics"; kStateColors[kStateRampUpLo]="kobaltblau"; kStateColors[kStateRampDownLo]="kobaltblau"; kStateColors[kStateRampUp]="kobaltblau"; kStateColors[kStateRampDown]="kobaltblau"; kStateColors[kStateNoControl]="FwStateAttention2"; kStateColors[kStateDead]="FwDead"; //Actions // kActions[kAction]=""; kActions[kActionRecoverInterlock]="RECOVER_INTERLOCK"; kActions[kActionAbandon]="ABANDON"; kActions[kActionStartSequence]="START_SEQUENCE"; kActions[kActionNext]="NEXT"; kActions[kActionGoOn]="GO_ON"; kActions[kActionGoStandby]="GO_STANDBY"; kActions[kActionGoOff]="GO_OFF"; kActions[kActionGoReady]="GO_READY"; kActions[kActionGoInter]="GO_INTERMEDIATE"; kActions[kActionConf]="CONFIGURE"; kActions[kActionSetConf]="SAVE_CONFIG"; kActions[kActionRecover]="RECOVER"; kActions[kActionStop]="STOP"; // kActions[kActionReset]="RESET"; return true; }