RobotMoveInfo.cs 2.2 KB

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