FKIE Message Filters
Improved filters for processing ROS messages
|
Group multiple data types as filter input or output. More...
#include <fkie_message_filters/types.h>
Public Types | |
template<template< typename... > class Outer> | |
using | Rewrap = Outer< helpers::io_unwrap_t< Types >... > |
Rewrap the grouped data types in a different wrapper template type. | |
template<std::size_t... Is> | |
using | Select = IO< typename std::tuple_element< Is, std::tuple< helpers::io_unwrap_t< Types >... > >::type... > |
Subset of the grouped data types. | |
using | Tuple = std::tuple< helpers::io_unwrap_t< Types >... > |
Tuple of the grouped data types. | |
template<std::size_t N> | |
using | Type = typename std::tuple_element< N, std::tuple< helpers::io_unwrap_t< Types >... > >::type |
Nth data type of an IO tuple. | |
Group multiple data types as filter input or output.
This is a helper class to disambiguate filter definitions with N-ary inputs and outputs. Consider the following hypothetical example:
It is unclear which types refer to inputs and which refer to outputs. In contrast, consider:
This declaration makes it clear that the first filter accepts Type1
as input and will pass Type2
and Type3
as output, while the second filter will take Type1
and Type2
as input and pass Type3
as output.