Open3D (C++ API)  0.17.0
MessageUtils.h
Go to the documentation of this file.
1// ----------------------------------------------------------------------------
2// - Open3D: www.open3d.org -
3// ----------------------------------------------------------------------------
4// Copyright (c) 2018-2023 www.open3d.org
5// SPDX-License-Identifier: MIT
6// ----------------------------------------------------------------------------
7
8#pragma once
9
10#include <map>
11#include <tuple>
12
13#include "open3d/core/Tensor.h"
18
19namespace zmq {
20class message_t;
21}
22
23namespace open3d {
24namespace io {
25namespace rpc {
26
27namespace messages {
28struct Array;
29struct Status;
30struct MeshData;
31} // namespace messages
32
46std::shared_ptr<messages::Status> UnpackStatusFromReply(
47 const zmq::message_t& msg, size_t& offset, bool& ok);
48
50bool ReplyIsOKStatus(const zmq::message_t& msg);
51
54bool ReplyIsOKStatus(const zmq::message_t& msg, size_t& offset);
55
57std::string CreateSerializedRequestMessage(const std::string& msg_id);
58
59std::tuple<const void*, size_t> GetZMQMessageDataAndSize(
60 const zmq::message_t& msg);
61
62std::tuple<int32_t, std::string> GetStatusCodeAndStr(
63 const messages::Status& status);
64
65std::shared_ptr<zmq::message_t> CreateStatusOKMsg();
66
72std::shared_ptr<t::geometry::Geometry> MeshDataToGeometry(
73 const messages::MeshData& mesh_data);
74
77messages::MeshData GeometryToMeshData(const t::geometry::TriangleMesh& trimesh);
78
81messages::MeshData GeometryToMeshData(const t::geometry::PointCloud& pcd);
82
85messages::MeshData GeometryToMeshData(const t::geometry::LineSet& ls);
86
91std::tuple<std::string, double, std::shared_ptr<t::geometry::Geometry>>
92DataBufferToMetaGeometry(std::string& data);
93
94} // namespace rpc
95} // namespace io
96} // namespace open3d
int offset
Definition: FilePCD.cpp:45
const char const char value recording_handle imu_sample recording_handle uint8_t data
Definition: K4aPlugin.cpp:269
bool ReplyIsOKStatus(const zmq::message_t &msg)
Convenience function for checking if the message is an OK.
Definition: MessageUtils.cpp:52
messages::MeshData GeometryToMeshData(const t::geometry::TriangleMesh &trimesh)
Definition: MessageUtils.cpp:259
std::string CreateSerializedRequestMessage(const std::string &msg_id)
Creates a serialized Request message for testing purposes.
Definition: MessageUtils.cpp:66
std::tuple< const void *, size_t > GetZMQMessageDataAndSize(const zmq::message_t &msg)
Definition: MessageUtils.cpp:73
std::tuple< int32_t, std::string > GetStatusCodeAndStr(const messages::Status &status)
Definition: MessageUtils.cpp:78
std::tuple< std::string, double, std::shared_ptr< t::geometry::Geometry > > DataBufferToMetaGeometry(std::string &data)
Definition: MessageUtils.cpp:340
std::shared_ptr< t::geometry::Geometry > MeshDataToGeometry(const messages::MeshData &mesh_data)
Definition: MessageUtils.cpp:168
std::shared_ptr< zmq::message_t > CreateStatusOKMsg()
Definition: MessageUtils.cpp:83
std::shared_ptr< messages::Status > UnpackStatusFromReply(const zmq::message_t &msg, size_t &offset, bool &ok)
Definition: MessageUtils.cpp:23
Definition: PinholeCameraIntrinsic.cpp:16
Definition: ConnectionBase.h:12