RobotMoveInfo.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Runtime.Serialization;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace MECF.Framework.Common.CommonData
  8. {
  9. [Serializable]
  10. [DataContract]
  11. public enum RobotArm
  12. {
  13. [EnumMember]
  14. ArmA,
  15. [EnumMember]
  16. ArmB,
  17. [EnumMember]
  18. Both
  19. }
  20. [Serializable]
  21. [DataContract]
  22. public enum RobotAction
  23. {
  24. [EnumMember]
  25. None,
  26. [EnumMember]
  27. Picking,
  28. [EnumMember]
  29. Placing,
  30. [EnumMember]
  31. Moving,
  32. [EnumMember]
  33. Extending,
  34. [EnumMember]
  35. Retracting,
  36. [EnumMember]
  37. Rotating,
  38. }
  39. [Serializable]
  40. [DataContract]
  41. public class RobotMoveInfo : NotifiableItem
  42. {
  43. private string bladeTarget;
  44. [DataMember]
  45. public string BladeTarget
  46. {
  47. get { return bladeTarget; }
  48. set
  49. {
  50. bladeTarget = value;
  51. InvokePropertyChanged("BladeTarget");
  52. }
  53. }
  54. private RobotArm armTarget;
  55. [DataMember]
  56. public RobotArm ArmTarget
  57. {
  58. get => armTarget;
  59. set
  60. {
  61. armTarget = value;
  62. InvokePropertyChanged("ArmTarget");
  63. }
  64. }
  65. private RobotAction action;
  66. [DataMember]
  67. public RobotAction Action
  68. {
  69. get { return action; }
  70. set
  71. {
  72. action = value;
  73. InvokePropertyChanged("Action");
  74. }
  75. }
  76. public override string ToString()
  77. {
  78. return $"{bladeTarget} - {action}";
  79. }
  80. }
  81. }