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/service/navigation/v1/navigation.grpc.pb.h>
9
11#include <viam/sdk/resource/resource_server_base.hpp>
14
15namespace viam {
16namespace sdk {
17namespace impl {
18
19using namespace service::navigation::v1;
20
25 public viam::service::navigation::v1::NavigationService::Service {
26 public:
28 using service_type = service::navigation::v1::NavigationService;
29 explicit NavigationServer(std::shared_ptr<ResourceManager> manager)
30 : ResourceServer(std::move(manager)) {}
31
32 ::grpc::Status GetMode(::grpc::ServerContext* context,
33 const GetModeRequest* request,
34 GetModeResponse* response) noexcept override;
35 ::grpc::Status SetMode(::grpc::ServerContext* context,
36 const SetModeRequest* request,
37 SetModeResponse* response) noexcept override;
38 ::grpc::Status GetLocation(::grpc::ServerContext* context,
39 const GetLocationRequest* request,
40 GetLocationResponse* response) noexcept override;
41 ::grpc::Status GetWaypoints(::grpc::ServerContext* context,
42 const GetWaypointsRequest* request,
43 GetWaypointsResponse* response) noexcept override;
44 ::grpc::Status AddWaypoint(::grpc::ServerContext* context,
45 const AddWaypointRequest* request,
46 AddWaypointResponse* response) noexcept override;
47 ::grpc::Status RemoveWaypoint(::grpc::ServerContext* context,
48 const RemoveWaypointRequest* request,
49 RemoveWaypointResponse* response) noexcept override;
50 ::grpc::Status GetObstacles(::grpc::ServerContext* context,
51 const GetObstaclesRequest* request,
52 GetObstaclesResponse* response) noexcept override;
53 ::grpc::Status GetPaths(::grpc::ServerContext* context,
54 const GetPathsRequest* request,
55 GetPathsResponse* response) noexcept override;
56 ::grpc::Status GetProperties(::grpc::ServerContext* context,
57 const GetPropertiesRequest* request,
58 GetPropertiesResponse* response) noexcept override;
59 ::grpc::Status DoCommand(::grpc::ServerContext* context,
60 const ::viam::common::v1::DoCommandRequest* request,
61 ::viam::common::v1::DoCommandResponse* response) noexcept override;
62};
63
64} // namespace impl
65} // namespace sdk
66} // namespace viam
Definition navigation.hpp:16
Definition resource_server_base.hpp:8
gRPC server implementation of a Navigation service.
Definition navigation_server.hpp:25
Defines a Navigation service.
Defines a general-purpose resource manager.
Defines the Server class.