30 #ifndef __FASTJET_PSEUDOJET_STRUCTURE_BASE_HH__
31 #define __FASTJET_PSEUDOJET_STRUCTURE_BASE_HH__
33 #include "fastjet/internal/base.hh"
38 FASTJET_BEGIN_NAMESPACE
41 class ClusterSequence;
42 class ClusterSequenceAreaBase;
64 virtual std::string
description()
const{
return "PseudoJet with an unknown structure"; }
138 virtual std::vector<PseudoJet> constituents(
const PseudoJet &reference)
const;
154 virtual std::vector<PseudoJet> exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
161 virtual int n_exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
168 virtual std::vector<PseudoJet> exclusive_subjets_up_to (
const PseudoJet &reference,
int nsub)
const;
174 virtual double exclusive_subdmerge(
const PseudoJet &reference,
int nsub)
const;
181 virtual double exclusive_subdmerge_max(
const PseudoJet &reference,
int nsub)
const;
198 virtual std::vector<PseudoJet> pieces(
const PseudoJet &
214 virtual double area(
const PseudoJet &reference)
const;
220 virtual double area_error(
const PseudoJet &reference)
const;
230 virtual bool is_pure_ghost(
const PseudoJet &reference)
const;
235 FASTJET_END_NAMESPACE
237 #endif // __FASTJET_PSEUDOJET_STRUCTURE_BASE_HH__