10#include <tracking/trackFindingCDC/filters/base/Filter.dcl.h>
12#include <tracking/trackFindingCDC/numerics/Weight.h>
14#include <tracking/trackFindingCDC/utilities/Relation.h>
25 namespace TrackFindingCDC {
28 template <
class AObject>
40 const std::vector<AObject*>& objects)
const;
46 virtual Weight
operator()(
const AObject& from,
const AObject& to);
53 std::vector<float> out(objs.size());
54 for (
size_t iObj = 0; iObj < objs.size(); iObj += 1) {
Base class for filters on a generic object type.
Base class for filtering the neighborhood of objects.
RelationFilter()
Default constructor.
virtual Weight operator()(const AObject &from, const AObject &to)
Main filter method returning the weight of the neighborhood relation.
virtual std::vector< float > operator()(const std::vector< Relation< AObject > * > &objs) override
Filter over a vector of relations.
virtual ~RelationFilter()
Default destructor.
virtual std::vector< AObject * > getPossibleTos(AObject *from, const std::vector< AObject * > &objects) const
Selects the objects possibly related to the given one from the given pool of objects.
Type for two related objects.
Abstract base class for different kinds of events.