diff --git a/include/ur_client_library/ur/instruction_executor.h b/include/ur_client_library/ur/instruction_executor.h index 664b4e1c..2be325c7 100644 --- a/include/ur_client_library/ur/instruction_executor.h +++ b/include/ur_client_library/ur/instruction_executor.h @@ -187,6 +187,8 @@ class InstructionExecutor return trajectory_running_; } + void registerTrajDoneCallback(); + private: void trajDoneCallback(const urcl::control::TrajectoryResult& result); void trajDisconnectCallback(const int filedescriptor); diff --git a/src/ur/instruction_executor.cpp b/src/ur/instruction_executor.cpp index 5828c830..77ca496f 100644 --- a/src/ur/instruction_executor.cpp +++ b/src/ur/instruction_executor.cpp @@ -41,6 +41,11 @@ void urcl::InstructionExecutor::trajDoneCallback(const urcl::control::Trajectory trajectory_result_ = result; trajectory_running_ = false; } +void urcl::InstructionExecutor::registerTrajDoneCallback() +{ + driver_->registerTrajectoryDoneCallback( + std::bind(&InstructionExecutor::trajDoneCallback, this, std::placeholders::_1)); +} void urcl::InstructionExecutor::trajDisconnectCallback(const int filedescriptor) { URCL_LOG_INFO("Trajectory disconnect");