30 #ifndef __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__
31 #define __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__
33 #include "fastjet/internal/base.hh"
34 #include "fastjet/SharedPtr.hh"
35 #include "fastjet/PseudoJetStructureBase.hh"
39 FASTJET_BEGIN_NAMESPACE
69 set_associated_cs(cs);
76 virtual std::string
description()
const{
return "PseudoJet with an associated ClusterSequence"; }
92 virtual bool has_valid_cluster_sequence()
const;
104 _associated_cs = new_cs;
155 virtual bool has_constituents()
const;
161 virtual std::vector<PseudoJet> constituents(
const PseudoJet &reference)
const;
168 virtual bool has_exclusive_subjets()
const;
181 virtual std::vector<PseudoJet> exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
189 virtual int n_exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
199 virtual std::vector<PseudoJet> exclusive_subjets_up_to (
const PseudoJet &reference,
int nsub)
const;
206 virtual double exclusive_subdmerge(
const PseudoJet &reference,
int nsub)
const;
214 virtual double exclusive_subdmerge_max(
const PseudoJet &reference,
int nsub)
const;
222 virtual bool has_pieces(
const PseudoJet &reference)
const;
233 virtual std::vector<PseudoJet> pieces(
const PseudoJet &reference)
const;
241 virtual bool has_area()
const;
245 virtual double area(
const PseudoJet &reference)
const;
250 virtual double area_error(
const PseudoJet &reference)
const;
258 virtual bool is_pure_ghost(
const PseudoJet &reference)
const;
266 FASTJET_END_NAMESPACE
268 #endif // __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__