Code Monkey home page Code Monkey logo

rclc's Introduction

The rclc repository

This repository provides the rclc-package. It is written in C programming language and it uses the ROS Client Library (RCL). It contains an RCLC-Executor and several convenience functions to simplify the configuration of RCL-objects.

In detail, this repository contains two ROS2 packages:

  • rclc provides the RCLC-Executor, which provides an Executor for C applications like the rclcpp Executor for C++ but also provides new features for deterministic timing behavior. Additionally, convenience functions are provided to simplify the creation of RCL-objects.
  • rclc_examples provides small examples for the use of the RCLC-Executor and the convenience functions.

Technical information on the interfaces and the usage of these packages is given in the README.md files in the corresponding subfolders.

Purpose of the project

The software is not ready for production use. It has neither been developed nor tested for a specific use case. However, the license conditions of the applicable Open Source licenses allow you to adapt the software to your needs. Before using it in a safety relevant setting, make sure that the software fulfills your requirements and adjust it according to any applicable safety standards (e.g. ISO 26262).

Requirements, how to build, test and install

Source your ROS2 distribution with source /opt/ros/distribution/setup.bash. Clone the repository into a ROS2 workspace (e.g. ~/ros2_ws/) and build the packages using colcon build from the Colcon Command Line Tools. To test the RCLC package run colcon test or if you have multiple repositories in this workspace colcon test --packages-select rclc. For correct installation of the rclc-package do a source ~/ros2_ws/install/local_setup.bash. Then you are ready to run the examples in the rclc_examples package.

License

rclc is open-sourced under the Apache-2.0 license. See the LICENSE file for details.

For a list of other open source components included in rclc, see the file 3rd-party-licenses.txt.

Quality assurance

  • Coding style:
    • The uncrustify tool is used to check the coding style.
  • Linters:
    • The cpplint tool is used to detect common flaws and problems in C/C++ code.
    • The cppcheck tool is used for code analysis.
    • The CMakeLists.txt is checked with lint_cmake and the package.xml with xmllint
  • Unit tests:

Known issues/limitations

Please notice the following issues/limitations:

  • rclc package support the communication types subscriptions and timers (services, clients and guard conditions are not supported yet)

rclc's People

Contributors

astralien3000 avatar borjaouterelo avatar carlossvg avatar dirk-thomas avatar esteve avatar janstaschulat avatar qeyup avatar ralph-lange avatar wjwwood avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.