File indexing completed on 2025-08-06 08:17:45
0001 #ifndef JETBASE_JETALGO_H
0002 #define JETBASE_JETALGO_H
0003
0004 #include "Jet.h"
0005
0006 #include <limits>
0007
0008 class JetContainer;
0009 class JetAlgo
0010 {
0011 public:
0012 virtual ~JetAlgo() = default;
0013
0014 virtual void identify(std::ostream& os = std::cout)
0015 {
0016 os << "JetAlgo base class" << std::endl;
0017 }
0018
0019 virtual Jet::ALGO get_algo() { return Jet::NONE; }
0020 virtual float get_par() { return std::numeric_limits<float>::quiet_NaN(); }
0021
0022
0023 virtual std::vector<Jet*> get_jets(std::vector<Jet*> )
0024 {
0025 return std::vector<Jet*>();
0026 }
0027
0028
0029 virtual void cluster_and_fill(std::vector<Jet*>& , JetContainer* )
0030 {
0031 }
0032
0033 virtual std::map<Jet::PROPERTY, unsigned int>& property_indices();
0034
0035 protected:
0036 JetAlgo() = default;
0037 };
0038
0039 #endif