Metadata-Version: 2.1
Name: rosbag-tools
Version: 0.0.4
Summary: A ROS-agnostic toolbox for common rosbag operations
Author-email: damienlarocque <phicoltan@gmail.com>
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: click
Requires-Dist: pyyaml
Requires-Dist: rosbags
Requires-Dist: tqdm
Requires-Dist: black ; extra == "dev"
Requires-Dist: pylint ; extra == "dev"
Requires-Dist: bump2version ; extra == "dev"
Requires-Dist: matplotlib ; extra == "plot"
Project-URL: Homepage, https://github.com/IamPhytan/rosbag-tools
Project-URL: Repository on GitHub, https://github.com/IamPhytan/rosbag-tools
Project-URL: Repository on GitLab, https://gitlab.com/damienlarocque/rosbag-tools
Provides-Extra: dev
Provides-Extra: plot

# rosbag-tools

> A ROS-agnostic toolbox for common rosbag operations

This package bundles different tools that can be applied on ROS 1 or ROS 2 rosbags with no dependency on the ROS software stack.

## Installation

`rosbag-tools` can be installed from PyPi :

```sh
pip install rosbag-tools
```

Some tools, like [`topic-compare`](src/rosbag_tools/topic_compare), have a graphing feature that requires `matplotlib`. Install `rosbag-tools[plot]` to install graph dependencies.

```sh
pip install rosbag-tools[plot]
```

## Tools

* [`topic-compare`](src/rosbag_tools/topic_compare)
* [`topic-remove`](src/rosbag_tools/topic_remove)
* [`clip`](src/rosbag_tools/clip)

## Usage

Each tool in `rosbag-tools` can be used both as a command line application and in Python code.

### Command line

A basic use of `rosbag-tools` is to simply call it from the command line.

```console
rosbag-tools `command` <options>
```

## Contributing

Pull requests and issues are welcome ! Don't hesitate to contribute !

(Recommended) [flit](https://flit.pypa.io) is used to package this module. Development packages can be installed using `flit` :

```console
python -m venv venv
source venv/bin/activate
pip install flit
flit install
```

(Alternative) Development requirements can be installed using pip :

```console
python -m venv venv
source venv/bin/activate
pip install -r requirements/requirements-dev.txt
```

## Acknowledgements

This package relies strongly on [`rosbags`](https://ternaris.gitlab.io/rosbags) for working with rosbags. Hats off to the team at [Ternaris](https://ternaris.com) for developing and maintaining it.

## License

This project is licensed under a [GNU GPLv3](LICENSE) license.

