#pragma once

#include "bombax.h"

#include "..\pilelibs\includes\robbase\options.h"



//Motion Time
//速度规划曲线
//速度规划曲线
#define   MT_PT_T  0 //		MO_PT_T=1,
#define   MT_PT_S  1 //		MP_PROFILE_S=1,

//缓冲区运动速度执行规划方式
#define   MT_BM_DEFAULT  0
#define   MT_BM_SMOOTH   1

//缓冲区执行方式
#define MT_QUEUE_MODE_0          0    //按照用户曲线参数执行
#define MT_QUEUE_MODE_1          1    //根据两轴运动指令间的拐角做速度规划

#define MO_DEFAULT_ACC2_TIMES      10
#define MO_DEFAULT_DEC2_TIMES      10
//#define MO_DEFAULT_MAXSPEED_TIMES  2
//
//typedef struct __mt_bank_params_{
//	int    profile;
//	double speed;
//	double acc; 
//	double acc2;
//	int    runMode;  //MT_BM_DEFAULT
//	int    stopMode;     //MT_PT_T
//	double dec;
//	double dec2;
//}MT_BANK_PARAMS;

class BOMBAX_API CMotimeOpts :	public COptions
{
public:
	CMotimeOpts(void);
	virtual ~CMotimeOpts(void);

	virtual COptions* Clone();

	//下面函数自动设置acc2 = acc*10
	void  SetAcc(double acc) ;
	void  SetDec(double dec) ;

public:
	
	int    evenTime;    //停止时间,ms
	//double maxSpeed;

	int profile;
 	int queueMode;
//	int moveMode;
	double acc2;  //acc2建议10倍acc
	double dec2;
};

