72 lines
2.0 KiB
C#
72 lines
2.0 KiB
C#
using SicRT.Scheduler;
|
|
using MECF.Framework.Common.Equipment;
|
|
using System.Collections.Generic;
|
|
|
|
namespace SicRT.Modules.Schedulers
|
|
{
|
|
public class SchedulerModuleFactory
|
|
{
|
|
|
|
protected SchedulerTMRobot _tmRobot = new SchedulerTMRobot();
|
|
|
|
protected SchedulerBuffer _buffer = new SchedulerBuffer(ModuleName.Buffer);
|
|
protected SchedulerLoadLock _loadlock = new SchedulerLoadLock(ModuleName.LoadLock);
|
|
protected SchedulerPM _pm1 = new SchedulerPM(ModuleName.PM1);
|
|
//protected SchedulerPM _pm2 = new SchedulerPM(ModuleName.PM2) ;
|
|
protected SchedulerPreHeat _preHeat = new SchedulerPreHeat(ModuleName.PreHeat);
|
|
|
|
protected List<SchedulerPM> _lstPms = new List<SchedulerPM>();
|
|
protected List<SchedulerLoadLock> _lstLls = new List<SchedulerLoadLock>();
|
|
|
|
protected SchedulerModuleFactory()
|
|
{
|
|
_lstPms.AddRange(new[] { _pm1 });
|
|
|
|
//_lstPms.AddRange(new[] { _pm1, _pm2 });
|
|
|
|
_lstLls.AddRange(new[] { _loadlock });
|
|
}
|
|
|
|
protected SchedulerModule GetModule(string name)
|
|
{
|
|
switch (ModuleHelper.Converter(name))
|
|
{
|
|
case ModuleName.Buffer:
|
|
return _buffer;
|
|
|
|
case ModuleName.TMRobot:
|
|
return _tmRobot;
|
|
|
|
case ModuleName.PM1:
|
|
return _pm1;
|
|
//case ModuleName.PM2:
|
|
// return _pm2;
|
|
|
|
case ModuleName.PreHeat:
|
|
return _preHeat;
|
|
|
|
case ModuleName.LoadLock:
|
|
return _loadlock;
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
public void Reset()
|
|
{
|
|
_tmRobot.ResetTask();
|
|
foreach (var pm in _lstPms)
|
|
{
|
|
pm.ResetTask();
|
|
}
|
|
|
|
foreach (var ll in _lstLls)
|
|
{
|
|
ll.ResetTask();
|
|
}
|
|
|
|
_buffer.ResetTask();
|
|
}
|
|
}
|
|
}
|