Skip to content

LCM type definitions for compatibility with RobotLocomotion/Drake in Julia

License

Notifications You must be signed in to change notification settings

JuliaRobotics/DrakeLCMTypes.jl

Repository files navigation

DrakeLCMTypes

Build Status codecov.io

This package implements the LCM type definitions from Drake in Julia using LCMCore.jl. Each lcmtype has a matching native Julia type with associated encode() and decode() methods.

Example

using DrakeLCMTypes, LCMCore

msg = polynomial_t()
msg.timestamp = 12345
msg.num_coefficients = 4
msg.coefficients = [1, 0, 2, 5]  # 1 + 0x + 2x^2 + 5x^3
bytes = encode(msg)

decoded = decode(bytes, polynomial_t)
@assert decoded.timestamp == msg.timestamp
@assert decoded.num_coefficients == msg.num_coefficients
@assert decoded.coefficients == msg.coefficients

Exported Types

body_motion_data_t
body_wrench_data_t
drake_signal_t
driving_control_cmd_t
external_force_torque_t
foot_flag_t
force_torque_t
joint_pd_override_t
piecewise_polynomial_t
polynomial_t
polynomial_matrix_t
qp_controller_input_t
quadrotor_input_t
quadrotor_output_t
robot_state_t
scope_data_t
simulation_command_t
support_data_t
whole_body_data_t
zmp_com_observer_state_t
zmp_data_t