Template Class DeltaCompare

Inheritance Relationships

Base Type

Class Documentation

template<typename MessageType>
class DeltaCompare : public message_filters::CachedComparisonHandler<MessageType>

DeltaCompare implements delta comparison.

If any of the fields, acquired by any of the ‘field_getters’ do differ between previously cached and current message, the current message is accepted.

Public Types

typedef std::shared_ptr<MessageType const> MConstPtr
typedef std::function<MFieldType(const MConstPtr&)> FieldGetterFunctionType

Public Functions

inline explicit DeltaCompare(std::forward_list<FieldGetterFunctionType> field_getters)

Initialize handler.

Parameters:

field_getters – A list of callable objects that are expected to retrieve a value of a basic type from a message field for comparison. Any of the ‘field_getters’ is applied to the cached and to the current message. The returned values are compared. If any of these values differ between cached and current message, the current message is accepted.

virtual ~DeltaCompare() = default
inline virtual bool do_fields_fit(MFieldType field_a, MFieldType field_b) const