FastJet  3.3.0
Public Member Functions | Protected Attributes | List of all members
fastjet::WrappedStructure Class Reference

This wraps a (shared) pointer to an underlying structure. More...

#include <fastjet/WrappedStructure.hh>

Inheritance diagram for fastjet::WrappedStructure:
Inheritance graph
[legend]
Collaboration diagram for fastjet::WrappedStructure:
Collaboration graph
[legend]

Public Member Functions

 WrappedStructure (const SharedPtr< PseudoJetStructureBase > &to_be_shared)
 default ctor the argument is the structure we need to wrap
 
virtual ~WrappedStructure ()
 default (virtual) dtor
 
virtual std::string description () const override
 description
 
Direct access to the associated ClusterSequence object.

Get access to the associated ClusterSequence (if any)

virtual bool has_associated_cluster_sequence () const override
 returns true if there is an associated ClusterSequence
 
virtual const ClusterSequenceassociated_cluster_sequence () const override
 get a (const) pointer to the parent ClusterSequence (NULL if inexistent)
 
virtual bool has_valid_cluster_sequence () const override
 returns true if this PseudoJet has an associated and still valid ClusterSequence. More...
 
virtual const ClusterSequencevalidated_cs () const override
 if the jet has a valid associated cluster sequence then return a pointer to it; otherwise throw an error
 
virtual const ClusterSequenceAreaBasevalidated_csab () const override
 if the jet has valid area information then return a pointer to the associated ClusterSequenceAreaBase object; otherwise throw an error
 
Methods for access to information about jet structure

These allow access to jet constituents, and other jet subtructure information.

They only work if the jet is associated with a ClusterSequence.

virtual bool has_partner (const PseudoJet &reference, PseudoJet &partner) const override
 check if it has been recombined with another PseudoJet in which case, return its partner through the argument. More...
 
virtual bool has_child (const PseudoJet &reference, PseudoJet &child) const override
 check if it has been recombined with another PseudoJet in which case, return its child through the argument. More...
 
virtual bool has_parents (const PseudoJet &reference, PseudoJet &parent1, PseudoJet &parent2) const override
 check if it is the product of a recombination, in which case return the 2 parents through the 'parent1' and 'parent2' arguments. More...
 
virtual bool object_in_jet (const PseudoJet &reference, const PseudoJet &jet) const override
 check if the reference PseudoJet is contained the second one passed as argument. More...
 
virtual bool has_constituents () const override
 return true if the structure supports constituents. More...
 
virtual std::vector< PseudoJetconstituents (const PseudoJet &reference) const override
 retrieve the constituents. More...
 
virtual bool has_exclusive_subjets () const override
 return true if the structure supports exclusive_subjets.
 
virtual std::vector< PseudoJetexclusive_subjets (const PseudoJet &reference, const double &dcut) const override
 return a vector of all subjets of the current jet (in the sense of the exclusive algorithm) that would be obtained when running the algorithm with the given dcut. More...
 
virtual int n_exclusive_subjets (const PseudoJet &reference, const double &dcut) const override
 return the size of exclusive_subjets(...); still n ln n with same coefficient, but marginally more efficient than manually taking exclusive_subjets.size() More...
 
virtual std::vector< PseudoJetexclusive_subjets_up_to (const PseudoJet &reference, int nsub) const override
 return the list of subjets obtained by unclustering the supplied jet down to n subjets (or all constituents if there are fewer than n). More...
 
virtual double exclusive_subdmerge (const PseudoJet &reference, int nsub) const override
 return the dij that was present in the merging nsub+1 -> nsub subjets inside this jet. More...
 
virtual double exclusive_subdmerge_max (const PseudoJet &reference, int nsub) const override
 return the maximum dij that occurred in the whole event at the stage that the nsub+1 -> nsub merge of subjets occurred inside this jet. More...
 
virtual bool has_pieces (const PseudoJet &reference) const override
 return true if the structure supports pieces. More...
 
virtual std::vector< PseudoJetpieces (const PseudoJet &reference) const override
 retrieve the pieces building the jet. More...
 
virtual bool has_area () const override
 check if it has a defined area More...
 
virtual double area (const PseudoJet &reference) const override
 return the jet (scalar) area. More...
 
virtual double area_error (const PseudoJet &reference) const override
 return the error (uncertainty) associated with the determination of the area of this jet. More...
 
virtual PseudoJet area_4vector (const PseudoJet &reference) const override
 return the jet 4-vector area. More...
 
virtual bool is_pure_ghost (const PseudoJet &reference) const override
 true if this jet is made exclusively of ghosts. More...
 
- Public Member Functions inherited from fastjet::PseudoJetStructureBase
 PseudoJetStructureBase ()
 default ctor
 
virtual ~PseudoJetStructureBase ()
 default (virtual) dtor
 

Protected Attributes

SharedPtr< PseudoJetStructureBase_structure
 the wrapped structure
 

Detailed Description

This wraps a (shared) pointer to an underlying structure.

The typical use-case is when a PseusoJet needs to share its structure with another PseudoJet but also include extra information in its structure. For the memory management to be handled properly, it should hold a shared pointer to the shared structure. This is what this class ensures. Deriving a structure from this class would then allow for the implementation of the extra features.

Definition at line 53 of file WrappedStructure.hh.

Member Function Documentation

◆ has_valid_cluster_sequence()

virtual bool fastjet::WrappedStructure::has_valid_cluster_sequence ( ) const
inlineoverridevirtual

returns true if this PseudoJet has an associated and still valid ClusterSequence.

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 90 of file WrappedStructure.hh.

◆ has_partner()

virtual bool fastjet::WrappedStructure::has_partner ( const PseudoJet reference,
PseudoJet partner 
) const
inlineoverridevirtual

check if it has been recombined with another PseudoJet in which case, return its partner through the argument.

Otherwise, 'partner' is set to 0.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 122 of file WrappedStructure.hh.

◆ has_child()

virtual bool fastjet::WrappedStructure::has_child ( const PseudoJet reference,
PseudoJet child 
) const
inlineoverridevirtual

check if it has been recombined with another PseudoJet in which case, return its child through the argument.

Otherwise, 'child' is set to 0.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 131 of file WrappedStructure.hh.

◆ has_parents()

virtual bool fastjet::WrappedStructure::has_parents ( const PseudoJet reference,
PseudoJet parent1,
PseudoJet parent2 
) const
inlineoverridevirtual

check if it is the product of a recombination, in which case return the 2 parents through the 'parent1' and 'parent2' arguments.

Otherwise, set these to 0.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 140 of file WrappedStructure.hh.

◆ object_in_jet()

virtual bool fastjet::WrappedStructure::object_in_jet ( const PseudoJet reference,
const PseudoJet jet 
) const
inlineoverridevirtual

check if the reference PseudoJet is contained the second one passed as argument.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 149 of file WrappedStructure.hh.

◆ has_constituents()

virtual bool fastjet::WrappedStructure::has_constituents ( ) const
inlineoverridevirtual

return true if the structure supports constituents.

false by default

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 158 of file WrappedStructure.hh.

◆ constituents()

virtual std::vector<PseudoJet> fastjet::WrappedStructure::constituents ( const PseudoJet reference) const
inlineoverridevirtual

retrieve the constituents.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 165 of file WrappedStructure.hh.

◆ exclusive_subjets()

virtual std::vector<PseudoJet> fastjet::WrappedStructure::exclusive_subjets ( const PseudoJet reference,
const double &  dcut 
) const
inlineoverridevirtual

return a vector of all subjets of the current jet (in the sense of the exclusive algorithm) that would be obtained when running the algorithm with the given dcut.

Time taken is O(m ln m), where m is the number of subjets that are found. If m gets to be of order of the total number of constituents in the jet, this could be substantially slower than just getting that list of constituents.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 184 of file WrappedStructure.hh.

◆ n_exclusive_subjets()

virtual int fastjet::WrappedStructure::n_exclusive_subjets ( const PseudoJet reference,
const double &  dcut 
) const
inlineoverridevirtual

return the size of exclusive_subjets(...); still n ln n with same coefficient, but marginally more efficient than manually taking exclusive_subjets.size()

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 194 of file WrappedStructure.hh.

◆ exclusive_subjets_up_to()

virtual std::vector<PseudoJet> fastjet::WrappedStructure::exclusive_subjets_up_to ( const PseudoJet reference,
int  nsub 
) const
inlineoverridevirtual

return the list of subjets obtained by unclustering the supplied jet down to n subjets (or all constituents if there are fewer than n).

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 204 of file WrappedStructure.hh.

◆ exclusive_subdmerge()

virtual double fastjet::WrappedStructure::exclusive_subdmerge ( const PseudoJet reference,
int  nsub 
) const
inlineoverridevirtual

return the dij that was present in the merging nsub+1 -> nsub subjets inside this jet.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 213 of file WrappedStructure.hh.

◆ exclusive_subdmerge_max()

virtual double fastjet::WrappedStructure::exclusive_subdmerge_max ( const PseudoJet reference,
int  nsub 
) const
inlineoverridevirtual

return the maximum dij that occurred in the whole event at the stage that the nsub+1 -> nsub merge of subjets occurred inside this jet.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 222 of file WrappedStructure.hh.

◆ has_pieces()

virtual bool fastjet::WrappedStructure::has_pieces ( const PseudoJet reference) const
inlineoverridevirtual

return true if the structure supports pieces.

false by default

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 233 of file WrappedStructure.hh.

◆ pieces()

virtual std::vector<PseudoJet> fastjet::WrappedStructure::pieces ( const PseudoJet reference) const
inlineoverridevirtual

retrieve the pieces building the jet.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 240 of file WrappedStructure.hh.

◆ has_area()

virtual bool fastjet::WrappedStructure::has_area ( ) const
inlineoverridevirtual

check if it has a defined area

false by default

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 251 of file WrappedStructure.hh.

◆ area()

virtual double fastjet::WrappedStructure::area ( const PseudoJet reference) const
inlineoverridevirtual

return the jet (scalar) area.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 258 of file WrappedStructure.hh.

◆ area_error()

virtual double fastjet::WrappedStructure::area_error ( const PseudoJet reference) const
inlineoverridevirtual

return the error (uncertainty) associated with the determination of the area of this jet.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 266 of file WrappedStructure.hh.

◆ area_4vector()

virtual PseudoJet fastjet::WrappedStructure::area_4vector ( const PseudoJet reference) const
inlineoverridevirtual

return the jet 4-vector area.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 273 of file WrappedStructure.hh.

◆ is_pure_ghost()

virtual bool fastjet::WrappedStructure::is_pure_ghost ( const PseudoJet reference) const
inlineoverridevirtual

true if this jet is made exclusively of ghosts.

By default, throws an Error

Reimplemented from fastjet::PseudoJetStructureBase.

Definition at line 280 of file WrappedStructure.hh.


The documentation for this class was generated from the following file: