Viam C++ SDK current
Loading...
Searching...
No Matches
navigation_server.hpp
Go to the documentation of this file.
1
4#pragma once
5
6#include <memory>
7
8#include <viam/api/common/v1/common.grpc.pb.h>
9#include <viam/api/service/navigation/v1/navigation.grpc.pb.h>
10
12#include <viam/sdk/resource/resource_server_base.hpp>
15
16namespace viam {
17namespace sdk {
18namespace impl {
19
20using namespace service::navigation::v1;
21
26 public viam::service::navigation::v1::NavigationService::Service {
27 public:
29 using service_type = service::navigation::v1::NavigationService;
30 explicit NavigationServer(std::shared_ptr<ResourceManager> manager)
31 : ResourceServer(std::move(manager)) {}
32
33 ::grpc::Status GetMode(::grpc::ServerContext* context,
34 const GetModeRequest* request,
35 GetModeResponse* response) noexcept override;
36 ::grpc::Status SetMode(::grpc::ServerContext* context,
37 const SetModeRequest* request,
38 SetModeResponse* response) noexcept override;
39 ::grpc::Status GetLocation(::grpc::ServerContext* context,
40 const GetLocationRequest* request,
41 GetLocationResponse* response) noexcept override;
42 ::grpc::Status GetWaypoints(::grpc::ServerContext* context,
43 const GetWaypointsRequest* request,
44 GetWaypointsResponse* response) noexcept override;
45 ::grpc::Status AddWaypoint(::grpc::ServerContext* context,
46 const AddWaypointRequest* request,
47 AddWaypointResponse* response) noexcept override;
48 ::grpc::Status RemoveWaypoint(::grpc::ServerContext* context,
49 const RemoveWaypointRequest* request,
50 RemoveWaypointResponse* response) noexcept override;
51 ::grpc::Status GetObstacles(::grpc::ServerContext* context,
52 const GetObstaclesRequest* request,
53 GetObstaclesResponse* response) noexcept override;
54 ::grpc::Status GetPaths(::grpc::ServerContext* context,
55 const GetPathsRequest* request,
56 GetPathsResponse* response) noexcept override;
57 ::grpc::Status GetProperties(::grpc::ServerContext* context,
58 const GetPropertiesRequest* request,
59 GetPropertiesResponse* response) noexcept override;
60 ::grpc::Status DoCommand(::grpc::ServerContext* context,
61 const ::viam::common::v1::DoCommandRequest* request,
62 ::viam::common::v1::DoCommandResponse* response) noexcept override;
63 ::grpc::Status GetStatus(::grpc::ServerContext* context,
64 const ::viam::common::v1::GetStatusRequest* request,
65 ::viam::common::v1::GetStatusResponse* response) noexcept override;
66};
67
68} // namespace impl
69} // namespace sdk
70} // namespace viam
Definition navigation.hpp:16
Definition resource_server_base.hpp:8
gRPC server implementation of a Navigation service.
Definition navigation_server.hpp:26
Defines a Navigation service.
Defines a general-purpose resource manager.
Defines the Server class.