File: README.md

package info (click to toggle)
iceoryx 2.0.3%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 11,260 kB
  • sloc: cpp: 94,127; ansic: 1,443; sh: 1,436; python: 1,377; xml: 80; makefile: 61
file content (47 lines) | stat: -rw-r--r-- 1,807 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# iceensemble

## Introduction

A common use case is that multiple sensors are sending data of the same type, e.g. LIDAR data, and a subscriber is interested in the data of all those sensors.

This example demonstrates

1. how you can run multiple publisher applications publishing on the same topic (n:m communication)
2. how to communicate between C and C++

!!! info
    The default communication policy is many to many. If you have built iceoryx with the CMake flag `-DONE_TO_MANY_ONLY` this example will not run.

## Run iceensemble

The easiest way is to build all examples via `./tools/iceoryx_build_test.sh`. Then, create eight terminals and run one command in each of them.

```sh
./build/iox-roudi

./build/iceoryx_examples/icehello/iox-cpp-publisher-helloworld
./build/iceoryx_examples/icedelivery/iox-cpp-publisher
./build/iceoryx_examples/icedelivery/iox-cpp-publisher-untyped
./build/iceoryx_examples/iceoptions/iox-cpp-publisher-with-options
./build/iceoryx_examples/icedelivery_in_c/iox-c-publisher

./build/iceoryx_examples/icedelivery/iox-cpp-subscriber
./build/iceoryx_examples/iceoptions/iox-subscriber-with-options
```

Alternatively, you can use the provided [tmux](https://en.wikipedia.org/wiki/Tmux) script.

```sh
./iceoryx_examples/iceensemble/run_iceensemble.sh
```

!!! info
    As `iox-subscriber-with-options` requests the blocking publisher feature, although having the same `capro::ServiceDescription` `{"Radar", "FrontLeft", "Object"}` it is only connected to `iox-publisher-with-options`

## Expected Output

[![asciicast](https://asciinema.org/a/407432.svg)](https://asciinema.org/a/407432)

<center>
[Check out iceensemble on GitHub :fontawesome-brands-github:](https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/iceoryx_examples/iceensemble){ .md-button }
</center>