1 #ifndef __FASTJET_FUNCTION_OF_PSEUDOJET_HH__
2 #define __FASTJET_FUNCTION_OF_PSEUDOJET_HH__
34 #include "fastjet/PseudoJet.hh"
35 #include "fastjet/Selector.hh"
37 FASTJET_BEGIN_NAMESPACE
47 template<
typename TOut>
81 std::vector<TOut>
operator()(
const std::vector<PseudoJet> &pjs)
const {
82 std::vector<TOut> res(pjs.size());
83 for (
unsigned int i=0; i<pjs.size(); i++)
84 res[i] = result(pjs[i]);
126 FASTJET_END_NAMESPACE
base class providing interface for a generic function of a PseudoJet
TOut operator()(const PseudoJet &pj) const
apply the function using the "traditional" () operator.
std::vector< TOut > operator()(const std::vector< PseudoJet > &pjs) const
apply the function on a vector of PseudoJet, returning a vector of the results.
FunctionOfPseudoJet()
default ctor
virtual std::string description() const
returns a description of the function (an empty string by default)
virtual TOut result(const PseudoJet &pj) const =0
the action of the function this has to be overloaded in derived classes
virtual ~FunctionOfPseudoJet()
default dtor (virtual to allow safe polymorphism)
Class to contain pseudojets, including minimal information of use to jet-clustering routines.