using Aitex.Core.Common;
using Aitex.Core.Util;
using Aitex.Sorter.UI.Controls;
using EfemUI.Controls.Common;
using MECF.Framework.Common.CommonData;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
namespace EfemUI.Controls
{
///
/// EFEM2LPJet.xaml 的交互逻辑
///
public partial class EFEM2LPJet : EFEMBase
{
public EFEM2LPJet()
{
InitializeComponent();
root.DataContext = this;
}
public WaferInfo Aligner1Wafer
{
get { return (WaferInfo)GetValue(Aligner1WaferProperty); }
set { SetValue(Aligner1WaferProperty, value); }
}
// Using a DependencyProperty as the backing store for Aligner1Wafer. This enables animation, styling, binding, etc...
public static readonly DependencyProperty Aligner1WaferProperty =
DependencyProperty.Register("Aligner1Wafer", typeof(WaferInfo), typeof(EFEM2LPJet), new PropertyMetadata(null));
public WaferInfo Aligner2Wafer
{
get { return (WaferInfo)GetValue(Aligner2WaferProperty); }
set { SetValue(Aligner2WaferProperty, value); }
}
// Using a DependencyProperty as the backing store for Aligner2Wafer. This enables animation, styling, binding, etc...
public static readonly DependencyProperty Aligner2WaferProperty =
DependencyProperty.Register("Aligner2Wafer", typeof(WaferInfo), typeof(EFEM2LPJet), new PropertyMetadata(null));
public WaferInfo CoolingBuffer1Wafer
{
get { return (WaferInfo)GetValue(CoolingBuffer1WaferProperty); }
set { SetValue(CoolingBuffer1WaferProperty, value); }
}
// Using a DependencyProperty as the backing store for CoolingBuffer1Wafer. This enables animation, styling, binding, etc...
public static readonly DependencyProperty CoolingBuffer1WaferProperty =
DependencyProperty.Register("CoolingBuffer1Wafer", typeof(WaferInfo), typeof(EFEM2LPJet), new PropertyMetadata(null));
public WaferInfo CoolingBuffer2Wafer
{
get { return (WaferInfo)GetValue(CoolingBuffer2WaferProperty); }
set { SetValue(CoolingBuffer2WaferProperty, value); }
}
// Using a DependencyProperty as the backing store for CoolingBuffer2Wafer. This enables animation, styling, binding, etc...
public static readonly DependencyProperty CoolingBuffer2WaferProperty =
DependencyProperty.Register("CoolingBuffer2Wafer", typeof(WaferInfo), typeof(EFEM2LPJet), new PropertyMetadata(null));
[Subscription("CoolingBuffer1Disable", "System")]
public bool CoolingBuffer1Disable
{
get;
set;
}
[Subscription("CoolingBuffer2Disable", "System")]
public bool CoolingBuffer2Disable
{
get;
set;
}
[Subscription("Aligner1Disable", "System")]
public bool Aligner1Disable
{
get;
set;
}
[Subscription("Aligner2Disable", "System")]
public bool Aligner2Disable
{
get;
set;
}
[Subscription("RobotMoveInfo", "Robot")]
public RobotMoveInfo RobotMoveInfo
{
get;
set;
}
public override Dictionary StationPosition
{
get
{
return new Dictionary
{
{ "ArmA.System",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=155,
Arm=240,
Hand=236
},
EndPosition= new RobotPosition()
{
Root=155,
Arm=240,
Hand=236
}
}
},
{ "ArmB.System",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=25,
Arm=120,
Hand=484
},
EndPosition= new RobotPosition()
{
Root=25,
Arm=120,
Hand=484
}
}
},
{ "ArmA.LP1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=233,
Arm=179,
Hand=67
},
EndPosition= new RobotPosition()
{
Root=194,
Arm=225,
Hand=52
}
}
},
{ "ArmB.LP1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=18,
Arm=173,
Hand=281
},
EndPosition= new RobotPosition()
{
Root=42,
Arm=131,
Hand=302
}
}
},
{ "ArmA.LP2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=152,
Arm=187,
Hand=93
},
EndPosition= new RobotPosition()
{
Root=140,
Arm=227,
Hand=61
}
}
},
{ "ArmB.LP2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=-40,
Arm=178,
Hand=286
},
EndPosition= new RobotPosition()
{
Root=-12,
Arm=140,
Hand=301
}
}
},
{ "ArmA.CoolingBuffer1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=252,
Arm=189,
Hand=81
},
EndPosition= new RobotPosition()
{
Root=235,
Arm=230,
Hand=58
}
}
},
{ "ArmB.CoolingBuffer1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=81,
Arm=158,
Hand=276
},
EndPosition= new RobotPosition()
{
Root=98,
Arm=112,
Hand=312
}
}
},
{ "ArmA.CoolingBuffer2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=286,
Arm=187,
Hand=88
},
EndPosition= new RobotPosition()
{
Root=272,
Arm=230,
Hand=58
}
}
},
{ "ArmB.CoolingBuffer2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=82,
Arm=166,
Hand=307
},
EndPosition= new RobotPosition()
{
Root=124,
Arm=117,
Hand=318
}
}
},
{ "ArmA.Aligner1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=100,
Arm=202,
Hand=83
},
EndPosition= new RobotPosition()
{
Root=82,
Arm=243,
Hand=56
}
}
},
{ "ArmB.Aligner1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=-77,
Arm=171,
Hand=285
},
EndPosition= new RobotPosition()
{
Root=-60,
Arm=132,
Hand=307
}
}
},
{ "ArmA.Aligner2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=90,
Arm=198,
Hand=55
},
EndPosition= new RobotPosition()
{
Root=53,
Arm=243,
Hand=48
}
}
},
{ "ArmB.Aligner2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=-114,
Arm=173,
Hand=278
},
EndPosition= new RobotPosition()
{
Root=-97,
Arm=132,
Hand=307
}
}
},
{ "ArmA.LL1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=277,
Arm=212,
Hand=140
},
EndPosition= new RobotPosition()
{
Root=295,
Arm=248,
Hand=86
}
}
},
{ "ArmB.LL1",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=100,
Arm=134,
Hand=395
},
EndPosition= new RobotPosition()
{
Root=165,
Arm=100,
Hand=365
}
}
},
{ "ArmA.LL2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=436,
Arm=229,
Hand=-34
},
EndPosition= new RobotPosition()
{
Root=375,
Arm=256,
Hand=0
}
}
},
{ "ArmB.LL2",new StationPosition()
{
StartPosition= new RobotPosition()
{
X=0,
Root=264,
Arm=146,
Hand=221
},
EndPosition= new RobotPosition()
{
Root=242,
Arm=115,
Hand=273
}
}
}
};
}
}
}
}