Viam C++ SDK current
Loading...
Searching...
No Matches
gantry_server.hpp
Go to the documentation of this file.
1
4#pragma once
5
6#include <viam/api/component/gantry/v1/gantry.grpc.pb.h>
7#include <viam/api/component/gantry/v1/gantry.pb.h>
8
11#include <viam/sdk/resource/resource_server_base.hpp>
12
13namespace viam {
14namespace sdk {
15namespace impl {
16
21 public viam::component::gantry::v1::GantryService::Service {
22 public:
23 using interface_type = Gantry;
24 using service_type = component::gantry::v1::GantryService;
25
26 explicit GantryServer(std::shared_ptr<ResourceManager> manager);
27
28 virtual ::grpc::Status GetPosition(
29 ::grpc::ServerContext* context,
30 const ::viam::component::gantry::v1::GetPositionRequest* request,
31 ::viam::component::gantry::v1::GetPositionResponse* response) noexcept;
32
33 virtual ::grpc::Status MoveToPosition(
34 ::grpc::ServerContext* context,
35 const ::viam::component::gantry::v1::MoveToPositionRequest* request,
36 ::viam::component::gantry::v1::MoveToPositionResponse* response) noexcept;
37
38 virtual ::grpc::Status Home(::grpc::ServerContext* context,
39 const ::viam::component::gantry::v1::HomeRequest* request,
40 ::viam::component::gantry::v1::HomeResponse* response) noexcept;
41
42 virtual ::grpc::Status GetLengths(
43 ::grpc::ServerContext* context,
44 const ::viam::component::gantry::v1::GetLengthsRequest* request,
45 ::viam::component::gantry::v1::GetLengthsResponse* response) noexcept;
46
47 virtual ::grpc::Status Stop(::grpc::ServerContext* context,
48 const ::viam::component::gantry::v1::StopRequest* request,
49 ::viam::component::gantry::v1::StopResponse* response) noexcept;
50
51 virtual ::grpc::Status IsMoving(
52 ::grpc::ServerContext* context,
53 const ::viam::component::gantry::v1::IsMovingRequest* request,
54 ::viam::component::gantry::v1::IsMovingResponse* response) noexcept;
55
56 virtual ::grpc::Status DoCommand(::grpc::ServerContext* context,
57 const ::viam::common::v1::DoCommandRequest* request,
58 ::viam::common::v1::DoCommandResponse* response) noexcept;
59
60 virtual ::grpc::Status GetGeometries(
61 ::grpc::ServerContext* context,
62 const ::viam::common::v1::GetGeometriesRequest* request,
63 ::viam::common::v1::GetGeometriesResponse* response) noexcept;
64};
65
66} // namespace impl
67} // namespace sdk
68} // namespace viam
A Gantry represents a physical gantry and can be used for controlling gantries of N axes.
Definition gantry.hpp:23
Definition resource_server_base.hpp:8
gRPC server implementation of a Gantry component.
Definition gantry_server.hpp:21
Defines a Gantry component.
Defines a general-purpose resource manager.