00001 #include "StProtoJetCut.h"
00002 #include "StProtoJetListCut.h"
00003
00004 StJetFinder::JetList StProtoJetListCut::operator()(const StJetFinder::JetList& protojets) const
00005 {
00006 StJetFinder::JetList result;
00007 for (StJetFinder::JetList::const_iterator iProtoJet = protojets.begin(); iProtoJet != protojets.end(); ++iProtoJet) {
00008 const StProtoJet& protojet = *iProtoJet;
00009 if (!cut(protojet)) result.push_back(protojet);
00010 }
00011 return result;
00012 }
00013
00014 bool StProtoJetListCut::cut(const StProtoJet& protojet) const
00015 {
00016 for (vector<StProtoJetCut*>::const_iterator iCut = mCutList.begin(); iCut != mCutList.end(); ++iCut) {
00017 const StProtoJetCut& cut = **iCut;
00018 if (cut(protojet)) return true;
00019 }
00020 return false;
00021 }