Skip to content

Commit 2686d14

Browse files
committed
use newly provided common mesh.cxx
1 parent 319b316 commit 2686d14

File tree

6 files changed

+20
-15
lines changed

6 files changed

+20
-15
lines changed

src/viam/sdk/components/arm.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
/// @brief Defines an `Arm` component
44
#pragma once
55

6-
#include <common/v1/common.pb.h>
76
#include <string>
87

98
#include <boost/optional/optional.hpp>
109
#include <boost/variant/variant.hpp>
1110

11+
#include <viam/sdk/common/mesh.hpp>
1212
#include <viam/sdk/common/pose.hpp>
1313
#include <viam/sdk/resource/stoppable.hpp>
1414
#include <viam/sdk/spatialmath/geometry.hpp>
@@ -146,11 +146,11 @@ class Arm : public Component, public Stoppable {
146146
/// @brief Returns `3DModel`s associated with the calling arm
147147
/// @param extra Any additional arguments to the method
148148
/// @return A map of `3DModel`s associated with the calling arm
149-
virtual std::map<std::string, common::v1::Mesh> get_3d_models(const ProtoStruct& extra) = 0;
149+
virtual std::map<std::string, mesh> get_3d_models(const ProtoStruct& extra) = 0;
150150

151151
/// @brief Returns `3DModel`s associated with the calling arm
152152
/// @return A map of `3DModel`s associated with the calling arm
153-
inline std::map<std::string, common::v1::Mesh> get_3d_models() {
153+
inline std::map<std::string, mesh> get_3d_models() {
154154
return get_3d_models({});
155155
}
156156

src/viam/sdk/components/private/arm_client.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,15 @@ Arm::KinematicsData ArmClient::get_kinematics(const ProtoStruct& extra) {
106106
});
107107
}
108108

109-
std::map<std::string, common::v1::Mesh> ArmClient::get_3d_models(const ProtoStruct& extra) {
109+
std::map<std::string, mesh> ArmClient::get_3d_models(const ProtoStruct& extra) {
110110
return make_client_helper(this, *stub_, &StubType::Get3DModels)
111111
.with(extra)
112112
.invoke([](auto& response) {
113-
return std::map<std::string, common::v1::Mesh>(response.models().begin(),
114-
response.models().end());
113+
std::map<std::string, mesh> models;
114+
for (const auto& [key, value] : response.models()) {
115+
models.emplace(key, from_proto(value));
116+
}
117+
return models;
115118
});
116119
}
117120

src/viam/sdk/components/private/arm_client.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class ArmClient : public Arm {
3333
void stop(const ProtoStruct& extra) override;
3434
ProtoStruct do_command(const ProtoStruct& command) override;
3535
Arm::KinematicsData get_kinematics(const ProtoStruct& extra) override;
36-
std::map<std::string, common::v1::Mesh> get_3d_models(const ProtoStruct& extra) override;
36+
std::map<std::string, mesh> get_3d_models(const ProtoStruct& extra) override;
3737
std::vector<GeometryConfig> get_geometries(const ProtoStruct& extra) override;
3838

3939
// Using declarations to introduce convenience overloads of interface which do not need to be

src/viam/sdk/components/private/arm_server.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,10 +140,11 @@ ::grpc::Status ArmServer::Get3DModels(::grpc::ServerContext*,
140140
::viam::common::v1::Get3DModelsResponse* response) noexcept {
141141
return make_service_helper<Arm>(
142142
"ArmServer::Get3DModels", this, request)([&](auto& helper, auto& arm) {
143-
const std::map<std::string, common::v1::Mesh> models =
144-
arm->get_3d_models(helper.getExtra());
143+
const std::map<std::string, mesh> models = arm->get_3d_models(helper.getExtra());
145144

146-
response->mutable_models()->insert(models.begin(), models.end());
145+
for (const auto& [key, mesh] : models) {
146+
response->mutable_models()->insert({key, to_proto(mesh)});
147+
}
147148
});
148149
}
149150

src/viam/sdk/tests/mocks/mock_arm.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#include "viam/sdk/common/mesh.hpp"
12
#include <viam/sdk/tests/mocks/mock_arm.hpp>
23

34
#include "mock_arm.hpp"
@@ -7,8 +8,8 @@ namespace viam {
78
namespace sdktests {
89
namespace arm {
910

10-
std::map<std::string, common::v1::Mesh> fake_3d_models() {
11-
return {{"model1", common::v1::Mesh::default_instance()}};
11+
std::map<std::string, sdk::mesh> fake_3d_models() {
12+
return {{"model1", sdk::mesh{"model1", {1, 2, 3, 4}}}};
1213
}
1314

1415
sdk::Arm::KinematicsData fake_kinematics() {
@@ -63,7 +64,7 @@ std::vector<sdk::GeometryConfig> MockArm::get_geometries(const sdk::ProtoStruct&
6364
return fake_geometries();
6465
}
6566

66-
std::map<std::string, common::v1::Mesh> MockArm::get_3d_models(const sdk::ProtoStruct&) {
67+
std::map<std::string, sdk::mesh> MockArm::get_3d_models(const sdk::ProtoStruct&) {
6768
return fake_3d_models();
6869
}
6970

src/viam/sdk/tests/mocks/mock_arm.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ namespace sdktests {
77
namespace arm {
88

99
sdk::Arm::KinematicsData fake_kinematics();
10-
std::map<std::string, common::v1::Mesh> fake_3d_models();
10+
std::map<std::string, sdk::mesh> fake_3d_models();
1111

1212
class MockArm : public sdk::Arm {
1313
public:
@@ -30,7 +30,7 @@ class MockArm : public sdk::Arm {
3030
sdk::ProtoStruct do_command(const sdk::ProtoStruct& command) override;
3131
sdk::Arm::KinematicsData get_kinematics(const sdk::ProtoStruct&) override;
3232
std::vector<sdk::GeometryConfig> get_geometries(const sdk::ProtoStruct&) override;
33-
std::map<std::string, common::v1::Mesh> get_3d_models(const sdk::ProtoStruct&) override;
33+
std::map<std::string, sdk::mesh> get_3d_models(const sdk::ProtoStruct&) override;
3434
sdk::pose current_location;
3535
std::vector<double> joint_positions;
3636
std::vector<std::vector<double>> move_thru_positions;

0 commit comments

Comments
 (0)