public virtual void GetMTL2OHxC_CarOutInterface(out bool carOutSafelyCheck, out bool carMoveComplete)
 {
     try
     {
         ValueRead vr_safety_check = bcfApp.getReadValueEvent(eqpt.EqptObjectCate, eqpt.EQPT_ID, "MTL_TO_OHXC_U2D_SAFETY_CHECK");
         // ValueRead vr_move_cmp = bcfApp.getReadValueEvent(eqpt.EqptObjectCate, eqpt.EQPT_ID, "MTL_TO_OHXC_U2D_MOVE_COMPLETE");
         carOutSafelyCheck = (bool)vr_safety_check.getText();
         // carMoveComplete = (bool)vr_move_cmp.getText();
         carMoveComplete = false;
     }
     catch (Exception ex)
     {
         logger.Error(ex, "Exception");
         carOutSafelyCheck = false;
         carMoveComplete   = false;
     }
 }
 private void MTLTrackClosedChange(object sender, ValueChangedEventArgs e)
 {
     try
     {
         ValueRead mtl_track_closed = bcfApp.getReadValueEvent(eqpt.EqptObjectCate, eqpt.EQPT_ID, "MTL_TRACK_CLOSED");
         bool      is_closed        = (bool)mtl_track_closed.getText();
         LogHelper.Log(logger: logger, LogLevel: LogLevel.Info, Class: nameof(SimpleMTLValueDefMapAction), Device: DEVICE_NAME_MTL,
                       Data: $"MTL of Track Single:{is_closed}",
                       VehicleID: eqpt.EQPT_ID);
         if (is_closed == true)
         {
             return;
         }
         List <AVEHICLE> vhs = scApp.VehicleBLL.cache.loadVhs();
         foreach (AVEHICLE vh in vhs)
         {
             scApp.VehicleService.PauseRequest(vh.VEHICLE_ID, ProtocolFormat.OHTMessage.PauseEvent.Pause, SCAppConstants.OHxCPauseType.Safty);
         }
     }
     catch (Exception ex)
     {
         logger.Error(ex, "Exception");
     }
 }