| package com.zy.core.thread; | 
|   | 
| import com.zy.common.ExecuteSupport; | 
| import com.zy.core.ThreadHandler; | 
| import com.zy.core.enums.ForkLiftIoModeType; | 
| import com.zy.core.enums.ForkLiftProtocolStatusType; | 
| import com.zy.core.enums.ForkLiftTaskModeType; | 
| import com.zy.core.model.CommandResponse; | 
| import com.zy.core.model.command.ForkLiftCommand; | 
| import com.zy.core.model.protocol.ForkLiftProtocol; | 
| import com.zy.core.model.protocol.ForkLiftStaProtocol; | 
|   | 
| import java.util.List; | 
|   | 
| public interface ForkLiftThread extends ThreadHandler { | 
|   | 
|     ForkLiftProtocol getStatus();//获取提升机状态 | 
|   | 
|     ForkLiftProtocol getStatus(boolean clone);//获取提升机状态 | 
|   | 
|     List<ForkLiftStaProtocol> getForkLiftStaProtocols(); | 
|   | 
|     CommandResponse pickAndPut(ForkLiftCommand command);//取放货指令 | 
|   | 
|     CommandResponse shuttleSwitch(ForkLiftCommand command);//小车换层 | 
|   | 
|     CommandResponse move(ForkLiftCommand command);//小车换层 | 
|   | 
|     CommandResponse reset();//复位 | 
|   | 
|     boolean isIdle();//是否空闲 | 
|   | 
|     boolean isDeviceIdle();//设备是否空闲 | 
|   | 
|     boolean isDeviceIdle(ExecuteSupport support);//设备是否空闲 | 
|   | 
|     boolean setProtocolStatus(ForkLiftProtocolStatusType status);//设置工作状态 | 
|   | 
|     boolean setSyncTaskNo(Integer taskNo);//设置工作号 | 
|   | 
|     boolean switchIOMode(ForkLiftIoModeType type);//切换出入库模式 | 
|   | 
|     int generateDeviceTaskNo(int taskNo, ForkLiftTaskModeType type);//生成硬件设备工作号 | 
|   | 
|     //***************获取命令***************** | 
|   | 
|     List<ForkLiftCommand> getPickAndPutCommand(Integer taskNo, Integer pick, Integer put);//取放货指令 | 
|   | 
|     List<ForkLiftCommand> getShuttleSwitchCommand(Integer taskNo, Integer pick, Integer put);//小车换层 | 
|   | 
|     List<ForkLiftCommand> getMoveCommand(Integer taskNo, Integer pick, Integer put);//提升机移动 | 
|   | 
| } |