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>
70 virtual TOut result(
const PseudoJet &pj)
const = 0;
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
128 #endif // __FASTJET_FUNCTION_OF_PSEUDOJET_HH__
std::vector< TOut > operator()(const std::vector< PseudoJet > &pjs) const
apply the function on a vector of PseudoJet, returning a vector of the results.
virtual ~FunctionOfPseudoJet()
default dtor (virtual to allow safe polymorphism)
FunctionOfPseudoJet()
default ctor
virtual std::string description() const
returns a description of the function (an empty string by default)
TOut operator()(const PseudoJet &pj) const
apply the function using the "traditional" () operator.
base class providing interface for a generic function of a PseudoJet
Class to contain pseudojets, including minimal information of use to jet-clustering routines...