Browse Source

Pull Commit

ys-hwang 6 years ago
parent
commit
5dbbed2966
1 changed files with 37 additions and 0 deletions
  1. 37 0
      Dev/OHV/OHV.Module.Interactivity/PopUp/DriveServoViewModel.cs

+ 37 - 0
Dev/OHV/OHV.Module.Interactivity/PopUp/DriveServoViewModel.cs

@@ -135,6 +135,7 @@ namespace OHV.Module.Interactivity.PopUp
             this.eventAggregator.GetEvent<DriveControlPubSubEvent>().Unsubscribe( DriveControlCallBack );
             this.eventAggregator.GetEvent<DriveControlPubSubEvent>().Subscribe( DriveControlCallBack , ThreadOption.UIThread );
 
+            /*상태 회신을 받기 위함*/
             this.eventAggregator.GetEvent<GUIMessagePubSubEvent>().Unsubscribe( UICallBackCommunication );
             this.eventAggregator.GetEvent<GUIMessagePubSubEvent>().Subscribe( UICallBackCommunication , ThreadOption.UIThread );
 
@@ -167,6 +168,7 @@ namespace OHV.Module.Interactivity.PopUp
 
         private void UICallBackCommunication( GUIMessageEventArgs obj )
         {
+            //Property 상태가 바뀔때 마다 표현만 하면 된다?
             if ( obj.Kind == GUIMessageEventArgs.eGUIMessageKind.ModelPropertyChange )
             {
                 if ( obj.MessageKey.Equals( MessageKey.Vehicle ) )
@@ -179,6 +181,14 @@ namespace OHV.Module.Interactivity.PopUp
                                 this.ChangeSteeringDirection( dir );
                             }
                             break;
+                        case "VehicleStateProperty":
+                            {
+                                var v = CastTo<eVehicleState>.From<object>( obj.Args );
+                                this.ChagneVehicleState( v );
+                            }
+                            break;
+                        case "ObstacleStateProperty":
+                            break;
                         default:
                             break;
                     }
@@ -186,6 +196,33 @@ namespace OHV.Module.Interactivity.PopUp
             }
         }
 
+        private void ChagneVehicleState( eVehicleState v )
+        {
+            //TODO:[20/03/20 ys-hwang] Vehicle Manual Move 할때? 상태를 보고 해야?, 아니면 Manual 이니까???? 
+            // 아니면 busy 상태 확인만 ?
+            switch ( v )
+            {
+                case eVehicleState.None:
+                    break;
+                case eVehicleState.Idle:
+                    break;
+                case eVehicleState.Move:
+                    break;
+                case eVehicleState.Load:
+                    break;
+                case eVehicleState.Unload:
+                    break;
+                case eVehicleState.Charge:
+                    break;
+                case eVehicleState.Abnormal:
+                    break;
+                case eVehicleState.Blocked:
+                    break;
+                case eVehicleState.Decelerate:
+                    break;
+            }
+        }
+
         private void DriveControlCallBack( DriveControlEventArgs args)
         {
             //TODO:[20/03/19 ys-hwang] Drive UI return msg popup