#pragma once
|
#include "ServoCommo.h"
|
#include "Context.h"
|
#include "CEFEM.h"
|
|
|
#define ACTION_PICK 0 /* È¡ */
|
#define ACTION_PLACE 1 /* ·Å */
|
#define ACTION_RESTORE 2 /* ȯ﵋ */
|
#define ACTION_TRANSFER 3 /* °áÔË */
|
|
namespace SERVO {
|
class CRobotTask
|
{
|
public:
|
CRobotTask();
|
virtual ~CRobotTask();
|
|
public:
|
std::string& getId();
|
std::string getDescription() const;
|
std::string getSimpleDescription() const;
|
void setContext(CContext* pContext);
|
CContext* getContext();
|
void setEFEM(CEFEM* pEFEM);
|
int setRobotTransferParam(int seq, int armNo, int fromPos, int toPos, int fromSlot, int toSlot);
|
ROBOT_CMD_PARAM& getRobotCmdParam(int index);
|
time_t getCreateTime();
|
time_t getFetchoutTime();
|
time_t getStoredTime();
|
time_t getFinishTime();
|
ROBOT_TASK_STATE getState();
|
void run();
|
void pick();
|
void place();
|
void restore();
|
void completed();
|
void error();
|
void abort();
|
int getSrcPosition();
|
int getSrcSlot();
|
int getTarPosition();
|
int getTarSlot();
|
CString getStateString();
|
|
// ´ÓÔ´µØ°ÎƬ
|
void fetchOut();
|
|
// ÔÚÄ¿µÄµØ·ÅƬ
|
void stored();
|
|
private:
|
static std::string& generateId(std::string& out);
|
|
private:
|
ROBOT_TASK_STATE m_state; /* ÈÎÎñ״̬ */
|
std::string m_strId;
|
time_t m_timeCreate; /* ´´½¨Ê±¼ä */
|
time_t m_timeFetchOut; /* ȡƬʱ¼ä*/
|
time_t m_timeStored; /* ·ÅƬʱ¼ä */
|
time_t m_timeFinish; /* ½áÊøÊ±¼ä */
|
ROBOT_CMD_PARAM m_robotCmdParam[3]; /* ²ÎÊý */
|
CContext* m_pContext;
|
CEFEM* m_pEFEM;
|
};
|
}
|