32 #ifndef __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__
33 #define __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__
35 #include "fastjet/internal/base.hh"
36 #include "fastjet/SharedPtr.hh"
37 #include "fastjet/PseudoJetStructureBase.hh"
41 FASTJET_BEGIN_NAMESPACE
71 set_associated_cs(cs);
78 virtual std::string
description()
const{
return "PseudoJet with an associated ClusterSequence"; }
94 virtual bool has_valid_cluster_sequence()
const;
108 _associated_cs = new_cs;
159 virtual bool has_constituents()
const;
165 virtual std::vector<PseudoJet> constituents(
const PseudoJet &reference)
const;
172 virtual bool has_exclusive_subjets()
const;
185 virtual std::vector<PseudoJet> exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
193 virtual int n_exclusive_subjets(
const PseudoJet &reference,
const double & dcut)
const;
203 virtual std::vector<PseudoJet> exclusive_subjets_up_to (
const PseudoJet &reference,
int nsub)
const;
210 virtual double exclusive_subdmerge(
const PseudoJet &reference,
int nsub)
const;
218 virtual double exclusive_subdmerge_max(
const PseudoJet &reference,
int nsub)
const;
226 virtual bool has_pieces(
const PseudoJet &reference)
const;
237 virtual std::vector<PseudoJet> pieces(
const PseudoJet &reference)
const;
246 virtual bool has_area()
const;
250 virtual double area(
const PseudoJet &reference)
const;
255 virtual double area_error(
const PseudoJet &reference)
const;
263 virtual bool is_pure_ghost(
const PseudoJet &reference)
const;
272 FASTJET_END_NAMESPACE
274 #endif // __FASTJET_CLUSTER_SEQUENCE_STRUCTURE_HH__