3#include <google/protobuf/repeated_field.h>
5#include <state_representation/State.hpp>
6#include <state_representation/space/SpatialState.hpp>
7#include <state_representation/space/cartesian/CartesianState.hpp>
8#include <state_representation/space/Jacobian.hpp>
9#include <state_representation/space/joint/JointState.hpp>
10#include <state_representation/parameters/Parameter.hpp>
13#include "state_representation/state_message.pb.h"
23template<
typename ParamT>
33template<
typename FieldT>
34google::protobuf::RepeatedField<FieldT>
encoder(
const std::vector<FieldT>& data);
42google::protobuf::RepeatedField<double>
matrix_encoder(
const Eigen::MatrixXd& matrix);
50state_representation::proto::Vector3d
encoder(
const Eigen::Vector3d& vector);
51state_representation::proto::Quaterniond
encoder(
const Eigen::Quaterniond& quaternion);
59template<
typename FieldT>
60google::protobuf::RepeatedField<FieldT>
encoder(
const std::vector<FieldT>& data) {
61 return google::protobuf::RepeatedField<FieldT>({data.begin(), data.end()});
Class to represent a state in Cartesian space.
Class to define a robot Jacobian matrix.
Class to define a state in joint space.
Abstract class to represent a state.
Bindings to encode and decode state objects into serialised binary message.
state_representation::proto::Parameter encoder(const state_representation::Parameter< ParamT > ¶meter)
Encoding helper method for the Parameter type.
google::protobuf::RepeatedField< double > matrix_encoder(const Eigen::MatrixXd &matrix)
Encoding helper method for Eigen data into a RepeatedField message type.
StateType
The class types inheriting from State.