JetRobotMoveInfo.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using Aitex.Sorter.Common;
  2. using MECF.Framework.Common.CommonData;
  3. using MECF.Framework.Common.Equipment;
  4. using System;
  5. using System.Runtime.Serialization;
  6. namespace athosCore
  7. {
  8. [Serializable]
  9. [DataContract]
  10. public class JetRobotMoveInfo : NotifiableItem
  11. {
  12. public JetRobotMoveInfo(RobotAction action = RobotAction.None, Hand hand = Hand.Blade1, ModuleName target = ModuleName.Robot, int slot = 0)
  13. {
  14. Action = action;
  15. HandTarget = hand;
  16. TargetModule = target;
  17. Slot = slot;
  18. }
  19. public bool Equals(JetRobotMoveInfo target)
  20. {
  21. return target.Action == this.Action && target.HandTarget == this.HandTarget && target.TargetModule == this.TargetModule && target.Slot == this.Slot;
  22. }
  23. private ModuleName targetModule;
  24. [DataMember]
  25. public ModuleName TargetModule
  26. {
  27. get { return targetModule; }
  28. set
  29. {
  30. targetModule = value;
  31. InvokePropertyChanged("TargetModule");
  32. }
  33. }
  34. private Hand handTarget;
  35. [DataMember]
  36. public Hand HandTarget
  37. {
  38. get => handTarget;
  39. set
  40. {
  41. handTarget = value;
  42. InvokePropertyChanged("HandTarget");
  43. }
  44. }
  45. private RobotAction action;
  46. [DataMember]
  47. public RobotAction Action
  48. {
  49. get { return action; }
  50. set
  51. {
  52. action = value;
  53. InvokePropertyChanged("Action");
  54. }
  55. }
  56. private int slot;
  57. [DataMember]
  58. public int Slot
  59. {
  60. get { return slot; }
  61. set
  62. {
  63. slot = value;
  64. InvokePropertyChanged("Slot");
  65. }
  66. }
  67. }
  68. }