// // Created by lgv on 2025/8/15. // #pragma once #include "device_manager/device_manager.h" #include "cmvr/api/humanoid_robot_service.grpc.pb.h" namespace cmvr { namespace service { class gRPCHumanoidRobotServiceImpl final : public api::HumanoidRobotService::Service { public: gRPCHumanoidRobotServiceImpl(); ~gRPCHumanoidRobotServiceImpl() = default; grpc::Status torqueOff(grpc::ServerContext *context, const cmvr::api::CommandHeader_Request *request, cmvr::api::CommandHeader_Feedback *response) override; grpc::Status torqueOn(grpc::ServerContext *context, const cmvr::api::CommandHeader_Request *request, cmvr::api::CommandHeader_Feedback *response) override; grpc::Status moveJ(grpc::ServerContext *context, const cmvr::api::MoveJ_Request *request, cmvr::api::MoveJ_Response *response) override; grpc::Status moveL(grpc::ServerContext* context, const cmvr::api::MoveL_Request* request, cmvr::api::MoveL_Response* response) override; grpc::Status speedJ(grpc::ServerContext* context, const cmvr::api::SpeedJ_Request* request, cmvr::api::SpeedJ_Response* response) override; grpc::Status speedL(grpc::ServerContext* context, const cmvr::api::SpeedL_Request* request, cmvr::api::SpeedL_Response* response) override; grpc::Status getJointState(grpc::ServerContext *context, const cmvr::api::JointRequest *request, cmvr::api::JointResponse *response) override; private: device::DeviceManager& dmgr_; }; } }