|
|
@ -31,42 +31,70 @@ enum TrajectoryType { |
|
|
|
TrajectoryCartFivePoly, |
|
|
|
|
|
|
|
TrajectoryJointLSPB, |
|
|
|
TrajectoryCartLSPB |
|
|
|
TrajectoryCartLSPB, |
|
|
|
__TrajectoryCount |
|
|
|
}; |
|
|
|
static struct { |
|
|
|
static struct TrajectoryTypeStr{ |
|
|
|
enum TrajectoryType type; |
|
|
|
std::string str; |
|
|
|
} TrajectoryTypeStr[] = |
|
|
|
{ |
|
|
|
{ .type = TrajectoryJointLinear , .str="JointLinear" }, |
|
|
|
{ .type = TrajectoryJointLSPB , .str="JointLSPB" }, |
|
|
|
{ .type = TrajectoryJointBangBang, .str="JointBangBang" }, |
|
|
|
{ .type = TrajectoryJointFivePoly, .str="JointFivePoly" }, |
|
|
|
|
|
|
|
{ .type = TrajectoryCartLinear , .str="CartLinear" }, |
|
|
|
{ .type = TrajectoryCartLSPB , .str="CartLSPB" }, |
|
|
|
{ .type = TrajectoryCartBangBang, .str="CartBangBang" }, |
|
|
|
{ .type = TrajectoryCartFivePoly, .str="CartFivePoly" }, |
|
|
|
}; |
|
|
|
}* trajectoryTypeStr = NULL; |
|
|
|
/// END OF TRAJECTORY LIST |
|
|
|
|
|
|
|
static void initTrajectoryType () |
|
|
|
{ |
|
|
|
if (trajectoryTypeStr == NULL) |
|
|
|
{ |
|
|
|
trajectoryTypeStr = new struct TrajectoryTypeStr[__TrajectoryCount]; |
|
|
|
|
|
|
|
int i = 0; |
|
|
|
|
|
|
|
trajectoryTypeStr[i].type = TrajectoryJointLinear; |
|
|
|
trajectoryTypeStr[i].str = "JointLinear"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryJointLSPB; |
|
|
|
trajectoryTypeStr[i].str = "JointLSPB"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryJointBangBang; |
|
|
|
trajectoryTypeStr[i].str = "JointBangBang"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryJointFivePoly; |
|
|
|
trajectoryTypeStr[i].str = "JointFivePoly"; |
|
|
|
++i; |
|
|
|
|
|
|
|
trajectoryTypeStr[i].type = TrajectoryCartLinear; |
|
|
|
trajectoryTypeStr[i].str = "CartLinear"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryCartLSPB; |
|
|
|
trajectoryTypeStr[i].str = "CartLSPB"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryCartBangBang; |
|
|
|
trajectoryTypeStr[i].str = "CartBangBang"; |
|
|
|
++i; |
|
|
|
trajectoryTypeStr[i].type = TrajectoryCartFivePoly; |
|
|
|
trajectoryTypeStr[i].str = "CartFivePoly"; |
|
|
|
++i; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
static std::string toString(enum TrajectoryType type) |
|
|
|
{ |
|
|
|
int items = sizeof(TrajectoryTypeStr) / sizeof(TrajectoryTypeStr[0]); |
|
|
|
initTrajectoryType(); |
|
|
|
int items = __TrajectoryCount; |
|
|
|
for (int i = 0 ; i < items ; ++i) |
|
|
|
{ |
|
|
|
if (TrajectoryTypeStr[i].type == type) |
|
|
|
return ""+ TrajectoryTypeStr[i].str; |
|
|
|
if (trajectoryTypeStr[i].type == type) |
|
|
|
return ""+ trajectoryTypeStr[i].str; |
|
|
|
} |
|
|
|
return "default"; |
|
|
|
} |
|
|
|
static enum TrajectoryType toEnum(std::string name) |
|
|
|
{ |
|
|
|
int items = sizeof(TrajectoryTypeStr) / sizeof(TrajectoryTypeStr[0]); |
|
|
|
initTrajectoryType(); |
|
|
|
int items = __TrajectoryCount; |
|
|
|
for (int i = 0 ; i < items ; ++i) |
|
|
|
{ |
|
|
|
if (TrajectoryTypeStr[i].str == name) |
|
|
|
return TrajectoryTypeStr[i].type; |
|
|
|
if (trajectoryTypeStr[i].str == name) |
|
|
|
return trajectoryTypeStr[i].type; |
|
|
|
} |
|
|
|
return TrajectoryDefault; |
|
|
|
} |
|
|
|