semvec/pypi-packages huggingface dataset:
ros-rmw-fastrtps-cpp 8.4.3
ROS package providing the middleware interface (RMW) implementation using eProsima Fast DDS.

Built using https://github.com/ycheng517/ros-python-wheels.

# `rmw_fastrtps_cpp`

`rmw_fastrtps_cpp` implements the ROS middleware interface using eProsima Fast DDS static code generation in C++.

For more information see the repository level [README](../README.md)

## Quality Declaration

This package claims to be in the **Quality Level 2** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rmw-dds-common 3.1.0
ROS 2 C++ package offering common APIs and utilities for DDS-based RMW implementations, enhancing communication and data handling.

Built using https://github.com/ycheng517/ros-python-wheels.

# rmw_dds_common: ROS 2 C++ utilities for DDS-based RMWs

`rmw_dds_common` is a collection of C++ APIs to support DDS based, C++ RMW implementations.

## Quality Declaration

This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.

## API

This package contains:

- Generic graph cache
- Common discovery messages
- Data types and utilities

See [feature list](docs/FEATURES.md) for further reference.
ros-rmw 7.3.2
The ROS 2 RMW package offers a middleware interface, abstracting DDS implementations for communication with the ROS 2 Client Library.

Built using https://github.com/ycheng517/ros-python-wheels.

# RMW

The ROS 2 Middleware Interface provides an abstraction layer to different DDS implementations for communication with the ROS 2 Client Library. This package contains the `rmw` interface for DDS implementation and some general functionality useful for implementers.

For more information, see https://design.ros2.org/articles/ros_middleware_interface.html

## Interface and Features
For specific information about the rmw interface and features, see its [api docs](http://docs.ros2.org/latest/api/rmw/).

## Quality Declaration

This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-unique-identifier-msgs 2.5.0
ROS 2 package providing standard messages for Universally Unique Identifiers (UUIDs).

Built using https://github.com/ycheng517/ros-python-wheels.

# unique_identifier_msgs

ROS 2 messages for Universally Unique Identifiers.

For more information about UUIDs, see [wikipedia](https://en.wikipedia.org/wiki/Universally_unique_identifier) and the [UUID specification](https://tools.ietf.org/html/rfc4122.html).

For more information about ROS 2 interfaces, see [interfaces documentation](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [UUID](msg/UUID.msg): A universally unique identifier (UUID).

## Quality Declaration

This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rosidl-runtime-c 4.6.6
This ROS package provides essential C-based runtime functionality for ROSIDL.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_generator_c

`rosidl_runtime_c` is a package and provides runtime ROSIDL functionality in C.

## Features

A list of features provided by `rosidl_runtime_c` is available in its [feature documentation](docs/FEATURES.md).

## Quality Declaration

See the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rosidl-typesupport-fastrtps-cpp 3.6.2
ROS package to generate C++ interfaces for eProsima FastRTPS from rosidl definitions.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_typesupport_fastrtps_cpp

`rosidl_typesupport_fastrtps_cpp` is a package that provides functionality for generating rosidl C++ interfaces for eProsima FastRTPS.

## Features

`rosidl_typesupport_fastrtps_cpp` features are described in [FEATURES](docs/FEATURES.md).

## Quality Declaration

This package claims to be in the **Quality Level 2** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-lifecycle-msgs 2.0.3
ROS `lifecycle_msgs` package provides message and service definitions for managing and transitioning ROS 2 lifecycle nodes through their state-machine.

Built using https://github.com/ycheng517/ros-python-wheels.

# lifecycle_msgs
This package contains message and service definitions for managing lifecycle nodes.
These messages and services form a standardized interface for transitioning these
managed nodes through a known state-machine.

For more information about life cycle nodes see: [design.ros2.org](http://design.ros2.org/articles/node_lifecycle.html).

For more information about ROS 2 interfaces, see [docs.ros.org](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [State](msg/State.msg): A lifecycle node's state-machine state.
* [Transition](msg/Transition.msg): A state transition with specific id and label.
* [TransitionDescription](msg/TransitionDescription.msg): A description of a transition from one state-machine state to another.
* [TransitionEvent](msg/TransitionEvent.msg): A timestamped state transition.

## Services (.srv)
* [ChangeState](srv/ChangeState.srv): Request a node change states with a specific transition.
* [GetAvailableStates](srv/GetAvailableStates.srv): Request an array of states that this node can transition to.
* [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node.
* [GetState](srv/GetState.srv): Request the current lifecycle state of this node.

## Quality Declaration
This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rmw-implementation-cmake 7.3.2
A ROS package offering CMake functions to discover, enumerate, and retrieve available RMW (ROS middleware) implementations.

Built using https://github.com/ycheng517/ros-python-wheels.

# rmw_implementation_cmake

This package provides some CMake functions to discover and enumerate available rmw implementations.

## Features
This package provides the following CMake functions:

* [call_for_each_rmw_implementation](cmake/call_for_each_rmw_implementation.cmake): Call a CMake macro for each available RMW implementation.
* [get_available_rmw_implementations](cmake/get_available_rmw_implementations.cmake): Get the package names of the available ROS middleware implementations.
* [get_default_rmw_implementation](cmake/get_default_rmw_implementation.cmake): Get the package name of the default ROS middleware implementation.
ros-spdlog-vendor 1.6.1
ROS package 'spdlog_vendor' provides a CMake shim for integrating the high-performance spdlog logging library.

Built using https://github.com/ycheng517/ros-python-wheels.

# spdlog_vendor
CMake shim over the spdlog library: https://github.com/gabime/spdlog.git

## Quality Declaration files

Quality declaration for this package: [spdlog_vendor QD](QUALITY_DECLARATION.md).

Quality declaration for spdlog: [spdlog QD](SPDLOG_QUALITY_DECLARATION.md).
ros-gmock-vendor 1.14.9000
A ROS package that integrates Google's gMock C++ mocking framework for developing robust unit tests and improving system design.

Built using https://github.com/ycheng517/ros-python-wheels.

# Googletest Mocking (gMock) Framework

### Overview

Google's framework for writing and using C++ mock classes. It can help you
derive better designs of your system and write better tests.

It is inspired by:

*   [jMock](http://www.jmock.org/)
*   [EasyMock](http://www.easymock.org/)
*   [Hamcrest](http://code.google.com/p/hamcrest/)

It is designed with C++'s specifics in mind.

gMock:

-   Provides a declarative syntax for defining mocks.
-   Can define partial (hybrid) mocks, which are a cross of real and mock
    objects.
-   Handles functions of arbitrary types and overloaded functions.
-   Comes with a rich set of matchers for validating function arguments.
-   Uses an intuitive syntax for controlling the behavior of a mock.
-   Does automatic verification of expectations (no record-and-replay needed).
-   Allows arbitrary (partial) ordering constraints on function calls to be
    expressed.
-   Lets a user extend it by defining new matchers and actions.
-   Does not use exceptions.
-   Is easy to learn and use.

Details and examples can be found here:

*   [gMock for Dummies](https://google.github.io/googletest/gmock_for_dummies.html)
*   [Legacy gMock FAQ](https://google.github.io/googletest/gmock_faq.html)
*   [gMock Cookbook](https://google.github.io/googletest/gmock_cook_book.html)
*   [gMock Cheat Sheet](https://google.github.io/googletest/gmock_cheat_sheet.html)

GoogleMock is a part of
[GoogleTest C++ testing framework](http://github.com/google/googletest/) and a
subject to the same requirements.
ros-ament-cmake-python 2.5.4
A ROS package that extends CMake with functions to install Python packages and modules for ROS 2 development.

Built using https://github.com/ycheng517/ros-python-wheels.

# ament_cmake_python

This package adds functions for installing Python packages and modules in CMake.

## API

Calling `find_package(ament_cmake_python)` will make the following API available.

### ament_get_python_install_dir

The CMake function [`ament_get_python_install_dir`](cmake/ament_get_python_install_dir.cmake) gets the path Python packages will be installed to.
The path is always relative to `CMAKE_INSTALL_PREFIX`.

The path can be customized by setting `PYTHON_INSTALL_DIR` on the command line.
It must be a relative path.
For example, the cmake command bellow would cause Python code to be installed to `${CMAKE_INSTALL_PREFIX}/foobar/site-packages`.

```console
$ cmake ../path/to/package/using/ament_cmake_python -DPYTHON_INSTALL_DIR=foobar/site-packages
```

### ament_python_install_module

The  CMake macro [`ament_python_install_module`](cmake/ament_python_install_module.cmake) will install a single Python module to the Python install directory.

### ament_python_install_package

The CMake macro [`ament_python_install_package`](cmake/ament_python_install_package.cmake) will install a Python package and all subpackages to the Python install directory.
ros-fastrtps-cmake-module 3.6.2
A ROS package providing a CMake module to easily find and integrate eProsima FastRTPS installations within other ROS packages.

Built using https://github.com/ycheng517/ros-python-wheels.

# fastrtps_cmake_module

This package provides a CMake module to find the eProsima FastRTPS installation on a system.

## Features

The CMake module [FindFastRTPS.cmake](cmake/Modules/FindFastRTPS.cmake) enables packages to easily find FastRTPS by just adding the appropriate `find_package(fastrtps_cmake_module)` to their CMakeLists.txt file.

## Quality Declaration

This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rosidl-typesupport-introspection-cpp 4.6.6
A ROS package providing C++ typesupport introspection for dynamic access and manipulation of ROS messages and services.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_typesupport_introspection_cpp

`rosidl_typesupport_introspection_cpp` provides functionality for getting the associated message or service C++ typesupport handler functions and dynamically accessing or manipulating messages.

## Features

The features provided by `rosidl_typesupport_introspection_cpp` are described in [FEATURES](docs/FEATURES.md).

## Quality Declaration

See the [Quality Declaration](./QUALITY_DECLARATION.md) for more details.
ros-ament-index-cpp 1.8.1
ROS package `ament_index_cpp` provides a C++ API for accessing the ament resource index, facilitating introspection of ROS 2 resources.

Built using https://github.com/ycheng517/ros-python-wheels.

# ament_index_cpp

`ament_index_cpp` is a C++ API to access the ament resource index.

See [https://github.com/ament/ament_cmake/blob/master/ament_cmake_core/doc/resource_index.md](https://github.com/ament/ament_cmake/blob/master/ament_cmake_core/doc/resource_index.md)  for documentation on the ament resource index.

Features are described in detail at [http://docs.ros2.org](http://docs.ros2.org/latest/api/ament_index_cpp/index.html)

## Quality Declaration

This package claims to be in the **Quality Level 1** category.
See the [Quality Declaration](./QUALITY_DECLARATION.md) for more details.
ros-rosidl-typesupport-c 3.2.2
A ROS package providing functionality to retrieve associated message or service C typesupport handler functions.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_typesupport_c

`rosidl_typesupport_c` provides functionality for getting the associated message or service c typesupport handler functions.

## Features

The features provided by `rosidl_typesupport_c` are described in [FEATURES](docs/FEATURES.md).

## Quality Declaration

This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](./QUALITY_DECLARATION.md) for more details.
ros-ament-cmake-uncrustify 0.17.3
Wheel for the ament_cmake_uncrustify (ros-ament-cmake-uncrustify) ROS 2 package.

Wheel for the ament_cmake_uncrustify (ros-ament-cmake-uncrustify) ROS 2 package. Built using https://github.com/ycheng517/ros-python-wheels
ros-visualization-msgs 5.3.6
This ROS package provides messages for visualizing 3D information in GUI programs like RViz, including interactive markers and annotations.

Built using https://github.com/ycheng517/ros-python-wheels.

# visualization_msgs

This package provides messages for visualizing 3D information in ROS GUI programs, particularly RViz.

These messages were ported from ROS 1 and for now the [visualization_msgs wiki](http://wiki.ros.org/visualization_msgs) is still a good place for information about these messages and how they are used.

For more information about ROS 2 interfaces, see [docs.ros.org](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [ImageMarker](msg/ImageMarker.msg): A marker to overlay on displayed images.
* [InteractiveMarker](msg/InteractiveMarker.msg): A user interaction marker for manipulating objects in 3-dimensional space in GUI programs, like RViz.
* [InteractiveMarkerControl](msg/InteractiveMarkerControl.msg): Represents a control that is to be displayed together with an interactive marker.
* [InteractiveMarkerFeedback](msg/InteractiveMarkerFeedback.msg): Feedback message sent back from the GUI, e.g. when the status of an interactive marker was modified by the user.
* [InteractiveMarkerInit](msg/InteractiveMarkerInit.msg): Used for sending initial interactive marker descriptions.
* [InteractiveMarkerPose](msg/InteractiveMarkerPose.msg): The pose of the interactive marker.
* [InteractiveMarkerUpdate](msg/InteractiveMarkerUpdate.msg): The top-level message for sending data from the interactive marker server to the client (i.e. rviz).
* [Marker](msg/Marker.msg): A non-interactive marker for displaying annotations in 3-dimensional space.
* [MarkerArray](msg/MarkerArray.msg): An array of markers.
* [MenuEntry](msg/MenuEntry.msg): Used to describe the menu/submenu/subsubmenu/etc tree.

## Services (.srv)
* [GetInteractiveMarkers.srv](srv/GetInteractiveMarkers.srv): Get the currently available interactive markers.

## Quality Declaration
This package claims to be in the **Quality Level 2** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rosidl-generator-type-description 4.6.6
ROS 2 package for serializing interface descriptions (messages, services, actions) to JSON, generating unique SHA256 hashes for each type.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_generator_type_description

This generator serializes ROS 2 interface descriptions (message, service, action) to a common format and uses SHA256 to hash that representation into a unique hash for each type.

The SHA256 hashes generated by this package must match those generated by `rcl_calculate_type_hash`. The `.json` files generated must, therefore, match the result of `rcl_type_description_to_hashable_json`.

## Generated files

This generator creates one output file per interface, `interface_name.json`.

This file follows the schema [`HashedTypedDescription`](./resource/HashedTypeDescription.schema.json).
It contains a tree of hashes for the top-level interface and any of its generated subinterfaces (such as request and response messages for a service), as well as fully-expanded descriptions of the interface type.
This description is a representation of `type_description_interfaces/msg/TypeDescription`, including all recursively-referenced types.
This way, dependent descriptions may use this interface and recurse no further to know the full set of referenced types it needs to know about.
ros-rosidl-dynamic-typesupport-fastrtps 0.1.0
A ROS package providing dynamic (runtime) typesupport serialization support for FastRTPS, manipulating `DynamicType` and `DynamicData` objects.

Built using https://github.com/ycheng517/ros-python-wheels.

# rosidl_dynamic_typesupport_fastrtps
Dynamic (Runtime) Typesupport Serialization Support Library for FastRTPS

This library provides implementations for the interface specified in the `rosidl_dynamic_typesupport` package, providing FastRTPS-specific implementations for manipulating and accessing `DynamicType` and `DynamicData` objects.

```c++
rosidl_dynamic_typesupport_serialization_support_t serialization_support;

rosidl_dynamic_typesupport_serialization_support_init(
  rosidl_dynamic_typesupport_fastrtps_init_serialization_support_impl(),
  rosidl_dynamic_typesupport_fastrtps_init_serialization_support_interface(),
  rcutils_get_default_allocator(),
  &serialization_support);
```
ros-std-msgs 5.3.6
This ROS package provides fundamental, standard message types and primitive wrappers for basic data exchange in ROS applications.

Built using https://github.com/ycheng517/ros-python-wheels.

# std_msgs

`std_msgs` provides many basic message types. Only a few messages are intended for incorporation into higher-level messages. The primitive and primitive array types should generally not be relied upon for long-term use.

For more information about ROS 2 interfaces, see [docs.ros.org](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [ColorRGBA](msg/ColorRGBA.msg): A single RGBA value for representing colors.
* [Empty](msg/Empty.msg): Does not hold any information, useful when the sending of a message would provide sufficient information.
* [Header](msg/Header.msg): Standard metadata for higher-level stamped data types used to communicate timestamped data in a particular coordinate frame.

### Primitive Types
`std_msgs` provides the following wrappers for ROS primitive types, which are documented in the msg specification. It also contains the Empty type, which is useful for sending an empty signal. However, these types do not convey semantic meaning about their contents: every message simply has a field called "data". Therefore, while the messages in this package can be useful for quick prototyping, they are NOT intended for "long-term" usage. For ease of documentation and collaboration, we recommend that existing messages be used, or new messages created, that provide meaningful field name(s).

* [Bool](msg/Bool.msg)
* [Byte](msg/Byte.msg)
* [Char](msg/Char.msg)
* [Float32](msg/Float32.msg)
* [Float64](msg/Float64.msg)
* [Int8](msg/Int8.msg)
* [Int16](msg/Int16.msg)
* [Int32](msg/Int32.msg)
* [Int64](msg/Int64.msg)
* [String](msg/String.msg)
* [UInt8](msg/UInt8.msg)
* [UInt16](msg/UInt16.msg)
* [UInt32](msg/UInt32.msg)
* [UInt64](msg/UInt64.msg)

### Array Types
`std_msgs` also provides the following "MultiArray" types, which can be useful for storing sensor data. However, the same caveat as above applies: it's usually "better" (in the sense of making the code easier to understand, etc.) when developers use or create non-generic message types (see discussion in this thread for more detail).

* [ByteMultiArray](msg/ByteMultiArray.msg)
* [Float32MultiArray](msg/Float32MultiArray.msg)
* [Float64MultiArray](msg/Float64MultiArray.msg)
* [Int8MultiArray](msg/Int8MultiArray.msg)
* [Int16MultiArray](msg/Int16MultiArray.msg)
* [Int32MultiArray](msg/Int32MultiArray.msg)
* [Int64MultiArray](msg/Int64MultiArray.msg)
* [MultiArrayDimension](msg/MultiArrayDimension.msg)
* [MultiArrayLayout](msg/MultiArrayLayout.msg)
* [UInt16MultiArray](msg/UInt16MultiArray.msg)
* [UInt32MultiArray](msg/UInt32MultiArray.msg)
* [UInt64MultiArray](msg/UInt64MultiArray.msg)
* [UInt8MultiArray](msg/UInt8MultiArray.msg)

## Quality Declaration
This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-rmw-implementation 2.15.6
A ROS 2 package acting as a proxy for dynamically selecting and using RMW implementations.

Built using https://github.com/ycheng517/ros-python-wheels.

# rmw_implementation

Proxy implementation of the ROS 2 Middleware Interface, forwarding calls to the chosen (and dynamically loaded) `rmw` implementation.
`RMW_IMPLEMENTATION` environment variable, if set, allows the user to select one of the available `rmw` implementations.
Otherwise, the default `rmw` implementation will be used.
Refer to `rmw_implementation_cmake` package to learn about this default.


## Quality Declaration

This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](./QUALITY_DECLARATION.md) for more details.
ros-ament-cmake-export-include-directories 2.5.4
Wheel for the ament_cmake_export_include_directories (ros-ament-cmake-export-include-directories) ROS 2 package.

Wheel for the ament_cmake_export_include_directories (ros-ament-cmake-export-include-directories) ROS 2 package. Built using https://github.com/ycheng517/ros-python-wheels
ros-action-msgs 2.0.3
A ROS 2 package offering essential messages and services for defining, tracking, and canceling action goals.

Built using https://github.com/ycheng517/ros-python-wheels.

# action_msgs
This package contains several messages and services useful for ROS 2 actions.
More information about actions can be found on its [design article](http://design.ros2.org/articles/actions.html).

For more information about ROS 2 interfaces, see [docs.ros.org](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [GoalInfo](msg/GoalInfo.msg): Goal identifier message, with a goal id and time stamp.
* [GoalStatus](msg/GoalStatus.msg): Describes a goal's current state machine status.
* [GoalStatusArray](msg/GoalStatusArray.msg): An array of [GoalStatus](msg/GoalStatus.msg) messages.

## Services (.srv)
* [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp.

## Quality Declaration
This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.
ros-diagnostic-msgs 5.3.6
ROS diagnostic_msgs package provides standard messages and services for reporting and managing robot and node diagnostics.

Built using https://github.com/ycheng517/ros-python-wheels.

# diagnostic_msgs

This package provides several messages and services for ROS node diagnostics.

For more information about ROS 2 interfaces, see [docs.ros.org](https://docs.ros.org/en/rolling/Concepts/About-ROS-Interfaces.html).

## Messages (.msg)
* [DiagnosticArray](msg/DiagnosticArray.msg): Used to send diagnostic information about the state of the robot.
* [DiagnosticStatus](msg/DiagnosticStatus.msg): Holds the status of an individual component of the robot.
* [KeyValue](msg/KeyValue.msg): Associates diagnostic values with their labels.

## Services (.srv)
* [AddDiagnostics](srv/AddDiagnostics.srv): Used as part of the process for loading analyzers at runtime, not for use as a standalone service.
* [SelfTest](srv/SelfTest.srv): Call this service to perform a diagnostic check.

## Quality Declaration
This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details.