# Rclex (Experimental) v0.12.0 - Table of Contents

Experimental ROS 2 Client Library for Elixir.

## Pages

- [README](readme.md)
- [README_ja](readme_ja.md)
- [Use on Nerves](use_on_nerves.md)
- [CHANGELOG](changelog.md)

## Modules

- [Rclex](Rclex.md): User API for `Elixir.Rclex`.

- [Rclex.ActionClientOptions](Rclex.ActionClientOptions.md): Documentation for `Elixir.Rclex.ActionClientOptions`.
- [Rclex.ActionFuncs](Rclex.ActionFuncs.md)
- [Rclex.ActionServerOptions](Rclex.ActionServerOptions.md): Documentation for `Elixir.Rclex.ActionServerOptions`.
- [Rclex.Clock](Rclex.Clock.md): GenServer wrapping an `rcl_clock_t` resource.
- [Rclex.Duration](Rclex.Duration.md): A signed duration, stored as nanoseconds.
- [Rclex.GraphMonitor](Rclex.GraphMonitor.md): Optional GenServer that monitors the ROS 2 graph and emits `:telemetry`
events when nodes, topics, services, or actions join or leave.
- [Rclex.LifecycleNode](Rclex.LifecycleNode.md): A managed (lifecycle) node implementing the ROS 2 [Managed Node design](https://design.ros.org/articles/node_lifecycle.html).
- [Rclex.MsgFuncs](Rclex.MsgFuncs.md)
- [Rclex.Parameter](Rclex.Parameter.md): Utilities for working with ROS 2 parameters.
- [Rclex.ParameterClient](Rclex.ParameterClient.md): Provides a client to access parameters on remote ROS 2 nodes via the
standard parameter services.
- [Rclex.ParameterEventHandler](Rclex.ParameterEventHandler.md): Helper for subscribing to ROS 2 `/parameter_events` and dispatching
per-node or per-parameter callbacks.
- [Rclex.ParameterHelpers](Rclex.ParameterHelpers.md): Helper functions for working with ROS 2 parameter types that may not be known at compile time.
Provides functions to generate parameter structs, convert between Elixir values and ROS 2 parameter types.

- [Rclex.ParameterServer](Rclex.ParameterServer.md): Provides parameter service functionality for ROS 2 nodes.
- [Rclex.QoS](Rclex.QoS.md): Documentation for `Elixir.Rclex.QoS`.
- [Rclex.SrvFuncs](Rclex.SrvFuncs.md)
- [Rclex.Time](Rclex.Time.md): A point in time, paired with the clock type that produced it.

## Mix Tasks

- [mix rclex.gen](Mix.Tasks.Rclex.Gen.md): Generate codes of ROS 2 types
- [mix rclex.gen.action](Mix.Tasks.Rclex.Gen.Action.md): Generate codes of ROS 2 action type
- [mix rclex.gen.msgs](Mix.Tasks.Rclex.Gen.Msgs.md): Generate codes of ROS 2 msg type
- [mix rclex.gen.srvs](Mix.Tasks.Rclex.Gen.Srvs.md): Generate codes of ROS 2 srv type
- [mix rclex.prep.ros2](Mix.Tasks.Rclex.Prep.Ros2.md): Prepare ROS 2 resources under .ros2 directory.

