00001
00002 #ifndef jetsubstructureutils_qw_header
00003 #define jetsubstructureutils_qw_header
00025 #include "JetSubStructureUtils/SubstructureCalculator.h"
00026 #include "fastjet/JetDefinition.hh"
00027
00028 namespace JetSubStructureUtils {
00029 class Qw : public SubstructureCalculator<double> {
00030 public:
00031
00033 enum QwVariant {
00034 Normal,
00035 MassCut,
00036 SmallSubjets,
00037 };
00038
00039 Qw( QwVariant mode=Normal, double p=-1, fastjet::JetAlgorithm jetalg=fastjet::kt_algorithm) ;
00040
00041 using SubstructureCalculator::result;
00043 virtual double result(const fastjet::PseudoJet &jet) const;
00044
00046 virtual double result(std::vector<fastjet::PseudoJet> &constituents) const;
00047
00048
00049 private:
00050 QwVariant m_vMode;
00051 fastjet::JetDefinition m_jetdef;
00052
00053 double m_massCut;
00054 };
00055 }
00056
00057 #endif