00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef __FASTJET_CLUSTERSEQUENCE1GHOSTPASSIVEAREA_HH__
00032 #define __FASTJET_CLUSTERSEQUENCE1GHOSTPASSIVEAREA_HH__
00033
00034
00035 #include "fastjet/PseudoJet.hh"
00036 #include "fastjet/ClusterSequenceAreaBase.hh"
00037 #include "fastjet/ClusterSequenceActiveArea.hh"
00038 #include<iostream>
00039 #include<vector>
00040
00041 FASTJET_BEGIN_NAMESPACE
00042
00043
00044
00057 class ClusterSequence1GhostPassiveArea : public ClusterSequenceActiveArea {
00058 public:
00059
00060 ClusterSequence1GhostPassiveArea() {}
00061
00063 template<class L> ClusterSequence1GhostPassiveArea
00064 (const std::vector<L> & pseudojets,
00065 const JetDefinition & jet_def,
00066 const GhostedAreaSpec & area_spec,
00067 const bool & writeout_combinations = false) ;
00068
00072 virtual double n_empty_jets(const RangeDefinition & range) const {
00073 return ClusterSequenceAreaBase::n_empty_jets(range);
00074 }
00075
00076 protected:
00079 void _initialise_and_run_1GPA (const JetDefinition & jet_def,
00080 const GhostedAreaSpec & area_spec,
00081 const bool & writeout_combinations = false);
00082
00083 private:
00084
00085 void _run_1GPA(const GhostedAreaSpec & area_spec);
00086 };
00087
00088
00089
00090
00091 template<class L> ClusterSequence1GhostPassiveArea::ClusterSequence1GhostPassiveArea
00092 (const std::vector<L> & pseudojets,
00093 const JetDefinition & jet_def,
00094 const GhostedAreaSpec & area_spec,
00095 const bool & writeout_combinations) {
00096
00097
00098 _transfer_input_jets(pseudojets);
00099
00100
00101 _initialise_and_run_1GPA(jet_def, area_spec, writeout_combinations);
00102
00103 }
00104
00105
00106
00107 FASTJET_END_NAMESPACE
00108
00109 #endif // __FASTJET_CLUSTERSEQUENCE1GHOSTPASSIVEAREA_HH__