#ifndef BIO_HEAD_SERVICE_H #define BIO_HEAD_SERVICE_H #include "cmvr/api/biohead_service.grpc.pb.h" #include "device_manager/device_manager.h" namespace cmvr::service { class gRPCMBioHeadServiceImpl : public api::BioHeadService::Service { public: gRPCMBioHeadServiceImpl(); ~gRPCMBioHeadServiceImpl() override = default; grpc::Status SetExpression(grpc::ServerContext* context, const api::SetFacialExpression_Request* request, api::SetFacialExpression_Feedback* response) override; grpc::Status StreamExpression(grpc::ServerContext* context, grpc::ServerReaderWriter* stream) override; grpc::Status GetSystemStatus(grpc::ServerContext* context, const api::GetStatus_Request* request, api::GetStatus_Feedback* response) override; grpc::Status EmergencyStop(grpc::ServerContext* context, const api::EmergencyStop_Request* request, api::EmergencyStop_Feedback* response) override; grpc::Status SpeakStart(grpc::ServerContext* context, const cmvr::api::SpeakStart_Request* request, cmvr::api::SpeakStart_Feedback* response) override; grpc::Status SpeakStop(grpc::ServerContext* context, const cmvr::api::SpeakStop_Request* request, cmvr::api::SpeakStop_Feedback* response) override; grpc::Status Happy(grpc::ServerContext* context, const cmvr::api::Happy_Request* request, cmvr::api::Happy_Feedback* response) override; grpc::Status Surprise(grpc::ServerContext* context, const cmvr::api::Surprise_Request* request, cmvr::api::Surprise_Feedback* response) override; grpc::Status ExpressionTired(grpc::ServerContext* context, const cmvr::api::ExpressionTired_Request* request, cmvr::api::ExpressionTired_Feedback* response) override; private: device::DeviceManager& dmgr_; }; } // namespace cmvr::service #endif // BIO_HEAD_SERVICE_H