27 #ifndef TRAJECTORY_THREAD_H 28 #define TRAJECTORY_THREAD_H 34 #include <yarp/os/Time.h> 35 #include <yarp/os/RateThread.h> 36 #include <Eigen/Dense> 157 bool setTrajectoryWaypoints(
const std::list<Eigen::VectorXd>& waypointList,
bool containsStartingWaypoint=
false);
202 void setMeanWaypoints(std::vector<bool>& isMeanWaypoint);
203 void setVarianceWaypoints(std::vector<bool>& isVarWaypoint);
204 void setOptimizationWaypoints(std::vector<bool>& isOptWaypoint);
205 void setDofToOptimize(std::vector<Eigen::VectorXi>& dofToOptimize);
208 Eigen::VectorXd getBayesianOptimizationVariables();
218 std::shared_ptr<TaskConnection>
task;
272 const int POS_COL = 0;
273 const int VEL_COL = 1;
274 const int ACC_COL = 2;
276 Eigen::VectorXd getCurrentTaskStateAsVector();
280 #endif // TRAJECTORY_THREAD_H
ocra::Task::META_TASK_TYPE taskType
Eigen::VectorXd desiredState
virtual bool threadInit()
std::list< Eigen::VectorXd > userWaypointList
bool isTaskCurrentlyActive
void setUseVarianceModulation(bool newVarMod)
Eigen::ArrayXd varianceThresh
TrajectoryThread(int period, const std::string &taskPortName, const TRAJECTORY_TYPE=MIN_JERK, const TERMINATION_STRATEGY _terminationStrategy=STOP_THREAD)
#define DEFINE_CLASS_POINTER_TYPEDEFS(Class)
virtual void threadRelease()
std::shared_ptr< TaskConnection > task
void setMaxVelocity(double maxVel)
ocra::Trajectory::Ptr getTrajectory()
bool isUsingTerminationStrategy
bool setDisplacement(double dispDouble)
Eigen::MatrixXd getWaypoints()
bool waypointsHaveBeenSet
Eigen::VectorXd startStateVector
void setMaxVelocityAndAcceleration(double maxVel, double maxAcc)
yarp::os::Bottle desStateBottle
bool setTrajectoryWaypoints(const Eigen::MatrixXd &userWaypoints, bool containsStartingWaypoint=false)
std::shared_ptr< ocra::Trajectory > trajectory
std::list< Eigen::VectorXd > allWaypointList
void setTerminationStrategy(const TERMINATION_STRATEGY newTermStrat)
void setMaxAcceleration(double maxAcc)
bool printWaitingNoticeOnce
std::list< Eigen::VectorXd > getWaypointList()
Eigen::MatrixXd userWaypoints
double deactivationTimeout
double timeElapsedDuringPause
Eigen::VectorXd varianceToWeights(Eigen::VectorXd &desiredVariance, const double beta=1.0)
Eigen::VectorXd desiredVariance
TERMINATION_STRATEGY terminationStrategy
Eigen::MatrixXd allWaypoints
void setGoalErrorThreshold(const double newErrorThresh)
bool useVarianceModulation
Eigen::VectorXd goalStateVector